Investigando o impacto das coocorrências de code smells nos atributos internos de qualidade

Detalhes bibliográficos
Autor(a) principal: Martins, Júlio Serafim
Data de Publicação: 2021
Tipo de documento: Dissertação
Idioma: por
Título da fonte: Repositório Institucional da Universidade Federal do Ceará (UFC)
dARK ID: ark:/83112/001300001pdct
Texto Completo: http://www.repositorio.ufc.br/handle/riufc/61792
Resumo: Software quality is a critical and essential factor in different types of organizations. Thus, developers should be concerned about anomalies known as code smells. Code smells are structures that can harm code quality and maintainability. However, recent works in the literature have been studying and showing that taking into account only individual occurrences of smells may not be enough to assess the real impact that these anomalies can bring to systems. In this context, the co-occurrences of code smells arise, which are occurrences of more than one code smell in the same class or method. Co-occurrences of these anomalies can be better indicators of problems for software quality. Systematic reviews of the literature indicate that the area of co-occurrences of code smells deserves more attention and that more empirical studies are needed to assess the effects that these anomalies can have on internal quality attributes. A large part of the studies carried out in the area of code smells co-occurrences analyze the impact of these anomalies on maintainability, design problems and software architecture. Other important factors mentioned in the literature are that the works must carry out more studies of refactoring in industrial systems and that they must consider the perception of developers during this process. Thus, the objective of this work was to investigate the impact of code smells co-occurrences for the internal quality attributes, such as cohesion, coupling, complexity, inheritance and size, and also for the developers. Two studies were carried out on industrial projects. The main results and contributions of this work are: (i) the co-occurrences Feature Envy–God Class, Dispersed Coupling– God Class and God Class-Long Method are extremely detrimental to software quality and developers; (ii) the number of co-occurrences of code smells tends to increase during the development of the system; (iii) developers have more difficulty understanding code containing co-occurrences of smells; and, (iv) developers still have insecurities regarding the identification and refactoring of code smells and their co-occurrences. From the results of this work, it was possible to generate a practical catalog about the removal of the most harmful code smells co-occurrences for the internal quality attributes and also from the perspective of the developers.
id UFC-7_089ac19228b59704024cd67aea88d7ef
oai_identifier_str oai:repositorio.ufc.br:riufc/61792
network_acronym_str UFC-7
network_name_str Repositório Institucional da Universidade Federal do Ceará (UFC)
repository_id_str
spelling Investigando o impacto das coocorrências de code smells nos atributos internos de qualidadeCode SmellSoftware - RefatoraçãoSoftware - Controle de qualidadeSoftware quality is a critical and essential factor in different types of organizations. Thus, developers should be concerned about anomalies known as code smells. Code smells are structures that can harm code quality and maintainability. However, recent works in the literature have been studying and showing that taking into account only individual occurrences of smells may not be enough to assess the real impact that these anomalies can bring to systems. In this context, the co-occurrences of code smells arise, which are occurrences of more than one code smell in the same class or method. Co-occurrences of these anomalies can be better indicators of problems for software quality. Systematic reviews of the literature indicate that the area of co-occurrences of code smells deserves more attention and that more empirical studies are needed to assess the effects that these anomalies can have on internal quality attributes. A large part of the studies carried out in the area of code smells co-occurrences analyze the impact of these anomalies on maintainability, design problems and software architecture. Other important factors mentioned in the literature are that the works must carry out more studies of refactoring in industrial systems and that they must consider the perception of developers during this process. Thus, the objective of this work was to investigate the impact of code smells co-occurrences for the internal quality attributes, such as cohesion, coupling, complexity, inheritance and size, and also for the developers. Two studies were carried out on industrial projects. The main results and contributions of this work are: (i) the co-occurrences Feature Envy–God Class, Dispersed Coupling– God Class and God Class-Long Method are extremely detrimental to software quality and developers; (ii) the number of co-occurrences of code smells tends to increase during the development of the system; (iii) developers have more difficulty understanding code containing co-occurrences of smells; and, (iv) developers still have insecurities regarding the identification and refactoring of code smells and their co-occurrences. From the results of this work, it was possible to generate a practical catalog about the removal of the most harmful code smells co-occurrences for the internal quality attributes and also from the perspective of the developers.Qualidade de software é um fator crítico e essencial em diferentes tipos de organizações. Assim, os desenvolvedores devem se preocupar com anomalias conhecidas como code smells. Code smells são estruturas que podem trazer prejuízos para a qualidade e manutenibilidade do código. No entanto, trabalhos recentes da literatura vêm estudando e mostrando que levar em consideração apenas ocorrências individuais de smells pode não ser suficiente para avaliar o impacto real que essas anomalias podem trazer para os sistemas. Nesse contexto, surgem as coocorrências de code smells, que são ocorrências de mais de um code smell em uma mesma classe ou mesmo método. As coocorrências dessas anomalias podem ser melhores indicadores de problemas para a qualidade de software. Revisões sistemáticas da literatura apontam que a área de coocorrências de code smells merece mais atenção e que são necessários mais estudos empíricos para avaliar os efeitos que essas anomalias podem causar para atributos internos de qualidade. Grande parte dos estudos realizados na área de coocorrências de code smells, analisam o impacto dessas anomalias para a manutenibilidade, problemas de design e arquitetura de software. Outros fatores importantes mencionados pela literatura são que os trabalhos devem realizar mais estudos de refatoração em sistemas industriais e que devem considerar a percepção dos desenvolvedores durante esse processo. Dessa forma, o objetivo deste trabalho foi investigar o impacto de coocorrências de code smells para os atributos internos de qualidade, como coesão, acoplamento, complexidade, herança e tamanho e também para os desenvolvedores. Foram executados dois estudos em projetos industriais, e os principais resultados e contribuições desse trabalho, são: (i) as coocorrências Feature Envy–God Class, Dispersed Coupling–God Class e God Class-Long Method são extremamente prejudiciais para a qualidade de software e para os desenvolvedores; (ii) o número de coocorrências de code smells tende a aumentar durante o desenvolvimento do sistema; (iii) desenvolvedores têm mais dificuldade para entender códigos contendo coocorrências de smells; e, (iv) desenvolvedores ainda possuem inseguranças em relação a identificação e refatoração de code smells e suas coocorrências. A partir dos resultados deste trabalho, foi possível gerar um catálogo prático sobre a remoção das coocorrências de code smells mais prejudicais para os atributos interno de qualidade e também sob a perspectiva dos desenvolvedores.Bezerra, Carla Ilane MoreiraMartins, Júlio Serafim2021-11-04T17:34:14Z2021-11-04T17:34:14Z2021info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfMARTINS, Júlio Serafim. Investigando o impacto das coocorrências de code smells nos atributos internos de qualidade. 2021. 118 f. Dissertação (Mestrado em Computação) - Programa de Pós-Graduação em Computação – Universidade Federal do Ceará, Campus de Quixadá, Quixadá, 2021.http://www.repositorio.ufc.br/handle/riufc/61792ark:/83112/001300001pdctporreponame:Repositório Institucional da Universidade Federal do Ceará (UFC)instname:Universidade Federal do Ceará (UFC)instacron:UFCinfo:eu-repo/semantics/openAccess2021-11-04T17:34:14Zoai:repositorio.ufc.br:riufc/61792Repositório InstitucionalPUBhttp://www.repositorio.ufc.br/ri-oai/requestbu@ufc.br || repositorio@ufc.bropendoar:2024-09-11T18:50:24.794434Repositório Institucional da Universidade Federal do Ceará (UFC) - Universidade Federal do Ceará (UFC)false
dc.title.none.fl_str_mv Investigando o impacto das coocorrências de code smells nos atributos internos de qualidade
title Investigando o impacto das coocorrências de code smells nos atributos internos de qualidade
spellingShingle Investigando o impacto das coocorrências de code smells nos atributos internos de qualidade
Martins, Júlio Serafim
Code Smell
Software - Refatoração
Software - Controle de qualidade
title_short Investigando o impacto das coocorrências de code smells nos atributos internos de qualidade
title_full Investigando o impacto das coocorrências de code smells nos atributos internos de qualidade
title_fullStr Investigando o impacto das coocorrências de code smells nos atributos internos de qualidade
title_full_unstemmed Investigando o impacto das coocorrências de code smells nos atributos internos de qualidade
title_sort Investigando o impacto das coocorrências de code smells nos atributos internos de qualidade
author Martins, Júlio Serafim
author_facet Martins, Júlio Serafim
author_role author
dc.contributor.none.fl_str_mv Bezerra, Carla Ilane Moreira
dc.contributor.author.fl_str_mv Martins, Júlio Serafim
dc.subject.por.fl_str_mv Code Smell
Software - Refatoração
Software - Controle de qualidade
topic Code Smell
Software - Refatoração
Software - Controle de qualidade
description Software quality is a critical and essential factor in different types of organizations. Thus, developers should be concerned about anomalies known as code smells. Code smells are structures that can harm code quality and maintainability. However, recent works in the literature have been studying and showing that taking into account only individual occurrences of smells may not be enough to assess the real impact that these anomalies can bring to systems. In this context, the co-occurrences of code smells arise, which are occurrences of more than one code smell in the same class or method. Co-occurrences of these anomalies can be better indicators of problems for software quality. Systematic reviews of the literature indicate that the area of co-occurrences of code smells deserves more attention and that more empirical studies are needed to assess the effects that these anomalies can have on internal quality attributes. A large part of the studies carried out in the area of code smells co-occurrences analyze the impact of these anomalies on maintainability, design problems and software architecture. Other important factors mentioned in the literature are that the works must carry out more studies of refactoring in industrial systems and that they must consider the perception of developers during this process. Thus, the objective of this work was to investigate the impact of code smells co-occurrences for the internal quality attributes, such as cohesion, coupling, complexity, inheritance and size, and also for the developers. Two studies were carried out on industrial projects. The main results and contributions of this work are: (i) the co-occurrences Feature Envy–God Class, Dispersed Coupling– God Class and God Class-Long Method are extremely detrimental to software quality and developers; (ii) the number of co-occurrences of code smells tends to increase during the development of the system; (iii) developers have more difficulty understanding code containing co-occurrences of smells; and, (iv) developers still have insecurities regarding the identification and refactoring of code smells and their co-occurrences. From the results of this work, it was possible to generate a practical catalog about the removal of the most harmful code smells co-occurrences for the internal quality attributes and also from the perspective of the developers.
publishDate 2021
dc.date.none.fl_str_mv 2021-11-04T17:34:14Z
2021-11-04T17:34:14Z
2021
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/masterThesis
format masterThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv MARTINS, Júlio Serafim. Investigando o impacto das coocorrências de code smells nos atributos internos de qualidade. 2021. 118 f. Dissertação (Mestrado em Computação) - Programa de Pós-Graduação em Computação – Universidade Federal do Ceará, Campus de Quixadá, Quixadá, 2021.
http://www.repositorio.ufc.br/handle/riufc/61792
dc.identifier.dark.fl_str_mv ark:/83112/001300001pdct
identifier_str_mv MARTINS, Júlio Serafim. Investigando o impacto das coocorrências de code smells nos atributos internos de qualidade. 2021. 118 f. Dissertação (Mestrado em Computação) - Programa de Pós-Graduação em Computação – Universidade Federal do Ceará, Campus de Quixadá, Quixadá, 2021.
ark:/83112/001300001pdct
url http://www.repositorio.ufc.br/handle/riufc/61792
dc.language.iso.fl_str_mv por
language por
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
dc.source.none.fl_str_mv reponame:Repositório Institucional da Universidade Federal do Ceará (UFC)
instname:Universidade Federal do Ceará (UFC)
instacron:UFC
instname_str Universidade Federal do Ceará (UFC)
instacron_str UFC
institution UFC
reponame_str Repositório Institucional da Universidade Federal do Ceará (UFC)
collection Repositório Institucional da Universidade Federal do Ceará (UFC)
repository.name.fl_str_mv Repositório Institucional da Universidade Federal do Ceará (UFC) - Universidade Federal do Ceará (UFC)
repository.mail.fl_str_mv bu@ufc.br || repositorio@ufc.br
_version_ 1818373995587698688