Proving the shalls: Early validation of requirements through formal methods

Steven P. Miller, Alan C. Tribble, Michael W Whalen, Mats Heimdahl

Research output: Contribution to journalArticlepeer-review

47 Scopus citations

Abstract

Incomplete, inaccurate, ambiguous, and vola-tile requirements have plagued the software industry since its inception. The convergence of model-based development and formal methods offers developers of safety-critical systems a powerful new approach to the early validation of requirements. This paper describes an exercise conducted to determine if formal methods could be used to validate system requirements early in the lifecycle at reasonable cost. Several hundred functional and safety requirements for the mode logic of a typical flight guidance system were captured as natural language "shall" statements. A formal model of the mode logic was written in the RSML-e language and translated into the NuSMV model checker and the PVS theorem prover using translators developed as part of the project. Each "shall" statement was manually translated into a NuSMV or PVS property and proven using these tools. Numerous errors were found in both the original requirements and the RSML-e model. This demonstrates that formal models can be written for realistic systems and that formal analysis tools have matured to the point where they can be effectively used to find errors before implementation.

Original languageEnglish (US)
Pages (from-to)303-319
Number of pages17
JournalInternational Journal on Software Tools for Technology Transfer
Volume8
Issue number4-5
DOIs
StatePublished - Aug 1 2006

Keywords

  • Formal verification
  • Model-based development
  • Software requirements

Fingerprint

Dive into the research topics of 'Proving the shalls: Early validation of requirements through formal methods'. Together they form a unique fingerprint.

Cite this