00 CAMPUS ARISTÓTELES CALAZANS SIMÕES (CAMPUS A. C. SIMÕES) IC - INSTITUTO DE COMPUTAÇÃO TRABALHOS DE CONCLUSÃO DE CURSO (TCC) - GRADUAÇÃO - IC Trabalhos de Conclusão de Curso (TCC) - Bacharelado - CIÊNCIA DA COMPUTAÇÃO- IC
Use este identificador para citar ou linkar para este item: http://www.repositorio.ufal.br/jspui/handle/123456789/10561
Registro completo de metadados
Campo DCValorIdioma
dc.contributor.advisor1Santos Neto, Baldoino Fonseca dos-
dc.contributor.advisor1Latteshttp://lattes.cnpq.br/0306751604362704pt_BR
dc.contributor.advisor-co1Bibiano, Ana Carla Gomes-
dc.contributor.referee1Araújo, Ícaro Bezerra Queiroz de-
dc.contributor.referee2Mello, Rafael Maiani de-
dc.creatorRamos, André Moabson da Silva-
dc.date.accessioned2023-02-28T18:18:13Z-
dc.date.available2023-02-16-
dc.date.available2023-02-28T18:18:13Z-
dc.date.issued2021-03-02-
dc.identifier.citationRAMOS, André Moabson da Silva. Uma aplicação do aprendizado por transferência na detecção de Code Smells. 2023. 24 f. Trabalho de Conclusão de Curso (Bacharelado em Ciência da Computação) - Instituto de Computação, Curso de Ciências da Computação, Universidade Federal de Alagoas, Maceió, 2021.pt_BR
dc.identifier.urihttp://www.repositorio.ufal.br/jspui/handle/123456789/10561-
dc.description.abstractDuring the software development, the presence of code smells has been related to the degradation of the software quality. Several studies present the relevance to detect smells in the source code and to apply refactoring. However, the existing approaches to detect code smells are limited to specific programming languages. In this context, this work aims to extend the techniques of code smell detection using learning transfer to build a large dataset for training and validation of machine learning models, using cataloged rules and extracted thresholds of the Designite tool. Collecting, then, a total of total 22,687, 8,501 e 5,953 detected smells in software projects of the respective programming languages, C++, Java e C#. In a sequence, we obtained 72 pretrained models and performed the transfer learning to evaluate the pre-trained model for smells in the dataset between programming languages. Our results revealed that the model RandomForest is the most appropriate to detect code smells like the Unecessary Abstraction design smell for the C# programming language. These results can help developers and researchers to apply the same code smell detection strategies for different programming languages and to apply the most appropriate training models for each code smell type and programming language.pt_BR
dc.languageporpt_BR
dc.publisherUniversidade Federal de Alagoaspt_BR
dc.publisher.countryBrasilpt_BR
dc.publisher.departmentCurso de Ciências da Computaçãopt_BR
dc.publisher.initialsUFALpt_BR
dc.rightsAcesso Abertopt_BR
dc.subjectCode smells - Detecçãopt_BR
dc.subjectAprendizagem de máquinapt_BR
dc.subjectAprendizagem por transferênciapt_BR
dc.subjectCode smellspt_BR
dc.subjectDetectionpt_BR
dc.subjectTransfer learningpt_BR
dc.subjectMachine learningpt_BR
dc.subject.cnpqCNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAOpt_BR
dc.titleUma aplicação do aprendizado por transferência na detecção de Code Smellspt_BR
dc.typeTrabalho de Conclusão de Cursopt_BR
dc.description.resumoDurante o desenvolvimento de um software, a presença de code smells tem sido relacionada com a degradação na qualidade do software. Diversos estudos mostram a importância de detectar os smells no código fonte e aplicar refatoração. No entanto, as abordagens existentes para a detecção de code smells são limitadas para determinadas linguagens de programação. Nesse contexto, este trabalho visa ampliar os métodos para detecção de code smells utilizando o aprendizado por transferência para construir um grande conjunto de dados para treinamento e validação dos modelos de aprendizagem de máquina, utilizando as regras catalogadas e thresholds extraídos da ferramenta Designite. Coletando, assim, um total 22.687, 8.501 e 5.953 smells detectados em projetos das respectivas linguagens de programação, C++, Java e C#. Em seguida, nós obtivemos 72 modelos pré-treinados, e realizamos o aprendizado por transferência, que consistiu em avaliar o modelo pré-treinado para smells no conjunto de dados entre linguagens de programação. Nossos resultados revelaram que se escolhermos o smell de design, Unecessary Abstraction, e a linguagem alvo for C#, então o modelo mais apropriado para detectar esse code smell é o baseado no RandomForest, pois foi melhor dentre os outros modelos treinados no conjunto de dados da linguagem C++ para o mesmo smell. Esses resultados podem ajudar a desenvolvedores e pesquisadores a aplicar as mesmas estratégias de detecção de code smells em diferentes linguagens de programação, e utilizar modelos de treinamentos que sejam mais apropriados para cada tipo de code smell e linguagens de programação.pt_BR
Aparece nas coleções:Trabalhos de Conclusão de Curso (TCC) - Bacharelado - CIÊNCIA DA COMPUTAÇÃO- IC

Arquivos associados a este item:
Arquivo Descrição TamanhoFormato 
Uma aplicação do aprendizado por transferência na detecção de Code Smells.pdf1.34 MBAdobe PDFVisualizar/Abrir


Os itens no repositório estão protegidos por copyright, com todos os direitos reservados, salvo quando é indicado o contrário.