TY - GEN
T1 - Change impact analysis for AspectJ programs
AU - Zhang, Sai
AU - Gu, Zhongxian
AU - Lin, Yu
AU - Zhao, Jianjun
N1 - Copyright:
Copyright 2009 Elsevier B.V., All rights reserved.
PY - 2008
Y1 - 2008
N2 - 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.
AB - 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.
UR - http://www.scopus.com/inward/record.url?scp=57849114893&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=57849114893&partnerID=8YFLogxK
U2 - 10.1109/ICSM.2008.4658057
DO - 10.1109/ICSM.2008.4658057
M3 - Conference contribution
AN - SCOPUS:57849114893
SN - 9781424426140
T3 - IEEE International Conference on Software Maintenance, ICSM
SP - 87
EP - 96
BT - Proceedings of the 24th IEEE International Conference on Software Maintenance, ICSM 2008
T2 - 24th IEEE International Conference on Software Maintenance, ICSM 2008
Y2 - 28 September 2008 through 4 October 2008
ER -