Community Blog

Quality assuring the quality assurance tool: applying safety-critical concepts to test framework development

The quality of embedded systems is demonstrated by the performed tests. The quality of such tests is often dependent on the quality of one or more testing tools, especially in automated testing. Test automation is also central to the success of agile development. It is thus critical to ensure the quality of testing tools. This work explores how industries with agile processes can learn from safety-critical system development with regards to the quality assurance of the test framework development. Safety-critical systems typically need adherence to safety standards that often suggests substantial upfront documentation, plans and a long-term perspective on several development aspects. In contrast, agile approaches focus on quick adaptation, evolving software and incremental deliveries. This article identifies several approaches of quality assurance of software development tools in functional safety development and agile development. The extracted approaches are further analyzed and processed into candidate solutions, i.e., principles and practices for the test framework quality assurance applicable in an industrial context. An industrial focus group with experienced practitioners further validated the candidate solutions through moderated group discussions. The two main contributions from this study are: (i) 48 approaches and 25 derived candidate solutions for test framework quality assurance in four categories (development, analysis, run-time measures, and validation and verification) with related insights, e.g., a test framework should be perceived as a tool-chain and not a single tool, (ii) the perceived value of the candidate solutions in industry as collected from the focus group.

DOI: 10.7717/peerj-cs.1131

Authors:Jonathan ThörnPer Erik StrandbergDaniel Sundmark, and Wasif Afzal

Title of the source: PeerJ Comput Sci. 2022; 8: e1131

Publisher: PeerJ Comput Sci. 2022; 8: e1131

Relevant pages:1–37

Year: 2022


More info

Digital Twin-based Anomaly Detection with Curriculum Learning in Cyber-physical Systems. ACM Transactions on Software Engineering and Methodology.

Anomaly detection is critical to ensure the security of cyber-physical systems (CPS). However, due to the increasing complexity of attacks and CPS themselves, anomaly detection in CPS is becoming more and more challenging. In our previous work, we proposed a digital twin-based anomaly detection method, called ATTAIN, which takes advantage of both historical and real-time data of CPS. However, such data vary significantly in terms of difficulty. Therefore, similar to human learning processes, deep learning models (e.g., ATTAIN) can benefit from an easy-to-difficult curriculum. To this end, in this paper, we present a novel approach, named digitaL twin-based Anomaly deTecTion wIth Curriculum lEarning (LATTICE), which extends ATTAIN by introducing curriculum learning to optimize its learning paradigm. LATTICE attributes each sample with a difficulty score, before being fed into a training scheduler. The training scheduler samples batches of training data based on these difficulty scores such that learning from easy to difficult data can be performed. To evaluate LATTICE, we use five publicly available datasets collected from five real-world CPS testbeds. We compare LATTICE with ATTAIN and two other state-of-the-art anomaly detectors. Evaluation results show that LATTICE outperforms the three baselines and ATTAIN by 0.906%-2.367% in terms of the F1 score. LATTICE also, on average, reduces the training time of ATTAIN by 4.2% on the five datasets and is on par with the baselines in terms of detection delay time.

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

Authors: Qinghua Xu, Shaukat Ali, Tao Yue

Title of the source: ACM Transactions on Software Engineering and Methodology

Publisher:  ACM

Relevant pages: Just accepted. Online but not included in the journal yet.

Year: 2023


More info

Towards dependable CPS/IoT ecosystem

This thesis defines a concept of CPS/IoT Ecosystem as a hierarchical structure, that governs practices and procedures for modeling, design, development, execution and operation of smart systems. We divide these systems in three loosely dependent scopes of operation: the cloud, the fog, and the swarm. Furthermore, we propose a series of methods and approaches that support the dependable design, execution, and operation of CPS/IoT Ecosystems: the methods for ensuring the deterministic execution of tasks in safety constrained applications, a communication channels virtualization for many-core architectures, and a secure communication architecture for many-core platforms. A CPS/IoT Ecosystem is a highly heterogeneous environment with hardware and software components that are designed and implemented by multiple organizations. To ensure coherence between different components and to reduce complexity we propose a continuous integration and deployment (CI/CD) scheme for CPS/IoT Ecosystem. Furthermore, we demonstrate a runtime verification (RV) mechanism that provides a basis for quality of service (QoS) orchestration and dynamic reconfiguration of CPS/IoT applications. As final step in this thesis we propose methods to achieve energy-sustainable CPS/IoT Ecosystems. In conclusion, this thesis tries to seed methodological guidelines on how to build dependable CPS/IoT Ecosystems for applications with various confidence requirements. We want to understand the upcoming changes and reduce eventual effects of ad-hoc development. To explain physical environments using mathematical models and to learn new emerging behaviors using this massive incursion of new data and new insights.

