Friday, February 26, 2016

My New Book: The Programmer's Guide to Quality Assurance

I'm pleased to announce the availability of my latest book, The Programmer's Guide to Quality Assurance. This is something I've been working on for a long time, and I'm happy to finally see it published.

This is a book on software quality that targets programmers, not quality assurance professionals. Why did I write it? Simply put, the state of software quality today is, well, pretty awful. Your average software project has far too many bugs—and far too many developers willing to accept that as normal. After three-and-a-half decades of developing software and managing teams, I've grown weary of projects where everyone works really hard but no one is satisfied with the results. It doesn't have to be that way: programmers can and should take ownership of the quality process instead of merely reacting to it. My book is about programmers becoming part of the solution instead of part of the problem.


Part I is about taking ownership of the quality process. As a developer, you are the key ingredient in software quality. While others on your team can influence quality, what you do matters most since you actually produce the software.

Chapter 1: Your Role in Software Quality
Chapter 2: Building in Quality

Part II is about testing your own work, and testing it well. Failure by developers to sufficiently test their own work is the reason projects have high bug counts: the software entering formal test is frequently incomplete and unfinished.

Chapter 3: Testing Your Own Work
Chapter 4: Functional Testing
Chapter 5: Hostile Testing
Chapter 6: Automated Testing
Chapter 7: Analyzing and Debugging

Part III is about learning from your bugs. Those who fail to learn from their bugs are doomed to repeat them. Only by making changes can you escape from a chronic bug problem.

Chapter 8: Fixing Bugs Completely
Chapter 9: Bug Causes and Remedies

The support site for the book is http://programmerquality.com.