In Support of Peer Code Review and Inspection in an Undergraduate Software Engineering Course

Peer code review and inspection is a quality improvement software engineering activity consisting of systematic examination of source code. While peer code review is commonly used in industrial and open-source software projects, it is seldom taught or practiced in undergraduate level Software Engineering courses. We conduct a study on the use of peer code reviewin a sophomore level introductory Software Engineering course consisting of more than 200 students and present our experiences, findings and challenges. We use Bitbucket's (a free code distributed version control system hosting site for Git and Mercurial) in-built code-review system and web-based hosting service. We extract the peer code review comments using Bitbucket API for detecting coding standard or compliance violation and identification of defects (number and type) by reviewers. We also conduct a survey on the benefit of peer code review activity on peer cohesion and communication. Our experiments and survey reveal that employing peer code review in an undergraduate class has several learning benefits such as improvement in coding skills, program comprehension abilities, knowledge of coding standard, and compliance and peer communication.