DOI: https://doi.org/10.34726/hss.2022.103104

Authors:Haris Isakovic

Title of the source: Doctoral dissertation

Publisher:  Technische Universität Wien

Relevant pages: 1-155

Year: 2022


More info

An Energy Sustainable CPS/IoT Ecosystem

This paper provides a short overview on methods and technologies necessary to build smart and sustainable Internet-of-Things (IoT). It observes IoT systems in a close relation with data centered intelligence and its application in cyber-physical systems. With the current rate of growth IoT devices and supporting CPS infrastructure will reach extremely high numbers in less than a decade. This will create an enormous overhead on world’s supply of electrical energy. In this paper, we propose a model extension for estimation of energy consumption by IoT devices in next decade. The paper gives a definition of CPS/IoT Ecosystem as a mutually codependent heterogeneous multidisciplinary structure. Further we explore a set of methods to reduce energy consumption and make CPS/IoT Ecosystem sustainable by design. As a case study we propose energy harvesting sensor node implemented as a wildfire early detection system.

DOI: https://doi.org/10.1007/978-3-030-76063-2_22

Authors: Haris Isakovic, Edgar Azpiazu Crespo, Radu Grosu

Title of the source: Science and Technologies for Smart Cities – 6th EAI International Conference, SmartCity360°

Publisher:  Springer

Relevant pages: 305-322

Year: 2020


More info

QoS for Dynamic Deployment of IoT Services

This paper introduces RVAF, a runtime verification (RV) extension of the Arrowhead Framework (AF) with container-based service-deployment and runtime-enforcement of a desired quality of service (QoS). AF is a service-oriented middleware architecture for IoT-applications, consisting of a set of core and auxiliary services and systems, respectively. The QoS manager (QoSM) is one AF’s most important auxiliary systems, which can be used to guarantee the application’s QoS for a wide set of parameters. In RVAF the QoS offered to a particular IoT-application is specified in signal temporal logic, and is continuously monitored by the RVAF-QoSM. In case of an imminent violation, RVAF automatically initiates a container-based reconfiguration, which is ensured to maintain the desired QoS. RVAF is beneficial to large IoT-applications, where the use of continuous-integration and continuous-deployment tools, is not only a recommended practice but also a necessity. Moreover, the use of RVAF is advantageous both during the development of an IoT application, and after its deployment. We describe the architecture of RVAF, provide its formal underpinning, and demonstrate the usefulness of RVAF supported by an industrial IoT application. The main contribution of this work is to show what it takes to incorporate RV concepts into modern SOA frameworks supporting the development of IoT applications.

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

Authors: Haris Isakovic, Luis Lino Ferreira, Irmin Okic, Adam Dukkon, ZlatanTucakovic, Radu Grosu

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

Publisher:  IEEE

Relevant pages: 1144-1151

Year: 2021


More info

Adeptness Whitepaper

This document provides a reference guide of the subsystems involved in the ADEPTNESS ecosystem and their associated microservices. It allows early adopters to map specific components in their infrastructure to check the viability and the added value of their adoption. It also describes the staged workflow to enable this microservices-based architecture, including the monitoring, validation, uncertainty detection, recovery and knowledge extraction of operational data, thereby providing benefits on the deployment effort, a reduction in time to recovery and a reduction of bugs.

Uncertainty-aware Robustness Assessment of Industrial Elevator Systems

Industrial elevator systems are commonly used software systems in our daily lives, which operate in uncertain environments such as unpredictable passenger traffic, uncertain passenger attributes and behaviors, and hardware delays. Understanding and assessing the robustness of such systems under various uncertainties enable system designers to reason about uncertainties, especially those leading to low system robustness, and consequently improve their designs and implementations in terms of handling uncertainties. To this end, we present a comprehensive empirical study conducted with industrial elevator systems provided by our industrial partner Orona, which focuses on assessing the robustness of a dispatcher, i.e., a software component responsible for elevators’ optimal scheduling. In total, we studied 90 industrial dispatchers in our empirical study. Based on the experience gained from the study, we derived an uncertainty-aware robustness assessment method (named UncerRobua) comprising a set of guidelines on how to conduct the robustness assessment and a newly proposed ranking algorithm, for supporting the robustness assessment of industrial elevator systems against uncertainties.

DOI: TBD

Authors: Liping Han, Shaukat Ali, Tao Yue, Aitor Arrieta and Maite Arratibel

Title of the source: ACM Transactions on Software Engineering and Methodology

