Peer Code Review as Formative Assessment: A Case Study from a Database Course Project
Code review is an important quality assurance activity for software engineers. In addition, both reviewers and developers may improve their professional competencies when participating in code reviews. This paper describes a three-week database course project where the students designed and developed a database and a database application. After a three-week project work period, the students submitted their designs and their code repositories for peer review. 115 students participated in the code review of the 68 repositories submitted for review. The students could make use of the feedback they received and what they learned from studying other student’s code when revising the project for the final submission, which was graded by the teaching staff.
In their final reports, the students reported on benefits and barriers for effective peer review that seemed to be more accentuated when the purpose was formative assessment. Benefits included high level thinking and deeper levels of learning and giving the students different points of view when reviewing their own solutions. Some of the barriers were the students’ lack of domain knowledge and lack of confidence in being reviewers, the quality of the projects submitted for review, the review workload, and the amount of work needed to modify the code after the review.