Please use this identifier to cite or link to this item: http://dspace.sti.ufcg.edu.br:8080/jspui/handle/riufcg/24976
Title: Um estudo qualitativo sobre o impacto de revisões de código em refatoramentos no contexto de pull requests.
Other Titles: A qualitative study on the impact of code reviews on refactorings in the context of pull requests.
???metadata.dc.creator???: SILVA, José Ramon Fragoso da.
???metadata.dc.contributor.advisor1???: ALVES, Everton Leandro Galdino.
???metadata.dc.contributor.referee1???: MACHADO, Patrícia Duarte de Lima.
???metadata.dc.contributor.referee2???: MASSONI, Tiago Lima.
Keywords: 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
Issue Date: 25-Oct-2021
Publisher: Universidade Federal de Campina Grande
Citation: 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
???metadata.dc.description.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.
Abstract: 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.
Keywords: 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
???metadata.dc.subject.cnpq???: Ciência da Computação
URI: http://dspace.sti.ufcg.edu.br:8080/jspui/handle/riufcg/24976
Appears in Collections:Trabalho de Conclusão de Curso - Artigo - Ciência da Computação

Files in This Item:
File Description SizeFormat 
JOSÉ RAMON FRAGOSO DA SILVA - TCC ARTIGO CIÊNCIA DA COMPUTAÇÃO 2021.pdfJosé Ramon Fragoso da Silva - TCC Artigo Ciência da Computação CEEI 2021873.33 kBAdobe PDFView/Open


Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.