A Formal Model of Program Dependences and its Implications for Software Testing, Debugging, and Maintenance
Issue No. 09 - September (1990 vol. 16)
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/32.58784
<p>A formal, general model of program dependences is presented and used to evaluate several dependence-based software testing, debugging, and maintenance techniques. Two generalizations of control and data flow dependence, called weak and strong syntactic dependence, are introduced and related to a concept called semantic dependence. Semantic dependence models the ability of a program statement to affect the execution behavior of other statements. It is shown that weak syntactic dependence is a necessary but not sufficient condition for semantic dependence and that strong syntactic dependence is necessary but not sufficient condition for a restricted form of semantic dependence that is finitely demonstrated. These results are used to support some proposed uses of program dependences, to controvert others, and to suggest new uses.</p>
formal model; program dependences; software testing; debugging; maintenance; data flow dependence; syntactic dependence; semantic dependence; formal specification; program debugging; program testing.
A. Podgurski and L. Clarke, "A Formal Model of Program Dependences and its Implications for Software Testing, Debugging, and Maintenance," in IEEE Transactions on Software Engineering, vol. 16, no. , pp. 965-979, 1990.