A Survey on Modern Code Review: Progresses, Challenges and Opportunities
Zezhou Yang, Cuiyun Gao, Zhaoqiang Guo, Zhenhao Li, Kui Liu, Xin Xia, Yuming Zhou
TL;DR
This study presents a comprehensive systematic literature review of modern code review (MCR), spanning 231 papers from 2013 to 2024 to map research trends, taxonomies, techniques, and empirical insights. It partitions MCR research into Improvement Techniques (methodologies and tools) and Understanding Studies (empirical and user studies), and details progress across code-change analysis, reviewer recommendation, and review-comment analysis. It synthesizes seven unsolved challenges and six opportunities, including the integration of large language models, multi-task pretraining, and biometrics for deeper understanding. The findings illuminate gaps between research and practice, guiding future work toward more effective, automated, and trustful code-review processes with tangible industry impact.
Abstract
Over the past decade, modern code review (MCR) has been deemed as a crucial practice of software quality assurance, which is applied to improve software quality and transfer development knowledge within a software team. Despite its importance, MCR is often a complicated and time-consuming activity for practitioners. In recent years, many studies that are dedicated to the comprehension and the improvement of MCR have been explored so that the MCR activity can be carried out more conveniently and efficiently. To provide researchers and practitioners a clear understanding of the current research status on MCR, this paper conducts a systematic literature review of the past years. Given the collected 231 surveyed papers, this paper makes the following five contributions: First, we analyze the research trends of related MCR studies. Second, we provide a taxonomy for the current MCR, encompassing both Improvement Techniques and Understanding Studies. Third, we present the concrete research progress of each novel MCR methodology and prototype tool. Fourth, we exploit the main empirical insights from empirical study and user study that are helpful to improve MCR. Finally, we sum up unsolved challenges and outline several possible research opportunities in the future.
