FCA-CIA: An approach of using FCA to support cross-level change impact analysis for object oriented Java']Java programs

被引:17
作者
Li, Bixin [1 ,3 ]
Sun, Xiaobing [1 ,2 ]
Keung, Jacky [4 ]
机构
[1] Southeast Univ, Sch Comp Sci & Engn, Nanjing, Jiangsu, Peoples R China
[2] Yangzhou Univ, Sch Informat Engn, Yangzhou, Peoples R China
[3] Chinese Acad Sci, State Key Lab Comp Sci, Inst Software, Beijing 100864, Peoples R China
[4] City Univ Hong Kong, Dept Comp Sci, Hong Kong, Hong Kong, Peoples R China
基金
中国国家自然科学基金;
关键词
Formal concept analysis; Change impact analysis; Lattice of class and method dependence; Impact factor; FORMAL CONCEPT ANALYSIS; SOURCE CODE; FRAMEWORK;
D O I
10.1016/j.infsof.2013.02.003
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Background: Software Change Impact Analysis (CIA) is an essential technique in software engineering to identifying the potential influences of a change, or determining change entities to accomplish such a change. The results derived, in many cases, ambiguous for the software maintainers, introduces the problem of unclear starting point of these impacted entities. Objective: In an attempt to address this issue, this work proposes a novel approach for cross-level CIA, producing a ranked list of potentially impacted methods derived from class-level changes. Moreover, the approach of ranking the impact results is expected to be effective for maintainers to distinguish the probability of the impacted methods to be false-positives. Such results provide an eclectic approach for CIA. Method: The approach, FCA-CIA, uses formal concept analysis (FCA) to produce an intermediate representation of the program based on the static analysis of the source code. The representation is called Lattice of Class and Method Dependence (LoCMD). FCA-CIA takes the changed classes in the change set as a whole, and determines the reachable set from the changed classes on the LoCMD. Based on the hierarchical property of the LoCMD, the impacted methods are ranked according to the impact factor metric which corresponds to the priority of these methods to be inspected. Result: Empirical evaluations on four real-world software projects demonstrate the effectiveness of the impact factor metric and the FCA-CIA technique. The result shows the predicted impacted methods with higher impact factor values are more likely to be affected by the changes. Our study also shows that the FCA-CIA technique generates more accurate impact set than the JRipples and ICP coupling based CIA technique. (C) 2013 Elsevier B.V. All rights reserved.
引用
收藏
页码:1437 / 1449
页数:13
相关论文
共 68 条
[1]   Predicting Change Impact in Object-Oriented Applications with Bayesian Networks [J].
Abdi, M. K. ;
Lounis, H. ;
Sahraoui, H. .
2009 IEEE 33RD INTERNATIONAL COMPUTER SOFTWARE AND APPLICATIONS CONFERENCE, VOLS 1 AND 2, 2009, :234-+
[2]   Debugging temporal specifications with concept analysis [J].
Ammons, G ;
Mandelin, D ;
Larus, JR ;
Bodík, R .
ACM SIGPLAN NOTICES, 2003, 38 (05) :182-195
[3]  
Anh Tuan Nguyen, 2011, 2011 26th IEEE/ACM International Conference on Automated Software Engineering, P263, DOI 10.1109/ASE.2011.6100062
[4]  
[Anonymous], PRACTICAL NONPARAMET
[5]  
[Anonymous], P ACM SIGSOFT S FDN
[6]  
[Anonymous], P 8 ACM SIGPLAN SIGS
[7]  
[Anonymous], P WORKSH 5 C ART INT
[8]  
[Anonymous], P INT C SOFTW TEST V
[9]  
Apiwattanapong T, 2005, PROC INT CONF SOFTW, P432
[10]   Generating a catalog of unanticipated schemas in class hierarchies using Formal Concept Analysis [J].
Arevalo, Gabriela ;
Ducasse, Stephane ;
Gordillo, Silvia ;
Nierstrasz, Oscar .
INFORMATION AND SOFTWARE TECHNOLOGY, 2010, 52 (11) :1167-1187