Recommending move method refactorings using dependency sets

dc.creatorVitor Madureira Sales
dc.date.accessioned2019-08-11T02:45:50Z
dc.date.accessioned2025-09-09T00:55:46Z
dc.date.available2019-08-11T02:45:50Z
dc.date.issued2014-03-12
dc.description.abstractMethods implemented in incorrect classes are common bad smells in object-oriented systems, especially in the case of systems maintained and evolved for years. To tackle this design flaw, we propose a novel approach that recommends Move Method refactorings based on the set of static dependencies established by a method. More specifically, our approach compares the similarity of the dependencies established by a source method with the dependencies established by the methods in possible target classes. We evaluated our approach using systems from a compiled version of the Qualitas Corpus. We report that our approach provides an average precision of 60.63% and an average recall of 81.07%. Such results are, respectively, 129% and 49% better than the results achieved by JDeodorant, a well-known move method recommendation system.
dc.identifier.urihttps://hdl.handle.net/1843/ESBF-9KBHCD
dc.languageInglês
dc.publisherUniversidade Federal de Minas Gerais
dc.rightsAcesso Aberto
dc.subjectSistemas de recomendação
dc.subjectComputação
dc.subjectEngenharia de software
dc.subject.otherDependency sets
dc.subject.otherRecommendation systems
dc.subject.otherMove method refactorings
dc.titleRecommending move method refactorings using dependency sets
dc.typeDissertação de mestrado
local.contributor.advisor-co1Ricardo Terra Nunes Bueno Villela
local.contributor.advisor1Marco Tulio de Oliveira Valente
local.contributor.referee1Ricardo Terra Nunes Bueno Villela
local.contributor.referee1Fernando Jose Castor de Lima Filho
local.contributor.referee1Fernando Magno Quintao Pereira
local.description.resumoMétodos implementados em classes incorretas são 'code smells' comuns em sistemas orientados a objetos, especialmente no caso de sistemas mantidos e evoluídos durante anos. Para atenuar esse problema de projeto, esta dissertação de mestrado propõe uma abordagem que recomenda refatorações do tipo Mover Método com base no conjunto de dependências estáticas estabelecidas por um método. Mais especificamente, a abordagem proposta compara a similaridade entre as dependências estabelecidas por um método com as dependências estabelecidas por métodos de possíveis classes de destino. A proposta foi avaliada usando sistemas de uma versão compilada do Qualitas Corpus. Os resultados alcançados fornecem uma precisão média de 60% e um recall médio de 81%. Tais resultados são, respectivamente, 129% e 49% melhores do que aqueles alcançados por JDeodorant, um sistema de recomendação bastante conhecido.
local.publisher.initialsUFMG

Arquivos

Pacote original

Agora exibindo 1 - 1 de 1
Carregando...
Imagem de Miniatura
Nome:
vitormadureira.pdf
Tamanho:
5.5 MB
Formato:
Adobe Portable Document Format