{"title":"A Runtime Monitoring Based Fuzzing Framework for Temporal Properties","authors":"Jinjian Luo, Meixi Liu, Yunlai Luo, Zhenbang Chen, Yufeng Zhang","doi":"10.1109/ISSREW53611.2021.00089","DOIUrl":"https://doi.org/10.1109/ISSREW53611.2021.00089","url":null,"abstract":"The detection of the bugs specified in temporal properties is difficult for the existing fuzzers. These bugs are triggered when the program executions contain some specific sequences of operations. This extended abstract reports our recent progress of a runtime monitoring-based fuzzing framework towards the bugs expressed as temporal properties. Specifically, we propose two novel algorithms for preserving input mutants and mutating the input seed to improve fuzzing's efficiency. We have implemented a prototype for Java programs and carried out experiments on real-world open-source Java programs. The preliminary experimental results indicate the promising of our fuzzing method.","PeriodicalId":385392,"journal":{"name":"2021 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW)","volume":"97 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2021-10-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122281927","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Ekaterina Blech, A. Grishchenko, Ivan Kniazkov, Guangtai Liang, Oleg Serebrennikov, A. Tatarnikov, Polina Volkhontseva, Kuzma Yakimets
{"title":"Patternika: A Pattern-Mining-Based Tool For Automatic Library Migration","authors":"Ekaterina Blech, A. Grishchenko, Ivan Kniazkov, Guangtai Liang, Oleg Serebrennikov, A. Tatarnikov, Polina Volkhontseva, Kuzma Yakimets","doi":"10.1109/ISSREW53611.2021.00098","DOIUrl":"https://doi.org/10.1109/ISSREW53611.2021.00098","url":null,"abstract":"Modern software projects typically include a number of third-party libraries. Library migrations (e.g., upgrade/ downgrade/replace some libraries with others) happen frequently due to license violations, known vulnerabilities, feature enhancements and so on, which is laborious and error-prone since that such tasks usually require developers to manually identify mappings between the libraries and then manually change the code. To address this problem, we propose and implement a pattern-mining based tool named Patternika which can help automate such activities. The key idea of the approach is to mine migration patterns from historical migration instances via static code differencing technique upon Abstract Syntax Tree (AST) structures and anti-unification technique upon code differencing graphs, and then apply these patterns to help automatically migrate libraries for future projects (i.e., find and patch source code fragments that contain API references to libraries to be migrated). With experimental evaluations on open data, the pattern mining algorithm provided by Patternika is demonstrated to be fully effective for commercial use. Patternika is now already integrated into an IDE plugin and can be freely downloaded and used by ninety thousands of internal developers intra an IT giant company.","PeriodicalId":385392,"journal":{"name":"2021 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW)","volume":"47 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2021-10-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130404964","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
E. Andrade, F. Machida, R. Pietrantuono, Domenico Cotroneo
{"title":"Memory Degradation Analysis in Private and Public Cloud Environments","authors":"E. Andrade, F. Machida, R. Pietrantuono, Domenico Cotroneo","doi":"10.1109/ISSREW53611.2021.00041","DOIUrl":"https://doi.org/10.1109/ISSREW53611.2021.00041","url":null,"abstract":"Memory degradation trends have been observed in many continuously running software systems. Applications running on cloud computing can also suffer from such memory degradation that may cause severe performance degradation or even experience a system failure. Therefore, it is essential to monitor such degradation trends and find the potential causes to provide reliable application services on cloud computing. In this paper, we consider both private and public cloud environments for deploying an image classification system and experimentally investigate the memory degradation that appeared in these environments. The degradation trends in the available memory statistics are confirmed by the Mann-Kendall test in both cloud environments. We apply causal structure discovery methods to process-level memory statistics to identify the causality of the observed memory degradations. Our analytical results identify the suspicious processes potentially leading to memory degradations in public and private cloud environments.","PeriodicalId":385392,"journal":{"name":"2021 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW)","volume":"18 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2021-10-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130509250","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"System-specific risk rating of software vulnerabilities in industrial automation & control systems","authors":"Monika Maidl, Dirk Kröselberg, Tiange Zhao, Tobias Limmer","doi":"10.1109/ISSREW53611.2021.00097","DOIUrl":"https://doi.org/10.1109/ISSREW53611.2021.00097","url":null,"abstract":"Security vulnerabilities are constantly detected in software, and with CVE a world wide infrastructure exists to inform about such vulnerabilities. Typically, the software vendor issues a patch for the vulnerability. The system owners have to install patches timely in order protect against attacks that exploit vulnerabilities. In industrial automation & control systems, there is often a lot of overhead for installing patches, as availability must be ensured. Hence it makes sense to patch immediately only if the vulnerability poses a high risk to the operation of the plant. We propose an algorithm for calculating the system-specific risk of a vulnerability, based on a system model and a system risk image for system-specific exposure and impact. The system-specific exposure depends on the deployment, while the level of impact depends on the purpose of the system, e.g. in critical infrastructure.","PeriodicalId":385392,"journal":{"name":"2021 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW)","volume":"10 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2021-10-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121234727","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Safe and Secure: Mutually Supporting Safety and Security Analyses with Model-Based Suggestions","authors":"Bastian Kruck, Peter Munk, D. Angermeier","doi":"10.1109/ISSREW53611.2021.00061","DOIUrl":"https://doi.org/10.1109/ISSREW53611.2021.00061","url":null,"abstract":"Failures in cyber-physical systems, such as trains and cars, are caused either by faults or attacks. The former are addressed by safety engineering, the latter by security analysis. Both disciplines use separate terminology, processes, and tools. However, both rely on a common system architecture and use models such as component fault trees and attack trees, respectively, for their analyses. We posit that the two disciplines should be aligned without entangling their processes or teams, mutually supporting their considerations. For that purpose, assuming a joint system model, we introduce tool support that heuristically suggests correspondences between analysis elements of the two disciplines and, upon user confirmation, derives additional suggestions for analysis. Our tool allows both disciplines to benefit from the analyses of the other, increasing consistency, exhaustiveness, and alignment of the disciplines. Our paper introduces the approach, describes our prototypical tool, and illustrates the concept with a realistic automotive use case.","PeriodicalId":385392,"journal":{"name":"2021 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW)","volume":"5 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2021-10-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124225009","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Computation Offloading and Task Scheduling with Fault-Tolerance for Minimizing Redundancy in Edge Computing","authors":"Xinying Liu, Jianhui Jiang, Long Li","doi":"10.1109/ISSREW53611.2021.00064","DOIUrl":"https://doi.org/10.1109/ISSREW53611.2021.00064","url":null,"abstract":"Edge computing can effectively overcome the problems of long transmission distance and high response delay of traditional cloud computing because it can offload computing tasks to edge or cloud. However, edge resources are relatively limited, so the design of an appropriate task scheduling mechanism is critical. Furthermore, ensuring reliability in edge computing is also an urgent problem to be solved. For a 3-layer architecture with local device layer, edge layer, and cloud layer, this paper presents a computing offloading and task scheduling approach with fault-tolerance for minimizing redundancy. It consists of three procedures, i.e., offloading decision, task scheduling, and minimizing redundancy. The offloading decision algorithm is used to decide which layer the task will be executed. As for the primary-backup task scheduling algorithm, the execution time, the energy consumption, the CPU utilization and the reliability are considered for the task scheduling of edge and cloud. To meet the reliability requirement of an application, the minimizing redundancy algorithm is used during the replication process. The experimental results obtained by using EdgeCloudSim show that the proposed approach is superior to other methods given in [21] [24] [38], in terms of execution time, energy consumption and redundancy.","PeriodicalId":385392,"journal":{"name":"2021 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW)","volume":"39 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2021-10-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126721701","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Lydia Gauerhof, Roman Gansch, Christian Heinzemann, M. Woehrle, A. Heyl
{"title":"On the Necessity of Explicit Artifact Links in Safety Assurance Cases for Machine Learning","authors":"Lydia Gauerhof, Roman Gansch, Christian Heinzemann, M. Woehrle, A. Heyl","doi":"10.1109/ISSREW53611.2021.00069","DOIUrl":"https://doi.org/10.1109/ISSREW53611.2021.00069","url":null,"abstract":"The perception in autonomous systems is essential for safe behavior. Machine learning (ML)-based functions play an increasingly important role in this context. The development and safety assurance of such functions is different from the development of non-ML-based functions. Traceability of the various artifacts generated for safety argumentation is challenging, as there is i.e. no longer a direct mapping from requirements to code and data cannot be directly mapped to a semantic domain model. In this work, we show that and how the links between artifacts, which are created in different stages of the development, must be established explicitly. These links enable us to build confidence in our safety argumentation. We concretize these explicit links in two examples, namely pedestrian detection and vehicle detection.","PeriodicalId":385392,"journal":{"name":"2021 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW)","volume":"5 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2021-10-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123906544","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Saikath Bhattacharya, Munindar P. Singh, L. Williams
{"title":"Software Security Readiness and Deployment","authors":"Saikath Bhattacharya, Munindar P. Singh, L. Williams","doi":"10.1109/ISSREW53611.2021.00088","DOIUrl":"https://doi.org/10.1109/ISSREW53611.2021.00088","url":null,"abstract":"Software companies need to assess the security of their products before release. Software reliability engineering tracks and predict software failures using statistical models and metrics. The goal of this paper is to aid software companies in tracking software security growth and identify release readiness through software reliability engineering. Enhancement of software reliability engineering concepts, metrics, and techniques to software security can yield a fresh perspective to secure software release readiness and deployment process.","PeriodicalId":385392,"journal":{"name":"2021 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW)","volume":"31 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2021-10-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123965027","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"TSAI - Test Selection using Artificial Intelligence for the Support of Continuous Integration","authors":"Maria Laura Brzezinski Meyer","doi":"10.1109/ISSREW53611.2021.00092","DOIUrl":"https://doi.org/10.1109/ISSREW53611.2021.00092","url":null,"abstract":"The agile methodology has been increasingly deployed in the industry world, breaking the process into cycles of planning, executing, and evaluating. In the software development domain, an agile method named continuous integration is widely used to automatically integrate code changes from different developers into the same software. Then, each new build can be tested to make sure that the modifications did not interfere with the rest of the already verified code. Despite being very important, regression tests are usually the costliest part of a project. It is laborious to retest all tests of each new software version due to the time it takes to perform and often, before all tests are finished, a new software version is ready to be tested. To improve regression tests results, a selection can be done. By selecting the right tests at the right moment, the use of all test catalogs can be avoided to find faults in the software tested. The aim of this work is to develop a method to select tests to be executed for each version using artificial intelligence algorithms. Learning algorithms can find patterns and similarities between test cases to help knowing which one has a higher probability to expose a fault.","PeriodicalId":385392,"journal":{"name":"2021 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW)","volume":"7 1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2021-10-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123729605","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}