New software to improve decision control of smart devices
From automatic driving systems in cars to power distribution systems, computers today are embedded in a physical environment for monitoring and control. Design of such systems has been greatly aided by advances in understanding of the interaction of the computing and physical processes. However, industries are facing a major challenge in the implementation of such complex systems; cyber-physical systems (CPSs) are required to behave appropriately. Current practices of model development are centred on model-driven engineering (MDE) techniques. MDE are machine-readable specifications and are thus more precise and less error prone. CPS models are first made simple and then incrementally extended to better reflect real-world CPSs. A key challenge is how to keep up-to-date correctness proofs when models evolve. To this end, researchers within the EU-funded project SPHINX (A co-evolution framework for model refactoring and proof adaptation in cyber-physical systems) successfully developed a verification-driven engineering (VDE) toolkit that supports model refactoring and proof adaptation. The newly developed system called SPHINX is an extensible VDE toolkit that provides textual and graphical modelling editors to describe the structure and the discrete and continuous dynamics of CPSs. Scientists also introduced model refactoring in the model-driven software development context. Proof-aware refactoring operations that perform model transformation allowed them to improve the model structure while preserving its quality characteristics. With refactoring operations, the team reordered statements, introduced conditionals, added or removed discrete/continuous behaviour and strengthened conditionals. A refinement notion was devised to prove the correctness of refactoring operations on a more abstract level. CPSs are becoming more popular and essential in the automotive, aerospace, energy and medical device industries. Project outcomes are expected to increase safety in environments with increasingly autonomous systems. Yet, SPHINX findings also highlighted the need to better understand how autonomous systems interact with their environment and what is considered to be safe and correct behaviour. The newly developed model refactoring and proof adaptation techniques, together with tutorials and modelling case studies, can further promote formal verification techniques in industries.