Change impact analysis for AspectJ programs

Sai Zhang, Zhongxian Gu, Yu Lin, Jianjun Zhao

Research output: Chapter in Book/Report/Conference proceedingConference contribution

37 Citations (Scopus)

Abstract

Change impact analysis is a useful technique for software evolution. It determines the effects of a source editing session and provides valuable feedbacks to the programmers for making correct decisions. Recently, many techniques have been proposed to support change impact analysis of procedural or object-oriented software, but seldom effort has been made for aspect-oriented software. In this paper we propose a new change impact analysis technique for AspectJ programs. At the core of our approach is the atomic change representation which captures the semantic differences between two versions of an AspectJ program. We also present an impact analysis model, based on AspectJ call graph construction, to determine the affected program fragments, affected tests and their responsible changes. The proposed techniques have been implemented in Celadon, a change impact analysis framework for AspectJ programs. We performed an empirical evaluation on 24 versions of eight AspectJ benchmarks. The result shows that our proposed technique can effectively perform change impact analysis and provide valuable information in AspectJ software evolution.

Original languageEnglish
Title of host publicationProceedings of the 24th IEEE International Conference on Software Maintenance, ICSM 2008
Pages87-96
Number of pages10
DOIs
Publication statusPublished - 2008
Externally publishedYes
Event24th IEEE International Conference on Software Maintenance, ICSM 2008 - Beijing, China
Duration: Sept 28 2008Oct 4 2008

Publication series

NameIEEE International Conference on Software Maintenance, ICSM

Other

Other24th IEEE International Conference on Software Maintenance, ICSM 2008
Country/TerritoryChina
CityBeijing
Period9/28/0810/4/08

All Science Journal Classification (ASJC) codes

  • Software

Fingerprint

Dive into the research topics of 'Change impact analysis for AspectJ programs'. Together they form a unique fingerprint.

Cite this