|Authors||L. Moonen, T. G. Rolfsnes, D. Binkley and S. Di Alesio|
|Title||Data set for the paper What are the Effects of History Length and Age on Mining Software Change Impact?|
|Project(s)||evolveIT: Evidence-Based Recommendations to Guide the Evolution of Component-Based Product Families, The Certus Centre (SFI)|
|Year of Publication||2018|
|Keywords||association rule mining, change impact analysis, evolutionary coupling, parameter tuning|
Replication package for the paper What are the Effects of History Length and Age on Mining Software Change Impact? Leon Moonen, Thomas Rolfsnes, David Binkley and Stefano di Alesio. In Journal of Empirical Software Engineering (EMSE), 2018, Springer. https://doi.org/10.1007/s10664-017-9588-z
The goal of Software Change Impact Analysis is to identify artifacts (typically source-code files or individual methods therein) potentially affected by a change. Recently, there has been increased interest in mining software change impact based on evolutionary coupling. A particularly promising approach uses association rule mining to uncover potentially affected artifacts from patterns in the system’s change history. Two main considerations when using this approach are the history length, the number of transactions from the change history used to identify the impact of a change, and history age, the number of transactions that have occurred since patterns were last mined from the history. Although history length and age can significantly affect the quality of mining results, few guidelines exist on how to best select appropriate values for these two parameters.
In this paper, we empirically investigate the effects of history length and age on the quality of change impact analysis using mined evolutionary coupling. Specifically, we report on a series of systematic experiments using three state-of-the-art mining algorithms that involve the change histories of two large industrial systems and 17 large open source systems. In these experiments, we vary the length and age of the history used to mine software change impact, and assess how this affects precision and applicability. Results from the study are used to derive practical guidelines for choosing history length and age when applying association rule mining to conduct software change impact analysis.