Use este identificador para citar ou linkar para este item: http://repositorio.utfpr.edu.br/jspui/handle/1/40779
Registro completo de metadados
Campo DCValorIdioma
dc.creatorLima, Mariana Regina Cabrinha de-
dc.date.accessioned2026-07-15T15:59:14Z-
dc.date.available2026-07-15T15:59:14Z-
dc.date.issued2026-05-05-
dc.identifier.citationLIMA, Mariana Regina Cabrinha de. Refatoração de código: comparação entre abordagens manuais e inteligência artificial generativa. 2026. Trabalho de Conclusão de Curso (Bacharelado em Ciência da Computação) - Universidade Tecnológica Federal do Paraná, Ponta Grossa, 2026.pt_BR
dc.identifier.urihttp://repositorio.utfpr.edu.br/jspui/handle/1/40779-
dc.description.abstractCode refactoring is an essential practice in Software Engineering, aimed at improving the internal structure of code without altering its external behavior, thereby contributing to the quality, maintainability, and long-term evolution of software systems. With the advancement of Generative Artificial Intelligence tools, the possibility of automating this process has emerged, raising questions about the effectiveness and limitations of such approaches in comparison to human intervention. This paper presents a comparison between manual code refactoring and refactoring assisted by GitHub Copilot and Amazon Q Developer, using three educational games developed within the Educational Software Development Project at the Federal University of Technology – Paraná (UTFPR) as case studies. Manual refactoring was conducted based on classical techniques described by Fowler, while automated refactoring was performed using a standardized prompt applied to both tools. The results were evaluated through software quality metrics obtained using SonarQube, considering attributes related to maintainability, comprehensibility, reusability, and structural complexity. The findings indicate that Generative AI tools were capable of achieving significant improvements in several quality metrics. However, they also exhibited limitations related to context preservation, generation of compilation errors, and the introduction of modifications that extend beyond the traditional scope of refactoring. Furthermore, each tool demonstrated superior performance in specific quality attributes, whereas the manual approach provided greater control over architectural decisions and the targeted application of refactoring techniques. The results contribute to a better understanding of the potential and limitations of Generative Artificial Intelligence as a support mechanism for software maintenance and evolution.pt_BR
dc.languageporpt_BR
dc.publisherUniversidade Tecnológica Federal do Paranápt_BR
dc.rightsopenAccesspt_BR
dc.rights.urihttp://creativecommons.org/licenses/by-sa/4.0pt_BR
dc.subjectSoftware - Refatoraçãopt_BR
dc.subjectSoftware - Confiabilidadept_BR
dc.subjectInteligência artificialpt_BR
dc.subjectSoftware refactoringpt_BR
dc.subjectComputer software - Reliabilitypt_BR
dc.subjectArtificial intelligencept_BR
dc.titleRefatoração de código: comparação entre abordagens manuais e inteligência artificial generativapt_BR
dc.title.alternativeCode refactoring: comparison between manual approaches and generative artificial intelligencept_BR
dc.typebachelorThesispt_BR
dc.description.resumoA refatoração de código é uma prática essencial na Engenharia de Software, voltada à melhoria da estrutura interna do código sem alterar seu comportamento externo, contribuindo para a qualidade, a manutenibilidade e a evolução dos sistemas ao longo do tempo. Com o avanço das ferramentas de Inteligência Artificial Generativa, surge a possibilidade de automatizar esse processo, levantando questões sobre a eficácia e as limitações dessas abordagens em comparação à intervenção humana. Este trabalho apresenta uma comparação entre a refatoração de código realizada manualmente e com o auxílio das ferramentas GitHub Copilot e Amazon Q Developer, tendo como objetos de estudo três jogos educacionais desenvolvidos no âmbito do Projeto de Desenvolvimento de Software Educacional da Universidade Tecnológica Federal do Paraná (UTFPR). A refatoração manual foi conduzida com base em técnicas clássicas descritas por Fowler, enquanto a refatoração automatizada utilizou um prompt padronizado aplicado às mesmas ferramentas. A avaliação dos resultados foi realizada por meio de métricas de qualidade obtidas com o SonarQube, contemplando atributos relacionados à manutenibilidade, compreensibilidade, reusabilidade e complexidade estrutural. Os resultados indicam que as ferramentas de IA Generativa foram capazes de promover melhorias relevantes em diferentes métricas de qualidade, embora tenham apresentado limitações relacionadas à preservação de contexto, geração de erros de compilação e introdução de alterações que extrapolam o escopo tradicional da refatoração. Observou-se ainda que cada ferramenta apresentou melhor desempenho em atributos específicos, enquanto a abordagem manual demonstrou maior controle sobre as decisões arquiteturais e aplicação direcionada das técnicas de refatoração. Os resultados contribuem para a compreensão do potencial e das limitações da IA Generativa como apoio à manutenção e evolução de software.pt_BR
dc.degree.localPonta Grossapt_BR
dc.publisher.localPonta Grossapt_BR
dc.contributor.advisor1Matos, Simone Nasser-
dc.contributor.referee1Ishikawa, Eliana Cláudia Mayumi-
dc.contributor.referee2Schmitke, Luiz Rafael-
dc.contributor.referee3Matos, Simone Nasser-
dc.publisher.countryBrasilpt_BR
dc.publisher.departmentDepartamento Acadêmico de Informáticapt_BR
dc.publisher.programCiência da Computaçãopt_BR
dc.publisher.initialsUTFPRpt_BR
dc.subject.cnpqCNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAOpt_BR
Aparece nas coleções:PG - Ciência da Computação

Arquivos associados a este item:
Arquivo Descrição TamanhoFormato 
refatoracaocodigocomparacao.pdf659,17 kBAdobe PDFThumbnail
Visualizar/Abrir


Este item está licenciada sob uma Licença Creative Commons Creative Commons