一句话:对394名学生1,791个代码审查清单问题的定性研究显示,学生虽存在概念误解,但能预测潜在缺陷并创建较有效的审查清单。
代码审查是工业界识别缺陷的常用实践,也进入软件工程课程,但教学困难在于其效果依赖审查者的代码阅读与分析能力。已有工作多研究阅读技术,较少关注如何培养分析技能。开发代码审查清单可促使学生预测潜在缺陷,但经验有限的学生能否胜任尚不清楚。为此,作者对394名学生生成的1,791个代码审查清单问题进行定性分析,考察学生创建清单的能力、清单能否指导审查者发现缺陷,并归纳常见错误。结果发现,学生对代码审查目的存在一些误解,但总体上能够预测潜在缺陷并创建相对良好的清单;因此作者认为,开发代码审查清单可作为代码审查学习活动,用于支撑学生技能发展。
Code review is a widely-used practice in software development companies to identify defects. Hence, code review has been included in many software engineering curricula at universities worldwide. However, teaching code review is still a challenging task because the code review effectiveness depends on the code reading and analytical skills of a reviewer. While several studies have investigated the code reading techniques that students should use to find defects during code review, little has focused on a learning activity that involves analytical skills. Indeed, developing a code review checklist should stimulate students to develop their analytical skills to anticipate potential issues (i.e., software defects). Yet, it is unclear whether students can anticipate potential issues given their limited experience in software development (programming, testing, etc.). We perform a qualitative analysis to investigate whether students are capable of creating code review checklists, and if the checklists can be used to guide reviewers to find defects. In addition, we identify common mistakes that students make when developing a code review checklist. Our results show that while there are some misconceptions among students about the purpose of code review, students are able to anticipate potential defects and create a relatively good code review checklist. Hence, our results lead us to conclude that developing a code review checklist can be a part of the learning activities for code review in order to scaffold students' skills.
@inproceedings{paperbot6273,
title = {Assessing the Students' Understanding and their Mistakes in Code Review Checklists: An Experience Report of 1,791 Code Review Checklist Questions from 394 Students},
author = {Chun Yong Chong and Patanamon Thongtanunam and Chakkrit Tantithamthavorn},
booktitle = {ICSE},
year = {2021},
doi = {10.1109/icse-seet52601.2021.00011}
}