Title :
Incremental call graph reanalysis for object-oriented software maintenance
Author :
Souter, Amie L. ; Pollock, Lori L.
Author_Institution :
Dept. of Comput. & Inf. Sci., Delaware Univ., Newark, DE, USA
Abstract :
A program´s call graph is an essential underlying structure for performing the various interprocedural analyses used in software development tools for object-oriented software systems. For interactive software development tools and software maintenance activities, the call graph needs to remain fairly precise and be updated quickly in response to software changes. The paper presents incremental algorithms for updating a call graph that has been initially constructed using the Cartesian Product Algorithm, which computes a highly precise call graph in the presence of dynamically dispatched message sends. Templates are exploited to reduce unnecessary reanalysis as software component changes occur. The preliminary empirical results from our implementation within a Java environment are encouraging. Significant time savings were observed for the incremental algorithm in comparison with an exhaustive analysis, with no loss in precision
Keywords :
Java; graph theory; interactive systems; object-oriented programming; program diagnostics; software maintenance; Cartesian Product Algorithm; Java environment; dynamically dispatched message sends; exhaustive analysis; highly precise call graph; incremental algorithm; incremental algorithms; incremental call graph reanalysis; interactive software development tools; interprocedural analyses; object-oriented software maintenance; object-oriented software systems; program call graph; software changes; software component changes; software development tools; software maintenance activities; unnecessary reanalysis; Algorithm design and analysis; Application software; Data flow computing; Flow graphs; Information analysis; Java; Performance analysis; Software libraries; Software maintenance; Software tools;
Conference_Titel :
Software Maintenance, 2001. Proceedings. IEEE International Conference on
Conference_Location :
Florence
Print_ISBN :
0-7695-1189-9
DOI :
10.1109/ICSM.2001.972787