Reviews are also about the people doing the reviewing. A good review is an educational vehicle, teaching skills and habits for avoiding defects. But establishing reviews in a culture is tricky. Early experience is often painful, especially when review participants are unprepared, yet slog through the meetings anyway. A couple of bad meetings can kill off the chances for reviews to catch on in the culture. To encourage a Review (or Inspection) culture, figure out how to make it fun. Choose a reward system that both encourages folks to prepare, which rewards good review behavior during meetings, and which doesn't reward bad behavior. An example: Years back a fellow project leader established a reward system based on little sticky bug labels (the kind kids get on sheets). Find a potentially customer visible defect? Win a ladybug. Find a really nasty defect, say one that might cause data loss? Win a big colored beetle. Come to a review meeting unprepared? No stickers for you! This sounds silly, but it caught on. Trails of bug stickers began working their way up office door frames. And besides folks having fun, and competing to see who could win the grasshopper stickers, it encouraged people to look at the nature of the problems they were finding. Whatever the reward system you choose, it should: * Reward good behavior (e.g., showing up prepared, deep examination of source material, keeping the customers interests in mind) * Stop rewarding old, undesired behavior (e.g., nit picking over typos in comments) * Make the work fun * Not subvert itself. Offering cash rewards may backfire, as DilBert's pointy-haired boss aptly demonstrated. -- DaveSmith ---- This is one of the CodeReviewPatterns. Also see MakeReviewsConstructiveNotCaustic. ---- CategoryPattern