A Large-Scale Study on Source Code Reviewer Recommendation

06/20/2018
by   Jakub Lipcak, et al.
0

Context: Software code reviews are an important part of the development process, leading to better software quality and reduced overall costs. However, finding appropriate code reviewers is a complex and time-consuming task. Goals: In this paper, we propose a large-scale study to compare performance of two main source code reviewer recommendation algorithms (RevFinder and a Naive Bayes-based approach) in identifying the best code reviewers for opened pull requests. Method: We mined data from Github and Gerrit repositories, building a large dataset of 51 projects, with more than 293K pull requests analyzed, 180K owners and 157K reviewers. Results: Based on the large analysis, we can state that i) no model can be generalized as best for all projects, ii) the usage of a different repository (Gerrit, GitHub) can have impact on the the recommendation results, iii) exploiting sub-projects information available in Gerrit can improve the recommendation results.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
07/09/2018

CORRECT: Code Reviewer Recommendation in GitHub Based on Cross-Project and Technology Experience

Peer code review locates common coding rule violations and simple logica...
research
11/05/2021

DeSkew-LSH based Code-to-Code Recommendation Engine

Machine learning on source code (MLOnCode) is a popular research field t...
research
08/19/2022

Topical: Learning Repository Embeddings from Source Code using Attention

Machine learning on source code (MLOnCode) promises to transform how sof...
research
08/09/2022

The Rise of GitHub in Scholarly Publications

The definition of scholarly content has expanded to include the data and...
research
05/28/2020

Using Source Code Density to Improve the Accuracy of Automatic Commit Classification into Maintenance Activities

Source code is changed for a reason, e.g., to adapt, correct, or adapt i...
research
02/15/2020

Recommendation of Move Method Refactoring Using Path-Based Representation of Code

Software refactoring plays an important role in increasing code quality....
research
05/29/2022

To test, or not to test: A proactive approach for deciding complete performance test initiation

Software performance testing requires a set of inputs that exercise diff...

Please sign up or login with your details

Forgot password? Click here to reset