Avaliação Experimental da Detecção Interativa de Anomalias de Código

Detalhes bibliográficos
Ano de defesa: 2023
Autor(a) principal: Albuquerque, Danyllo Wagner lattes
Orientador(a): Almeida, Hyggo Oliveria lattes
Banca de defesa: Santos, Danilo Freire de Souza lattes, Costa, Evandro de Barros lattes, Silva, Lenardo Chaves lattes, De Oliveira, Roberto Felicio lattes
Tipo de documento: Tese
Tipo de acesso: Acesso aberto
dARK ID: ark:/80033/0013000001pwz
Idioma: por
Instituição de defesa: Universidade Federal de Campina Grande
Programa de Pós-Graduação: Programa de pós-graduação em computação
Departamento: Universidade Federal de Campina Grande
País: Brasil
Palavras-chave em Português:
Área do conhecimento CNPq:
Link de acesso: https://deposita.ibict.br/handle/deposita/410
Resumo: Code smells generally indicate the presence of deeper problems in the software, making its maintenance and evolution difficult. Several smells are cataloged in the literature, and their detection is traditionally supported by Non-Interactive Detection (NID) approaches. These approaches do not support the progressive interaction of developers with the affected code, revealing occurrences of more global smells only at the developer’s request, recurrently implying a late identification of these smells. With the emergence of Interactive Detection (ID), the aim is to deal with the limitations of traditional approaches, allowing the revelation of instances of code smells without an explicit request from the developer, encouraging early detection as a recommended practice. Although developers consider using ID approaches, guidelines were not found in the literature on when and how such approaches should be used in the context of software development activities. In this work, the objective is the experimental evaluation of the interactive detection of code smells in the context of the activities of the software development process. For doing so, studies were conducted to identify the need to use such an approach, evaluate adherent detection methods, develop automated support with DI characteristics, present empirical evidence on its effectiveness in detecting anomalies, as well as describe a way of integration to the development process according to the Scrum framework. The experimental tasks revealed that using the ID technique led to an increase of up to 40% in the recall and up to 25% in the precision in the detection of code smells during inspection activities and code development. Based on the results of the studies, it is concluded that factors associated with ID contributed to the early detection of a greater number of occurrences of code smells compared to traditional approaches. Consequently, using the ID approach in a disciplined way in a development process can promote continuous evaluation and improve the quality of the software.
id IBICT-1_f79bca1d28f7ebe041b686121ecb82c2
oai_identifier_str oai:deposita.ibict.br:deposita/410
network_acronym_str IBICT-1
network_name_str Repositório Comum do Brasil - Deposita
repository_id_str
spelling Almeida, Hyggo Oliveriahttp://lattes.cnpq.br/4993914550234923Santos, Danilo Freire de Souzahttp://lattes.cnpq.br/9890987649970131Costa, Evandro de Barroshttp://lattes.cnpq.br/5760364940162939Silva, Lenardo Chaveshttp://lattes.cnpq.br/0123912674950072De Oliveira, Roberto Feliciohttp://lattes.cnpq.br/9591032070394703http://lattes.cnpq.br/5480838148559558Albuquerque, Danyllo Wagner2023-08-30T17:50:15Z2023https://deposita.ibict.br/handle/deposita/410ark:/80033/0013000001pwzCode smells generally indicate the presence of deeper problems in the software, making its maintenance and evolution difficult. Several smells are cataloged in the literature, and their detection is traditionally supported by Non-Interactive Detection (NID) approaches. These approaches do not support the progressive interaction of developers with the affected code, revealing occurrences of more global smells only at the developer’s request, recurrently implying a late identification of these smells. With the emergence of Interactive Detection (ID), the aim is to deal with the limitations of traditional approaches, allowing the revelation of instances of code smells without an explicit request from the developer, encouraging early detection as a recommended practice. Although developers consider using ID approaches, guidelines were not found in the literature on when and how such approaches should be used in the context of software development activities. In this work, the objective is the experimental evaluation of the interactive detection of code smells in the context of the activities of the software development process. For doing so, studies were conducted to identify the need to use such an approach, evaluate adherent detection methods, develop automated support with DI characteristics, present empirical evidence on its effectiveness in detecting anomalies, as well as describe a way of integration to the development process according to the Scrum framework. The experimental tasks revealed that using the ID technique led to an increase of up to 40% in the recall and up to 25% in the precision in the detection of code smells during inspection activities and code development. Based on the results of the studies, it is concluded that factors associated with ID contributed to the early detection of a greater number of occurrences of code smells compared to traditional approaches. Consequently, using the ID approach in a disciplined way in a development process can promote continuous evaluation and improve the quality of the software.Anomalias de código são estruturas que frequentemente indicam a presença de problemas no software, dificultando sua manutenção e evolução. Existem várias anomalias catalogadas na literatura e sua detecção geralmente é feita por meio de abordagens de Detecção NãoInterativa (DNI). Essas abordagens não oferecem suporte à interação progressiva dos desenvolvedores com o código afetado, revelando ocorrências de anomalias mais globais apenas sob demanda do desenvolvedor, implicando recorrentemente na identificação tardia destas anomalias. Com o surgimento da Detecção Interativa (DI), busca-se lidar com as limitações das abordagens tradicionais, permitindo a revelação de instâncias de anomalias de código sem uma solicitação explícita do desenvolvedor, incentivando a detecção precoce como uma prática recomendada. Embora os desenvolvedores considerem o uso de abordagens DI, a literatura não oferece diretrizes claras sobre quando e como essas abordagens devem ser utilizadas no contexto das atividades de desenvolvimento de software. Neste trabalho, tem-se como objetivo a avaliação experimental da abordagem de detecção interativa de anomalias de código no contexto das atividades do processo de desenvolvimento de software. Para isso, foram conduzidos estudos no intuito de identificar a necessidade de uso de tal abordagem, avaliar métodos de detecção aderentes, desenvolver suporte automatizado com características DI, apresentar evidências empíricas sobre sua eficácia na detecção de anomalias, bem como descrever um modo de integração ao processo de desenvolvimento de acordo com o arcabouço do Scrum. As tarefas experimentais revelaram que o uso da DI resultou em um aumento de até 40% na medida recall e de até 25% na medida precision na detecção de anomalias durante as atividades de inspeção e desenvolvimento de código. Com base nos resultados dos estudos, conclui-se que fatores associados à DI contribuíram para detecção antecipada de um maior número de ocorrências de anomalias de código se comparada com abordagens tradicionais. Consequentemente, a utilização disciplinada da abordagem DI em um processo de desenvolvimento pode promover uma avaliação contínua e melhorar a qualidade do softwareNordeste-1application/pdfporUniversidade Federal de Campina GrandePrograma de pós-graduação em computaçãoBrasilUniversidade Federal de Campina GrandeEngenharia de SoftwareAnomalias de CódigoDetecção InterativaAvaliação Empírica.Qualidade de SoftwareSistemas de computaçãoAvaliação Experimental da Detecção Interativa de Anomalias de Códigoinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/doctoralThesisinfo:eu-repo/semantics/openAccessreponame:Repositório Comum do Brasil - Depositainstname:Instituto Brasileiro de Informação em Ciência e Tecnologia (Ibict)instacron:IBICTTEXTDoutorado___Tese_DWA_V2_ (30).pdf.txtWritten by FormatFilter org.dspace.app.mediafilter.TikaTextExtractionFilter on 2025-06-06T20:13:54Z (GMT).Extracted texttext/plain103081https://deposita.ibict.br/bitstreams/5f4430cf-a968-45e6-aad6-e22221dbd727/download8face1e170c5ea05db59246fcdba6e71MD53falseAnonymousREADTHUMBNAILDoutorado___Tese_DWA_V2_ (30).pdf.jpgWritten by FormatFilter org.dspace.app.mediafilter.PDFBoxThumbnail on 2025-06-06T20:13:54Z (GMT).Generated Thumbnailimage/jpeg4540https://deposita.ibict.br/bitstreams/ce0036c6-6776-4f8e-8ef9-39d64e81438e/download4e2c0a0930667a2846107da273b75a06MD54falseAnonymousREADLICENSElicense.txtWritten by org.dspace.content.LicenseUtilstext/plain; charset=utf-81867https://deposita.ibict.br/bitstreams/797b49ca-ea8c-4ede-8986-132c6c358258/downloada7c148eec59885ba1ba6d14692be8465MD51falseAnonymousREADORIGINALDoutorado___Tese_DWA_V2_ (30).pdf/dspace/deposita/upload/Doutorado___Tese_DWA_V2_ (30).pdfTESEapplication/pdf3218376https://deposita.ibict.br/bitstreams/e1139d23-0460-4dc8-8222-cdb635758c47/downloada6c7e5e61e8979d33c9914eb81b264feMD52trueAnonymousREADdeposita/4102025-06-06T20:13:54.876Zopen.accessoai:deposita.ibict.br:deposita/410https://deposita.ibict.brRepositório ComumPUBhttp://deposita.ibict.br/oai/requestdeposita@ibict.bropendoar:46582025-06-06T20:13:54Repositório Comum do Brasil - Deposita - Instituto Brasileiro de Informação em Ciência e Tecnologia (Ibict)falseTElDRU7Dh0EgREUgRElTVFJJQlVJw4fDg08gTsODTy1FWENMVVNJVkEKCkNvbSBhIGFwcmVzZW50YcOnw6NvIGRlc3RhIGxpY2Vuw6dhLCB2b2PDqiAobyBhdXRvciAoZXMpIG91IG8gdGl0dWxhciBkb3MgZGlyZWl0b3MgZGUgYXV0b3IpIGNvbmNlZGUgYW8gUmVwb3NpdMOzcmlvIENvbXVtCmRvIEJyYXNpbCAoRGVwb3NpdGEpIG8gZGlyZWl0byBuw6NvLWV4Y2x1c2l2byBkZSByZXByb2R1emlyLCB0cmFkdXppciAoY29uZm9ybWUgZGVmaW5pZG8gYWJhaXhvKSwgZS9vdSBkaXN0cmlidWlyIGEKc3VhIHB1YmxpY2HDp8OjbyAoaW5jbHVpbmRvIG8gcmVzdW1vKSBwb3IgdG9kbyBvIG11bmRvIG5vIGZvcm1hdG8gaW1wcmVzc28gZSBlbGV0csO0bmljbyBlIGVtIHF1YWxxdWVyIG1laW8sIGluY2x1aW5kbyBvcwpmb3JtYXRvcyDDoXVkaW8gb3UgdsOtZGVvLgoKVm9jw6ogY29uY29yZGEgcXVlIG8gRGVwb3NpdGEgcG9kZSwgc2VtIGFsdGVyYXIgbyBjb250ZcO6ZG8sIHRyYW5zcG9yIGEgc3VhIHB1YmxpY2HDp8OjbyBwYXJhIHF1YWxxdWVyIG1laW8gb3UgZm9ybWF0bwpwYXJhIGZpbnMgZGUgcHJlc2VydmHDp8Ojby4KClZvY8OqIHRhbWLDqW0gY29uY29yZGEgcXVlIG8gRGVwb3NpdGEgcG9kZSBtYW50ZXIgbWFpcyBkZSB1bWEgY8OzcGlhIGRlIHN1YSBwdWJsaWNhw6fDo28gcGFyYSBmaW5zIGRlIHNlZ3VyYW7Dp2EsIGJhY2stdXAKZSBwcmVzZXJ2YcOnw6NvLgoKVm9jw6ogZGVjbGFyYSBxdWUgYSBzdWEgcHVibGljYcOnw6NvIMOpIG9yaWdpbmFsIGUgcXVlIHZvY8OqIHRlbSBvIHBvZGVyIGRlIGNvbmNlZGVyIG9zIGRpcmVpdG9zIGNvbnRpZG9zIG5lc3RhIGxpY2Vuw6dhLgpWb2PDqiB0YW1iw6ltIGRlY2xhcmEgcXVlIG8gZGVww7NzaXRvIGRhIHN1YSBwdWJsaWNhw6fDo28gbsOjbywgcXVlIHNlamEgZGUgc2V1IGNvbmhlY2ltZW50bywgaW5mcmluZ2UgZGlyZWl0b3MgYXV0b3JhaXMKZGUgbmluZ3XDqW0uCgpDYXNvIGEgc3VhIHB1YmxpY2HDp8OjbyBjb250ZW5oYSBtYXRlcmlhbCBxdWUgdm9jw6ogbsOjbyBwb3NzdWkgYSB0aXR1bGFyaWRhZGUgZG9zIGRpcmVpdG9zIGF1dG9yYWlzLCB2b2PDqiBkZWNsYXJhIHF1ZQpvYnRldmUgYSBwZXJtaXNzw6NvIGlycmVzdHJpdGEgZG8gZGV0ZW50b3IgZG9zIGRpcmVpdG9zIGF1dG9yYWlzIHBhcmEgY29uY2VkZXIgYW8gRGVwb3NpdGEgb3MgZGlyZWl0b3MgYXByZXNlbnRhZG9zCm5lc3RhIGxpY2Vuw6dhLCBlIHF1ZSBlc3NlIG1hdGVyaWFsIGRlIHByb3ByaWVkYWRlIGRlIHRlcmNlaXJvcyBlc3TDoSBjbGFyYW1lbnRlIGlkZW50aWZpY2FkbyBlIHJlY29uaGVjaWRvIG5vIHRleHRvCm91IG5vIGNvbnRlw7pkbyBkYSBwdWJsaWNhw6fDo28gb3JhIGRlcG9zaXRhZGEuCgpDQVNPIEEgUFVCTElDQcOHw4NPIE9SQSBERVBPU0lUQURBIFRFTkhBIFNJRE8gUkVTVUxUQURPIERFIFVNIFBBVFJPQ8ONTklPIE9VIEFQT0lPIERFIFVNQSBBR8OKTkNJQSBERSBGT01FTlRPIE9VIE9VVFJPCk9SR0FOSVNNTywgVk9Dw4ogREVDTEFSQSBRVUUgUkVTUEVJVE9VIFRPRE9TIEUgUVVBSVNRVUVSIERJUkVJVE9TIERFIFJFVklTw4NPIENPTU8gVEFNQsOJTSBBUyBERU1BSVMgT0JSSUdBw4fDlUVTCkVYSUdJREFTIFBPUiBDT05UUkFUTyBPVSBBQ09SRE8uCgpPIERlcG9zaXRhIHNlIGNvbXByb21ldGUgYSBpZGVudGlmaWNhciBjbGFyYW1lbnRlIG8gc2V1IG5vbWUgKHMpIG91IG8ocykgbm9tZShzKSBkbyhzKSBkZXRlbnRvcihlcykgZG9zIGRpcmVpdG9zCmF1dG9yYWlzIGRhIHB1YmxpY2HDp8OjbywgZSBuw6NvIGZhcsOhIHF1YWxxdWVyIGFsdGVyYcOnw6NvLCBhbMOpbSBkYXF1ZWxhcyBjb25jZWRpZGFzIHBvciBlc3RhIGxpY2Vuw6dhLgoKCg==
dc.title.por.fl_str_mv Avaliação Experimental da Detecção Interativa de Anomalias de Código
title Avaliação Experimental da Detecção Interativa de Anomalias de Código
spellingShingle Avaliação Experimental da Detecção Interativa de Anomalias de Código
Albuquerque, Danyllo Wagner
Engenharia de Software
Anomalias de Código
Detecção Interativa
Avaliação Empírica.
Qualidade de Software
Sistemas de computação
title_short Avaliação Experimental da Detecção Interativa de Anomalias de Código
title_full Avaliação Experimental da Detecção Interativa de Anomalias de Código
title_fullStr Avaliação Experimental da Detecção Interativa de Anomalias de Código
title_full_unstemmed Avaliação Experimental da Detecção Interativa de Anomalias de Código
title_sort Avaliação Experimental da Detecção Interativa de Anomalias de Código
author Albuquerque, Danyllo Wagner
author_facet Albuquerque, Danyllo Wagner
author_role author
dc.contributor.advisor1.fl_str_mv Almeida, Hyggo Oliveria
dc.contributor.advisor1Lattes.fl_str_mv http://lattes.cnpq.br/4993914550234923
dc.contributor.referee1.fl_str_mv Santos, Danilo Freire de Souza
dc.contributor.referee1Lattes.fl_str_mv http://lattes.cnpq.br/9890987649970131
dc.contributor.referee2.fl_str_mv Costa, Evandro de Barros
dc.contributor.referee2Lattes.fl_str_mv http://lattes.cnpq.br/5760364940162939
dc.contributor.referee3.fl_str_mv Silva, Lenardo Chaves
dc.contributor.referee3Lattes.fl_str_mv http://lattes.cnpq.br/0123912674950072
dc.contributor.referee4.fl_str_mv De Oliveira, Roberto Felicio
dc.contributor.referee4Lattes.fl_str_mv http://lattes.cnpq.br/9591032070394703
dc.contributor.authorLattes.fl_str_mv http://lattes.cnpq.br/5480838148559558
dc.contributor.author.fl_str_mv Albuquerque, Danyllo Wagner
contributor_str_mv Almeida, Hyggo Oliveria
Santos, Danilo Freire de Souza
Costa, Evandro de Barros
Silva, Lenardo Chaves
De Oliveira, Roberto Felicio
dc.subject.por.fl_str_mv Engenharia de Software
Anomalias de Código
Detecção Interativa
Avaliação Empírica.
Qualidade de Software
topic Engenharia de Software
Anomalias de Código
Detecção Interativa
Avaliação Empírica.
Qualidade de Software
Sistemas de computação
dc.subject.cnpq.fl_str_mv Sistemas de computação
description Code smells generally indicate the presence of deeper problems in the software, making its maintenance and evolution difficult. Several smells are cataloged in the literature, and their detection is traditionally supported by Non-Interactive Detection (NID) approaches. These approaches do not support the progressive interaction of developers with the affected code, revealing occurrences of more global smells only at the developer’s request, recurrently implying a late identification of these smells. With the emergence of Interactive Detection (ID), the aim is to deal with the limitations of traditional approaches, allowing the revelation of instances of code smells without an explicit request from the developer, encouraging early detection as a recommended practice. Although developers consider using ID approaches, guidelines were not found in the literature on when and how such approaches should be used in the context of software development activities. In this work, the objective is the experimental evaluation of the interactive detection of code smells in the context of the activities of the software development process. For doing so, studies were conducted to identify the need to use such an approach, evaluate adherent detection methods, develop automated support with DI characteristics, present empirical evidence on its effectiveness in detecting anomalies, as well as describe a way of integration to the development process according to the Scrum framework. The experimental tasks revealed that using the ID technique led to an increase of up to 40% in the recall and up to 25% in the precision in the detection of code smells during inspection activities and code development. Based on the results of the studies, it is concluded that factors associated with ID contributed to the early detection of a greater number of occurrences of code smells compared to traditional approaches. Consequently, using the ID approach in a disciplined way in a development process can promote continuous evaluation and improve the quality of the software.
publishDate 2023
dc.date.accessioned.fl_str_mv 2023-08-30T17:50:15Z
dc.date.issued.fl_str_mv 2023
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/doctoralThesis
format doctoralThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv https://deposita.ibict.br/handle/deposita/410
dc.identifier.dark.fl_str_mv ark:/80033/0013000001pwz
url https://deposita.ibict.br/handle/deposita/410
identifier_str_mv ark:/80033/0013000001pwz
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.publisher.none.fl_str_mv Universidade Federal de Campina Grande
dc.publisher.program.fl_str_mv Programa de pós-graduação em computação
dc.publisher.country.fl_str_mv Brasil
dc.publisher.department.fl_str_mv Universidade Federal de Campina Grande
publisher.none.fl_str_mv Universidade Federal de Campina Grande
dc.source.none.fl_str_mv reponame:Repositório Comum do Brasil - Deposita
instname:Instituto Brasileiro de Informação em Ciência e Tecnologia (Ibict)
instacron:IBICT
instname_str Instituto Brasileiro de Informação em Ciência e Tecnologia (Ibict)
instacron_str IBICT
institution IBICT
reponame_str Repositório Comum do Brasil - Deposita
collection Repositório Comum do Brasil - Deposita
bitstream.url.fl_str_mv https://deposita.ibict.br/bitstreams/5f4430cf-a968-45e6-aad6-e22221dbd727/download
https://deposita.ibict.br/bitstreams/ce0036c6-6776-4f8e-8ef9-39d64e81438e/download
https://deposita.ibict.br/bitstreams/797b49ca-ea8c-4ede-8986-132c6c358258/download
https://deposita.ibict.br/bitstreams/e1139d23-0460-4dc8-8222-cdb635758c47/download
bitstream.checksum.fl_str_mv 8face1e170c5ea05db59246fcdba6e71
4e2c0a0930667a2846107da273b75a06
a7c148eec59885ba1ba6d14692be8465
a6c7e5e61e8979d33c9914eb81b264fe
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
MD5
MD5
repository.name.fl_str_mv Repositório Comum do Brasil - Deposita - Instituto Brasileiro de Informação em Ciência e Tecnologia (Ibict)
repository.mail.fl_str_mv deposita@ibict.br
_version_ 1860691311292579840