This practical, hands-on guide captures, categorizes, and builds a process of best practices to help avoid creating defects during the development process—rather than fixing them after extensive analysis. While there are various proprietary and competing standards for reducing software defects, these methods suffer from issues involving timeliness, effectiveness, and cost. What’s more, many other books focus on fixing errors after they’ve been introduced or promote idealized academic theories. This guide, however, presents practical methods for reducing defect introduction through prevention and immediate detection and by moving the detection of defects closer to their introduction. Written by experts with over a century of software development experience among them, this book distills hard-won lessons into a single, workable lifecycle process that will help deliver better-quality software. Visit the Defect Prevention Web site at http://www.defectprevention.org
I developed a pretty good picture of how to write software in such a way that it is easier to understand and maintain.
Besides that, I've also been exposed to coding style guidelines promoted by certain communities (ex: Python's PEP8).
This book also briefly discusses topics related to user experience and human-computer interaction - these ideas were discussed in much greater detail in books such as: - Psychology of everyday things //Norman - Things that make us smart //Norman - The humane interface //Raskin - and in the HIGs for Windows, OS X, GNOME and KDE
Basically, I would probably give it more stars if I read it before either of the items listed in this review.
One of the parts I found useful was the taxonomy of defects, you can use it as a checklist when conducting code reviews and thinking about your systems.
I started this on vacation in 2010, so it seems only fitting that I finished it while on vacation this year. A year to read a book is not my norm...
This book would be good for organizations which have not yet started the process of reviewing their own defect data and don't have a strategy or eye towards how to improve. I found may good confirmations of behaviors which I have already put in place in my organization, but I didn't find a lot of new ideas to move forward with. It's not a bad book at all, it just didn't offer me the next steps I was hoping to find.
a thorough and useful review of all of the modern defect prevention techniques. I have used suites of automated testing tools, which I found to be really useful during large development projects. And I have facilitated regular code-reviews by my team. But my experience stopped there. A lot of the more recent ideas, like scenario voting, UI walkthroughs, were new to me. So good to know that the field has moved on.