DSpace/Manakin Repository

Characterizing refactoring-inducing pull requests.

Mostrar registro simples

dc.creator.ID COELHO, F. E. S. pt_BR
dc.creator.Lattes http://lattes.cnpq.br/0520540492918135 pt_BR
dc.contributor.advisor1 MASSONI, Tiago Lima.
dc.contributor.advisor1ID MASSONI, T. L. pt_BR
dc.contributor.advisor1Lattes http://lattes.cnpq.br/3563923906851611 pt_BR
dc.contributor.advisor2 ALVES, Everton Leandro Galdino.
dc.contributor.advisor2ID ALVES, E. L. G. pt_BR
dc.contributor.advisor2Lattes http://lattes.cnpq.br/2793969744497453 pt_BR
dc.contributor.referee1 GHEYI, Rohit.
dc.contributor.referee2 LIRA, Melina Mongiovi Brito.
dc.contributor.referee3 KULESZA, Uira.
dc.contributor.referee4 GARCIA, Alessandro Fabrício.
dc.description.resumo O desenvolvimento baseado em pull adequa-se à prática da Revisão de Código Moderna (RCM), na qual os revisores podem sugerir melhorias de código, como refatoramentos, por meio de comentários e commits em Pull Requests (PRs). Estudos anteriores de RCM tratam todos os PRs como semelhantes, independentemente de induzirem refatoramento ou não. Definimos um PR como indutor de refatoramento quando as edições de refatoramento são realizadas após o(s) commit(s) inicial(is) como resultado de comentários de revisores ou ações espontâneas realizadas pelo autor do PR. Este trabalho explora aspectos relacionados à revisão de código com o objetivo de caracterizar PRs indutores de refatoramento. Para isso, extraímos edições de refatoramento e dados de revisão de código do GitHub. Em seguida, realizamos estudos empíricos para identificar similaridades/dissimilaridades entre PRs indutores de refatoramento e não indutores de refatoramento e caracterizar revisão de código e edições de refatoramento em PRs indutores de refatoramento. Encontramos diferenças significativas entre PRs indutores de refatoramento e não indutores de refatoramento e evidências empíricas sobre a relevância da revisão de código para edições de refatoramento no nível de PR. Observamos fatores motivadores por trás dos PRs indutores de refatoramento, identificamos aspectos estruturais dos comentários de revisão em PRs indutores e não indutores de refatoramento e propomos diretrizes para uma revisão de código mais produtiva. Também encontramos evidências empíricas sobre aspectos técnicos que caracterizam refatoramentos em PRs indutores de refatoramento. Nossas descobertas sugerem orientações para pesquisadores, profissionais e desenvolvedores de ferramentas para melhorar as práticas em torno da revisão de código baseada em pull. pt_BR
dc.publisher.country Brasil pt_BR
dc.publisher.department Centro de Engenharia Elétrica e Informática - CEEI pt_BR
dc.publisher.program PÓS-GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO pt_BR
dc.publisher.initials UFCG pt_BR
dc.subject.cnpq Ciência da Computação pt_BR
dc.title Characterizing refactoring-inducing pull requests. pt_BR
dc.date.issued 2022-02-18
dc.description.abstract Pull-based development has shaped the practice of Modern Code Review (MCR), in which reviewers can suggest code improvements, such as refactorings, through comments and commits in Pull Requests (PRs). Past MCR studies treat all PRs as similar, regardless of whether they induce refactoring or not. We define a PR as refactoring inducing when refactoring edits are performed after the initial commit(s) as either a result of reviewers’ comments or spontaneous actions carried out by the PR author. This work explores code reviewing-related aspects intending to characterize refactoring inducing PRs. For that, we mined refactoring edits and code review data from GitHub. Then, we carried out empirical studies to identify similarities/dissimilarities between refactoring-inducing and non-refactoring-inducing PRs and characterize code review and refactoring edits in refactoring-inducing PRs. We found significant differences between refactoring-inducing and non-refactoring-inducing PRs and empirical evidence on the relevance of code review to refactoring edits at the PR level. We observed motivating factors behind refactoring-inducing PRs, identified structural aspects of review comments in refactoring-inducing and non-refactoring-inducing PRs, and proposed guidelines for a more productive code review. We also found empirical evidence on technical aspects characterizing refactorings in refactoring-inducing PRs. Our findings suggest directions for researchers, practitioners, and tool builders to improve practices around pull-based code review. pt_BR
dc.identifier.uri http://dspace.sti.ufcg.edu.br:8080/jspui/handle/riufcg/26053
dc.date.accessioned 2022-06-30T11:21:29Z
dc.date.available 2022-06-30
dc.date.available 2022-06-30T11:21:29Z
dc.type Tese pt_BR
dc.subject Solicitação pull indutora de refatoramento pt_BR
dc.subject Revisão de código pt_BR
dc.subject Estudo empírico pt_BR
dc.subject Metodologia e técnicas da computação pt_BR
dc.subject Engenharia de software pt_BR
dc.subject Refactoring-inducing pull request pt_BR
dc.subject Code review pt_BR
dc.subject Empirical study pt_BR
dc.subject Computing methodology and techniques pt_BR
dc.subject Software engineering pt_BR
dc.subject Solicitud de extracción inducida por refactorización pt_BR
dc.subject Revisión de código pt_BR
dc.subject Estudio empírico pt_BR
dc.subject Metodología y técnicas informáticas pt_BR
dc.subject Ingeniería de software pt_BR
dc.subject Refactoring induisant une pull request pt_BR
dc.subject Revue de code pt_BR
dc.subject Étude empirique pt_BR
dc.subject Méthodologie et techniques de calcul pt_BR
dc.subject Génie logiciel pt_BR
dc.rights Acesso Aberto pt_BR
dc.creator COELHO, Flávia Estélia Silva.
dc.publisher Universidade Federal de Campina Grande pt_BR
dc.language eng pt_BR
dc.title.alternative Caracterizando pull requests indutores de refatoração. pt_BR
dc.identifier.citation COELHO, F. E. S. Characterizing refactoring-inducing pull requests. 2022. 210 f. Tese (Doutorado em Ciência da Computação) – Programa de Pós-Graduação em Ciência da Computação, Centro de Engenharia Elétrica e Informática, Campina Grande, Paraíba, Brasil, 2022. pt_BR


Arquivos deste item

Este item aparece na(s) seguinte(s) coleção(s)

Mostrar registro simples

Buscar DSpace


Busca avançada

Navegar

Minha conta