dc.contributor | Mariza Andrade da Silva Bigonha | |
dc.contributor | http://lattes.cnpq.br/6660127471891321 | |
dc.contributor | Eduardo Magno Lages Figueiredo | |
dc.contributor | André Cavalcante Hora | |
dc.contributor | Kécia Aline Marques Ferreira | |
dc.creator | Cleiton Silva Tavares | |
dc.date.accessioned | 2021-10-17T23:37:41Z | |
dc.date.accessioned | 2022-10-03T22:12:02Z | |
dc.date.available | 2021-10-17T23:37:41Z | |
dc.date.available | 2022-10-03T22:12:02Z | |
dc.date.created | 2021-10-17T23:37:41Z | |
dc.date.issued | 2021-03-31 | |
dc.identifier | http://hdl.handle.net/1843/38392 | |
dc.identifier.uri | http://repositorioslatinoamericanos.uchile.cl/handle/2250/3795572 | |
dc.description.abstract | Refatoraçã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.publisher | Universidade Federal de Minas Gerais | |
dc.publisher | Brasil | |
dc.publisher | ICX - DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO | |
dc.publisher | Programa de Pós-Graduação em Ciência da Computação | |
dc.publisher | UFMG | |
dc.rights | Acesso Aberto | |
dc.subject | Refactoring | |
dc.subject | Bad smell | |
dc.subject | Refactoring impacts | |
dc.subject | Refactoring effects | |
dc.title | Analyzing the effects of refactorings on bad smells | |
dc.type | Dissertação | |