AuthorsL. Moonen, D. Binkley and S. Pugh
TitleOn Adaptive Change Recommendation
AfilliationSoftware Engineering
Project(s)evolveIT: Evidence-Based Recommendations to Guide the Evolution of Component-Based Product Families, Data-Driven Software Engineering Department
Publication TypeJournal Article
Year of Publication2020
JournalJournal of Systems and Software
Date Published02/2020
Keywordsassociation rule mining, change impact analysis, change recommendation, evolutionary coupling

As the complexity of a software system grows, it becomes harder for developers to be aware of all the dependencies between its artifacts (e.g., files or methods). Change impact analysis helps to overcome this challenge, by recommending relevant source-code artifacts related to a developer’s current changes. Association rule mining has shown promise in determining change impact by uncovering relevant patterns in the system’s change history.

State-of-the-art change impact mining typically uses a change history of tens of thousands of transactions. For efficiency, targeted association rule mining constrains the transactions used to those potentially relevant to answering a particular query. However, it still considers all the relevant transactions in the history.

This paper presents Atari, a new adaptive approach that further constrains targeted association rule mining by considering a dynamic selection of the relevant transactions. Our investigation of adaptive change impact mining empirically studies fourteen algorithm variants. We show that adaptive algorithms are viable, can be just as applicable as the start-of-the-art complete-history algorithms, and even outperform them for certain queries. However, more important than this direct comparison, our investigation motivates and lays the groundwork for the future study of adaptive techniques, and their application to challenges such as on-the-fly impact analysis at the GitHub-scale.

Citation Keymoonen:2020:adaptive:JSS

Contact person