It may sound counterintuitive at first, but making tighter deadlines may improve software quality. When deadlines are strictly adhered to, the panic and rush as the deadline approaches can undermine quality of product. Heller discusses how a looser, but earlier deadline can encourage a healthier environment, and higher quality.
We all know why the quality of software is so low.
The sales team promises to deliver new functionality to deep-pocketed clients in half the time as the competition and then puts the screws to the developers to get the product quickly to market.
Developers, with dreams of bonuses and promotions, cut corners to meet their unreasonable deadlines. That's easy to do: only the developers are close enough to their projects to know what does-and does not-constitute a job well done.
"The only testing that gets done is what the programmers can do in their 'spare time'," writes a software developer in response to a previous Sound Off column on software quality. "And if we spend too much time on testing, we're slammed for not being 'sufficiently productive.' No one ever, ever got a bad review for shoving out sloppy, unmaintainable software."
Some managers try to ameliorate the problem by adding slack to tight deadlines: surely a little breathing room will encourage developers to do more careful work, they reason.
That's exactly the wrong approach, says Rob Austin, an assistant professor at Harvard Business School. What developers need are tighter deadlines, not looser ones, he argues in a new study , "The Effects of Time Pressure on Quality in Software Development," published in a recent issue of Journal of the Institute for Operations Research and the Management Sciences (INFORMS).
"Problems arise when developers, under pressure to meet task deadlines, take short cuts in dealing with unanticipated complications," writes Austin. The stigma associated with missing the deadline is so great, he argues, that developers will forego quality in order to come in on time.
If deadlines were actually tightened and considered "stretch goals" always to strive for but only sometimes to achieve, the stigma would fall away from missed deadlines, and the quality of software would improve.
"Because missing deadlines is common in such an environment," writes Austin, "there is no stigma associated with it and developers are forthcoming in admitting quality issues that arise."
Will tighter deadlines improve software quality?
This article by Martha Heller first appeared on CIO.com