DocumentCode :
3440611
Title :
Variable precision reaching definitions analysis for software maintenance
Author :
Tonella, P. ; Antoniol, G. ; Fiutem, R. ; Merlo, E.
Author_Institution :
Ist. per la Ricerca Sci. e Tecnologica, Trento, Italy
fYear :
1997
fDate :
17-19 Mar 1997
Firstpage :
60
Lastpage :
67
Abstract :
A flow analyzer can be very helpful in the process of program understanding, by providing the programmer with different views of the code. As the documentation is often incomplete or inconsistent, it is extremely useful to extract the information a programmer may need directly from the code. Program understanding activities are interactive, thus program analysis tools may be asked for quick answers by the maintainer. Therefore the control on the trade-off between accuracy and efficiency should be given to the user. The paper presents an approach to interprocedural reaching definitions flow analysis based on three levels of precision depending on the sensitivity to the calling context and the control flow. A lower precision degree produces an overestimate of the data dependencies in a program. The result is anyhow conservative (all dependencies which hold are surely reported), and definitely faster than the more accurate counterparts. A tool supporting reaching definition analysis in the three variants has been developed. The results on a test suite show that three orders of magnitude can be gained in execution times by the less accurate analysis, but 57.4% extra dependencies are on average added. The intermediate variant is much more precise (1.6% extra dependencies), but gains less in times (one order of magnitude)
Keywords :
data flow analysis; programming; reachability analysis; reverse engineering; software maintenance; software tools; accuracy; calling context; code views; control flow; data dependencies; documentation; efficiency; execution times; flow analyzer; information extraction; interprocedural reaching definitions flow analysis; program analysis tools; program understanding; programmer; software maintenance; variable precision reaching definitions analysis; Algorithm design and analysis; Couplings; Data mining; Debugging; Electric variables control; Flow graphs; Optimizing compilers; Software algorithms; Software maintenance; Testing;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Software Maintenance and Reengineering, 1997. EUROMICRO 97., First Euromicro Conference on
Conference_Location :
Berlin
Print_ISBN :
0-8186-7892-5
Type :
conf
DOI :
10.1109/CSMR.1997.583007
Filename :
583007
Link To Document :
بازگشت