Page 101 -
P. 101
The best way to reach consensus among the inspection team is for each person to feel like
he or she made a real contribution to the document. The inspection meeting accomplishes
that by allowing each person to find problems in the document and help the rest of the
team find a solution to each problem. This is why it’s important for the team to go beyond
just pointing out the defects in the document and actually come up with replacement
wordings that fix the defects.
By the end of the meeting, nobody remembers that one person suggested this sentence,
and another suggested that one; everyone feels a sense of ownership because it was a real
group effort. That ownership means that each team member leaves the meeting with a
real commitment to the document. This can eliminate many of the conflicts that can cause
problems later on in the project.
Inspections are also important for gaining real, meaningful approval for a document.
When a document is not correct, that puts the team members in a very difficult situation.
Consider a stakeholder who is reading a vision and scope document, and who has a prob-
lem with some of the contents. She can’t just refuse to approve the document; that would
mean that she was personally holding up the project. But if she lets the document move
forward as is, that could cause serious problems later in the project. So the stakeholder
feels backed into a corner. She can’t approve the document as it stands, but she doesn’t
have the authority to make changes to it. Typically, people who are put in this situation
simply avoid reading the document, giving them a sort of “plausible deniability” that lets
them avoid blame when the project has problems later.
Inspections are a way out of this situation. The inspection team is given the responsibility
of approving the document. To accomplish that, each member is given the authority to
withhold approval until any text in the document that prevents them from approving it
has either been changed to meet their needs or has been explained to the approver’s satis-
faction. This allows the project to move forward.
Other kinds of reviews are also useful in managing commitments. Deskchecks are espe-
cially important for gathering consensus among people in the organization who do not
need to approve specific documents, but whose input is still very important.
Project teams are made up of people who all share a common goal: getting the software
project out the door. Stakeholders, users, engineers, and project managers all have this goal
in common. This means that each person should be willing to take on responsibility to make
sure that every document produced over the course of the software project is correct.
Diagnosing Review Problems
Many organizations rely on their testers (or, in worse cases, their users) to find the bulk of
the defects in the software they produce. When the defects are caused by simple coding
errors or typos, they are easy to correct. Unfortunately, very few defects are caused by
simple coding errors or typos. Most defects are introduced before a single line of code is
written. Sometimes a programmer misunderstands the design; at other times, the entire
REVIEWS 93