Software Change Impact Analysis
Software Change Impact Analysis
Optimization of Object-Oriented Programs Using Static Class Hierarchy Analysis
ECOOP '95 Proceedings of the 9th European Conference on Object-Oriented Programming
Whole program Path-Based dynamic impact analysis
Proceedings of the 25th International Conference on Software Engineering
Supporting Impact Analysis and Change Propagation in Software Engineering Environments
STEP '97 Proceedings of the 8th International Workshop on Software Technology and Engineering Practice (STEP '97) (including CASE '97)
The Role of Concepts in Program Comprehension
IWPC '02 Proceedings of the 10th International Workshop on Program Comprehension
Leveraging field data for impact analysis and regression testing
Proceedings of the 9th European software engineering conference held jointly with 11th ACM SIGSOFT international symposium on Foundations of software engineering
An Empirical Comparison of Dynamic Impact Analysis Algorithms
Proceedings of the 26th International Conference on Software Engineering
Chianti: a tool for change impact analysis of java programs
OOPSLA '04 Proceedings of the 19th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Efficient and precise dynamic impact analysis using execute-after sequences
Proceedings of the 27th international conference on Software engineering
Mining Version Histories to Guide Software Changes
IEEE Transactions on Software Engineering
PASTE '07 Proceedings of the 7th ACM SIGPLAN-SIGSOFT workshop on Program analysis for software tools and engineering
The Dynamic Function Coupling Metric and Its Use in Software Evolution
CSMR '07 Proceedings of the 11th European Conference on Software Maintenance and Reengineering
Empirical Software Change Impact Analysis using Singular Value Decomposition
ICST '08 Proceedings of the 2008 International Conference on Software Testing, Verification, and Validation
Using information retrieval based coupling measures for impact analysis
Empirical Software Engineering
Change Impact Analysis Based on a Taxonomy of Change Types
COMPSAC '10 Proceedings of the 2010 IEEE 34th Annual Computer Software and Applications Conference
Using Relational Topic Models to capture coupling among classes in object-oriented software systems
ICSM '10 Proceedings of the 2010 IEEE International Conference on Software Maintenance
Blending Conceptual and Evolutionary Couplings to Support Change Impact Analysis in Source Code
WCRE '10 Proceedings of the 2010 17th Working Conference on Reverse Engineering
Vidock: a tool for impact analysis of aspect weaving on test cases
ICTSS'10 Proceedings of the 22nd IFIP WG 6.1 international conference on Testing software and systems
Using lattice of class and method dependence for change impact analysis of object oriented programs
Proceedings of the 2011 ACM Symposium on Applied Computing
Practical change impact analysis based on static program slicing for industrial software systems
Proceedings of the 33rd International Conference on Software Engineering
Integrated impact analysis for managing software changes
Proceedings of the 34th International Conference on Software Engineering
Hi-index | 0.00 |
Software change impact analysis (CIA) is a key technique to identify the potential effects caused by software changes. Given the proposed changes, most commonly used CIA techniques apply reachability analysis on the graphical representation of the software to identify their effects. They often compute a large set of potentially impacted elements with many false-positives, which will waste resource in later analysis. In addition, these techniques do not consider the interference among the proposed changes, which does exist in practice. Faced with these problems, this paper proposed a new call graph-based CIA technique, which takes the interference among multiple proposed changes into account to improve the precision of the impact results. Our proposed CIA is inspired by a natural phenomenon ''water wave propagation''. The CIA process is similar to the process of water wave propagation. First we identify the ''core'' (a special set of methods) generated by the proposed changes. Then we compute the ripple effects through propagation analysis on this core. Empirical evaluations on two real-world software projects demonstrate the effectiveness of our CIA approach. The results show that our CIA technique can predict better impact results when more changes are known, and provide an eclectic way for practical use. Moreover, it can effectively remove the false-positives at the cost of missing a few false-negatives when compared to traditional (call graph based) CIA techniques.