MC3: Multi-Objective Code Clone Configuration for Online Code Repositories

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.
id UECE-0_b78ebb39d9a84528a7225f7efc5af992
oai_identifier_str oai:uece.br:117470
network_acronym_str UECE-0
network_name_str Repositório Institucional da UECE
repository_id_str
spelling MC3: Multi-Objective Code Clone Configuration for Online Code RepositoriesA 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.Clone detection is an automated process for finding duplicated code within a project's code base or between online sources, such as Q\&A platforms. Nowadays, the code cloning community advocates that developers must be aware of the clones they may have in their code bases to either remove or keep them, depending on their goal. To automatically identify clones in a code base, one must use clone detection tools. These tools are sensitive with their settings, which directly affects their clone detection abilities. Certain studies that implemented parameter optimization processes in clone detectors achieved optimized configurations that outperformed the tools' default configurations. However, current parameter optimization methods for clone detectors are not designed for rank-based tools. To address this limitation and support empirical research on code clones, Multi-objective Code Clone Configuration (MC3) was introduceda novel approach leveraging multi-objective optimization to identify an optimal parameter set for a rank-based clone detection tool. The empirical evaluation involved running three baseline search algorithms alongside NSGA-II to evaluate their performance in this new optimization context. Furthermore, the optimized configurations were compared against the default configuration. The results indicate that NSGA-II was the algorithm with the best performance, identifying superior configurations compared to the baseline algorithms. Ultimately, the optimized configurations demonstrated improvements of 71.08% and 46.29% for the defined fitness functions.Universidade Estadual do CearáMatheus Henrique Estevão PaixãoSousa, Denis Menezes De2025-01-30T11:32:42Zinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfhttps://siduece.uece.br/siduece/trabalhoAcademicoPublico.jsf?id=117470info:eu-repo/semantics/openAccessengreponame:Repositório Institucional da UECEinstname:Universidade Estadual do Cearáinstacron:UECE2025-01-30T11:32:42Zoai:uece.br:117470Repositório InstitucionalPUBhttps://siduece.uece.br/siduece/api/oai/requestopendoar:2025-01-30T11:32:42Repositório Institucional da UECE - Universidade Estadual do Cearáfalse
dc.title.none.fl_str_mv MC3: Multi-Objective Code Clone Configuration for Online Code Repositories
title MC3: Multi-Objective Code Clone Configuration for Online Code Repositories
spellingShingle MC3: Multi-Objective Code Clone Configuration for Online Code Repositories
Sousa, Denis Menezes De
title_short MC3: Multi-Objective Code Clone Configuration for Online Code Repositories
title_full MC3: Multi-Objective Code Clone Configuration for Online Code Repositories
title_fullStr MC3: Multi-Objective Code Clone Configuration for Online Code Repositories
title_full_unstemmed MC3: Multi-Objective Code Clone Configuration for Online Code Repositories
title_sort MC3: Multi-Objective Code Clone Configuration for Online Code Repositories
author Sousa, Denis Menezes De
author_facet Sousa, Denis Menezes De
author_role author
dc.contributor.none.fl_str_mv Matheus Henrique Estevão Paixão
dc.contributor.author.fl_str_mv Sousa, Denis Menezes De
dc.subject.none.fl_str_mv
description 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.
publishDate 2025
dc.date.none.fl_str_mv 2025-01-30T11:32:42Z
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/masterThesis
format masterThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv https://siduece.uece.br/siduece/trabalhoAcademicoPublico.jsf?id=117470
url https://siduece.uece.br/siduece/trabalhoAcademicoPublico.jsf?id=117470
dc.language.iso.fl_str_mv eng
language eng
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
dc.publisher.none.fl_str_mv Universidade Estadual do Ceará
publisher.none.fl_str_mv Universidade Estadual do Ceará
dc.source.none.fl_str_mv reponame:Repositório Institucional da UECE
instname:Universidade Estadual do Ceará
instacron:UECE
instname_str Universidade Estadual do Ceará
instacron_str UECE
institution UECE
reponame_str Repositório Institucional da UECE
collection Repositório Institucional da UECE
repository.name.fl_str_mv Repositório Institucional da UECE - Universidade Estadual do Ceará
repository.mail.fl_str_mv
_version_ 1829135428609900544