Software testing and quality assurance are often two of the first things cut from a tightening IT budget. But while it’s easy to assume that doing so will save money, does the resulting rework, delays, and squandered productivity actually cost cash-strapped departments more in the long run?
At first glance, the value of “software quality” can seem a little abstract; but the value of the things it affects is far more concrete.
“An ounce of prevention is worth a pound of cure.”
I used to hate hearing that. Generally, it was because someone was trying to sell me preventative maintenance on my car—which meant gambling my hard-earned cash for the chance to spare my car from a potentially-catastrophic failure. And as young people with a limited bank account are apt to do, I ignored those offers more often than not.
…and then I had to replace my engine. Suffice it to say, that was the day I learned the value of preventative maintenance.
But you know what’s funny? That’s a lesson a lot of companies have still yet to learn.
Nationwide, major software projects continue to go over budget and off schedule because preventative maintenance activities (in this case, software testing and quality assurance) are often the first things cut from an encumbered budget. Since many executives mistake high software quality for high cost, they choose to sacrifice testing in lieu of making compromises elsewhere—like cutting features or scope.
There are a couple of problems with that approach, though. Firstly, when you’re tasked with ferrying high-value software initiatives through the perilous waters of the Software Development Life Cycle (SDLC), cutting back on software testing can mean all the difference between a high-profile success and a catastrophically-expensive failure. Secondly, high quality actually doesn’t cost more—in fact, it’s actually cheaper than cutting it in the first place.
Don’t worry—that’s supposed to seem paradoxical. But make no mistake: it’s absolutely true.
At first glance, the value of “software quality” can seem a little abstract; but the value of the things it affects is far more concrete. Think about the kind of issues a bad release can cause: expensive rework, the opportunity cost of squandered user productivity, future project delays—these are the kinds of things that can run up costs into the stratosphere without breaking a sweat.
And while the costs of under-testing can be crippling, the lack of predictability is almost as bad. This can make an organization feel like they’re essentially rolling the dice every time they release an update or patch—not knowing how good or bad it is until the day it goes live. This can lead to massive discrepancies in projects coming in on-time and on-budget—infuriating upper management and sinking the department’s credibility.
By actually increasing your testing capacity, though, you’ll find that while you’re spending more on testing, you’ll be spending a lot less on those quality issues. You’ll be spending far less on rework, fielding fewer requests from confused users, and seeing more and more of your projects will be coming in on-time and on-budget—even as you allocate less time and money to them!
Just like that $50 oil change keeping your engine from spontaneously combusting on your morning commute, an investment in quality is the ultimate in preventative software maintenance. Whether you choose to pursue improvement through outsourcing or a third-party quality assurance consultant, don’t fall into the trap of thinking your software quality is a luxury.
After all, an ounce of testing is easier to swallow than a pound of budget-busting expenses, right?