A review of code reviewer recommendation studies: Challenges and future directions

Date
2021-04-14
Advisor
Instructor
Source Title
Science of Computer Programming
Print ISSN
0167-6423
Electronic ISSN
1872-7964
Publisher
Elsevier
Volume
208
Issue
Pages
1 - 21
Language
English
Type
Review
Journal Title
Journal ISSN
Volume Title
Abstract

Code review is the process of inspecting code changes by a developer who is not involved in the development of the changeset. One of the initial and important steps of code review process is selecting code reviewer(s) for a given code change. To maximize the benefits of the code review process, the appropriate selection of the reviewer is essential. Code reviewer recommendation has been an active research area over the last few years, and many recommendation models have been proposed in the literature.

In this study, we conduct a systematic literature review by inspecting 29 primary studies published from 2009 to 2020. Based on the outcomes of our review: (1) most preferred approaches are heuristic approaches closely followed by machine learning approaches, (2) the majority of the studies use open source projects to evaluate their models, (3) the majority of the studies prefer incremental training set validation techniques, (4) most studies suffer from reproducibility problems, (5) model generalizability and dataset integrity are the most common validity threats for the models and (6) refining models and conducting additional experiments are the most common future work discussions in the studies.

Course
Other identifiers
Book Title
Keywords
Systematic literature review, Code reviewer recommendation, Reviewer recommendation, Modern code review, Pull request
Citation
Published Version (Please cite this version)