Cyber-Physical Systems (CPSs) are often safety-critical and deployed in uncertain environments. Identifying scenarios where CPSs do not comply with requirements is fundamental but difficult due to the multidisciplinary nature of CPSs. We investigate the testing of control-based CPSs, where control and software engineers develop the software collaboratively. Control engineers make design assumptions during system development to leverage control theory and obtain guarantees on CPS behaviour. In the implemented system, however, such assumptions are not always satisfied, and their falsification can lead to guarantees loss. We define stress testing of control-based CPSs as generating tests to falsify such design assumptions. We highlight different types of assumptions, focusing on the use of linearised physics models. To generate stress tests falsifying such assumptions, we leverage control theory to qualitatively characterise the input space of a control-based CPS. We propose a novel test parametrisation for control-based CPSs and use it with the input space characterisation to develop a stress testing approach. We evaluate our approach on three case study systems, including a drone, a continuous-current motor (in five configurations), and an aircraft.Our results show the effectiveness of the proposed testing approach in falsifying the design assumptions and highlighting the causes of assumption violations.
翻译:信息物理系统(CPS)通常具有安全关键性,并部署在不确定环境中。识别CPS不满足需求的场景至关重要,但由于CPS的多学科特性,这一任务极具挑战性。本研究聚焦于基于控制的CPS测试,其中控制工程师与软件工程师协作开发软件。控制工程师在系统开发过程中做出设计假设,以借助控制理论获取CPS行为的保障。然而,在实现系统中,这些假设并非总能成立,其失效可能导致保障缺失。我们将基于控制的CPS压力测试定义为生成测试用例以证伪此类设计假设的过程。我们重点分析了不同类型假设,特别关注线性化物理模型的使用。为生成证伪此类假设的压力测试,我们利用控制理论对基于控制的CPS输入空间进行定性刻画。我们提出了一种新颖的基于控制CPS测试参数化方法,并利用输入空间刻画特性开发了压力测试方案。通过三个案例系统(包括无人机、五种配置的直流电机及飞行器)评估表明,所提测试方法能有效证伪设计假设,并揭示假设违反的根本原因。