Tutorial: Contemporary Peer Code Review Practices


Contemporary peer code review is a lightweight, asynchronous, tool-supported method for ensuring the quality, maintainability, and sustainability of software. While this approach has been useful in the development of traditional software, it is underutilized in the development of scientific HPC software. Because the complexity of scientific HPC software makes testing difficult, peer code review is a good option. Under the umbrella of Software Engineering for Science https://se4science.org/ and supported by the Better Scientific Software http://BSSw.io initiative, this tutorial introduces developers (and students) to the concepts of code review and its tool support. The tutorial will begin with a general introduction to code review, a more specific discussion of the unique nature of scientific code review, and an overview of avaiable tool support. Then, tutorial attendees will participate in hands-on exercises to practice code review. We will conclude the tutorial with a group discussion about best practices for performing scientific code review.


8:30 - Introductions

8:40 - Background Lecture on Code Review

10:00 - Coffee Break

10:30 - Code Review exercise (Sample Code)

11:00 - Experience sharing about the exercise

11:10 - Contemporary code review

11:15 - Introducing Gerrit

11:30 - Overview of other code review tools

11:40 - Feedback survey and Discussion

12:00 - The End

Zip file of code