Contemporary peer code review, a lightweight, asynchronous method for ensuring high-quality code

Date and Time: 
Wednesday 2018 Apr 4th
Location: 
CG Auditorium
Speaker: 
Jeffrey Carver

Contemporary peer code review is a lightweight, asynchronous method for ensuring high-quality code. While this practice has been shown to be beneficial to help developers identify and remove faults from code, it is underutilized in scientific software. To remedy this situation, we propose a hands-on tutorial. The first part of the tutorial will provide important background information and motivation for the usefulness of contemporary peer code review. During this portion of the tutorial, we will describe the peer code review process, introduce the available support tools, and describe some of our own research results on peer code review in scientific software, open-source software, and commercial software. The second part of the tutorial will be more hands-on. We will first teach attendees how to use the different code review support tools commonly used in open-source and commercial software, e.g. Gerrit, Review Board, Phabricator, and Crucible. We will then provide the attendees with code review exercise in which they can use one or more tools and gain some experience. We will conclude the tutorial with a debrief of the hands-on exercise, a discussion of peer code review needs in scientific software, and an overview of peer code review best practices.

Speaker Description: 

Jeffrey Carver is a Professor in the Department of Computer Science at the University of Alabama. He earned his PhD in 2003 from the University of Maryland. His research focuses on the application of empirical software engineering to study scientific software, peer-code review, software quality, human factors, and open-source software. He is the primary organizer of the SE4Science workshop series (http://se4science.org/workshops). He is a Senior Member of the IEEE and the ACM.

Event Category: