Dissertação de Mestrado

Documento
Dissertação de Mestrado
Nome completo
Matheus Castello Branco Lima de Araujo
E-mail
Unidade da USP
Instituto de Matemática, Estatística e Ciência da Computação (IME)
Área de Concentração
Data de Defesa
2026-03-31
Imprenta
São Paulo, 2026
Orientador
Banca examinadora
Finger, Marcelo (Presidente)
Lucredio, Daniel
Valente, Marco Tulio de Oliveira
Título em inglês
Java Refactoring Corpus for automated extract method refactoring
Palavras-chave em inglês
Code refactoring; Dataset; Machine learning; Software engineering
Resumo em inglês
Code refactorings are operations that improve the readability and maintainability of source code. In particular, extract method is one of the most frequently applied refactorings in software systems; therefore, substantial efforts have been made to automate this operation. Automate extract method refactoring recommenders take as input the source code of a method and output the portion of the code that should be extracted. This study aimed to develop the methodology for building a large-scale dataset of extract method refactorings, dubbed the Java Refactoring Corpus, for training novel machine learning models that recommend extract method refactorings. We filtered extract method data collected from public GitHub repositories to construct a dataset containing 50,063 grammatically correct instances and used it to train a simple yet effective proof-of-concept model. We therefore conclude that our dataset effectively addresses the scarcity of extract method examples in the literature.
Título em português
Corpus de refatoração em Java para extração automática de método
Palavras-chave em português
Aprendizado de máquina; Conjunto de dados; Engenharia de software; Refatoração de código
Resumo em português
Refatorações de código são operações que melhoram a legibilidade e a manutenibilidade do código-fonte. Em especial, extração de método é uma das refatorações mais frequentemente aplicadas a sistemas e, portanto, esforços substanciais têm sido realizados para automatizar essa operação. Recomendadores automatizados de extração de método recebem como entrada o código-fonte de um método e produzem como saída o trecho do código que resultaria na melhor extração. Este estudo teve como objetivo desenvolver a metodologia para construção do Java Refactoring Corpus, um grande conjunto de dados de refatorações de extração de método, para o treinamento de novos modelos de aprendizado de máquina que recomendam extração de método. Nós filtramos dados de extração de método coletados de repositórios públicos do GitHub para construir um conjunto de dados contendo 50.063 instâncias gramaticalmente corretas e o utilizamos para treinar um modelo simples, porém eficaz, como prova de conceito. Concluímos, portanto, que nosso conjunto de dados aborda efetivamente a escassez de exemplos de extração de método na literatura.

AVISO — A consulta e o download deste documento ficam condicionados à aceitação das seguintes condições de uso: o trabalho destina-se exclusivamente a atividades privadas de estudo, ensino e pesquisa, bem como à crítica, análise e citação científica. É proibida sua comercialização, reprodução integral, distribuição ou exploração econômica sem autorização prévia, expressa e por escrito da pessoa autora. Na utilização ou citação de qualquer parte do documento, é obrigatória a indicação da autoria e da fonte da publicação original. Consulte a Política de acesso.

Data de Publicação
2026-06-11

Trabalhos decorrentes

AVISO: Saiba o que são os trabalhos decorrentes clicando aqui.

Serviços

Carregando...