Histrategy: uma técnica para a customização guiada de estratégias para a detecção de bad smells.

Detalhes bibliográficos
Ano de defesa: 2017
Autor(a) principal: SOUZA, Mário Hozano Lucas de. lattes
Orientador(a): COSTA, Evandro de Barros. lattes
Banca de defesa: Não Informado pela instituição
Tipo de documento: Tese
Tipo de acesso: Acesso aberto
Idioma: por
Instituição de defesa: Universidade Federal de Campina Grande
Programa de Pós-Graduação: PÓS-GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO
Departamento: Centro de Engenharia Elétrica e Informática - CEEI
País: Brasil
Palavras-chave em Português:
Área do conhecimento CNPq:
Link de acesso: https://dspace.sti.ufcg.edu.br/handle/riufcg/556
Resumo: Anomalias de código conhecidas como bad smells indicam estruturas em código que podem prejudicar a compreensão e manutenção de programas. A ausência de uma definição clara para os bad smells contribui para que diferentes interpretações sejam consideradas, fazendo com que desenvolvedores possuam uma noção particular do que são tais anomalias. Nesse sentido, algoritmos de aprendizagem de máquina têm sido utilizados para customizar a detecção de bad smells a partir de um conjunto de avaliações. Entretanto, tal customização não é guiada a partir das diferentes heurísticas utilizadas pelos desenvolvedores para a detecção de smells. Como consequência tal customização pode não ser eficiente, exigindo um esforço considerável para obter uma alta efetividade. Esse trabalho apresenta um extensivo estudo que investiga o quão similar os desenvolvedores detectam smells em código, e analisa fatores que podem influenciar em tal detecção. As conclusões desse estudo motivaram a criação de uma técnica de customização guiada para melhorar a eficiência na detecção de smells. Essa técnica, definida como Histrategy, guia a customização a partir de um conjunto limitado de estratégias para detectar um mesmo tipo de smell. A partir de um estudo experimental que envolveu 62 desenvolvedores e 8 tipos de bad smell. Os resultados indicaram que a Histrategy apresentou performance superior a 6 algoritmos de aprendizagem de máquina, utilizados em abordagens não guiadas. Por fim, os resultados confirmaram que a customização guiada foi capaz assistir desenvolvedores com estratégias de detecção eficazes e eficientes.
id UFCG_06d8a9eca4155b959eec2fc043900728
oai_identifier_str oai:dspace.sti.ufcg.edu.br:riufcg/556
network_acronym_str UFCG
network_name_str Biblioteca Digital de Teses e Dissertações da UFCG
repository_id_str
spelling Software QualityCode Anomalies - Bad SmellsPrograms - Understanding and MaintenanceCOSTA, Evandro de Barros.COSTA, E. B.http://lattes.cnpq.br/5760364940162939Hozano, Máriohttp://lattes.cnpq.br/0875764018578208SOUZA, Mário Hozano Lucas de.Anomalias de código conhecidas como bad smells indicam estruturas em código que podem prejudicar a compreensão e manutenção de programas. A ausência de uma definição clara para os bad smells contribui para que diferentes interpretações sejam consideradas, fazendo com que desenvolvedores possuam uma noção particular do que são tais anomalias. Nesse sentido, algoritmos de aprendizagem de máquina têm sido utilizados para customizar a detecção de bad smells a partir de um conjunto de avaliações. Entretanto, tal customização não é guiada a partir das diferentes heurísticas utilizadas pelos desenvolvedores para a detecção de smells. Como consequência tal customização pode não ser eficiente, exigindo um esforço considerável para obter uma alta efetividade. Esse trabalho apresenta um extensivo estudo que investiga o quão similar os desenvolvedores detectam smells em código, e analisa fatores que podem influenciar em tal detecção. As conclusões desse estudo motivaram a criação de uma técnica de customização guiada para melhorar a eficiência na detecção de smells. Essa técnica, definida como Histrategy, guia a customização a partir de um conjunto limitado de estratégias para detectar um mesmo tipo de smell. A partir de um estudo experimental que envolveu 62 desenvolvedores e 8 tipos de bad smell. Os resultados indicaram que a Histrategy apresentou performance superior a 6 algoritmos de aprendizagem de máquina, utilizados em abordagens não guiadas. Por fim, os resultados confirmaram que a customização guiada foi capaz assistir desenvolvedores com estratégias de detecção eficazes e eficientes.Bad smells indicate poor implementation choices that may hinder program comprehension and maintenance. Their informal definition allows developers to follow different heuristics to detect smells in their projects. In such context, machine learning algorithms have been adapted to customize smell detection according to a set of examples of smell evaluations. However, such customization is not guided (i.e. constrained) to consider alternative heuristics used by developers when detecting smells. As a result, their customization might not be efficient, requiring a considerable effort to reach high effectiveness. This work presents an extensive study concerning how similar the developers detect smells in code, and investigate which factors may influence in such detection. The findings of this study lead to the creation of Histrategy, a guided customization technique to improve the efficiency on smell detection. Histrategy considers a limited set of detection strategies, produced from different detection heuristics, as input of a customization process. The output of the customization process consists of a detection strategy tailored to each developer. The technique was evaluated in an experimental study with 62 developers and eight types of code smells. The results showed that Histrategy is able to outperform six widely adopted machine learning algorithms, used in unguided approaches. Finally, the results confirmed that the guided customization was able to support developers with effective and efficient detection strategies.Submitted by Lucienne Costa (lucienneferreira@ufcg.edu.br) on 2018-05-02T20:10:07Z No. of bitstreams: 1 MÁRIO HOZANO LUCAS DE SOUZA – TESE (PPGCC) 2017.pdf: 3990516 bytes, checksum: b6a38a396737d92fd11b9fa9fb3027f5 (MD5)Made available in DSpace on 2018-05-02T20:10:07Z (GMT). No. of bitstreams: 1 MÁRIO HOZANO LUCAS DE SOUZA – TESE (PPGCC) 2017.pdf: 3990516 bytes, checksum: b6a38a396737d92fd11b9fa9fb3027f5 (MD5) Previous issue date: 2017-06-02Universidade Federal de Campina GrandePÓS-GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃOUFCGBrasilCentro de Engenharia Elétrica e Informática - CEEICiênciasCiência da ComputaçãoQualidade de SoftwareAnomalias de Código – Bad SmellsProgramas - Compreensão e ManutençãoHistrategy: uma técnica para a customização guiada de estratégias para a detecção de bad smells.Histrategy: a technique for guided customization of strategies for detecting bad smells.2017-06-022018-05-02T20:10:07Z2018-04-302018-05-02T20:10:07Zhttps://dspace.sti.ufcg.edu.br/handle/riufcg/556SOUZA, M. H. L. de. Histrategy: uma técnica para a customização guiada de estratégias para a detecção de bad smells. 2017. 110 f. Tese (Doutorado em Ciência da Computação) – Programa de Pós-Graduação em Ciência da Computação, Centro de Engenharia Elétrica e Informática, Universidade Federal de Campina Grande, Paraíba, Brasil, 2017. Disponível em: https://dspace.sti.ufcg.edu.br/handle/riufcg/556info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/doctoralThesisporUFALinfo:eu-repo/semantics/openAccessreponame:Biblioteca Digital de Teses e Dissertações da UFCGinstname:Universidade Federal de Campina Grande (UFCG)instacron:UFCGTEXTMÁRIO HOZANO LUCAS DE SOUZA – TESE (PPGCC) 2017.pdf.txtMÁRIO HOZANO LUCAS DE SOUZA – TESE (PPGCC) 2017.pdf.txttext/plain240093https://dspace.sti.ufcg.edu.br/bitstream/riufcg/556/4/M%C3%81RIO+HOZANO+LUCAS+DE+SOUZA+%E2%80%93+TESE+%28PPGCC%29+2017.pdf.txte76a173e64e1369627cacbbfab66325eMD54ORIGINALMÁRIO HOZANO LUCAS DE SOUZA – TESE (PPGCC) 2017.pdfMÁRIO HOZANO LUCAS DE SOUZA – TESE (PPGCC) 2017.pdfapplication/pdf4626546https://dspace.sti.ufcg.edu.br/bitstream/riufcg/556/3/M%C3%81RIO+HOZANO+LUCAS+DE+SOUZA+%E2%80%93+TESE+%28PPGCC%29+2017.pdf56982100d8bcaf4006c4de7b38d07e78MD53LICENSElicense.txtlicense.txttext/plain; charset=utf-81748https://dspace.sti.ufcg.edu.br/bitstream/riufcg/556/2/license.txt8a4605be74aa9ea9d79846c1fba20a33MD52riufcg/5562025-07-24 03:06:06.378oai:dspace.sti.ufcg.edu.br:riufcg/556Tk9URTogUExBQ0UgWU9VUiBPV04gTElDRU5TRSBIRVJFClRoaXMgc2FtcGxlIGxpY2Vuc2UgaXMgcHJvdmlkZWQgZm9yIGluZm9ybWF0aW9uYWwgcHVycG9zZXMgb25seS4KCk5PTi1FWENMVVNJVkUgRElTVFJJQlVUSU9OIExJQ0VOU0UKCkJ5IHNpZ25pbmcgYW5kIHN1Ym1pdHRpbmcgdGhpcyBsaWNlbnNlLCB5b3UgKHRoZSBhdXRob3Iocykgb3IgY29weXJpZ2h0Cm93bmVyKSBncmFudHMgdG8gRFNwYWNlIFVuaXZlcnNpdHkgKERTVSkgdGhlIG5vbi1leGNsdXNpdmUgcmlnaHQgdG8gcmVwcm9kdWNlLAp0cmFuc2xhdGUgKGFzIGRlZmluZWQgYmVsb3cpLCBhbmQvb3IgZGlzdHJpYnV0ZSB5b3VyIHN1Ym1pc3Npb24gKGluY2x1ZGluZwp0aGUgYWJzdHJhY3QpIHdvcmxkd2lkZSBpbiBwcmludCBhbmQgZWxlY3Ryb25pYyBmb3JtYXQgYW5kIGluIGFueSBtZWRpdW0sCmluY2x1ZGluZyBidXQgbm90IGxpbWl0ZWQgdG8gYXVkaW8gb3IgdmlkZW8uCgpZb3UgYWdyZWUgdGhhdCBEU1UgbWF5LCB3aXRob3V0IGNoYW5naW5nIHRoZSBjb250ZW50LCB0cmFuc2xhdGUgdGhlCnN1Ym1pc3Npb24gdG8gYW55IG1lZGl1bSBvciBmb3JtYXQgZm9yIHRoZSBwdXJwb3NlIG9mIHByZXNlcnZhdGlvbi4KCllvdSBhbHNvIGFncmVlIHRoYXQgRFNVIG1heSBrZWVwIG1vcmUgdGhhbiBvbmUgY29weSBvZiB0aGlzIHN1Ym1pc3Npb24gZm9yCnB1cnBvc2VzIG9mIHNlY3VyaXR5LCBiYWNrLXVwIGFuZCBwcmVzZXJ2YXRpb24uCgpZb3UgcmVwcmVzZW50IHRoYXQgdGhlIHN1Ym1pc3Npb24gaXMgeW91ciBvcmlnaW5hbCB3b3JrLCBhbmQgdGhhdCB5b3UgaGF2ZQp0aGUgcmlnaHQgdG8gZ3JhbnQgdGhlIHJpZ2h0cyBjb250YWluZWQgaW4gdGhpcyBsaWNlbnNlLiBZb3UgYWxzbyByZXByZXNlbnQKdGhhdCB5b3VyIHN1Ym1pc3Npb24gZG9lcyBub3QsIHRvIHRoZSBiZXN0IG9mIHlvdXIga25vd2xlZGdlLCBpbmZyaW5nZSB1cG9uCmFueW9uZSdzIGNvcHlyaWdodC4KCklmIHRoZSBzdWJtaXNzaW9uIGNvbnRhaW5zIG1hdGVyaWFsIGZvciB3aGljaCB5b3UgZG8gbm90IGhvbGQgY29weXJpZ2h0LAp5b3UgcmVwcmVzZW50IHRoYXQgeW91IGhhdmUgb2J0YWluZWQgdGhlIHVucmVzdHJpY3RlZCBwZXJtaXNzaW9uIG9mIHRoZQpjb3B5cmlnaHQgb3duZXIgdG8gZ3JhbnQgRFNVIHRoZSByaWdodHMgcmVxdWlyZWQgYnkgdGhpcyBsaWNlbnNlLCBhbmQgdGhhdApzdWNoIHRoaXJkLXBhcnR5IG93bmVkIG1hdGVyaWFsIGlzIGNsZWFybHkgaWRlbnRpZmllZCBhbmQgYWNrbm93bGVkZ2VkCndpdGhpbiB0aGUgdGV4dCBvciBjb250ZW50IG9mIHRoZSBzdWJtaXNzaW9uLgoKSUYgVEhFIFNVQk1JU1NJT04gSVMgQkFTRUQgVVBPTiBXT1JLIFRIQVQgSEFTIEJFRU4gU1BPTlNPUkVEIE9SIFNVUFBPUlRFRApCWSBBTiBBR0VOQ1kgT1IgT1JHQU5JWkFUSU9OIE9USEVSIFRIQU4gRFNVLCBZT1UgUkVQUkVTRU5UIFRIQVQgWU9VIEhBVkUKRlVMRklMTEVEIEFOWSBSSUdIVCBPRiBSRVZJRVcgT1IgT1RIRVIgT0JMSUdBVElPTlMgUkVRVUlSRUQgQlkgU1VDSApDT05UUkFDVCBPUiBBR1JFRU1FTlQuCgpEU1Ugd2lsbCBjbGVhcmx5IGlkZW50aWZ5IHlvdXIgbmFtZShzKSBhcyB0aGUgYXV0aG9yKHMpIG9yIG93bmVyKHMpIG9mIHRoZQpzdWJtaXNzaW9uLCBhbmQgd2lsbCBub3QgbWFrZSBhbnkgYWx0ZXJhdGlvbiwgb3RoZXIgdGhhbiBhcyBhbGxvd2VkIGJ5IHRoaXMKbGljZW5zZSwgdG8geW91ciBzdWJtaXNzaW9uLgo=Biblioteca Digital de Teses e Dissertaçõeshttp://bdtd.ufcg.edu.br/PUBhttp://dspace.sti.ufcg.edu.br:8080/oai/requestbdtd@setor.ufcg.edu.br || bdtd@setor.ufcg.edu.bropendoar:48512025-07-24T06:06:06Biblioteca Digital de Teses e Dissertações da UFCG - Universidade Federal de Campina Grande (UFCG)false
dc.title.pt_BR.fl_str_mv Histrategy: uma técnica para a customização guiada de estratégias para a detecção de bad smells.
dc.title.alternative.none.fl_str_mv Histrategy: a technique for guided customization of strategies for detecting bad smells.
title Histrategy: uma técnica para a customização guiada de estratégias para a detecção de bad smells.
spellingShingle Histrategy: uma técnica para a customização guiada de estratégias para a detecção de bad smells.
SOUZA, Mário Hozano Lucas de.
Ciências
Ciência da Computação
Qualidade de Software
Anomalias de Código – Bad Smells
Programas - Compreensão e Manutenção
title_short Histrategy: uma técnica para a customização guiada de estratégias para a detecção de bad smells.
title_full Histrategy: uma técnica para a customização guiada de estratégias para a detecção de bad smells.
title_fullStr Histrategy: uma técnica para a customização guiada de estratégias para a detecção de bad smells.
title_full_unstemmed Histrategy: uma técnica para a customização guiada de estratégias para a detecção de bad smells.
title_sort Histrategy: uma técnica para a customização guiada de estratégias para a detecção de bad smells.
author SOUZA, Mário Hozano Lucas de.
author_facet SOUZA, Mário Hozano Lucas de.
author_role author
dc.contributor.advisor1.fl_str_mv COSTA, Evandro de Barros.
dc.contributor.advisor1ID.fl_str_mv COSTA, E. B.
dc.contributor.advisor1Lattes.fl_str_mv http://lattes.cnpq.br/5760364940162939
dc.contributor.authorID.fl_str_mv Hozano, Mário
dc.contributor.authorLattes.fl_str_mv http://lattes.cnpq.br/0875764018578208
dc.contributor.author.fl_str_mv SOUZA, Mário Hozano Lucas de.
contributor_str_mv COSTA, Evandro de Barros.
dc.subject.cnpq.fl_str_mv Ciências
Ciência da Computação
topic Ciências
Ciência da Computação
Qualidade de Software
Anomalias de Código – Bad Smells
Programas - Compreensão e Manutenção
dc.subject.por.fl_str_mv Qualidade de Software
Anomalias de Código – Bad Smells
Programas - Compreensão e Manutenção
description Anomalias de código conhecidas como bad smells indicam estruturas em código que podem prejudicar a compreensão e manutenção de programas. A ausência de uma definição clara para os bad smells contribui para que diferentes interpretações sejam consideradas, fazendo com que desenvolvedores possuam uma noção particular do que são tais anomalias. Nesse sentido, algoritmos de aprendizagem de máquina têm sido utilizados para customizar a detecção de bad smells a partir de um conjunto de avaliações. Entretanto, tal customização não é guiada a partir das diferentes heurísticas utilizadas pelos desenvolvedores para a detecção de smells. Como consequência tal customização pode não ser eficiente, exigindo um esforço considerável para obter uma alta efetividade. Esse trabalho apresenta um extensivo estudo que investiga o quão similar os desenvolvedores detectam smells em código, e analisa fatores que podem influenciar em tal detecção. As conclusões desse estudo motivaram a criação de uma técnica de customização guiada para melhorar a eficiência na detecção de smells. Essa técnica, definida como Histrategy, guia a customização a partir de um conjunto limitado de estratégias para detectar um mesmo tipo de smell. A partir de um estudo experimental que envolveu 62 desenvolvedores e 8 tipos de bad smell. Os resultados indicaram que a Histrategy apresentou performance superior a 6 algoritmos de aprendizagem de máquina, utilizados em abordagens não guiadas. Por fim, os resultados confirmaram que a customização guiada foi capaz assistir desenvolvedores com estratégias de detecção eficazes e eficientes.
publishDate 2017
dc.date.issued.fl_str_mv 2017-06-02
dc.date.accessioned.fl_str_mv 2018-05-02T20:10:07Z
dc.date.available.fl_str_mv 2018-04-30
2018-05-02T20:10:07Z
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://dspace.sti.ufcg.edu.br/handle/riufcg/556
dc.identifier.citation.fl_str_mv SOUZA, M. H. L. de. Histrategy: uma técnica para a customização guiada de estratégias para a detecção de bad smells. 2017. 110 f. Tese (Doutorado em Ciência da Computação) – Programa de Pós-Graduação em Ciência da Computação, Centro de Engenharia Elétrica e Informática, Universidade Federal de Campina Grande, Paraíba, Brasil, 2017. Disponível em: https://dspace.sti.ufcg.edu.br/handle/riufcg/556
url https://dspace.sti.ufcg.edu.br/handle/riufcg/556
identifier_str_mv SOUZA, M. H. L. de. Histrategy: uma técnica para a customização guiada de estratégias para a detecção de bad smells. 2017. 110 f. Tese (Doutorado em Ciência da Computação) – Programa de Pós-Graduação em Ciência da Computação, Centro de Engenharia Elétrica e Informática, Universidade Federal de Campina Grande, Paraíba, Brasil, 2017. Disponível em: https://dspace.sti.ufcg.edu.br/handle/riufcg/556
dc.language.iso.fl_str_mv por
language por
dc.relation.pt_BR.fl_str_mv UFAL
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.publisher.none.fl_str_mv Universidade Federal de Campina Grande
dc.publisher.program.fl_str_mv PÓS-GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO
dc.publisher.initials.fl_str_mv UFCG
dc.publisher.country.fl_str_mv Brasil
dc.publisher.department.fl_str_mv Centro de Engenharia Elétrica e Informática - CEEI
publisher.none.fl_str_mv Universidade Federal de Campina Grande
dc.source.none.fl_str_mv reponame:Biblioteca Digital de Teses e Dissertações da UFCG
instname:Universidade Federal de Campina Grande (UFCG)
instacron:UFCG
instname_str Universidade Federal de Campina Grande (UFCG)
instacron_str UFCG
institution UFCG
reponame_str Biblioteca Digital de Teses e Dissertações da UFCG
collection Biblioteca Digital de Teses e Dissertações da UFCG
bitstream.url.fl_str_mv https://dspace.sti.ufcg.edu.br/bitstream/riufcg/556/4/M%C3%81RIO+HOZANO+LUCAS+DE+SOUZA+%E2%80%93+TESE+%28PPGCC%29+2017.pdf.txt
https://dspace.sti.ufcg.edu.br/bitstream/riufcg/556/3/M%C3%81RIO+HOZANO+LUCAS+DE+SOUZA+%E2%80%93+TESE+%28PPGCC%29+2017.pdf
https://dspace.sti.ufcg.edu.br/bitstream/riufcg/556/2/license.txt
bitstream.checksum.fl_str_mv e76a173e64e1369627cacbbfab66325e
56982100d8bcaf4006c4de7b38d07e78
8a4605be74aa9ea9d79846c1fba20a33
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
MD5
repository.name.fl_str_mv Biblioteca Digital de Teses e Dissertações da UFCG - Universidade Federal de Campina Grande (UFCG)
repository.mail.fl_str_mv bdtd@setor.ufcg.edu.br || bdtd@setor.ufcg.edu.br
_version_ 1863363378248941568