Formal validation and verification of space flight software using statechart-assertions and runtime execution monitoring

Systems of systems must rely on a sound validation and verification process due to their inherent complexity. This paper presents the results of a formal computer-aided validation and verification of critical time-constrained requirements of the Brazilian Satellite Launcher flight software. It describes the entire specification, validation, and verification process that begins with a system requirement as a natural language specification, followed by the creation and computer-aided validation of UML statechart-formal specification assertions, and ends with the log file based runtime verification. These log files were executed as JUnit tests against the assertions. The verification and validation of the flight software uncovered inaccuracies in the requirements understanding and implementation. The results also confirmed the importance of having computer-aided tools deeply integrated into the verification and validation process, supporting requirement behavioral validation and verification of requirements implementation on the hardware and software platforms on which these systems run.

[1]  Doron Drusinsky,et al.  Modeling and verification using UML statecharts - a working guide to reactive system design, runtime monitoring and execution-based model checking , 2006 .

[2]  W. de Castro Leite Filho,et al.  Hardware-in-Loop Simulation of Brazilian Launcher VLS , 1997 .

[3]  James Bret Michael,et al.  Verification and Validation for Trustworthy Software Systems , 2011, IEEE Software.

[4]  Kent Beck,et al.  Test-infected: programmers love writing tests , 2000 .

[5]  W. de Castro Leite Filho Control System of Brazilian Launcher , 2000 .

[6]  Mats Per Erik Heimdahl A Case for Specification Validation , 2005, VSTTE.

[7]  John Kelly,et al.  Experiences Using Lightweight Formal Methods for Requirements Modeling , 1998, IEEE Trans. Software Eng..

[8]  Mats Per Erik Heimdahl,et al.  Specification-based prototyping for embedded systems , 1999, ESEC/FSE-7.

[9]  Brigitte Kaldeich-Schürmann 4th ESA International Conference on Spacecraft Guidance, Navigation, and Control Systems : and tutorial on modern and robust control, theory, tools and applications, 18-21 October 1999, ESTEC, Noordwijk, The Netherlands , 2000 .

[10]  Doron Drusinsky,et al.  Creating and Validating Embedded Assertion Statecharts , 2007, IEEE Distributed Systems Online.

[11]  Gabor Karsai,et al.  An Experimental Model-Based Rapid Prototyping Environment for High-Confidence Embedded Software , 2009, 2009 IEEE/IFIP International Symposium on Rapid System Prototyping.

[12]  Doron Drusinsky,et al.  Verification of timing properties in rapid system prototyping , 2003, 14th IEEE International Workshop on Rapid Systems Prototyping, 2003. Proceedings..