2 Dissecting the code review

 

This chapter covers

  • What code review systems exist
  • What’s involved in a typical code review workflow
  • Who participates or influences the code review process (code review participants)
  • What responsibilities belong to each participant (code review expectations)

In the first chapter, we explored why code reviews are essential and why you and your team should want them. Here, we dive deeper into the process itself: types of code review systems, who’s involved, what a typical workflow looks like (and which one we’ll focus on in this book), and some foundational practices we should know for the workflow we’ll be using. Consider this chapter a breakdown of the basics!

2.1 Code review systems

There are two code review systems a team can consider: human-led or tool-facilitated. Both have pros and cons, but as a recurring theme of this book, the right decision is what works best for your team. As you delve into what each system offers, note what you like and dislike and see what your team thinks about its characteristics.

2.1.1 Human-led

2.1.2 Tool-facilitated

2.1.3 Hybrid

2.2 How does a code review work?

2.2.1 The modern code review workflow

2.2.2 Our code review (pull request workflow)

2.3 Elements of a great PR

2.3.1 Title: The “what”

2.3.2 Description (the “why”)

2.3.3 Labels

2.3.4 Review states

2.4 Code review participants and expectations

2.4.1 The reviewer

2.4.2 The author

2.4.3 The team

2.4.4 Those in charge

2.4.5 The organization

Summary