Publicação científica
Data-Driven Extract Method Recommendations: A Study at ING
A identificação sólida de oportunidades de refatoração ainda é um problema em aberto na engenharia de software. Estudos recentes têm demonstrado a eficácia dos modelos de aprendizado de máquina na recomendação de métodos que devem passar por diferentes operações de refatoração.
Neste trabalho, experimentamos tais abordagens para identificar métodos que deveriam passar por uma refatoração do Extract Method, no contexto do ING, uma grande organização financeira. Mais especificamente, (i) comparamos as distribuições de métricas de código, que são usadas como recursos pelos modelos, entre sistemas de código aberto e ING, (ii) medimos a precisão de diferentes modelos de aprendizado de máquina na recomendação de refatorações do Método de Extração, (iii) comparamos as recomendações dadas pelos modelos com as opiniões de especialistas do ING.
Nossos resultados mostram que as distribuições de recursos dos sistemas ING e dos sistemas de código aberto são um pouco diferentes, que os modelos de aprendizado de máquina podem recomendar refatorações do Método de Extração com alta precisão e que os especialistas tendem a concordar com a maioria das recomendações do modelo.
Assista a um resumo do artigo em inglês:
BibTeX:
@inproceedings{aniche-refactoring-recommendation-at-ing,
author = "David van der Leij and Jasper Binda and Robbert van Dalen and Pieter Vallen and Yaping Luo and Maurício Aniche",
title = "Data-Driven Extract Method Recommendations: A Study at ING",
booktitle = "Proceedings of Proceedings of the 29th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering (ESEC/FSE '21)",
year = 2021,
doi = "10.1145/3468264.3473927"
}