Software reviews are a human examination of a work product which is a static white box approach. This applies to any document produced. This includes:

  • Inspections: formal and structured
  • Walkthroughs: informal
  • Buddy checks: informal
  • Personal review: check by the author
  • Formal design review: similar to inspections but decides whether to green light a project

Reviews have been proven to be essential for quality

Walkthroughs

Become familiar with development documents to find defects.

  • Walkthroughs are done in teams of 2-7 people
  • Material should be distributed in advance
  • Each participant lists potential defects and points that need further explanation
  • Changes only suggested for further investigation and fixes not in the scope of a walkthrough

The main differences between an inspection vs a walkthrough are:

  • Different roles
  • Less preparation
  • No formal follow up

Buddy Checks

Here, we do a simple code walkthrough by one or more reviewers, or check code during pair programming. This is way more informal.

Note

Modern reviews are lightweight, tool-supported, flexible, and asynchronous.

Modern Reviews

Author:

  • Responsible for correcting problems that are identified Reviewer:
  • Analyzes and detects problems in the artifacts
  • An engineering with expertise in the context that the artifact operates within
  • Often at least two reviewers must agree with an artifact before it is deemed valid

Summary

  • Code reviews can be effective to complement dynamic Software Verification and Validation
  • Software metrics give us attributes to be measured so we can make indicators from rules
  • Refactoring detects and removes code smells without changing software behaviour