Two particularly nagging ailments faced by the computer industry today are the high cost and late delivery of software.1,2The symptoms usually surface during software debugging, testing, and integration; but the ailments themselves can most often be traced back to the program design phase and the structural characteristics of the program. The significance of program structural characteristics has been recognized for some time, as witnessed by the emergence of structured programming,3,4,a methodology that sets out to (1) reduce programming errors; (2) design an understandable, readable, and therefore maintainable program; (3) increase our ability to detect errors; and (4) prove, if only informally, that the program is correct. But there is another tool available that has usually been overlooked in the software development process: simulation.
[1]
E. Nahouraii.
Direct-Access Device Simulation
,
1974,
IBM Syst. J..
[2]
Philip H. Seaman,et al.
Simulating Operating Systems
,
1969,
IBM Syst. J..
[3]
Norman F. Schneidewind,et al.
Simulation of error detection in computer programs
,
1976,
SIML.
[4]
Norman F. Schneidewind,et al.
Structure and error detection in computer software
,
1975
.
[5]
Edsger W. Dijkstra,et al.
Notes on structured programming
,
1970
.
[6]
Edward Yourdon,et al.
Techniques of Program Structure and Design
,
1976
.
[7]
M. H. MacDougall.
Computer System Simulation: An Introduction
,
1970,
CSUR.
[8]
Fred P. Brooks,et al.
The Mythical Man-Month
,
1975,
Reliable Software.