Conference Paper (published)
Details
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.
Status | Published |
---|---|
Funders | Engineering and Physical Sciences Research Council |
Publication date | 31/08/2022 |
Publication date online | 16/01/2023 |
Publisher | IEEE |
Conference | 2022 48th Euromicro Conference on Software Engineering and Advanced Applications (SEAA) |
Conference location | Gran Canaria, Spain |
Dates | – |
People (1)
Lecturer, Computing Science