As product managers, we often talk about creating the right solutions with our products. Understanding the very real problems that our customers face, understanding the very real opportunities our markets present, and manifesting that understanding in a product roadmap.
Other than being “not as good,” how expensive is it to build the wrong product?
The Cost of Poor Quality
There’s an analog to the market dynamics of making poor product decisions – executing with poor quality. Many research studies and articles have identified the market impacts of poor quality. This has become so well accepted that people today cite it like a law of physics as the “1-10-100 rule.” The primary conclusion of that research is that ten dollars spent on fixing bugs:
- Costs and saves $10 when you catch (and fix) the bug during implementation.
- Avoids $100 in costs when you catch the bug during QA and send the product back to development (then test again).
- Avoids $1,000 in costs versus waiting until your customers catch the bug in the field, causing the team to remedy the problems, rush out a patch release, and/or go to heroic lengths to manage a PR problem.
This is an opportunity in front of your product team – a 100x payback from investing in quality during the development process. Of course, be pragmatic about it - if the cost of testing exceeds the cost of bugs, don’t test.
This is not a solved problem, by any stretch, but the solutions and methods to solve this problem are well understood now. In fact, a 2001 article by Barry Boehm and Victor Basili shows that in some cases, the labor costs to resolve bugs can be as low as 5:1 – when considering a subset of smaller systems, when using more “agile” processes. That lowered ratio does not take into account the lost market opportunities and the costs of cleaning up collateral damage to your product – just the immediately realizable (and measurable) costs of resolution.
One very real problem, when talking about “bugs” is in defining what a “bug” is. And the definition of a bug is a matter of perspective. A developer can reasonably assert that “if it meets the spec it is not a bug, it is working as designed.” What if the spec is wrong? The developer may not be guilty, but collectively, your team screwed up. There’s a “bug” in the requirements.
Comments