An 80-20 Analysis of Buggy and Non-buggy Refactorings in Open-Source Commits

Counsell, Steve and Nowack, Vesna and Hall, Tracy and Bowes, David and Haraldsson, Saemundur and Winter, Emily and Woodward, John (2023) An 80-20 Analysis of Buggy and Non-buggy Refactorings in Open-Source Commits. In: Proceedings - 48th Euromicro Conference on Software Engineering and Advanced Applications, SEAA 2022 :. Proceedings - 48th Euromicro Conference on Software Engineering and Advanced Applications, SEAA 2022 . Institute of Electrical and Electronics Engineers Inc., ESP, pp. 197-200. ISBN 9781665461528

Full text not available from this repository.

Abstract

In this short paper, we explore the Pareto principle, sometimes known as the '80-20' rule as part of the refactoring process. We explore five frequently applied refactorings, namely extract method, extract variable, rename variable, rename method and change variable type from a data set of forty open-source systems and nearly two hundred thousand refactorings. We address two key research questions. Firstly, do 80% of 'buggy' refactorings (where a refactoring has induced a bug fix) arise from just 20% of commits and, secondly, does the same rule apply to 'non-buggy' refactorings when applied to the same systems? To facilitate our analysis, we used refactoring and bug data from a study by Di Penta et al. Results showed that refactorings inducing bugs were clustered around a more concentrated set of commits than refactorings that did not induce bugs. One refactoring 'change variable type' stood out - it almost conformed to an 80-20 rule. The take-away message is, as the saying goes, that too much of a 'good' thing [refactoring] could actually be a 'bad' thing.

Item Type:
Contribution in Book/Report/Proceedings
Uncontrolled Keywords:
/dk/atira/pure/subjectarea/asjc/1700/1702
Subjects:
?? 80-20 analysisbugsempiricalrefactoringartificial intelligencesoftwaresafety, risk, reliability and quality ??
ID Code:
230345
Deposited By:
Deposited On:
25 Nov 2025 14:00
Refereed?:
Yes
Published?:
Published
Last Modified:
25 Nov 2025 23:10