2016 IEEE/ACM 5th International Workshop on Realizing Artificial Intelligence Synergies in Software Engineering (2016)
Austin, Texas, USA
May 17, 2016 to May 17, 2016
Change impact analysis (CIA) consists in predicting the impact of a code change in a software application. In this paper, the artifacts that are considered for CIA are methods of object-oriented software; the change under study is a change in the code of the method, the impact is the test methods that fail because of the change that has been performed. We propose LCIP, a learning algorithm that learns from past impacts to predict future impacts. To evaluate LCIP, we consider Java software applications that are strongly tested. We simulate 6000 changes and their actual impact through code mutations, as done in mutation testing. We find that LCIP can predict the impact with a precision of 74%, a recall of 85%, corresponding to a F-score of 64%. This shows that taking a learning perspective on change impact analysis let us achieve good precision and recall in change impact analysis.
Software, Prediction algorithms, Algorithm design and analysis, Software algorithms, Artificial intelligence, Java, Testing
Vincenzo Musco, Antonin Carette, Martin Monperrus, Philippe Preux, "A Learning Algorithm for Change Impact Prediction", 2016 IEEE/ACM 5th International Workshop on Realizing Artificial Intelligence Synergies in Software Engineering, vol. 00, no. , pp. 8-14, 2016, doi:10.1109/RAISE.2016.010