Um estudo empírico da comparação de técnicas de recomendação de tarefas e códigos fontes similares em projetos de software livre

Detalhes bibliográficos
Autor(a) principal: Regis, Getúlio Coimbra
Data de Publicação: 2024
Tipo de documento: Trabalho de conclusão de curso
Idioma: por
Título da fonte: Repositório Institucional da UTFPR (da Universidade Tecnológica Federal do Paraná (RIUT))
Texto Completo: http://repositorio.utfpr.edu.br/jspui/handle/1/35306
Resumo: Managing issues in open-source software projects is a challenging and costly task, as many developers are casual and/or novice. On one hand, maintainers need to ensure the quality of issue descriptions and their labels and create mechanisms for recommending and assigning issues. On the other hand, to successfully complete the issue, contributors need to understand it and locate the artifacts related to a given functionality or the defect to be fixed. The goal of this work was to conduct a comparative study of different models for recommending similar issues that could help developers with their contributions. For this we collected data on issues and pull requests from 35 open-source projects hosted on GitHub. We used the Term Frequency - Inverse Document Frequency (TF-IDF), Sentence BERT (SBERT), and Word2Vec techniques to recommend similar issues and source code to assist in the contributions of novice developers. We observed that the models based on the SBERT and TF-IDF techniques yielded better results in the recommendations generated compared to Word2Vec in the two evaluated scenarios (general issues and those marked as good for beginners). These models recommended issues where the code used in the solution was approximately 17% similar to the actual solution of the issue. We concluded that, based on the empirical results obtained, we hope to take the next steps in transferring the knowledge gained to software projects and developers, especially by supporting novice developers during their first contribution.
id UTFPR-12_c4884ffc8d48d8a7e6bfef82ccd4fd0d
oai_identifier_str oai:repositorio.utfpr.edu.br:1/35306
network_acronym_str UTFPR-12
network_name_str Repositório Institucional da UTFPR (da Universidade Tecnológica Federal do Paraná (RIUT))
repository_id_str
spelling Um estudo empírico da comparação de técnicas de recomendação de tarefas e códigos fontes similares em projetos de software livreAn empirical study of the comparison of task recommendation techniques and similar source code in open source software projectsSoftware livreSoftware - DesenvolvimentoProgramadores de computadorFree computer softwareComputer software - DevelopmentComputer programmersCNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAOManaging issues in open-source software projects is a challenging and costly task, as many developers are casual and/or novice. On one hand, maintainers need to ensure the quality of issue descriptions and their labels and create mechanisms for recommending and assigning issues. On the other hand, to successfully complete the issue, contributors need to understand it and locate the artifacts related to a given functionality or the defect to be fixed. The goal of this work was to conduct a comparative study of different models for recommending similar issues that could help developers with their contributions. For this we collected data on issues and pull requests from 35 open-source projects hosted on GitHub. We used the Term Frequency - Inverse Document Frequency (TF-IDF), Sentence BERT (SBERT), and Word2Vec techniques to recommend similar issues and source code to assist in the contributions of novice developers. We observed that the models based on the SBERT and TF-IDF techniques yielded better results in the recommendations generated compared to Word2Vec in the two evaluated scenarios (general issues and those marked as good for beginners). These models recommended issues where the code used in the solution was approximately 17% similar to the actual solution of the issue. We concluded that, based on the empirical results obtained, we hope to take the next steps in transferring the knowledge gained to software projects and developers, especially by supporting novice developers during their first contribution.Fundação Araucária de Apoio ao Desenvolvimento Científico e Tecnológico do ParanáFundação de Amparo à Pesquisa do Estado de São Paulo (FAPESP)Gerenciar tarefas em projetos de software livre e uma atividade desafiadora e custosa, uma vez que muitos desenvolvedores são casuais e/ou novatos. Por um lado, os mantenedores precisam cuidar da qualidade das descrições das tarefas e seus rótulos, e criar mecanismos para recomendação e atribuição de tarefas. Por outro, para concluir com sucesso a tarefa, os contribuidores precisam compreendê-la e localizar os artefatos relacionados a uma dada funcionalidade ou ao defeito a ser corrigido. O objetivo deste trabalho consistiu na condução de um estudo comparativo de diferentes modelos de recomendação de tarefas similares que possam ajudar desenvolvedores na sua contribuição. Para isso coletamos dados de tarefas (issues) e requisições de mudanças (pull requests) de 35 projetos de software livre hospedados no GitHub. Usamos as técnicas Term Frequency - Inverse Document Frequency TF-IDF, Sentence BERT (SBERT) e Word2Vec para recomendar tarefas e código fonte similares de maneira a auxiliar a contribuição de desenvolvedores novatos. Observamos que os modelos baseados nas técnicas SBERT e TF-IDF tiveram melhor resultado nas recomendações geradas quando comparados com Word2Vec nos dois cenários avaliados (tarefas gerais do projeto e anotadas como boa para novatos). Estes modelos recomendaram tarefas cujo código usado na solução era aproximadamente 17% similar a solução real da tarefa. Concluímos que, a partir dos resultados empíricos obtidos, esperamos dar os próximos passos na transferência do conhecimento obtido para projetos de software e desenvolvedores, especialmente apoiando os desenvolvedores novatos durante sua primeira contribuição.Universidade Tecnológica Federal do ParanáCampo MouraoBrasilDepartamento Acadêmico de ComputaçãoCiência da ComputaçãoUTFPRWiese, Igor ScalianteWiese, Igor ScaliantePolato, IvaniltonNakamura, Walter TakashiRegis, Getúlio Coimbra2024-10-31T21:48:17Z2024-10-31T21:48:17Z2024-08-20info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/bachelorThesisapplication/pdfREGIS, Getúlio Coimbra. Um estudo empírico da comparação de técnicas de recomendação de tarefas e códigos fontes similares em projetos de software livre. 2024. Trabalho de Conclusão de Curso (Bacharelado em Ciência da Computação) – Universidade Tecnológica Federal do Paraná, Campo Mourão, 2024.http://repositorio.utfpr.edu.br/jspui/handle/1/35306porAttribution 4.0 Internationalhttp://creativecommons.org/licenses/by/4.0/info:eu-repo/semantics/openAccessreponame:Repositório Institucional da UTFPR (da Universidade Tecnológica Federal do Paraná (RIUT))instname:Universidade Tecnológica Federal do Paraná (UTFPR)instacron:UTFPR2024-11-01T06:08:53Zoai:repositorio.utfpr.edu.br:1/35306Repositório InstitucionalPUBhttp://repositorio.utfpr.edu.br:8080/oai/requestriut@utfpr.edu.br || sibi@utfpr.edu.bropendoar:2024-11-01T06:08:53Repositório Institucional da UTFPR (da Universidade Tecnológica Federal do Paraná (RIUT)) - Universidade Tecnológica Federal do Paraná (UTFPR)false
dc.title.none.fl_str_mv Um estudo empírico da comparação de técnicas de recomendação de tarefas e códigos fontes similares em projetos de software livre
An empirical study of the comparison of task recommendation techniques and similar source code in open source software projects
title Um estudo empírico da comparação de técnicas de recomendação de tarefas e códigos fontes similares em projetos de software livre
spellingShingle Um estudo empírico da comparação de técnicas de recomendação de tarefas e códigos fontes similares em projetos de software livre
Regis, Getúlio Coimbra
Software livre
Software - Desenvolvimento
Programadores de computador
Free computer software
Computer software - Development
Computer programmers
CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO
title_short Um estudo empírico da comparação de técnicas de recomendação de tarefas e códigos fontes similares em projetos de software livre
title_full Um estudo empírico da comparação de técnicas de recomendação de tarefas e códigos fontes similares em projetos de software livre
title_fullStr Um estudo empírico da comparação de técnicas de recomendação de tarefas e códigos fontes similares em projetos de software livre
title_full_unstemmed Um estudo empírico da comparação de técnicas de recomendação de tarefas e códigos fontes similares em projetos de software livre
title_sort Um estudo empírico da comparação de técnicas de recomendação de tarefas e códigos fontes similares em projetos de software livre
author Regis, Getúlio Coimbra
author_facet Regis, Getúlio Coimbra
author_role author
dc.contributor.none.fl_str_mv Wiese, Igor Scaliante
Wiese, Igor Scaliante
Polato, Ivanilton
Nakamura, Walter Takashi
dc.contributor.author.fl_str_mv Regis, Getúlio Coimbra
dc.subject.por.fl_str_mv Software livre
Software - Desenvolvimento
Programadores de computador
Free computer software
Computer software - Development
Computer programmers
CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO
topic Software livre
Software - Desenvolvimento
Programadores de computador
Free computer software
Computer software - Development
Computer programmers
CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO
description Managing issues in open-source software projects is a challenging and costly task, as many developers are casual and/or novice. On one hand, maintainers need to ensure the quality of issue descriptions and their labels and create mechanisms for recommending and assigning issues. On the other hand, to successfully complete the issue, contributors need to understand it and locate the artifacts related to a given functionality or the defect to be fixed. The goal of this work was to conduct a comparative study of different models for recommending similar issues that could help developers with their contributions. For this we collected data on issues and pull requests from 35 open-source projects hosted on GitHub. We used the Term Frequency - Inverse Document Frequency (TF-IDF), Sentence BERT (SBERT), and Word2Vec techniques to recommend similar issues and source code to assist in the contributions of novice developers. We observed that the models based on the SBERT and TF-IDF techniques yielded better results in the recommendations generated compared to Word2Vec in the two evaluated scenarios (general issues and those marked as good for beginners). These models recommended issues where the code used in the solution was approximately 17% similar to the actual solution of the issue. We concluded that, based on the empirical results obtained, we hope to take the next steps in transferring the knowledge gained to software projects and developers, especially by supporting novice developers during their first contribution.
publishDate 2024
dc.date.none.fl_str_mv 2024-10-31T21:48:17Z
2024-10-31T21:48:17Z
2024-08-20
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/bachelorThesis
format bachelorThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv REGIS, Getúlio Coimbra. Um estudo empírico da comparação de técnicas de recomendação de tarefas e códigos fontes similares em projetos de software livre. 2024. Trabalho de Conclusão de Curso (Bacharelado em Ciência da Computação) – Universidade Tecnológica Federal do Paraná, Campo Mourão, 2024.
http://repositorio.utfpr.edu.br/jspui/handle/1/35306
identifier_str_mv REGIS, Getúlio Coimbra. Um estudo empírico da comparação de técnicas de recomendação de tarefas e códigos fontes similares em projetos de software livre. 2024. Trabalho de Conclusão de Curso (Bacharelado em Ciência da Computação) – Universidade Tecnológica Federal do Paraná, Campo Mourão, 2024.
url http://repositorio.utfpr.edu.br/jspui/handle/1/35306
dc.language.iso.fl_str_mv por
language por
dc.rights.driver.fl_str_mv Attribution 4.0 International
http://creativecommons.org/licenses/by/4.0/
info:eu-repo/semantics/openAccess
rights_invalid_str_mv Attribution 4.0 International
http://creativecommons.org/licenses/by/4.0/
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
dc.publisher.none.fl_str_mv Universidade Tecnológica Federal do Paraná
Campo Mourao
Brasil
Departamento Acadêmico de Computação
Ciência da Computação
UTFPR
publisher.none.fl_str_mv Universidade Tecnológica Federal do Paraná
Campo Mourao
Brasil
Departamento Acadêmico de Computação
Ciência da Computação
UTFPR
dc.source.none.fl_str_mv reponame:Repositório Institucional da UTFPR (da Universidade Tecnológica Federal do Paraná (RIUT))
instname:Universidade Tecnológica Federal do Paraná (UTFPR)
instacron:UTFPR
instname_str Universidade Tecnológica Federal do Paraná (UTFPR)
instacron_str UTFPR
institution UTFPR
reponame_str Repositório Institucional da UTFPR (da Universidade Tecnológica Federal do Paraná (RIUT))
collection Repositório Institucional da UTFPR (da Universidade Tecnológica Federal do Paraná (RIUT))
repository.name.fl_str_mv Repositório Institucional da UTFPR (da Universidade Tecnológica Federal do Paraná (RIUT)) - Universidade Tecnológica Federal do Paraná (UTFPR)
repository.mail.fl_str_mv riut@utfpr.edu.br || sibi@utfpr.edu.br
_version_ 1850498060363235328