MC3: Multi-Objective Code Clone Configuration for Online Code Repositories
| Ano de defesa: | 2025 |
|---|---|
| Autor(a) principal: | |
| Orientador(a): | |
| Banca de defesa: | |
| 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 |