一句话:通过 Meta 工业案例研究代码评审耗时的影响因素,并报告评审时长难以可靠建模。
本文面向 Meta 的工业代码评审场景,研究一个 diff/change 在评审中停留时间的影响因素,以缓解人工评审拖慢持续集成的问题。作者先通过开发者调查了解评审等待体验,发现在等待约 24 小时后评审开始令人感觉缓慢。随后构建评审时间预测模型,试图识别导致评审变慢的潜在因素,并用于决定何时提醒 reviewer 或定位需要处理的 diff 相关因素。标题与案例结论强调,评审耗时受多因素影响,难以建立可靠预测模型,为后续研究提出负面结果与经验教训。
Code review is an effective practice for finding defects, but because it is manually intensive it can slow down the continuous integration of changes. Our goal was to understand the factors that influenced the time a change, ie a diff at Meta, would spend in review. A developer survey showed that diff reviews start to feel slow after they have been waiting for around 24 hour review. We built a review time predictor model to identify potential factors that may be causing reviews to take longer, which we could use to predict when would be the best time to nudge reviewers or to identify diff-related factors that we may need to address.
DOI 原文 ·
@inproceedings{paperbot7052,
title = {Understanding why we cannot model how long a code review will take: an industrial case study},
author = {Lawrence Chen and Peter C. Rigby and Nachiappan Nagappan},
booktitle = {FSE},
year = {2022},
doi = {10.1145/3540250.3558945}
}