Code Review Practices for Refactoring Changes: An Empirical Study on OpenStack

03/27/2022
by   Eman Abdullah AlOmar, et al.
0

Modern code review is a widely used technique employed in both industrial and open-source projects to improve software quality, share knowledge, and ensure adherence to coding standards and guidelines. During code review, developers may discuss refactoring activities before merging code changes in the code base. To date, code review has been extensively studied to explore its general challenges, best practices and outcomes, and socio-technical aspects. However, little is known about how refactoring is being reviewed and what developers care about when they review refactored code. Hence, in this work, we present a quantitative and qualitative study to understand what are the main criteria developers rely on to develop a decision about accepting or rejecting a submitted refactored code, and what makes this process challenging. Through a case study of 11,010 refactoring and non-refactoring reviews spread across OpenStack open-source projects, we find that refactoring-related code reviews take significantly longer to be resolved in terms of code review efforts. Moreover, upon performing a thematic analysis on a significant sample of the refactoring code review discussions, we built a comprehensive taxonomy consisting of 28 refactoring review criteria. We envision our findings reaffirming the necessity of developing accurate and efficient tools and techniques that can assist developers in the review process in the presence of refactorings.

READ FULL TEXT

page 4

page 8

page 10

research
02/10/2021

Refactoring Practices in the Context of Modern Code Review: An Industrial Case Study at Xerox

Modern code review is a common and essential practice employed in both i...
research
10/10/2022

Improving Code Review with GitHub Issue Tracking

Software quality is an important problem for technology companies, since...
research
01/07/2021

Towards Automating Code Review Activities

Code reviews are popular in both industrial and open source projects. Th...
research
09/30/2021

Predicting Code Review Completion Time in Modern Code Review

Context. Modern Code Review (MCR) is being adopted in both open source a...
research
08/13/2022

The Sense of Logging in the Linux Kernel

Logging plays a crucial role in software engineering because it is key t...
research
04/19/2020

Code Review in the Classroom

This paper presents a case study to examine the affinity of the code rev...
research
04/16/2021

Learning to Boost the Efficiency of Modern Code Review

Modern Code Review (MCR) is a standard in all kinds of organizations tha...

Please sign up or login with your details

Forgot password? Click here to reset