DocumentCode :
700372
Title :
Impact analysis based on a global hierarchical Object Graph
Author :
Abi-Antoun, Marwan ; Yibin Wang ; Khalaj, Ebrahim ; Giang, Andrew ; Rajlich, Vaclav
Author_Institution :
Dept. of Comput. Sci., Wayne State Univ., Detroit, MI, USA
fYear :
2015
fDate :
2-6 March 2015
Firstpage :
221
Lastpage :
230
Abstract :
During impact analysis on object-oriented code, statically extracting dependencies is often complicated by subclassing, programming to interfaces, aliasing, and collections, among others. When a tool recommends a large number of types or does not rank its recommendations, it may lead developers to explore more irrelevant code. We propose to mine and rank dependencies based on a global, hierarchical points-to graph that is extracted using abstract interpretation. A previous whole-program static analysis interprets a program enriched with annotations that express hierarchy, and over-approximates all the objects that may be created at runtime and how they may communicate. In this paper, an analysis mines the hierarchy and the edges in the graph to extract and rank dependencies such as the most important classes related to a class, or the most important classes behind an interface. An evaluation using two case studies on two systems totaling 10,000 lines of code and five completed code modification tasks shows that following dependencies based on abstract interpretation achieves higher effectiveness compared to following dependencies extracted from the abstract syntax tree. As a result, developers explore less irrelevant code.
Keywords :
object-oriented methods; program diagnostics; trees (mathematics); abstract interpretation; abstract syntax tree; code modification; dependency extraction; dependency ranking; hierarchical object graph; impact analysis; object-oriented code; whole-program static analysis; Abstracts; Computational modeling; Context; Microwave integrated circuits; Runtime; Syntactics;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Software Analysis, Evolution and Reengineering (SANER), 2015 IEEE 22nd International Conference on
Conference_Location :
Montreal, QC
Type :
conf
DOI :
10.1109/SANER.2015.7081832
Filename :
7081832
Link To Document :
بازگشت