Ron Jeffries speaks out about trading quality for speed.
Basically,
you're kidding yourself .
Gus commented:
Back in April 2007 I talked about how improving quality increases productivity . And I resolutely stand by this. Indeed it has become the cornerstone of Energized Work and our way of working and allows us to go from concept to cash every week .The 'cut quality to go faster' view represents a lack of trust in the capabilities of the people actually building the product (whether justified or not). Dropping quality simply means you get garbage, later. You're absolutely right that keeping quality high requires continuous attention (no broken windows), balance (don't try to do too much at once) and skill (focus on the right stuff).
2 Comments
Anyone would be crazy saying quality is a bad thing. I think most software engineers would strive to produce quality code of some sort. The question really should be how to ensure quality and at what point does it make no sense "proving" the quality any further since there will be a cost of doing this. I believe there are lot of overly tested code that is costing more than it should, also very common is bad testing that on paper looks great (code coverage, unit test count etc.) but really does not mean the code scores high on the quality scale. I agree that it never makes sense to let go of quality to get something quickly out the door but looking at how one ensure quality in the development process better can save time and money.
Historically, my biggest problem with quality has been disputes about what is a quality defect and what a tester thinks is a real problem. I think conflating things that cause the server to crash with buttons that are labeled in a way that is "confusing" to a tester who knows what they mean, but is pretending to be stupid is what most people are referring to when they talk about going faster by cutting "quality". Most people don't want to release a piece of software that crashes all of the time, but most people are okay with not making every change that is requested by testers.