Use of MM-Paths in constructive software development
Systems such as nuclear reactors, weapons systems, and real-time switching systems present a variety of problems for conventional software development. In addition to the sheer magnitude of these systems, high reliability requirements and deep complexities best characterized by Petri nets demand improvements in specification, design, and testing. Specification of such systems is considered: traditional functional decomposition is shown to be inadequate, as is the approach based on Finite State Machines. A rigorous form of process descriptions is developed here; these are demonstrated to have the same expressive power as Petri nets. Use of these process descriptions as a specification technique leads naturally to a truly intermediate level concept, the MM-path, which is the basis of the development methodology proposed here. This methodology is highly constructive in the sense that information needed in later phases is used to populate a database structured by the process description and MM-Path concepts. Sample queries are given to illustrate the use of the database in the software testing phases. Test coverage metrics are developed for the unit, integration, and system levels of software testing. Existing unit test coverage metrics are shown to be upper bounds to the unit test coverage metrics defined here. A lattice of four integration test coverage metrics is defined in terms of MM-Paths, and MM-Paths are used to extend the concepts of path analysis to system level testing.
- Research Organization:
- Arizona State Univ., Tempe (USA)
- OSTI ID:
- 5548821
- Resource Relation:
- Other Information: Thesis (Ph. D.)
- Country of Publication:
- United States
- Language:
- English
Similar Records
Reducing Information Overload in Large Seismic Data Sets
Global root traits (GRooT) database