Scientific publications

Scientific publications

Machine Learning-based Test Oracles for Performance Testing of Cyber-Physical Systems: an Industrial Case Study on Elevators Dispatching Algorithms

The software of systems of elevators needs constant maintenance to deal with new functionality, bug fixes or legislation changes. To automatically validate the software of these systems, a typical approach in industry is to use regression oracles, which execute test inputs both in the software version under test and in a previous software version. However, these practices require a long test execution time and cannot be re-used at different test phases. To deal with these issues, we propose DARIO, a test oracle that relies on regression machine-learning algorithms to detect both functional and non-functional problems of the system. The machine-learning algorithms of this oracle are trained by using data from previously tested versions to predict reference functional and non-functional performance
values of the new versions. An empirical evaluation with an industrial case study demonstrates the feasibility of using our approach. A total of five regression learning algorithms were validated by using mutation testing techniques. For the context of functional bugs, the accuracy when predicting verdicts by DARIO ranged between 95% to 98%, across the different scenarios proposed. For the context of non-functional bugs, were competitive too, having an accuracy when predicting verdicts by DARIO ranging between 83% to 87%.

DOI: https://doi.org/10.1002/smr.2465

Authors:
Aitor Gartziandia, Aitor Arrieta, Jon Ayerdi, Miren Illarramendi, Aitor Agirre, Goiuria Sagardui, Maite Arratibel

Title of the source: Journal of Software: Evolution and Process

Publisher: 

Relevant pages: 

Year: 2022

More info

Adaptive Signal Filtering Platform for a CPS/IoT Ecosystem

Abstract—The rapid increase in number of devices in Internet-of-Things generates astronomic amounts of data. Dealing with noisy and low quality data uses more effort than the data analysis itself. Dealing with noisy data at the source would significantly reduce the effort of pre-processing during analysis, as well as the storage and bandwidth overhead. In this paper we introduce an Adaptive Signal Processing Platform (ASPF) for CPS/IoT Ecosystems. It provides ability to dynamically detect noise variation in a signal and successfully filter these components out of the signal leaving only clean and useful data. The paper shows two approaches with different requirements on effort and scalability.

DOI: https://doi.org/10.1109/ICIT46573.2021.9453496

Authors:
Haris Isakovic, Stefan Dangl, Zlatan Tucakovic, Radu Grosu

Title of the source: 2021 22nd IEEE International Conference on Industrial Technology (ICIT)

Publisher: IEEE

Relevant pages: 1391-1396

Year: 2021


More info

Generating Metamorphic Relations for Cyber-Physical Systems with Genetic Programming: An Industrial Case Study

Abstract—One of the major challenges in the verification of complex industrial Cyber-Physical Systems is the difficulty of determining whether a particular system output or behaviour is correct or not, the socalled test oracle problem. Metamorphic testing alleviates the oracle problem by reasoning on the relations that are expected to hold among multiple executions of the system under test, which are known as Metamorphic Relations (MRs). However, the development of effective MRs is often challenging and requires the involvement of domain experts. In this paper, we present a case study aiming at automating this process. To this end, we implemented GAssertMRs, a tool to automatically generate MRs with genetic programming. We assess the cost-effectiveness of this tool in the context of an industrial case study from the elevation domain. Our experimental results show that in most cases GAssertMRs outperforms the other baselines, including manually generated MRs developed with the help of domain experts. We then describe the lessons learned from our experiments and we outline the future work for the adoption of this technique by industrial practitioners.

DOI: https://doi.org/10.1145/3468264.3473920

Authors:
Jon Ayerdi, Valerio Terragni, Aitor Arrieta, Paolo Tonella, Goiuria Sagardui, Maite Arratibel

Title of the source: Proceedings of the 29th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering (ESEC/FSE ’21)

Publisher: ACM

Relevant pages: 1264-1274

Year: 2021


More info

QoS-aware Metamorphic Testing: An Elevation Case Study

