Design for Trustworthy Software: Tools, Techniques, and Methodology of Developing Robust Software
Design for Trustworthy Software will help you improve quality whether you develop in-house, outsource, consult, or provide support. It offers breakthrough solutions for the entire spectrum of software and quality professionals–from developers to project leaders, chief software architects to customers.
The American Society for Quality (ASQ) is the world's leading authority on quality which provides a community that advances learning, quality improvement, and knowledge exchange to improve business results, and to create better workplaces and communities worldwide. The Crosby Medal is presented to the individual who has authored a distinguished book contributing significantly to the extension of the philosophy and application of the principles, methods, or techniques of quality management.
Review By: Dimitry Feigin
06/11/2012
Design for Trustworthy Software is a very good book. It covers many different techniques and experiences from manufacturing to hardware, Six Sigma, quality function deployment, risk analysis, and Taguchi methods. It provides a recommended framework that can be applied to software development in many different settings and companies.
The book can be used as a reference by anyone who deals with software and wants to understand on a bigger scale what quality is and what different quality techniques exist. The framework is definitely a good, practical strategy to use, either fully or partially.
There is a very good balance between examples and theory in the book. Each chapter has notes, review questions, and exercises. It is intended to be a class book for framework study.
It is a bit outdated (released in 2007) and doesn't provide an adequate review of the agile software development lifecycle and its quality impact. Also, risk analysis could be emphasized more. However, it is not a simple thing to update an 800-page book.
I highly recommend this book to anyone who is dealing with software and wants to improve its quality.