Email and Links:My current research revolves around my Marie Skłodowska-Curie Actions Postdoctoral Fellowship: Control Theoretical Testing of Cyber-Physical Systems (ConTestCPS). The project is building a bridge between software and control engineering for the V&V of CPS on two levels: (i) the testing of control-theoretical design assumptions, and (ii) the frequency-domain extension of CPS specification languages.
My main contribution in the are of Testing of CPS is the concept of design-assumptions testing. This approach aims at integrating control-theoretical guarantees and models into the CPS testing process. When developing control algorithms, control engineers can offer formal guarantees about the system’s behaviour. However, these guarantees depend on the validity of the mathematical models used to represent the CPS’s physical dynamics and control algorithms. Design-assumptions testing aims to generate execution scenarios that intentionally violate these models. The core hypothesis is that, when the models are valid, control-theoretical guarantees suffice, and testing is unnecessary. Conversely, when the models are invalidated, no a priori guarantees can be provided, and empirical verification through testing becomes essential. This approach avoids redundant test cases where control engineering already provides performance guarantees and instead focuses testing efforts on scenarios where the system’s behaviour cannot be predicted in advance.
During my PhD at Lund University, in Sweden, I collaborated with Bitcraze to investigate the impact of using different testing setups (model-, software-, hardware-, real-world-, in-the-loop) on the testing of CPS.
In my Stress Testing Control Loops in Cyber-Physical Systems paper, I was the first to exploit the use of the frequency-domain representation of signals to enhance test-case generation for CPS. Now I am continuing my work on this direction as part of my ConTestCPS project.
Control algorithms are traditionally designed under the assumption that they execute at a fixed, constant rate (yes, this is closely related to the design-assumptions mentioned above!). However, to ensure timing guarantees, this assumption can lead to overly conservative design of the underlying real-time system, while still leaving systems vulnerable to timing faults that degrade performance.
Self-adaptive software systems (SAS) are software systems capable of monitoring their own behaviour and autonomously taking actions to maintain stable performance under changing conditions. Testing such systems is difficult because of the intrinsic uncertainty that characterises their execution. I have explored how to test such systems by leveraging scenario theory, a mathematical framework for solving optimization problems under uncertainty and obtain probabilistic guarantees on SAS performance.