[en] Debugging Cyber-Physical System models is often challenging, as it requires identifying a potentially long, complex and heterogenous combination of events that resulted in a violation of the expected behavior of the system. In this paper we present CPSDebug, a tool for supporting designers in the debugging of failures in MAT- LAB Simulink/Stateflow models. CPSDebug implements a gray-box approach that combines testing, specification mining, and failure analysis to identify the causes of failures and explain their propagation in time and space. The evaluation of the tool, based on multiple usage scenarios and faults and direct feedback from engineers, shows that CPSDebug can effectively aid engineers during debugging tasks.
Disciplines :
Computer science
Author, co-author :
Bartocci, Ezio; Technische Universität Wien = Vienna University of Technology - TU Vienna
Manjunath, Niveditha; Technische Universität Wien = Vienna University of Technology - TU Vienna
Mariani, Leonardo; Università degli Studi di Milano - Bicocca
Mateis, Cristinel; AIT Austrian Institute of Technology
Ničković; AIT Austrian Institute of Technology
PASTORE, Fabrizio ; University of Luxembourg > Interdisciplinary Centre for Security, Reliability and Trust (SNT) > SVV
External co-authors :
yes
Language :
English
Title :
CPSDebug: a tool for explanation of failures in cyber-physical systems
Publication date :
2020
Event name :
INTERNATIONAL SYMPOSIUM ON SOFTWARE TESTING AND ANALYSIS
Event date :
from 18-07-2020 to 22-07-2020
Audience :
International
Main work title :
CPSDebug: a tool for explanation of failures in cyber-physical systems
Publisher :
Association for Computing Machinery, New York, United States
ISBN/EAN :
9781450380089
Collection name :
Proceedings of the 29th ACM SIGSOFT International Symposium on Software Testing and Analysis
Rui Abreu, Peter Zoeteweij, and Arjan J. C. van Gemund. 2007. On the Accuracy of Spectrum-based Fault Localization. In Testing: Academic and Industrial Conference Practice and Research Techniques. IEEE, 89-98.
Anton Babenko, Leonardo Mariani, and Fabrizio Pastore. 2009. AVA: Automated Interpretation of Dynamically Detected Anomalies. In Proceedings of the Eighteenth International Symposium on Software Testing and Analysis. ACM, 237-248.
Ezio Bartocci, Thomas Ferrère, Niveditha Manjunath, and Dejan Nickovic. 2018. Localizing Faults in Simulink/Stateflow Models with STL. In Proceedings of the 21st International Conference on Hybrid Systems: Computation and Control. ACM, 197-206.
Ezio Bartocci, Niveditha Manjunath, Leonardo Mariani, Cristinel Mateis, and Dejan Nickovic. 2019. Automatic Failure Explanation in CPS Models. In Software Engineering and Formal Methods (LNCS), Vol. 11724. Springer, 69-86.
Mitra T. Befrouei, Chao Wang, and Georg Weissenbacher. 2016. Abstraction and Mining of Traces to Explain Concurrency Bugs. Formal Methods in System Design 49, 1-2 (2016), 1-32.
Jyotirmoy V. Deshmukh, Xiaoqing Jin, Rupak Majumdar, and Vinayak S. Prabhu. 2018. Parameter optimization in control software using statistical fault localization techniques. In Proceedings of the 9th ACM/IEEE International Conference on Cyber-Physical Systems. IEEE, 220-231.
Michael D. Ernst, Jeff H. Perkins, Philip J. Guo, Stephen McCamant, Carlos Pacheco, Matthew S. Tschantz, and Chen Xiao. 2007. The Daikon system for dynamic detection of likely invariants. Science of Computer Programming 69, 1-3 (2007), 35-45.
Jason Ghidella and Pieter Mosterman. 2005. Requirements-based testing in aircraft control design. In AIAA Modeling and Simulation Technologies Conference and Exhibit.
Bardh Hoxha, Houssam Abbas, and Georgios Fainekos. 2015. Benchmarks for Temporal Logic Requirements for Automotive Systems. In ARCH14-15. 1st and 2nd International Workshop on Applied veRification for Continuous and Hybrid Systems (EPiC Series in Computing), Vol. 34. 25-30.
Bing Liu, Lucia Lucia, Shiva Nejati, and Lionel C. Briand. 2017. Improving fault localization for Simulink models using search-based testing and prediction models. In IEEE 24th International Conference on Software Analysis, Evolution and Reengineering (SANER). IEEE Computer Society, 359-370.
Bing Liu, Lucia Lucia, Shiva Nejati, Lionel C. Briand, and Thomas Bruckmann. 2016. Localizing Multiple Faults in Simulink Models. In IEEE 23rd International Conference on Software Analysis, Evolution, and Reengineering (SANER). IEEE Computer Society, 146-156.
Bing Liu, Lucia Lucia, Shiva Nejati, Lionel C. Briand, and Thomas Bruckmann. 2016. Simulink fault localization: an iterative statistical debugging approach. Software Testing, Verification and Reliability 26, 6 (2016), 431-459.
Oded Maler and Dejan Nickovic. 2013. Monitoring properties of analog and mixed-signal circuits. Software Tools for Technology Transfer 15, 3 (2013), 247-268.
Leonardo Mariani, Fabrizio Pastore, and Mauro Pezzè. 2011. Dynamic Analysis for Diagnosing Integration Faults. IEEE Transactions on Software Engineering (TSE) 37, 4 (2011), 486-508.
Dejan Nickovic and Tomoya Yamaguchi. 2020. RTAMT: Online Robustness Monitors from STL. arXiv:2005. 11827 [cs. LO]
Chris Parnin and Alex Orso. 2011. Are automated debugging techniques actually helping programmers?. In Proceedings of the 2011 International Symposium on Software Testing and Analysis. ACM, 199-209.
Fabrizio Pastore, Leonardo Mariani, Antti E. Johannes Hyvärinen, Grigory Fedyukovich, Natasha Sharygina, Stephan Sehestedt, and Ali Muhammad. 2014. Verification-aided regression testing. In Proceedings of the 2014 International Symposium on Software Testing and Analysis. ACM, 37-48.
Fabrizio Pastore, Daniela Micucci, and Leonardo Mariani. 2017. Timed k-Tail: Automatic Inference of Timed Automata. In IEEE International Conference on Software Testing, Verification and Validation (ICST). IEEE, 401-411.
Eric Wong, Ruizhi Gao, Yihao Li, Rui Abreu, and Franz Wotawa. 2016. A Survey on Software Fault Localization. IEEE Transactions on Software Engineering 42, 8 (2016), 707-740.