Some good team guidelines

Some good team guidelines

Even the most informal review needs a few guidelines to keep it effective and civil. All types of reviews and inspections feature two core elements: someone looks at someone else’s work and then tells them if they see any problems. When the process is rushed or overloaded because reviewers are being asked to review too much in too short of a time, effectiveness suffers. If reviews lack civility they will either be avoided or someone will start selling tickets as if they were professional wrestling matches. Guidelines make sense.

Guidelines:

  1. Review in small chunks, if at all possible.  Small pieces of work are easier to schedule and evaluate. It is the same rationale for having smaller user stories and time-boxed work in Agile.
  2. Allow for adequate time to review the material. Rushing a review leads to less than stellar results.  If you rush pre-work for an inspection, reviewers will either opt out (can’t get the review completed) or just do a cursory job hoping someone else will find the problems that exist.  Every organization needs to create guidelines for how much can be reviewed in a given timeframe. One organization I have interacted with requires 1 week per 20 pages of lead time and another 200 to 300 lines of code per hour for code walkthroughs. Collect metrics and create your own guidelines.
  3. A set of meeting guidelines is usually a good idea.  Review meetings should never get personal and never turn into debates. Depending on the type of review, I have reviewers present issues in a round robin format or implement a two-comment limit per person on each topic (a variant of an idea from Robert’s Rules of Order).  Meeting guidelines should foster conversation, limit debate and ensure participants focus on the product not the person. If meetings devolve into finger pointing or debates, get a facilitator.
  4. In reviews and inspections that require reviewers do pre-work before a meeting, IF the pre-work was not done exclude the person who is unprepared or reschedule.  Generally I have found that this is a rare occurrence after the first exclusion or cancellation.
  5. Everyone that participates in the process MUST be trained in how your organization does reviews in order to participate. Every organization does reviews and inspections in a slightly different manner, therefore specific local training always makes sense.

Guidelines are important to help keep reviews and inspections effective and civil. I would like to provide a cautionary note or perhaps a 6th guideline: keep the guidelines as simple as possible. A long list of complex guidelines will cause frustration and will probably be ignored. Have teams do retrospectives focused on reviews and inspections and look for ways to make them more effective. Improving the deliverables and functional code that is delivered leads to higher customer satisfaction and typically to improved capacity to deliver value.

Advertisements