| Possibly off-topic, but the "a bug is cheaper to fix the earlier on it's discovered" idea came from a since-debunked bit of research, and even if it were true in 1995, has since become untrue through tech advances in how we execute modern deployments That seems like quite a stretch. The cost of fixing a bug isn't just the deployment effort. It's also the investigation, the impact analysis for any potential fix, and the mitigation of any unwanted side effects on other code that is related to wherever the bug is. I think the original point of the idea was also that a bug may also have cost real money by making it further through your pipeline or even into production before someone fixed it. A bug only found in some sort of QA or code review exercise took the resources to do that exercise, when a bug found by a developer shortly after writing the code did not. A bug that made it to a staging server might have tied up shared resources or interfered with someone else's deployment before it gets backed out. If a bug makes it all the way into production, there might be customer relations or PR fallout for having the bug in your software and affecting your customers negatively as a result. There might be regulatory consequences if the bug caused a breach of some kind. If the bug caused something serious like personal injury, damage to equipment or loss of important data, that could be catastrophic. Of course, a lot of software today also isn't online systems that can be readily redeployed, and it's obvious that if you have a more demanding deployment process like serving millions of software updates to unhappy customers, possibly through a significant marketplace that you don't control where you can't just push out your change whenever you want, or physically recalling a dangerous hardware product deployed halfway around the world to update its firmware, that's going to be far more expensive. I'm not sure what since-debunked bit of research you were referring to, but the idea you mentioned is far broader than any single bit of research and I think it's still a pretty good rule of thumb even today. The relative ease of new deployments for online systems running on servers you control just reduces the damage a bit in that one specific area. |
Very little in software engineering continues to reflect the environment when this idea was originally created.
The argument isn't really, "Do bugs cost more in production?", the argument is really, "Do they cost as much as this article's chart states directly?" and I believe the answer is a firm, "We don't know, but likely not, given how different from modern reality the assumptions are."
If you're operating your software team as if bugs in production cost 50x-200x more than bugs caught during development, you're probably not operating your software team with a firm anchoring in reality, considering how thin the actual evidence is to support this notion.