DocumentCode
2204797
Title
A framework for partial data flow analysis
Author
Gupta, Rajiv ; Soffa, Mary Lou
Author_Institution
Dept. of Comput. Sci., Pittsburgh Univ., PA, USA
fYear
1994
fDate
19-23 Sep 1994
Firstpage
4
Lastpage
13
Abstract
Although data flow analysis was first developed for use in compilers, its usefulness is now recognized in many software tools. Because of its compiler origins, the computation of data flow for software tools is based on the traditional exhaustive data flow framework. However, although this framework is useful for computing data flow for compilers, it is not the most appropriate for software tools, particularly those used in the maintenance stage. In maintenance, testing and debugging is typically performed in response to program changes. As such, the data flow required is demand driven from the changed program points. Rather than compute the data flow exhaustively using the traditional data flow frame work, we present a framework for partial analysis. The framework includes a specification language enabling the specification of the demand driven data flow desired by a user. From the specification, a partial analysis algorithm is automatically generated using an L-attributed definition for the grammar of the specification language. A specification of a demand driven data flow problem expresses characteristics that define the kind of traversal needed in the partial analysis and the type of dependencies to be captured. The partial analyses algorithms are efficient in that only as much of the program is analyzed as actually needed, thus reducing the time and space requirements over exhaustively computing the data flow information. The algorithms are shown to be useful when debugging and testing programs during maintenance
Keywords
formal specification; program compilers; program debugging; program testing; software maintenance; software tools; systems analysis; L-attributed definition; compilers; formal specification; grammar; partial data flow analysis; program changes; program debugging; program testing; software maintenance; software tools; specification language; Compilers; Software debugging; Software design/development; Software maintenance; Software requirements and specifications; Software testing; Software tools; System analysis and design;
fLanguage
English
Publisher
ieee
Conference_Titel
Software Maintenance, 1994. Proceedings., International Conference on
Conference_Location
Victoria, BC
Print_ISBN
0-8186-6330-8
Type
conf
DOI
10.1109/ICSM.1994.336794
Filename
336794
Link To Document