Investigando a qualidade das refatorações de code smells em projetos java

Detalhes bibliográficos
Autor(a) principal: Nascimento, João Teixeira do
Data de Publicação: 2025
Tipo de documento: Trabalho de conclusão de curso
Idioma: por
Título da fonte: Repositório Institucional da Universidade Federal do Ceará (UFC)
Texto Completo: http://repositorio.ufc.br/handle/riufc/80672
Resumo: Code smells are possible irregularities in the code that decrease its quality and worsen the maintainability of the software. The existence of code smells does not directly affect the functioning of the system, but it makes future modifications difficult. This paper presents an experience report on teaching code smells and code refactoring to a class of 42 software maintenance students in the semester of 2023.1, at the campus of the Federal University of Ceará in Russas. We analyzed the following points in the study: (i) the quality of the refactorings proposed by the participants, (ii) the difficulties and challenges faced in the code smell refactoring activity, (iii) the skills and benefits acquired at the end of the refactoring practice, (iv) the quality of the internal quality attributes of the systems after the refactorings and (v) the code smells and refactoring techniques most used during the study. We found that: (i) half of the refactorings in the study proved to be of good quality, (ii) code smells that affected a large amount of code proved to be more difficult to refactor, (iii) participants indicated that they gained good analytical skills, (iv) systems that received good refactorings showed significant improvements in quality, and (v) participants understood which techniques they needed to use to refactor the code smells that existed in their systems.
id UFC-7_e8b8ba321cd0c8959326305668e8cdcc
oai_identifier_str oai:repositorio.ufc.br:riufc/80672
network_acronym_str UFC-7
network_name_str Repositório Institucional da Universidade Federal do Ceará (UFC)
repository_id_str
spelling Nascimento, João Teixeira doBezerra, Carla Ilane Moreira2025-04-29T14:50:30Z2025-04-29T14:50:30Z2025NASCIMENTO, João Teixeira do. Investigando a qualidade das refatorações de code smells em projetos java. 2025. 78 f. Trabalho de Conclusão de Curso (Graduação em Engenharia de Software)- Campus de Quixadá, Universidade Federal do Ceará, Quixadá, 2025.http://repositorio.ufc.br/handle/riufc/80672Code smells are possible irregularities in the code that decrease its quality and worsen the maintainability of the software. The existence of code smells does not directly affect the functioning of the system, but it makes future modifications difficult. This paper presents an experience report on teaching code smells and code refactoring to a class of 42 software maintenance students in the semester of 2023.1, at the campus of the Federal University of Ceará in Russas. We analyzed the following points in the study: (i) the quality of the refactorings proposed by the participants, (ii) the difficulties and challenges faced in the code smell refactoring activity, (iii) the skills and benefits acquired at the end of the refactoring practice, (iv) the quality of the internal quality attributes of the systems after the refactorings and (v) the code smells and refactoring techniques most used during the study. We found that: (i) half of the refactorings in the study proved to be of good quality, (ii) code smells that affected a large amount of code proved to be more difficult to refactor, (iii) participants indicated that they gained good analytical skills, (iv) systems that received good refactorings showed significant improvements in quality, and (v) participants understood which techniques they needed to use to refactor the code smells that existed in their systems.Code smells são possíveis irregularidades no código que diminuem a sua qualidade e pioram a capacidade de manutenibilidade do software. A existência de code smells não afeta diretamente o funcionamento do sistema, mas dificulta modificações futuras. Este trabalho apresenta um relato de experiência sobre o ensino de code smells e refatoração de código em uma turma de 42 alunos de manutenção de software no semestre de 2023.1, do campus da Universidade Federal do Ceará em Russas. Analisamos os seguintes pontos no estudo: (i) a qualidade das refatorações propostas pelos partipantes, (ii) as dificuldades e desafios enfrentados na atividade de refatoração de code smells, (iii) as habilidades e benefícios adquiridos ao término da prática de refatoração, (iv) a qualidade dos atributos internos de qualidade dos sistemas após as refatorações e (v) os code smells e técnicas de refatoração mais usados durante o estudo. Descobrimos que: (i) metade das refatorações do estudo provaram ser ter boa qualidade, (ii) code smells que afetam uma grande quantidade de código mostraram-se mais complicados para refatorar, (iii) participantes indicaram que adquiriram uma boa capacidade analítica, (iv) sistemas que receberam boas refatorações apresentaram melhoras significativas de qualidade e (v) os participantes entenderam quais técnicas precisavam usar para refatorar os code smells existentes nos sistemas.Investigando a qualidade das refatorações de code smells em projetos javainfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/bachelorThesiscode smellsrefatoração de códigoqualidade de códigoCNPQ: CIÊNCIAS EXATAS E DA TERRAinfo:eu-repo/semantics/openAccessporreponame:Repositório Institucional da Universidade Federal do Ceará (UFC)instname:Universidade Federal do Ceará (UFC)instacron:UFChttp://lattes.cnpq.br/4277471687235814ORIGINAL2025_tcc_jtnascimento.pdf2025_tcc_jtnascimento.pdfapplication/pdf907877http://repositorio.ufc.br/bitstream/riufc/80672/1/2025_tcc_jtnascimento.pdfa069fe0d5f7043ed127e83e4ff8677a5MD51LICENSElicense.txtlicense.txttext/plain; charset=utf-81748http://repositorio.ufc.br/bitstream/riufc/80672/2/license.txt8a4605be74aa9ea9d79846c1fba20a33MD52riufc/806722025-04-29 11:50:31.024oai:repositorio.ufc.br:riufc/80672Tk9URTogUExBQ0UgWU9VUiBPV04gTElDRU5TRSBIRVJFClRoaXMgc2FtcGxlIGxpY2Vuc2UgaXMgcHJvdmlkZWQgZm9yIGluZm9ybWF0aW9uYWwgcHVycG9zZXMgb25seS4KCk5PTi1FWENMVVNJVkUgRElTVFJJQlVUSU9OIExJQ0VOU0UKCkJ5IHNpZ25pbmcgYW5kIHN1Ym1pdHRpbmcgdGhpcyBsaWNlbnNlLCB5b3UgKHRoZSBhdXRob3Iocykgb3IgY29weXJpZ2h0Cm93bmVyKSBncmFudHMgdG8gRFNwYWNlIFVuaXZlcnNpdHkgKERTVSkgdGhlIG5vbi1leGNsdXNpdmUgcmlnaHQgdG8gcmVwcm9kdWNlLAp0cmFuc2xhdGUgKGFzIGRlZmluZWQgYmVsb3cpLCBhbmQvb3IgZGlzdHJpYnV0ZSB5b3VyIHN1Ym1pc3Npb24gKGluY2x1ZGluZwp0aGUgYWJzdHJhY3QpIHdvcmxkd2lkZSBpbiBwcmludCBhbmQgZWxlY3Ryb25pYyBmb3JtYXQgYW5kIGluIGFueSBtZWRpdW0sCmluY2x1ZGluZyBidXQgbm90IGxpbWl0ZWQgdG8gYXVkaW8gb3IgdmlkZW8uCgpZb3UgYWdyZWUgdGhhdCBEU1UgbWF5LCB3aXRob3V0IGNoYW5naW5nIHRoZSBjb250ZW50LCB0cmFuc2xhdGUgdGhlCnN1Ym1pc3Npb24gdG8gYW55IG1lZGl1bSBvciBmb3JtYXQgZm9yIHRoZSBwdXJwb3NlIG9mIHByZXNlcnZhdGlvbi4KCllvdSBhbHNvIGFncmVlIHRoYXQgRFNVIG1heSBrZWVwIG1vcmUgdGhhbiBvbmUgY29weSBvZiB0aGlzIHN1Ym1pc3Npb24gZm9yCnB1cnBvc2VzIG9mIHNlY3VyaXR5LCBiYWNrLXVwIGFuZCBwcmVzZXJ2YXRpb24uCgpZb3UgcmVwcmVzZW50IHRoYXQgdGhlIHN1Ym1pc3Npb24gaXMgeW91ciBvcmlnaW5hbCB3b3JrLCBhbmQgdGhhdCB5b3UgaGF2ZQp0aGUgcmlnaHQgdG8gZ3JhbnQgdGhlIHJpZ2h0cyBjb250YWluZWQgaW4gdGhpcyBsaWNlbnNlLiBZb3UgYWxzbyByZXByZXNlbnQKdGhhdCB5b3VyIHN1Ym1pc3Npb24gZG9lcyBub3QsIHRvIHRoZSBiZXN0IG9mIHlvdXIga25vd2xlZGdlLCBpbmZyaW5nZSB1cG9uCmFueW9uZSdzIGNvcHlyaWdodC4KCklmIHRoZSBzdWJtaXNzaW9uIGNvbnRhaW5zIG1hdGVyaWFsIGZvciB3aGljaCB5b3UgZG8gbm90IGhvbGQgY29weXJpZ2h0LAp5b3UgcmVwcmVzZW50IHRoYXQgeW91IGhhdmUgb2J0YWluZWQgdGhlIHVucmVzdHJpY3RlZCBwZXJtaXNzaW9uIG9mIHRoZQpjb3B5cmlnaHQgb3duZXIgdG8gZ3JhbnQgRFNVIHRoZSByaWdodHMgcmVxdWlyZWQgYnkgdGhpcyBsaWNlbnNlLCBhbmQgdGhhdApzdWNoIHRoaXJkLXBhcnR5IG93bmVkIG1hdGVyaWFsIGlzIGNsZWFybHkgaWRlbnRpZmllZCBhbmQgYWNrbm93bGVkZ2VkCndpdGhpbiB0aGUgdGV4dCBvciBjb250ZW50IG9mIHRoZSBzdWJtaXNzaW9uLgoKSUYgVEhFIFNVQk1JU1NJT04gSVMgQkFTRUQgVVBPTiBXT1JLIFRIQVQgSEFTIEJFRU4gU1BPTlNPUkVEIE9SIFNVUFBPUlRFRApCWSBBTiBBR0VOQ1kgT1IgT1JHQU5JWkFUSU9OIE9USEVSIFRIQU4gRFNVLCBZT1UgUkVQUkVTRU5UIFRIQVQgWU9VIEhBVkUKRlVMRklMTEVEIEFOWSBSSUdIVCBPRiBSRVZJRVcgT1IgT1RIRVIgT0JMSUdBVElPTlMgUkVRVUlSRUQgQlkgU1VDSApDT05UUkFDVCBPUiBBR1JFRU1FTlQuCgpEU1Ugd2lsbCBjbGVhcmx5IGlkZW50aWZ5IHlvdXIgbmFtZShzKSBhcyB0aGUgYXV0aG9yKHMpIG9yIG93bmVyKHMpIG9mIHRoZQpzdWJtaXNzaW9uLCBhbmQgd2lsbCBub3QgbWFrZSBhbnkgYWx0ZXJhdGlvbiwgb3RoZXIgdGhhbiBhcyBhbGxvd2VkIGJ5IHRoaXMKbGljZW5zZSwgdG8geW91ciBzdWJtaXNzaW9uLgo=Repositório InstitucionalPUBhttp://www.repositorio.ufc.br/ri-oai/requestbu@ufc.br || repositorio@ufc.bropendoar:2025-04-29T14:50:31Repositório Institucional da Universidade Federal do Ceará (UFC) - Universidade Federal do Ceará (UFC)false
dc.title.pt_BR.fl_str_mv Investigando a qualidade das refatorações de code smells em projetos java
title Investigando a qualidade das refatorações de code smells em projetos java
spellingShingle Investigando a qualidade das refatorações de code smells em projetos java
Nascimento, João Teixeira do
CNPQ: CIÊNCIAS EXATAS E DA TERRA
code smells
refatoração de código
qualidade de código
title_short Investigando a qualidade das refatorações de code smells em projetos java
title_full Investigando a qualidade das refatorações de code smells em projetos java
title_fullStr Investigando a qualidade das refatorações de code smells em projetos java
title_full_unstemmed Investigando a qualidade das refatorações de code smells em projetos java
title_sort Investigando a qualidade das refatorações de code smells em projetos java
author Nascimento, João Teixeira do
author_facet Nascimento, João Teixeira do
author_role author
dc.contributor.author.fl_str_mv Nascimento, João Teixeira do
dc.contributor.advisor1.fl_str_mv Bezerra, Carla Ilane Moreira
contributor_str_mv Bezerra, Carla Ilane Moreira
dc.subject.cnpq.fl_str_mv CNPQ: CIÊNCIAS EXATAS E DA TERRA
topic CNPQ: CIÊNCIAS EXATAS E DA TERRA
code smells
refatoração de código
qualidade de código
dc.subject.ptbr.pt_BR.fl_str_mv code smells
refatoração de código
qualidade de código
description Code smells are possible irregularities in the code that decrease its quality and worsen the maintainability of the software. The existence of code smells does not directly affect the functioning of the system, but it makes future modifications difficult. This paper presents an experience report on teaching code smells and code refactoring to a class of 42 software maintenance students in the semester of 2023.1, at the campus of the Federal University of Ceará in Russas. We analyzed the following points in the study: (i) the quality of the refactorings proposed by the participants, (ii) the difficulties and challenges faced in the code smell refactoring activity, (iii) the skills and benefits acquired at the end of the refactoring practice, (iv) the quality of the internal quality attributes of the systems after the refactorings and (v) the code smells and refactoring techniques most used during the study. We found that: (i) half of the refactorings in the study proved to be of good quality, (ii) code smells that affected a large amount of code proved to be more difficult to refactor, (iii) participants indicated that they gained good analytical skills, (iv) systems that received good refactorings showed significant improvements in quality, and (v) participants understood which techniques they needed to use to refactor the code smells that existed in their systems.
publishDate 2025
dc.date.accessioned.fl_str_mv 2025-04-29T14:50:30Z
dc.date.available.fl_str_mv 2025-04-29T14:50:30Z
dc.date.issued.fl_str_mv 2025
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/bachelorThesis
format bachelorThesis
status_str publishedVersion
dc.identifier.citation.fl_str_mv NASCIMENTO, João Teixeira do. Investigando a qualidade das refatorações de code smells em projetos java. 2025. 78 f. Trabalho de Conclusão de Curso (Graduação em Engenharia de Software)- Campus de Quixadá, Universidade Federal do Ceará, Quixadá, 2025.
dc.identifier.uri.fl_str_mv http://repositorio.ufc.br/handle/riufc/80672
identifier_str_mv NASCIMENTO, João Teixeira do. Investigando a qualidade das refatorações de code smells em projetos java. 2025. 78 f. Trabalho de Conclusão de Curso (Graduação em Engenharia de Software)- Campus de Quixadá, Universidade Federal do Ceará, Quixadá, 2025.
url http://repositorio.ufc.br/handle/riufc/80672
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.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)
bitstream.url.fl_str_mv http://repositorio.ufc.br/bitstream/riufc/80672/1/2025_tcc_jtnascimento.pdf
http://repositorio.ufc.br/bitstream/riufc/80672/2/license.txt
bitstream.checksum.fl_str_mv a069fe0d5f7043ed127e83e4ff8677a5
8a4605be74aa9ea9d79846c1fba20a33
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
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_ 1847792411932098560