Lecture 12: Chapter 15: Review Techniques
Lecture 12: Chapter 15: Review Techniques
Lecture 12: Chapter 15: Review Techniques
Review Techniques
Slide Set to accompany
Software Engineering: A Practitioner’s Approach, 7/e
by Roger S. Pressman
All copyright information MUST appear if these slides are posted on a website for student
use.
1
Reviews
2
What Are Reviews?
a meeting conducted by technical
people for technical people
a technical assessment of a work
product created during the software
engineering process
a software quality assurance
mechanism
a training ground
3
What Reviews Are Not
4
What Are Reviews?
Software reviews are a “filter” for the software process.
reviews are applied at various points during software
engineering
serve to uncover errors and defects that can then be
removed.
Software reviews “purify” software engineering work
products, including requirements and design models,
code, and testing data
5
What Do We Look For?
Errors and defects
Error—a quality problem found before the software is released
to end users
Defect—a quality problem found only after the software has been
released to end-users
We make this distinction because errors and defects have very
different economic, business, psychological, and human
impact
However, the temporal distinction made between errors and
defects in this book is not mainstream thinking
6
Cost Impact of Software Defects
The primary objective of technical reviews is to find errors
during the process so that they do not become defects after
release of the software.
7
Overall
Effort expended with and without reviews
with reviews
8
Defect Amplification and Removal
9
Reviews – A formality spectrum
11
Formal Technical Reviews
The objectives of an FTR are:
to uncover errors in function, logic, or implementation for
any representation of the software
to verify that the software under review meets its
requirements
to ensure that the software has been represented according
to predefined standards
to achieve software that is developed in a uniform manner
to make projects more manageable
The FTR is actually a class of reviews that includes
walkthroughs and inspections.
12
The Review Meeting
Between three and five people (typically)
should be involved in the review.
Advance preparation should occur but should
require no more than two hours of work for
each person.
The duration of the review meeting should be
less than two hours.
Focus is on a work product (e.g., a portion of a
requirements model, a detailed component design,
source code for a component)
13
The Players
review
leader standards bearer (SQA)
producer
maintenance
oracle
recorder reviewer
user rep
14
The Players
Producer—the individual who has developed the work
product
informs the project leader that the work product is
complete and that a review is required
Review leader—evaluates the product for readiness,
generates copies of product materials, and distributes
them to two or three reviewers for advance preparation.
Reviewer(s)—expected to spend between one and two
hours reviewing the product, making notes, and
otherwise becoming familiar with the work.
Recorder—reviewer who records (in writing) all important
issues raised during the review.
15
Review Guidelines
1. Review the product, not the producer
2. Set an agenda and maintain it
3. Limit debate and rebuttal
4. Enunciate problem areas, but don’t attempt to solve
every problem noted.
5. Take written notes
6. Limit the number of participants and insist upon advance
preparation.
7. Develop a checklist for each product that is likely to be
reviewed.
8. Allocate resources and schedule time for FTRs
9. Conduct meaningful training for all reviewers
10. Review your early reviews.
16
Sample-Driven Reviews
In the real word of software projects, resources are
limited and time is short.
17
Sample-Driven Reviews
To accomplish this, the following steps are suggested
18