Back to Search Start Over

Prioritizing Change-Impact Analysis via Semantic Program-Dependence Quantification.

Authors :
Cai, Haipeng
Santelices, Raul
Jiang, Siyuan
Source :
IEEE Transactions on Reliability; Sep2016, Vol. 65 Issue 3, p1114-1132, 19p
Publication Year :
2016

Abstract

Software is constantly changing. To ensure the quality of this process, when preparing to change a program, developers must first identify the main consequences and risks of modifying the program locations they intend to change. This activity is called change-impact analysis. However, existing impact analysis suffers from two major problems: coarse granularity and large size of the resulting impact sets. Finer-grained analyses such as slicing give more detailed impact sets which, however, are also even larger in size. While various impact-set reduction approaches have been proposed at different levels of granularity, the challenge persists as very-large impact sets are still produced, impeding the adoption of impact analysis due to the great costs of inspecting those impact sets. To address these challenges, we present a novel dynamic-analysis technique called SensA which combines sensitivity analysis and execution differencing. SensA not only provides fine-grained (statement-level) impact sets but also prioritizes potential impacts via semantic-dependence quantification for program slices. We evaluated the benefits of impact prioritization using SensA with respect to static and dynamic forward slicing via an extensive empirical study of open-source Java applications and three case studies. Our results show that SensA can offer much better cost-effectiveness than slicing in assisting developers with impact inspection and fault cause-effect understanding. [ABSTRACT FROM AUTHOR]

Details

Language :
English
ISSN :
00189529
Volume :
65
Issue :
3
Database :
Complementary Index
Journal :
IEEE Transactions on Reliability
Publication Type :
Academic Journal
Accession number :
117881089
Full Text :
https://doi.org/10.1109/TR.2015.2481000