Publisher:  ACM Journals

Relevant pages:  

Year: 2022

Uncertainty-Aware Transfer Learning to Evolve Digital Twins for Industrial Elevators

Digital twins are increasingly developed to support the development, operation, and maintenance of cyber-physical systems such as industrial elevators. However, industrial elevators continuously evolve due to changes in physical installations, introducing new software features, updating existing ones, and making changes due to regulations (e.g., enforcing restricted elevator capacity due to COVID-19), etc. Thus, digital twin functionalities (often built on neural network-based models) need to evolve themselves constantly to be synchronized with the industrial elevators. Such an evolution is preferred to be automated, as manual evolution is timeconsuming and error-prone. Moreover, collecting sufficient data to re-train neural network models of digital twins could be expensive or even infeasible. To this end, we propose unceRtaInty-aware tranSfer lEarning enriched Digital Twins (RISE-DT), a transfer learning based approach capable of transferring knowledge about the waiting time prediction capability of a digital twin of an industrial elevator across different scenarios. RISE-DT also leverages uncertainty quantification to further improve its effectiveness. To evaluate RISE-DT, we conducted experiments with 10 versions of an elevator dispatching software from Orona, Spain, which are deployed in a Software in the Loop (SiL) environment. Experiment results show that RISE-DT, on average, improves the Mean Squared Error by 13.131% and the utilization of uncertainty quantification further improves it by 2.71%.

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

Authors: Qinghua Xu, Shaukat Ali, Tao Yue and Maite Arratibel

Title of the source: ESEC/FSE 2022: Proceedings of the 30th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering

Publisher:  Association for Computing Machinery

Relevant pages: 

Year: 2022


More info

Are Elevator Software Robust against Uncertainties? Results and Experiences from an Industrial Case Study

Industrial elevator systems are complex Cyber-Physical Systems operating in uncertain environments and experiencing uncertain passenger behaviors, hardware delays, and software errors. Identifying, understanding, and classifying such uncertainties are essential
to enable system designers to reason about uncertainties and subsequently develop solutions for empowering elevator systems to deal with uncertainties systematically. To this end, we present a method, called RuCynefin, based on the Cynefin framework to classify uncertainties in industrial elevator systems from our industrial partner (Orona, Spain), results of which can then be used for assessing their robustness. RuCynefin is equipped with a novel classification algorithm to identify the Cynefin contexts for a variety of uncertainties in industrial elevator systems, and a novel metric for measuring the robustness using the uncertainty classification. We evaluated RuCynefin with an industrial case study of 90 dispatchers from Orona to assess their robustness against uncertainties. Results show that RuCynefin could effectively identify several situations for which certain dispatchers were not robust. Specifically, 93% of such versions showed some degree of low robustness against
uncertainties. We also provide insights on the potential practical usages of RuCynefin, which are useful for practitioners in this field.

DOI: 10.1145/3540250.3558955

Authors: Liping Han, Tao Yue, Shaukat Ali, Aitor Arrieta and Maite Arratibel

Title of the source: ESEC/FSE 2022: Proceedings of the 30th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering

Publisher:  Association for Computing Machinery

Relevant pages: 

Year: 2022

More info

Multi-Objective Metamorphic Test Case Selection: an Industrial Case Study

Metamorphic testing is a technique that has shown great potential to alleviate the test oracle problem by exploiting the relations among the inputs and outputs of different executions of a system. However, this approach requires multiple test executions. In applications like Cyber-Physical Systems (CPSs), where the test executions can be very expensive in terms of time
and resources needed, this can supose a problem. Therefore, it is paramount to optimize the test suite to reduce the costs of verifying the system. Test case selection is an optimization
technique which accomplishes this by selecting a subset of test cases while aiming to preserve the effectiveness of the original test suite as much as possible. While there are many approaches for test case selection in the existing literature, none of them has
been proposed for the metamorphic test case selection problem, where each metamorphic test case consists of a source and, at least, a follow-up test case pair.

In this work, we present an evolutionary multi-objective approach for the metamorphic test case selection problem, adapting existing multi-objective test selection techniques and proposing new evolutionary operators and objective functions. Furthermore, we evaluate our approach with a set of metamorphic tests developed for an industrial case study from the elevation domain. The results suggest that our approach outperforms both Random Search and the same metaheuristic algorithm without the new evolutionary operators we propose.

DOI: TBD

Authors: Jon Ayerdi, Aitor Arrieta, Ernest Bota Pobee and Maite Arratibel

Title of the source: IEEE 33rd International Symposium on Software Reliability Engineering

Publisher:  IEEE

Relevant pages:  

Year: 2022