Combining concept lattice with call graph for impact analysis
Combining concept lattice with call graph for impact analysis
复制标题
将概念格与调用图相结合进行影响分析
DOI:
10.1016/j.advengsoft.2012.07.001
复制
发表时间:
2012-11-01
影响因子:
4.8
通讯作者:
Leung, Hareton
中科院分区:
文献类型:
--
作者:
Li, Bixin;Sun, Xiaobing;Leung, Hareton
Software change impact analysis (CIA) is a key technique to identify unexpected and potential effects caused by software changes. Given a changed entity, most of current CIA techniques compute the change effect composed of some potentially impacted entities. The generated results are often of no help to the maintainers in starting the analysis of impacted entities. In this article, we combine concept lattice with call graph together to obtain a ranked list of potentially impacted methods from the proposed changed methods and/or classes. These impacted methods are ranked based on the hierarchical feature of concept lattice, represented by an impact factor, which can then be used to prioritize these methods to be inspected. Case studies based on four real-world programs show that our approach can improve the precision of the impact result without severely decreasing its recall, when compared with results from either concept lattice or call graph used independently. In addition, the predicted impacted methods with higher impact factor values are also shown to have higher probability to be affected by the changes. Our study also shows that our approach is better than the JRipples CIA approach in removing the false-positives, but at the cost of losing more false-negatives and much more time overhead. (C) 2012 Elsevier Ltd. All rights reserved.