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