Automatic analysis of consistency between requirements and designs

Citation
M. Chechik et J. Gannon, Automatic analysis of consistency between requirements and designs, IEEE SOFT E, 27(7), 2001, pp. 651-672
Citations number
66
Categorie Soggetti
Computer Science & Engineering
Journal title
IEEE TRANSACTIONS ON SOFTWARE ENGINEERING
ISSN journal
00985589 → ACNP
Volume
27
Issue
7
Year of publication
2001
Pages
651 - 672
Database
ISI
SICI code
0098-5589(200107)27:7<651:AAOCBR>2.0.ZU;2-F
Abstract
Writing requirements in a formal notation permits automatic assessment of s uch properties as ambiguity. consistency, and completeness. However, verify ing that the properties expressed in requirements are preserved in other so ftware life cycle artifacts remains difficult. The existing techniques eith er require substantial manual effort and skill or suffer from exponential e xplosion of the number of states in the generated state spaces. "Light-weig ht" formal methods is an approach to achieve scalability in fully automatic verification by checking an abstraction of the system for only certain pro perties. This paper describes light-weight techniques for automatic analysi s of consistency between software requirements (expressed in SC R) and deta iled designs in low-deg ree-polynomial time, achieved at the expense of usi ng imprecise data-flow analysis techniques. A specification language SCR de scribes the systems as state machines with event-driven transitions. We def ine detailed designs to be consistent with their SCR requirements if they c ontain exactly the same transitions. We have developed a language for speci fying detailed designs, an analysis technique to create a model of a design through data-flow analysis of the language constructs, and a method to aut omatically generate and check properties derived from requirements to ensur e a design's consistency with them. These ideas are implemented in a tool n amed CORD, which we used to uncover errors in designs of some existing syst ems.