Peer reviews and inspections are among the highest-leverage software quality practices available. Here are some useful sources of guidance on how to perform software inspections and peer reviews, as well as some tools and online resources that can help you jump-start your fledgling review program.
(Note: This Reference Point article from STQE magazine is reproduced here in HTML for your convenience in linking to recommended materials. All links were active at the time the article was orginally published.)
In this issue, Karl Wiegers shares his take on useful resources for software inspections and peer reviews. In addition to Peer Reviews in Software: A Practical Guide , Karl wrote the award-winning books Software Requirements and Creating a Software Engineering Culture , as well as 150 articles on many aspects of software development and management, chemistry, and military history.
Peer reviews and inspections have long been recognized as among the highest-leverage software quality practices available. In a peer review , someone other than the author of a work product examines the product with the express intent of finding defects and improvement opportunities. Peer reviews range from a very informal peek-over-the-shoulder to the highly structured and rigorous inspection process. Inspections have demonstrated a return on investment ranging up to 1,000 percent. In addition to the quality benefits, peer reviews provide a way for team members to exchange technical knowledge and gain insight into parts of the product that they didn't personally create.
Although the technical aspects of performing peer reviews are straightforward, they are also a cultural and social activity. Asking others to examine your work for problems isn't a natural behavior. Software developers need to learn to request this assistance, and they need to learn how to provide constructive criticism to their colleagues in a gentle and effective fashion. Below are some useful sources of guidance on how to perform software inspections and peer reviews, as well as some tools and online resources that can help you jump start your fledgling review program.
Handbook of Walkthroughs, Inspections, and Technical Reviews, 3rd ed., Daniel P. Freedman and Gerald M. Weinberg. ISBN 0932633196, Dorset House Publishing, 2000, $49.95, 450 pp.
Employing an unusual question-and-answer dialog format, this book covers the
technical, managerial, and personal aspects of software review activities. The
presentation is easy to read, conversational, and nondogmatic; but it's not a
Software Inspection , Tom Gilb and Dorothy Graham. ISBN 0201631814, Addison-Wesley, 1993, $52.99, 471 pp.
Gilb and Graham's inspection process is a bit different from the classical Fagan method, but it is at least as rigorous and comprehensive. The authors emphasize using metrics to improve your inspection and development processes, inspecting samples of a document to assess overall quality, and using document construction rule sets to look for defects.
High Quality Low Cost Software Inspections , Ronald A. Radice, I SBN 0964591316, Paradoxicon Publishing, 2001, $59.95, 479 pp.
The world's first inspection moderator wrote this comprehensive manual on the Fagan inspection method. It encompasses both a detailed process description and many insights gained from twenty-eight years of inspection experience.
Software Inspection: An Industry Best Practice , David A. Wheeler, Bill Brykczynski, and Reginald N. Meeson, Jr., editors. ISBN 0818673400, IEEE Computer Society Press, 1996, $38.00, 325 pp.
It's not a textbook or a reference manual, but twenty-two of the key reference
papers from the extensive literature on inspections are collected here.
Peer Reviews in Software: A Practical Guide, Karl E. Wiegers, ISBN 0201734850, Addison-Wesley, 2002, $39.99, 232 pp.
This book presents a pragmatic description of the inspection process, as well as
describing several other types of less formal peer reviews. It addresses the
cultural aspects of peer reviews, inspection metrics, the practicalities of
implementing a peer review program, and ways to troubleshoot review problems.
This Web-based commercial product automates aspects of peer reviews to facilitate communication, accommodate your preferred review process and