PEER REVIEWS IN SOFTWARE
Ouvrage 9780201734850 : PEER REVIEWS IN SOFTWARE
There is nothing wrong with making mistakes; it is
part of what makes us human. Catching the errors
early, however, before they become difficult to
find and expensive to correct, is very important. A peer
review program is a vital component of any quality
software development effort, yet too few software
professionals have had the experience or training
necessary to implement peer reviews successfully.
Concise, readable, and pragmatic, Peer Reviews in
Software walks you through the peer review process
and gives you the specific methods and techniques
you need to help ensure a quality software release.
Comprehensively covering both formal and informal
processes, the book describes various peer review
methods and offers advice on their appropriate use
under a variety of circumstances.
This book focuses on-but is not limited to-the
technique of inspection. This is the most formal, rigorous,
and effective type of peer review. The various
stages of inspection-including planning, individual
preparation, conducting inspection meetings, and
follow-up-are discussed in detail. In addition, Peer
Reviews in Software explores the cultural and
social nuances involved in critiquing the work of others,
and reveals
Specific topics include:
Overcoming resistance to reviews
Inspection teams and roles
Inspection process stages
Scheduling inspection events
Analyzing inspection data
Peer review training
Critical success factors and pitfalls
Relating peer reviews to process improvement
models
Karl Wiegers closes with a look at special review
challenges, including peer review of large work
products and geographically dispersed development
teams. He provides many practical resources to
help you jump-start your review program, enhance
communications on your projects, and ultimately ship
high-quality software on schedule.
Preface
No matter how skilled or experienced I am as a
software developer, requirements writer, project planner,
tester, or book author, I'm going to make mistakes.
There's nothing wrong with making mistakes; it is
part of what makes me human. Because I err, it
makes sense to catch the errors early, before they
become difficult to find and expensive to correct.
It's often hard for me to find my own errors
because I am too close to the work. Many years ago I
learned the value of having some colleagues look
over my work and point out my mistakes. I always feel
a bit sheepish when they do, but I prefer to have
them find the mistakes now than to have customers
find them much later. Such examinations are called
peer reviews. There are several different types of
peer reviews, including inspections, walkthroughs,
and others. However, most of the points I make in
this book apply to any activity in which someone
other than the creator of a work product examines it in
order to improve its quality.
I began performing software peer reviews in 1987;
today I would never consider a work product complete
unless someone else has carefully examined it. You
might never find all of the errors, but you will find
many more with help from other people than you
possibly can on your own. The manuscript for this book
and my previous books all underwent extensive peer
review, which contributed immeasurably to their
quality.
My Objectives
There is no "one true way" to conduct a peer
review, so the principal goal of this book is to help you
effectively perform appropriate reviews of
deliverables that people in your organization create. I also
address the cultural and practical aspects
ofimplementing an effective peer review program in a software
organization. Inspection is emphasized as the most
formal and effective type of peer review, but I also
describe several other methods that span a spectrum
of formality and rigor. Many references point you
to the extensive literature on software reviews and
inspections.
Inspection is both one of the great success stories
of software development and something of a failure.
It's a grand success because it works! Since it was
developed by Michael Fagan at IBM in the 1970s,
inspection has become one of the most powerful
methods available for finding software errors Fagan,
1976. You don't have to just take my word for it,
either. Experiences cited from the software literature
describe how inspections have improved the quality
and productivity of many software organizations.
However, only a fraction of the software
development community understands the inspection process
and even fewer people practice inspections properly
and effectively. To help you implement inspections
and other peer reviews in your team, the book
emphasizes pragmatic approaches that any organization
can apply.
Several process assets that can jumpstart your peer
review program are available from the website that
accompanies this book,
http://www.processimpact.com/pr_goodies.shtml. These resources include
review forms, defect checklists, a sample peer
review process description, spreadsheets for collecting
inspection data, sources of training on
inspections, and more, as described in Appendix B. You are
welcome to download these documents and adapt them
to meet your own needs. Please send your
comments and suggestions to me at kwiegers@acm.org.
Feedback on how well you were able to make
peer reviews work in your team is also welcome.
Intended Audience
The material presented here will be useful to
people performing many project functions, including:
work product authors, including analysts,
designers, programmers, maintainers, test engineers,
project managers, marketing staff, product
managers, technical writers, and process developers
work product evaluators, including quality
engineers, customer representatives, customer service
staff, and all those listed above as authors
process improvement leaders
managers of any of these individuals, who need
to know how to instill peer reviews into their
cultures and also should have some of their
own deliverables reviewed
This book will help people who realize that their
software product's quality falls short of their goals and
those who want to tune up their current review
practices, establish and maintain good communications
on their projects, or ship high-quality software on
schedule. Organizations that are using the Capability
Maturity Model for Software" or the CMMI for
Systems Engineering/Software Engineering will find the
book valuable, as peer reviews are components of
those process improvement frameworks (see
Appendix A).
The techniques described here are not limited to
the deliverables and documents created on software
projects. Indeed, you can apply them to technical
work products from any engineering project, including
design specifications, schematics, assembly
instructions, and user manuals. In addition to technical
domains, any business that has documented task
procedures or quality control processes will find that
careful peer discover errors that the author simply
cannot find on his own.
Reading Suggestions
To gain a detailed understanding of peer reviews in
general and inspections in particular, you can simply
read the book from front to back. The cultural and
social aspects of peer reviews are discussed in
Chapters 1 and 2. Chapter 3 provides an overview of
several different types of reviews and suggests
when each is appropriate. Chapters 4 through 8
address the nuts and bolts of inspection, while Chapter
9 describes important inspection data items and
metrics. If you're attempting to implement a successful
review program in an organization, focus on
Chapters 10 and 11. For suggestions on ways to deal with
special review challenges, such as large work
products or distributed development teams, see Chapter
12. Refer to the Glossary for definitions of many
terms used in the book.
Table of Contents
Preface
Ch. 1
The Quality Challenge
1
Ch. 2
A Little Help from Your Friends
13
Ch. 3
Peer Review Formality Spectrum
31
Ch. 4
The Inspection Process
45
Ch. 5
Planning the Inspection
61
Ch. 6
Examining the Work Product
81
Ch. 7
Putting Your Heads Together
95
Ch. 8
Bringing Closure
117
Ch. 9
Analyzing Inspection Data
125
Ch. 10
Installing a Peer Review Program
143
Ch. 11
Making Peer Reviews Work for You
159
Ch. 12
Special Review Challenges
175
Epilogue
185
App. A
Peer Reviews and Process Improvement
Models
187
App. B
Supplemental Materials
199
Auteur : WIEGERS
Editeur : ADDISON WESLEY
Nombre de pages : 232
Date de publication : 12 2001
Toute la sélection
Toutes les sélections
Toute la sélection
Site réalisé en partenariat avec Courbis
(Courbis - alternate link), acteur de l'Internet depuis 1988...