Abstract—Elevators are among the oldest and most widespread transportation systems, yet their complexity increases rapidly to satisfy customization demands and to meet quality of service requirements. Verification and validation tasks in this context are costly, since they rely on the manual intervention of domain experts at some points of the process. This is mainly due to the difficulty to assess whether the elevators behave as expected in the different test scenarios, the so-called test oracle problem. Metamorphic testing is a thriving testing technique that alleviates the oracle problem by reasoning on the relations among multiple executions of the system under test, the so-called metamorphic relations. In this practical experience paper, we report on the application of metamorphic testing to verify an industrial elevator dispatcher. Together with domain experts from the elevation sector, we defined multiple metamorphic relations that consider domain-specific quality of service measures. Evaluation results with seeded faults show that the approach is effective at detecting faults automatically.

DOI: https://doi.org/10.1109/ISSRE5003.2020.00019

Authors:
Jon Ayerdi, Sergio Segura, Aitor Arrieta, Goiuria Sagardui, Maite Arratibel

Title of the source: IEEE 31st International Symposium on Software Reliability Engineering (ISSRE)

Publisher: IEEE

Relevant pages: 104-114

Year: 2020


More info

Microservices for Continuous Deployment, Monitoring and Validation in Cyber-Physical Systems: an Industrial Case Study for Elevators Systems

Abstract—Cyber-Physical Systems (CPSs) are systems that integrate digital cyber computations with physical processes. The software embedded in CPSs has a long life-cycle, requiring constant evolution to support new requirements, bug fixes, and deal with hardware obsolescence. To date, the development of software for CPSs is fragmented, which makes it extremely expensive. This could be substantially enhanced by tightly connecting the development and operation phases, as is done in other software engineering domains (e.g., web engineering through DevOps). Nevertheless, there are still complex issues that make it difficult to use DevOps techniques in the CPS domain, such as those related to hardware-software co-design. To pave the way towards DevOps in the CPS domain, in this paper we instantiate part of the reference architecture presented in the H2020 Adeptness project, which is based on microservices that allow for the continuous deployment, monitoring and validation of CPSs. To this end, we elaborate a systematic methodology that considers as input both domain expertise and a previously defined taxonomy for DevOps in the CPS domain. We obtain a generic microservice template that can be used in any kind of CPS. In addition, we instantiate this architecture in the context of an industrial case study from the elevation domain.

DOI: https://doi.org/10.1109/ICSA-C52384.2021.00014

Authors: Aitor Gartziandia, Jon Ayerdi, Aitor Arrieta; Shaukat Ali, Tao Yue, Aitor Agirre, Goiuria Sagardui, Maite Arratibel

Title of the source: IEEE 18th International Conference on Architecture Companion

Publisher: IEEE

Relevant pages: 46-53

Year: 2021


More info

A Model-Based Test Script Generation Framework for Embedded Software

Abstract—The abstract test cases generated through model-based testing (MBT) need to be concretized to make them executable on the software under test (SUT). Multiple researchers proposed different solutions, e.g., by utilizing adapters for concretization of abstract test cases and generation of test scripts. In this paper, we propose our Model-Based Test scrIpt GenEration fRamework (TIGER) based on GraphWalker, an open source MBT tool. The framework is capable of generating test scripts for embedded software controlling functions of a cyber physical system such as passenger trains developed at Bombardier Transportation AB. The framework follows some defined mapping rules for the concretization of abstract test cases. We have evaluated the generated test scripts using an industrial case study in terms of fault detection. We have induced faults in the model of the SUT based on three mutation operators to generate faulty test scripts. The aim of generating faulty test scripts is to produce failed test steps and to guarantee the absence of faults in the SUT. Moreover, we have also generated the test scripts using the correct version of the model and executed it to analyse the behaviour of the generated test scripts in comparison with manually-written test scripts. The results show that the test scripts generated by GW using the proposed framework are executable, provide 100% requirements coverage and can be used to uncover faults at software-in-the-loop simulation level of sub-system testing.

DOI: https://doi.org/10.1109/ICSTW52544.2021.00041

Authors:Muhammad Nouman Zafar, Wasif Afzal, Eduard Paul Enoiu, Athanasios Stratis , Ola Sellin

Title of the source: The 17th International Workshop on Advances in Model Based Testing

Publisher: IEEE

Relevant pages: 192-198

Year: 2021


More info