Kim Herzig and Andreas Zeller
When interacting with version control systems, developers often commit unrelated or loosely related code changes in a single transaction. When analyzing the version history, such tangled changes will make all changes to all modules appear related, possibly compromising the resulting analyses through noise and bias. In an investigation of five open-source JAVA projects, we found up to 15% of all bug fixes to consist of multiple tangled changes. Using a multi-predictor approach to untangle changes, we show that on average at least 16.6% of all source files are incorrectly associated with bug reports. We recommend better change organization to limit the impact of tangled changes.
In Proceedings of the 10th Working Conference on Mining Software Repositories
© IEEE Press, 2013. This is the author’s version of the work. It is posted here by permission of IEEE Press for your personal use. Not for redistribution. The definitive version was published in Proceedings of the 10th Working Conference on Mining Software Repositories.