Um estudo qualitativo sobre o impacto de revisões de código em refatoramentos no contexto de pull requests.
Autor(a) principal: | |
---|---|
Data de Publicação: | 2021 |
Tipo de documento: | Trabalho de conclusão de curso |
Idioma: | por |
Título da fonte: | Biblioteca Digital de Teses e Dissertações da UFCG |
Texto Completo: | http://dspace.sti.ufcg.edu.br:8080/jspui/handle/riufcg/24976 |
Resumo: | Os comentários feitos em pull requests (PRs) de repositórios Git, podem induzir a refatoramentos, que são melhorias feitas no código-fonte, preservando o seu comportamento. Com base nos comentários de revisão, desenvolvedores são capazes de decidir por refatorar o código-fonte. Este trabalho tem como objetivo analisar PRs de repositórios Java do projeto Apache [19] no GitHub à luz dos comentários dos revisores e refatoramentos realizados em tempo de revisão de código (minerados previamente pelo RefactoringMiner - uma ferramenta estado-da-arte para a detecção de refatoramentos). Para tanto, propõem-se uma análise manual de comentários de revisão em uma base de dados que contém 118 PRs. Foram definidos pontos específicos a serem analisados em cada comentário, buscando atingir objetivos específicos definidos para ajudar na pesquisa. Essa análise foi feita de forma manual, lendo, caracterizando e verificando o comportamento desses pontos levantados e fazendo anotações sobre cada Pull Request. Ao final deste trabalho foram notados diversos padrões que se repetiam entre os PRs, esses padrões foram compilados e serão apresentados, e com isso espera-se entender de que forma os comentários de revisão influenciam nos refatoramentos de código-fonte. |
id |
UFCG_23802e648be7f2a201e5fcb595e3cd21 |
---|---|
oai_identifier_str |
oai:localhost:riufcg/24976 |
network_acronym_str |
UFCG |
network_name_str |
Biblioteca Digital de Teses e Dissertações da UFCG |
repository_id_str |
4851 |
spelling |
Um estudo qualitativo sobre o impacto de revisões de código em refatoramentos no contexto de pull requests.A qualitative study on the impact of code reviews on refactorings in the context of pull requests.Pull requestsComentários – pull requestsGithubCódigo-fonteRepositórios JavaProjeto ApacheDesenvolvedores de softwareRevisoresRefatoramentoComments – pull requestSource codeJava RepositoriesProject ApacheSoftware developersReviewersRefactoringCiência da ComputaçãoOs comentários feitos em pull requests (PRs) de repositórios Git, podem induzir a refatoramentos, que são melhorias feitas no código-fonte, preservando o seu comportamento. Com base nos comentários de revisão, desenvolvedores são capazes de decidir por refatorar o código-fonte. Este trabalho tem como objetivo analisar PRs de repositórios Java do projeto Apache [19] no GitHub à luz dos comentários dos revisores e refatoramentos realizados em tempo de revisão de código (minerados previamente pelo RefactoringMiner - uma ferramenta estado-da-arte para a detecção de refatoramentos). Para tanto, propõem-se uma análise manual de comentários de revisão em uma base de dados que contém 118 PRs. Foram definidos pontos específicos a serem analisados em cada comentário, buscando atingir objetivos específicos definidos para ajudar na pesquisa. Essa análise foi feita de forma manual, lendo, caracterizando e verificando o comportamento desses pontos levantados e fazendo anotações sobre cada Pull Request. Ao final deste trabalho foram notados diversos padrões que se repetiam entre os PRs, esses padrões foram compilados e serão apresentados, e com isso espera-se entender de que forma os comentários de revisão influenciam nos refatoramentos de código-fonte.Pull-based development is a fundamental practice that constitutes Modern Code Review (MCR) as developers can contribute to code improvements such as edits to refactorings. An analysis of comments made by reviewers on pull requests provides new insight into doing refactorings in Open Source projects. In this article we define pull requests into RIPRs (Refactoring-Inducing Pull Request), when a Pull Request has refactorings in any of its commits and this refactoring happened because of some reviewer comment, and nonRIPRs (non-Refactoring-Inducing Pull Request), that is a Pull Request that has comments but no refactoring happened. The objective of this study is to analyse Pull Requests from repositories written in Java, all of them collected from Apache’s Software Foundation most popular repositories. With the results collected from this analysis our focus is to characterize review comments, and understand how these comments affect on how the author or Pull Requests modify their code, making refactorings when needed. In order to achieve these goals, 3 questions were developed by the research team, involved in this work: (i) How do reviewers suggest refactorings in review comments in RIPRs? (ii) Do the reviewers justify their reasons? (iii) What is the relation between refactoring recommendations and actual refactorings? With these questions we can characterize review comments, understanding the components that compose a comment, and how these components affect change in code. After analysis, some results were observed by the researchers in both RIPRs and nonRIPRS; comments had characteristics and patterns that could occur. These patterns were compared with the occurrence of refactorings and the results were shown in the Results section. The results showed that RIPRs and nonRIPRs had similar or different characteristics: In all of Pull Requests we observed that the reviewers showed the exact location in code where the changes should be made. In RIPRs the patterns observed were: Comments can directly suggest a refactoring, or can suggest other changes in code that indirectly can result in refactorings. Comments can also have the presence of justifications about the suggestions and it also can be written in a more polite way, asking the author if changes could be made, or more directly, when an obvious refactoring should be made. In nonRIPRs it was observed that there are reasons a refactoring could not occur: The presence of a discussion between the author and the reviewer after a suggestion, making this suggestion not implemented. The other reason is when a reviewer suggests changes that don’t result in refactoring, and other changes were made. The main impact of this research is to expand the knowledge about contemporary code review in Pull Requests, providing implications that can contribute to other researchers, developers and programmers.Universidade Federal de Campina GrandeBrasilCentro de Engenharia Elétrica e Informática - CEEIUFCGALVES, Everton Leandro Galdino.ALVES, E. L. G.http://lattes.cnpq.br/2793969744497453MACHADO, Patrícia Duarte de Lima.MACHADO, P. D. L.MASSONI, Tiago Lima.MASSONI, T. L.SILVA, José Ramon Fragoso da.2021-10-252022-04-29T17:49:56Z2022-04-292022-04-29T17:49:56Zinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/bachelorThesishttp://dspace.sti.ufcg.edu.br:8080/jspui/handle/riufcg/24976SILVA, José Ramon Fragoso da. Um estudo qualitativo sobre o impacto de revisões de código em refatoramentos no contexto de pull requests. 2021. 11f. (Trabalho de Conclusão de Curso - Artigo), Curso de Bacharelado em Ciência da Computação, Centro de Engenharia Elétrica e Informática , Universidade Federal de Campina Grande – Paraíba - Brasil, 2021. Disponível em: http://dspace.sti.ufcg.edu.br:8080/jspui/handle/riufcg/24976porinfo:eu-repo/semantics/openAccessreponame:Biblioteca Digital de Teses e Dissertações da UFCGinstname:Universidade Federal de Campina Grande (UFCG)instacron:UFCG2022-04-29T17:50:42Zoai:localhost:riufcg/24976Biblioteca Digital de Teses e Dissertaçõeshttp://bdtd.ufcg.edu.br/PUBhttp://dspace.sti.ufcg.edu.br:8080/oai/requestbdtd@setor.ufcg.edu.br || bdtd@setor.ufcg.edu.bropendoar:48512022-04-29T17:50:42Biblioteca Digital de Teses e Dissertações da UFCG - Universidade Federal de Campina Grande (UFCG)false |
dc.title.none.fl_str_mv |
Um estudo qualitativo sobre o impacto de revisões de código em refatoramentos no contexto de pull requests. A qualitative study on the impact of code reviews on refactorings in the context of pull requests. |
title |
Um estudo qualitativo sobre o impacto de revisões de código em refatoramentos no contexto de pull requests. |
spellingShingle |
Um estudo qualitativo sobre o impacto de revisões de código em refatoramentos no contexto de pull requests. SILVA, José Ramon Fragoso da. Pull requests Comentários – pull requests Github Código-fonte Repositórios Java Projeto Apache Desenvolvedores de software Revisores Refatoramento Comments – pull request Source code Java Repositories Project Apache Software developers Reviewers Refactoring Ciência da Computação |
title_short |
Um estudo qualitativo sobre o impacto de revisões de código em refatoramentos no contexto de pull requests. |
title_full |
Um estudo qualitativo sobre o impacto de revisões de código em refatoramentos no contexto de pull requests. |
title_fullStr |
Um estudo qualitativo sobre o impacto de revisões de código em refatoramentos no contexto de pull requests. |
title_full_unstemmed |
Um estudo qualitativo sobre o impacto de revisões de código em refatoramentos no contexto de pull requests. |
title_sort |
Um estudo qualitativo sobre o impacto de revisões de código em refatoramentos no contexto de pull requests. |
author |
SILVA, José Ramon Fragoso da. |
author_facet |
SILVA, José Ramon Fragoso da. |
author_role |
author |
dc.contributor.none.fl_str_mv |
ALVES, Everton Leandro Galdino. ALVES, E. L. G. http://lattes.cnpq.br/2793969744497453 MACHADO, Patrícia Duarte de Lima. MACHADO, P. D. L. MASSONI, Tiago Lima. MASSONI, T. L. |
dc.contributor.author.fl_str_mv |
SILVA, José Ramon Fragoso da. |
dc.subject.por.fl_str_mv |
Pull requests Comentários – pull requests Github Código-fonte Repositórios Java Projeto Apache Desenvolvedores de software Revisores Refatoramento Comments – pull request Source code Java Repositories Project Apache Software developers Reviewers Refactoring Ciência da Computação |
topic |
Pull requests Comentários – pull requests Github Código-fonte Repositórios Java Projeto Apache Desenvolvedores de software Revisores Refatoramento Comments – pull request Source code Java Repositories Project Apache Software developers Reviewers Refactoring Ciência da Computação |
description |
Os comentários feitos em pull requests (PRs) de repositórios Git, podem induzir a refatoramentos, que são melhorias feitas no código-fonte, preservando o seu comportamento. Com base nos comentários de revisão, desenvolvedores são capazes de decidir por refatorar o código-fonte. Este trabalho tem como objetivo analisar PRs de repositórios Java do projeto Apache [19] no GitHub à luz dos comentários dos revisores e refatoramentos realizados em tempo de revisão de código (minerados previamente pelo RefactoringMiner - uma ferramenta estado-da-arte para a detecção de refatoramentos). Para tanto, propõem-se uma análise manual de comentários de revisão em uma base de dados que contém 118 PRs. Foram definidos pontos específicos a serem analisados em cada comentário, buscando atingir objetivos específicos definidos para ajudar na pesquisa. Essa análise foi feita de forma manual, lendo, caracterizando e verificando o comportamento desses pontos levantados e fazendo anotações sobre cada Pull Request. Ao final deste trabalho foram notados diversos padrões que se repetiam entre os PRs, esses padrões foram compilados e serão apresentados, e com isso espera-se entender de que forma os comentários de revisão influenciam nos refatoramentos de código-fonte. |
publishDate |
2021 |
dc.date.none.fl_str_mv |
2021-10-25 2022-04-29T17:49:56Z 2022-04-29 2022-04-29T17:49:56Z |
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 |
http://dspace.sti.ufcg.edu.br:8080/jspui/handle/riufcg/24976 SILVA, José Ramon Fragoso da. Um estudo qualitativo sobre o impacto de revisões de código em refatoramentos no contexto de pull requests. 2021. 11f. (Trabalho de Conclusão de Curso - Artigo), Curso de Bacharelado em Ciência da Computação, Centro de Engenharia Elétrica e Informática , Universidade Federal de Campina Grande – Paraíba - Brasil, 2021. Disponível em: http://dspace.sti.ufcg.edu.br:8080/jspui/handle/riufcg/24976 |
url |
http://dspace.sti.ufcg.edu.br:8080/jspui/handle/riufcg/24976 |
identifier_str_mv |
SILVA, José Ramon Fragoso da. Um estudo qualitativo sobre o impacto de revisões de código em refatoramentos no contexto de pull requests. 2021. 11f. (Trabalho de Conclusão de Curso - Artigo), Curso de Bacharelado em Ciência da Computação, Centro de Engenharia Elétrica e Informática , Universidade Federal de Campina Grande – Paraíba - Brasil, 2021. Disponível em: http://dspace.sti.ufcg.edu.br:8080/jspui/handle/riufcg/24976 |
dc.language.iso.fl_str_mv |
por |
language |
por |
dc.rights.driver.fl_str_mv |
info:eu-repo/semantics/openAccess |
eu_rights_str_mv |
openAccess |
dc.publisher.none.fl_str_mv |
Universidade Federal de Campina Grande Brasil Centro de Engenharia Elétrica e Informática - CEEI UFCG |
publisher.none.fl_str_mv |
Universidade Federal de Campina Grande Brasil Centro de Engenharia Elétrica e Informática - CEEI UFCG |
dc.source.none.fl_str_mv |
reponame:Biblioteca Digital de Teses e Dissertações da UFCG instname:Universidade Federal de Campina Grande (UFCG) instacron:UFCG |
instname_str |
Universidade Federal de Campina Grande (UFCG) |
instacron_str |
UFCG |
institution |
UFCG |
reponame_str |
Biblioteca Digital de Teses e Dissertações da UFCG |
collection |
Biblioteca Digital de Teses e Dissertações da UFCG |
repository.name.fl_str_mv |
Biblioteca Digital de Teses e Dissertações da UFCG - Universidade Federal de Campina Grande (UFCG) |
repository.mail.fl_str_mv |
bdtd@setor.ufcg.edu.br || bdtd@setor.ufcg.edu.br |
_version_ |
1809744538170818560 |