dc.contributorMariza Andrade da Silva Bigonha
dc.contributorhttp://lattes.cnpq.br/6660127471891321
dc.contributorEduardo Magno Lages Figueiredo
dc.contributorAndré Cavalcante Hora
dc.contributorKécia Aline Marques Ferreira
dc.creatorCleiton Silva Tavares
dc.date.accessioned2021-10-17T23:37:41Z
dc.date.accessioned2022-10-03T22:12:02Z
dc.date.available2021-10-17T23:37:41Z
dc.date.available2022-10-03T22:12:02Z
dc.date.created2021-10-17T23:37:41Z
dc.date.issued2021-03-31
dc.identifierhttp://hdl.handle.net/1843/38392
dc.identifier.urihttp://repositorioslatinoamericanos.uchile.cl/handle/2250/3795572
dc.description.abstractRefatoração visa aumentar a manutenibilidade de sistemas de software melhorando a sua estrutura sem alterar seu comportamento, podendo ser aplicada para remover bad smells. Mesmo com a existência de ferramentas para auxiliar a refatoração, muitos desenvolvedores não confiam em suas soluções, alegando que alguns estudos mostram que a refatoração pode introduzir novos bad smells no código-fonte. Contudo, não encontramos um catálogo completo que indique quando isso ocorre. Para investigar esse assunto em detalhe, o objetivo desta dissertação é avaliar os efeitos da refatoração em bad smells. Especificamente, investigamos se e qual refatoração remove bad smells ou os introduz. Para atingir esse objetivo, realizamos uma Revisão Sistemática da Literatura (RSL) para identificar a relação entre as refatorações e os bad smells propostos por Fowler. Conduzimos um estudo empírico com oito sistemas de software, aplicando cinco refatorações para analisar seus efeitos em dez bad smells com o auxílio de cinco ferramentas. Como resultado do estudo empírico, apresentamos via os dados estudados, quais bad smells são removidos ou introduzidos pelo processo de refatoração automatizada. A RSL resultou em 20 artigos mostrando a relação direta entre 31 refatorações e 16 bad smells. Produzimos um catálogo exibindo essas relações e também apresentamos um contraste com as relações discutidas por Fowler. Identificamos que a relação mais discutida na literatura se dá entre Move Method e Feature Envy. A RSL também revelou que existem estratégias de refatoração diferentes daquelas discutidas por Fowler para lidar com bad smells. No estudo empírico, observamos que os tipos de refatoração geraram diminuição, aumento e variações neutras no número de bad smells. Diferente da definição de Fowler, surpreendentemente descobrimos que a diminuição no número de bad smells foi a mais baixa em comparação com casos de aumento e variações neutras. Em uma análise adicional, contrastamos os resultados encontrados nos dois estudos realizados, classificando-os, validando-os e complementando-os.
dc.publisherUniversidade Federal de Minas Gerais
dc.publisherBrasil
dc.publisherICX - DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO
dc.publisherPrograma de Pós-Graduação em Ciência da Computação
dc.publisherUFMG
dc.rightsAcesso Aberto
dc.subjectRefactoring
dc.subjectBad smell
dc.subjectRefactoring impacts
dc.subjectRefactoring effects
dc.titleAnalyzing the effects of refactorings on bad smells
dc.typeDissertação


Este ítem pertenece a la siguiente institución