José Flora, Paulo Gonçalves, Miguel Teixeira, Nuno Antunes
{"title":"My Services Got Old! Can Kubernetes Handle the Aging of Microservices?","authors":"José Flora, Paulo Gonçalves, Miguel Teixeira, Nuno Antunes","doi":"10.1109/ISSREW53611.2021.00042","DOIUrl":"https://doi.org/10.1109/ISSREW53611.2021.00042","url":null,"abstract":"The exploding popularity of microservice based applications is taking companies to adopt them along with cloud services to support them. Containers are the common deployment infrastructures that currently serve millions of customers daily, being managed using orchestration platforms that monitor, manage, and automate most of the work. However, there are multiple concerns with the claims put forward by the developers of such tools. In this paper, we study the effects of aging in microservices and the utilization of faults to accelerate aging effects while evaluating the capacity of Kubernetes to detect microservice aging. We consider three operation scenarios for a representative microservice-based system through the utilization of stress testing and fault injection as a manner to potentiate aging in the services composing the system to evaluate the capacity of Kubernetes mechanisms to detect it. The results demonstrate that even though some services tend to accumulate aging effects, with increasing resource consumption, Kubernetes does not detect them nor acts on them, which indicates that the probe mechanisms may be insufficient for aging scenarios. This factor may indicate the necessity for more effective mechanisms, capable of detecting aging early on and act on it in a more proactive manner without requiring the services to become unresponsive.","PeriodicalId":385392,"journal":{"name":"2021 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW)","volume":"24 3 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":"116632540","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":"The Necessity of Low-code Engineering for Industrial Software Development: A Case Study and Reflections","authors":"Yi Wang, Yanghe Feng, Min Zhang, Pu Sun","doi":"10.1109/ISSREW53611.2021.00112","DOIUrl":"https://doi.org/10.1109/ISSREW53611.2021.00112","url":null,"abstract":"Developing industrial software systems is challenging due to the complexity of industrial operations, as well as the distinct knowledge structures and cultures between industrial domains and professional software development. Industrial domain experts are often with very limited programming backgrounds, while most professional developers lack the understandings of industrial operations. In this paper, we reported a case study conducted in a large metal processing plant. The results revealed that: (1) the collaboration between industrial domain experts and professional software engineers is inefficient and ineffective; (2) industrial domain experts would rather build industrial applications by themselves; however, existing techniques are primarily developed for professional developers rather than them; (3) industrial domain experts expect to be assisted by visual language-based low-code platforms in building such applications. We reflected on the findings and thus argued the necessity and potentials of low-code engineering for industrial software development.","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":"117337715","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":"Automatic Extraction of Behavioral Features for Test Program Similarity Analysis","authors":"E. D. Angelis, Alessandro Pellegrini, M. Proietti","doi":"10.1109/ISSREW53611.2021.00054","DOIUrl":"https://doi.org/10.1109/ISSREW53611.2021.00054","url":null,"abstract":"We present a methodology for performing automatic extraction of behavioral features from test programs, that is, for collecting pieces of information about the test programs execution. These features are then exploited to carry out analysis and reasoning about test program similarity. The similarity information can be used to drive the execution of test campaigns, in the attempt to either reduce the time-to-test, or to increase the testing capabilities of a given test suite. Our methodology is embedded in the Hyperion analysis framework, which can be configured to define a wide range of test program similarity criteria.","PeriodicalId":385392,"journal":{"name":"2021 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW)","volume":"91 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":"121108473","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}
Jacopo Parri, Samuele Sampietro, Leonardo Scommegna, E. Vicario
{"title":"Evaluation of software aging in component-based Web Applications subject to soft errors over time","authors":"Jacopo Parri, Samuele Sampietro, Leonardo Scommegna, E. Vicario","doi":"10.1109/ISSREW53611.2021.00040","DOIUrl":"https://doi.org/10.1109/ISSREW53611.2021.00040","url":null,"abstract":"Modern Web Applications rely on architectures usually designed with modular software components whose be-haviour is shaped over fundamental principles and characteristics of the HTTP protocol. Dependency Injection frameworks support designers and developers in the automated management of components lifecycle, binding them to predefined scopes, thus delegating to an outer and independent participant the responsibility of creation, destruction and inter-dependencies definition of runtime instances. In this way, different scopes configurations implicitly act as different software micro-rejuvenation policies, emphasising the importance of choices in the assignment of component scopes; while supporting the stateful behaviour in data-retention mechanism, wider scopes may majorly expose inmemory components to software aging processes. We report a practical experience illustrating how the memory maintained in the business logic of a Web Application may give space to aging processes affecting the runtime behaviour of a stateful web application, and we show how this threat is contrasted by micro-rejuvenation at component level implemented by the container under different assignment strategies for components scopes. To this end, we propose an accelerated testing approach relying on a fault injection process that executes an event-driven simulation of arising soft errors over time. Experimentation on an exemplary web application implemented on the stack of Java Enterprise Edition show how manifestation, correction, and propagation of errors are conditioned by different scopes assigned to components by the software developer.","PeriodicalId":385392,"journal":{"name":"2021 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW)","volume":"4 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":"121462779","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":"Important-unit Coverage for Recurrent Neural Network","authors":"Xu Liu, Honghui Li, Rui Wang, Zhouxian Jiang","doi":"10.1109/ISSREW53611.2021.00070","DOIUrl":"https://doi.org/10.1109/ISSREW53611.2021.00070","url":null,"abstract":"Nowadays, many latest systems are typical cyber physical systems (CPS), such as self-driving systems, medical monitoring, industrial control systems and robotics systems. Some of these fields involve speech emotion recognition based on deep learning technology. Therefore, the safety issues brought by deep neural networks cannot be ignored. Recurrent neural network (RNN) is one of several mainstream directions in speech emotion recognition. However, limited research has been done on RNN testing. In this paper, we define important-unit coverage metric for a classic RNN architecture, long short-term memory network (LSTM), to guide the generation of test cases and measure the test adequacy. We implement our experiments on a speech emotion dataset named Emo-DB. We also compare our method with some existing test coverage metrics for RNN. Experimental results show that we have consistent performance comparing with these metrics and can generate more test cases than neuron coverage.","PeriodicalId":385392,"journal":{"name":"2021 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW)","volume":"38 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":"124149298","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":"Mining Numerical Relations for Improving Software Reliability","authors":"Bo Zhang","doi":"10.1109/ISSREW53611.2021.00093","DOIUrl":"https://doi.org/10.1109/ISSREW53611.2021.00093","url":null,"abstract":"This research aims to mine numerical relations from programs and use the relations to improve program reliability. We focus on two types of numerical relations: relations from program inputs and outputs (i.e., metamorphic relations) and workflow relations from software logs. For metamorphic relations from program inputs and outputs, we design two approaches: for polynomial relations, we propose a method to firstly parameterize the metamorphic relations, then use search-based method to find the suitable parameters; for general forms of numerical relations, we plan to adopt genetic programming techniques which have the potential to evolve and produce relations of various types. For workflow relations from program logs, we parse the raw logs to event sequences and propose an approach to mine numerical relations from the event-count-matrix of the sequences. To improve software reliability, the mined metamorphic relations can be used to detect bugs and the mined workflow relations can be used to detect anomalies.","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":"131367998","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}
Yuta Akiya, Kyle Le, Megan Luong, Justin C. Wilson, A. S. Eddin, Valerio Formicola, Mohamed El-Hadedy
{"title":"SHA-3-LPHP: Hardware Acceleration of SHA-3 for Low-Power High-Performance Systems","authors":"Yuta Akiya, Kyle Le, Megan Luong, Justin C. Wilson, A. S. Eddin, Valerio Formicola, Mohamed El-Hadedy","doi":"10.1109/ISSREW53611.2021.00107","DOIUrl":"https://doi.org/10.1109/ISSREW53611.2021.00107","url":null,"abstract":"In the last decade, the world transitioned from using Secure Hash Algorithm 1 (SHA-1) to Secure Hash Algorithm 2 (SHA-2) due to the flaws in SHA-1. However, SHA-2 still uses a similar internal structure with the same mathematical flaws as its predecessor. Safety in SHA-2 is attributed to the increased length of its output compared to SHA-1. Since then, a new hashing algorithm, SHA-3 has been introduced, which does not share the same flaws as its other family members. However, the transition to SHA-3 has not been complete due to lack of software and hardware support for SHA-3 as well as performance issues. The performance limitation, however, is only present in software implementations. In this paper, we propose a new implementation of SHA-3 based on FPGA hardware (SHA-3-LPHP), to be integrated in the architecture of low-power devices. SHA-3-LPHP achieves three orders magnitude improvement in execution time as compared to full software implementations, furthermore, requiring less energy, hence making it an excellent candidate for low-power and high-performance systems.","PeriodicalId":385392,"journal":{"name":"2021 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW)","volume":"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":"130104053","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}
Gianluca Filippone, Marco Autili, F. Rossi, Massimo Tivoli
{"title":"Migration of Monoliths through the Synthesis of Microservices using Combinatorial Optimization","authors":"Gianluca Filippone, Marco Autili, F. Rossi, Massimo Tivoli","doi":"10.1109/ISSREW53611.2021.00056","DOIUrl":"https://doi.org/10.1109/ISSREW53611.2021.00056","url":null,"abstract":"Microservices are an emerging architectural style that is gaining a growing interest from companies and research. They are small, distributed, autonomous and loosely coupled services that are deployed independently and work together by communicating through lightweight protocols. Microservices are easy to update, scale, deploy, and reduce the time-to-market thanks to continuous delivery and DevOps. Several existing systems, in contrast, are difficult to maintain, evolve, and scale. For these reasons, microservices are the ideal candidates for the refactoring and modernization of long-lived monolithic systems. However, the migration process is a complex, time-consuming and error-prone task that needs the support of appropriate tools to assist software designers and programmers from the extraction of a proper architecture to the implementation of the novel microservices. This paper proposes a possible solution for the automated decomposition of a monolithic system into microservices, which exploits combinatorial optimization techniques to manage the decomposition. Our proposal covers the whole decomposition process, from the microservice architecture definition to the generation of the code of the microservices and their APIs, in order to assist developers and ensure by construction the correct behavior of the refactored system.","PeriodicalId":385392,"journal":{"name":"2021 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW)","volume":"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":"130463169","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}
Lulu Jia, Dezhen Yang, Yi Ren, Cheng Qian, Zhifeng Li
{"title":"Semantic Learning and Understanding of multivehicle interaction patterns Using Primitive Driving Patterns With Bayesian Nonparametric Approaches","authors":"Lulu Jia, Dezhen Yang, Yi Ren, Cheng Qian, Zhifeng Li","doi":"10.1109/ISSREW53611.2021.00059","DOIUrl":"https://doi.org/10.1109/ISSREW53611.2021.00059","url":null,"abstract":"The development of an automated vehicle that can handle complex driving scenarios and appropriately interact with other road users requires semantic learning and the ability to understand the driving environment, usually based on the analysis of a large amount of natural driving data. However, the explosive growth of driving data poses a huge challenge for extracting primitive driving patterns from long-term multi-dimensional time series traffic scene data, which involves multi-scale road users. In order to achieve this, a general framework to gain insights into intricate multi-vehicle interaction patterns in real-world driving was presented in this paper. A Bayesian nonparametric learning method based on a hierarchical Dirichlet process hidden semi-Markov model (HDP-HSMM) is introduced to extract primitive driving patterns from time series driving data without prior knowledge of the number of these patterns. Unlike previous articles, which only considers the interactive behavior of two vehicles, we consider the driving scenarios where the ego vehicle can sense all surrounding vehicles, including the front vehicle, the rear vehicle, the front left vehicle, the left vehicle, the rear left vehicle, the front right vehicle, the right vehicle, the rear right vehicle. Experimental results show that our proposed method can extract primitive driving patterns, thereby providing a semantic way to analyze multi-vehicle interaction patterns from multi-dimensional driving data and laying the foundation for the generation of coverage test cases for automated vehicles.","PeriodicalId":385392,"journal":{"name":"2021 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW)","volume":"25 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":"131626183","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":"Semi-automated model extraction from observations for dependability analysis","authors":"András Földvári, A. Pataricza","doi":"10.1109/ISSREW53611.2021.00050","DOIUrl":"https://doi.org/10.1109/ISSREW53611.2021.00050","url":null,"abstract":"In complex distributed systems, the importance of empirical data analysis-based testing, verification, and validation increases to assure a proper level of service under the typically varying workload. Scaling of these systems needs reusable and scale-independent models for reconfigurability. The limited faithfulness of speculative analytic models does not support complex system identification. This way, empirical system identification from observations is emerging in this field. The increasing complexity necessitates explainable and well-interpretable models that follow the logic of everyday thinking to validate the model and its use in operation. Qualitative modeling represents and reasons about human-understandable symbolic, formalized, discrete abstractions of continuous temporal and magnitude aspects of system behavior. Our research focuses on empirical system engineering by extracting qualitative models from observations (e.g., benchmarks, operation logs) assisted by a combination of exploratory and confirmatory data analysis. Extracted models can form the core of supervisory control (e.g., digital twins) or diagnosis.","PeriodicalId":385392,"journal":{"name":"2021 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW)","volume":"13 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":"129379414","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}