A review of code reviewer recommendation studies: Challenges and future directions
Embargo Lift Date: 2023-04-14
Science of Computer Programming
1 - 21
Item Usage Stats
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.
KeywordsSystematic literature review
Code reviewer recommendation
Modern code review
Published Version (Please cite this version)https://doi.org/10.1016/j.scico.2021.102652
Showing items related by title, author, creator and subject.
Sülün, Emre; Tüzün, Eray; Doğrusöz, Uğur (Association for Computing Machinery, 2019)Various types of artifacts (requirements, source code, test cases, documents, etc.) are produced throughout the lifecycle of a software. These artifacts are often related with each other via traceability links that are ...
Sülün, Emre; Tüzün, Eray; Doğrusöz, Uğur (Elsevier BV, 2021-02)Context: Various types of artifacts (requirements, source code, test cases, documents, etc.) are produced throughout the lifecycle of a software. These artifacts are connected with each other via traceability links that ...
Atmaca, Abdullah; Oruç, A. Yavuz (IEEE, 2010)In many assignment problems, a set of documents such as research proposals, promotion dossiers, resumes of job applicants is assigned to a set of experts for ordinal evaluation, ranking, and classification. A desirable ...