Abstract
The sound identification of refactoring opportunities is still an open problem in software engineering. Recent studies have shown the effectiveness of machine learning models in recommending methods that should undergo different refactoring operations. In this work, we experiment with such approaches to identify methods that should undergo an Extract Method refactoring, in the context of ING, a large financial organization. More specifically, we (i) compare the code metrics distributions, which are used as features by the models, between open-source and ING systems, (ii) measure the accuracy of different machine learning models in recommending Extract Method refactorings, (iii) compare the recommendations given by the models with the opinions of ING experts. Our results show that the feature distributions of ING systems and open-source systems are somewhat different, that machine learning models can recommend Extract Method refactorings with high accuracy, and that experts tend to agree with most of the recommendations of the model.
Original language | English |
---|---|
Title of host publication | ESEC/FSE 2021 - Proceedings of the 29th ACM Joint Meeting European Software Engineering Conference and Symposium on the Foundations of Software Engineering |
Editors | Diomidis Spinellis |
Pages | 1337-1347 |
Number of pages | 11 |
ISBN (Electronic) | 978-1-4503-8562-6 |
DOIs | |
Publication status | Published - 2021 |
Event | ESEC/FSE 2021: 29th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering - athens, Greece Duration: 23 Aug 2021 → 28 Aug 2021 Conference number: 29 |
Publication series
Name | ESEC/FSE 2021 - Proceedings of the 29th ACM Joint Meeting European Software Engineering Conference and Symposium on the Foundations of Software Engineering |
---|
Conference
Conference | ESEC/FSE 2021: 29th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering |
---|---|
Abbreviated title | ESEC/FSE 2021 |
Country/Territory | Greece |
City | athens |
Period | 23/08/21 → 28/08/21 |
Keywords
- Machine Learning for Software Engineering
- Software Engineering
- Software Refactoring