Whole program path-based dynamic impact analysis
Citations Over TimeTop 10% of 2003 papers
Abstract
Impact analysis, determining when a change in one part of a program affects other parts of the program, is time-consuming and problematic. Impact analysis is rarely used to predict the effects of a change, leaving maintainers to deal with consequences rather than working to a plan. Previous approaches to impact analysis involving analysis of call graphs, and static and dynamic slicing, exhibit several tradeoffs involving computational expense, precision, and safety, require access to source code, and require a relatively large amount of effort to re-apply as software evolves. This paper presents a new technique for impact analysis based on whole path profiling, that provides a different set of cost-benefits tradeoffs - a set which can potentially be beneficial for an important class of predictive impact analysis tasks. The paper presents the results of experiments that show that the technique can predict impact sets that are more accurate than those computed by call graph analysis, and more precise (relative to the behavior expressed in a program's profile) than those computed by static slicing.
Related Papers
- → Practical change impact analysis based on static program slicing for industrial software systems(2011)120 cited
- → Static Backward Demand-Driven Slicing(2014)15 cited
- → Practical change impact analysis based on static program slicing for industrial software systems(2012)14 cited
- → Using Dynamic Information in the Interprocedural Static Slicing of Binary Executables(2005)11 cited
- → Re-tooling Code Structure Based Analysis with Model-Driven Program Slicing for Software Maintenance(2012)