Detalhes bibliográficos
Ano de defesa: |
2025 |
Autor(a) principal: |
Sousa, Denis Menezes De |
Orientador(a): |
Não Informado pela instituição |
Banca de defesa: |
Não Informado pela instituição |
Tipo de documento: |
Dissertação
|
Tipo de acesso: |
Acesso aberto |
Idioma: |
eng |
Instituição de defesa: |
Universidade Estadual do Ceará
|
Programa de Pós-Graduação: |
Não Informado pela instituição
|
Departamento: |
Não Informado pela instituição
|
País: |
Não Informado pela instituição
|
Link de acesso: |
https://siduece.uece.br/siduece/trabalhoAcademicoPublico.jsf?id=117470
|
Resumo: |
A detecção de clones é um processo automatizado para encontrar códigos duplicados dentro do código-fonte de um projeto ou entre fontes online, como plataformas de perguntas e respostas. Atualmente, a comunidade que estuda clonagem de código defende que os desenvolvedores devem estar cientes dos clones que podem existir em seus códigos para removê-los ou mantê-los, dependendo de seus objetivos. Para identificar clones automaticamente em um código-fonte, é necessário utilizar ferramentas de detecção de clones. Essas ferramentas são sensíveis às suas configurações, o que afeta diretamente suas capacidades de detecção. Certos estudos que implementaram processos de otimização de parâmetros em detectores de clones alcançaram configurações otimizadas que superaram as configurações padrão das ferramentas. No entanto, os métodos atuais de otimização de parâmetros para detectores de clones não são projetados para ferramentas baseadas em ranqueamento. Para lidar com essa limitação e apoiar a pesquisa empírica sobre clones de código, foi introduzido o Multi-objective Code Clone Configuration (MC3), uma abordagem inovadora que utiliza uma otimização multiobjetiva para identificar uma configuração ideal para de detecção de clones baseada em ranqueamento. A avaliação empírica incluiu a execução de três algoritmos de busca base, além do NSGA-II, para avaliar seu desempenho nesse novo contexto de otimização. Além disso, as configurações otimizadas foram comparadas com a configuração padrão. Os resultados obtidos indicaram que o NSGA-II foi o algoritmo com o melhor desempenho, identificando configurações superiores em comparação com os algoritmos base. Por fim, as configurações otimizadas demonstraram melhorias de 71,08% e 46,29% nas funções de aptidão. |