Is quality really the number one job of software developers? I think we’d all like this to be the case, but I suspect that in many companies it’s not. This piece is a few years old, and it talks about how quality has become more important at many large software vendors. Looking back across the five years since the article was written, do you agree?
Whether you are a commercial software company, or building applications for internal use by a company, there are so many external pressures to finish or ship an application that quality becomes a second, or even third, tier goal. The need to have people begin using the software, with those last minute features added, means that quality gets cut in some areas.
We build software with the best of intentions, and I understand that there must be a deadline for the software to start being used. However I think that the balance between finding a finishing point for a version of software and quality is leaning a bit too often towards the deadline taking priority.
In my ideal world, we would pick a stopping point, and then ensure that the development and testing of everything in progress before the stopping point is completed. In other words, we can’t pick a ship date, but we can pick a design end date, and from there work through the proper build and test from that point forward to a well built piece of software.
I don’t know if we’ll ever get to the point where the overall image of software is that it is mostly well built, but I can hope we do.