Some experience with DAVE: a Fortran program analyzer

This paper describes DAVE, an automatic program testing aid which performs a static analysis of Fortran programs. DAVE analyzes the data flows both within and across subprogram boundaries of Fortran programs, and is able to detect occurrences of uninitialized and dead variables in such programs. The paper shows how this capability facilitates the detection of a wide variety of errors, many of which are often quite subtle. The central analytic mechanism in DAVE is a depth-first search procedure which enables DAVE to execute efficiently. Some experiences with DAVE are described and evaluated and some future work is projected.

[1]  D. I. Good,et al.  An interactive program verification system , 1975, IEEE Transactions on Software Engineering.

[2]  C. V. Ramamoorthy,et al.  Testing large software with automated software evaluation systems , 1975 .

[3]  Harlan D. Mills,et al.  How to write correct programs and know it , 1975, Reliable Software.

[4]  James J. Horning,et al.  Language design for programming reliability , 1975, IEEE Transactions on Software Engineering.

[5]  F. T. Baker,et al.  Chief Programmer Team Management of Production Programming , 1972, IBM Syst. J..

[6]  Edsger W. Dijkstra,et al.  Notes on structured programming , 1970 .

[7]  E. F. Miller,et al.  Automated generation of testcase datasets , 1975, Reliable Software.

[8]  Niklaus Wirth,et al.  An assessment of the programming language pascal , 1975, IEEE Transactions on Software Engineering.

[9]  Robert Balzer,et al.  EXDAMS: extendable debugging and monitoring system , 1969, AFIPS '69 (Spring).

[10]  Leon J Osterweil,et al.  Data Flow Analysis as an Aid in Documentation, Assertion, Generation, Validation, and Error Detection ; CU-CS-055-74 , 1974 .

[11]  Leon J. Osterweil,et al.  Dave—a validation error detection and documentation system for fortran programs , 1976, Softw. Pract. Exp..

[12]  C. V. Ramamoorthy,et al.  Testing large software with automated software evaluation systems , 1975, IEEE Transactions on Software Engineering.

[13]  Richard E. Fairley An experimental program-testing facility , 1975, IEEE Transactions on Software Engineering.