Use este identificador para citar ou linkar para este item: http://repositorio.ufla.br/jspui/handle/1/29596
Registro completo de metadados
Campo DCValorIdioma
dc.creatorPinto, Arthur Ferreira-
dc.date.accessioned2018-07-11T11:53:02Z-
dc.date.available2018-07-11T11:53:02Z-
dc.date.issued2018-07-10-
dc.date.submitted2018-05-07-
dc.identifier.citationPINTO, A. F. Empirically supported similarity coefficients for the identification of refactoring opportunities. 2018. 75 p. Dissertação (Mestrado em Ciência da Computação)-Universidade Federal de Lavras, Lavras, 2018.pt_BR
dc.identifier.urihttp://repositorio.ufla.br/jspui/handle/1/29596-
dc.description.abstractCode refactoring is defined as the process of changing a software system preserving the external behavior of the code, but improving its internal structure. Through refactoring, it becomes possible to treat code architecture symptoms, known as Code Smells, which can affect features such as portability, reusability, maintainability, and scalability. Several techniques to identify refactoring opportunities rely on similarity coefficients to find misplaced entities on the system architecture, as well as to determine where it should be located. As an example, we expect that a method is located in a class whose other methods are structurally similar to it. However, the existing coefficients in literature have not been designed for the structural analysis of software systems, which may not guarantee satisfactory precision. This master dissertation, therefore, proposes three new coefficients—PT MC, PT MM, and PT EM—to improve the precision of the identification of Move Class, Move Method, and Extract Method refactoring opportunities, respectively. Our main objectives are: (i) to propose more effective similarity coefficients for object-oriented systems, in order to locate more accurately entities improperly positioned on a system architecture and (ii) to leverage the precision of tools for identification of refactoring opportunities based on structural similarity through the application of the proposed coefficients. Firstly, we investigated the precision of 18 similarity coefficients in 10 systems of Qualitas.class Corpus (training set) to select the most appropriate coefficient to be adapted. Then, we adapted the selected coefficient through an empirical experiment based on a treatment combination with replication over genetic algorithms in order to generate the proposed coefficients. Finally, we implemented AIRP, a tool that relies on the proposed coefficients to identify refactoring opportunities. In order to evaluate the proposed coefficients, we compared them with other 18 coefficients in other 101 systems of Qualitas.class Corpus (test set). The results indicate, in relation to the best analyzed coefficient, a statistical improvement from 5.23% to 6.81% for the identification of Move Class refactoring opportunities, 12.33% to 14.79% for Move Method, and 0.25% to 0.40% for Extract Method.pt_BR
dc.languageengpt_BR
dc.publisherUniversidade Federal de Lavraspt_BR
dc.rightsacesso abertopt_BR
dc.subjectArquitetura de softwarept_BR
dc.subjectSimilaridade estruturalpt_BR
dc.subjectRefatoração de códigopt_BR
dc.subjectMove classpt_BR
dc.subjectMove methodpt_BR
dc.subjectExtract methodpt_BR
dc.subjectSoftware architecturept_BR
dc.subjectStructural similaritypt_BR
dc.subjectCode refactoringpt_BR
dc.titleEmpirically supported similarity coefficients for the identification of refactoring opportunitiespt_BR
dc.title.alternativeCoeficientes de similaridade para a identificação de oportunidades de refatoração empiricamente com base empíricapt_BR
dc.typedissertaçãopt_BR
dc.publisher.programPrograma de Pós-Graduação em Ciência da Computaçãopt_BR
dc.publisher.initialsUFLApt_BR
dc.publisher.countrybrasilpt_BR
dc.contributor.advisor1Villela, Ricardo Terra Nunes Bueno-
dc.contributor.referee1Valente, Marco Túlio de Oliveira-
dc.contributor.referee2Resende, Antônio Maria Pereira de-
dc.description.resumoRefatoração de código é definido como o processo de alteração de um sistema de software, preservando seu comportamento externo, mas melhorando sua estrutura interna. Por meio da refatoração, torna-se possível tratar os sintomas da arquitetura de código, conhecidos como Code Smells, que podem afetar características como portabilidade, reusabilidade, manutenibilidade e escalabilidade. Várias técnicas para identificar oportunidades de refatoração usam coeficientes de similaridade para encontrar entidades mal posicionadas na arquitetura do sistema, assim como determinar onde deveria estar localizada. Como exemplo, espera-se que um método esteja localizado em uma classe cujos outros métodos sejam estruturalmente semelhantes a ele. No entanto, os coeficientes existentes na literatura não foram projetados para a análise estrutural de sistemas de software, o que pode não garantir uma precisão satisfatória. Portanto, esta dissertação de mestrado propõe três novos coeficientes – PT MC, PT MM e PT EM – para melhorar a precisão da identificação de oportunidades de refatoração para as operações de Move Class, Move Method e Extract Method, respectivamente. Os principais objetivos são: (i) propor coeficientes de similaridade mais efetivos para sistemas orientados a objetos, para localizar com mais precisão entidades mal posicionadas em uma arquitetura de sistema e (ii) alavancar a precisão de ferramentas para identificação de oportunidades de refatoração baseadas na similaridade estrutural por meio da aplicação dos coeficientes propostos. Primeiramente, foi investigada a precisão de 18 coeficientes de similaridade em 10 sistemas da base Qualitas.class Corpus (training set) e, com base nos resultados, foi selecionado o coeficiente mais adequado para ser adaptado. Em seguida, foi adaptado o coeficiente selecionado por meio de um experimento empírico composto de uma combinação de tratamentos com replicação sobre algoritmos genéticos para gerar os coeficientes propostos. Por fim, foi implementada AIRP, uma ferramenta que implementa os coeficientes propostos para identificar oportunidades de refatoração. Para avaliar os coeficientes propostos, foram comparados tais coeficientes com outros 18 coeficientes em outros 101 sistemas da base Qualitas.class Corpus (test set). Os resultados indicam, em relação ao melhor coeficiente analisado, uma melhora estatística de 5,23% a 6,81% para a identificação de oportunidades de refatoração Move Class, 12,33% a 14,79% para Move Method e 0,25 % a 0,40% para Extract Method.pt_BR
dc.publisher.departmentDepartamento de Ciência da Computaçãopt_BR
dc.subject.cnpqCiência da Computaçãopt_BR
dc.creator.Latteshttp://lattes.cnpq.br/7485642558511803259pt_BR
Aparece nas coleções:Ciência da Computação - Mestrado (Dissertações)



Os itens no repositório estão protegidos por copyright, com todos os direitos reservados, salvo quando é indicado o contrário.