Cyber-physical systems are exposed to multiple uncertainties due to mixing software and hardware components that operate in complex and changing environments. Uncertainty can be critical for software performance, especially in the presence of highly dynamic changes, for instance when alterations in the physical space affect the capability of a swarm of robots to complete a task on time. Incorporating uncertainty as a first-class concept in the software development process to identify performance issues is still challenging. This talk presents two ways of handling uncertainty: (i) performance models capturing how different architectural patterns affect the performance characteristics of the evolving physical space; (ii) uncertainty-aware testing strategies to drive the test case generation process. In this way, quantitative evaluation supports software engineers in the identification of performance issues.
Joint work with Riccardo Pinciroli, Matteo Camilli, Angelo Gargantini and Patrizia Scandurra.
Join at http://imt.lu/seminar