Friday, February 23, 2007

 

So, what is your definition of quality?

The other day, my family and I ate lunch at It's Only Natural an organic restaurant in Middletown, CT that was absolutely worth the trip. While slamming down a vegan Hazelnut Chocolate cake where we listened to an IT executive (You can tell by the suit he was wearing, his vocabulary and his lack of understanding of technology) rant about the buzzwords used by outsourcing firms to our amusement. He stated how one of his business peers stupidly smiled everytime the outsourcer used the word quality in a sentence. This begs the question of what does quality mean to folks...



So, exactly what is quality when discussing software? I am of the belief that it supports the below five principles:

Noticed I avoided usage scenarios or anything that sounded like an endorsement for non-functional requirements (aka system qualities)? In software, there are at least two broad categories of uses; the user of the running software (the user's use) and the use by programmers in an attempt to make a different version of the software (the developers's use). A useful program that's impossible to modify has high-quality in the first category but not the second; a highly habitable program with a geeky user interface meets the second but not the first.

I also didn't mention aesthetics which I haven't quite formed an opinion on. Code shouldn't be considered a thing of beauty or a masterpiece but it should have style in terms of good spacing, indentation and formatting. At some level, high quality code is dependent upon having high quality processes. Afterall, business folk doen't get to see code (unless they ask in a really nice way) but they do see process and therefore this becomes more important. High quality code is the result of high quality design which is the result of high quality processes.

Can we acknowledge that quality occurs at a cost? Otherwise, folks would be doing it all the time because higher quality provides higher satisfaction amongst employees who contributed to it. Likewise, with higher quality comes higher costs. Folks need to be continually trained in best practices which no one seems to talk about nowadays. When a new technology comes along, it is costly design a quality process around it along with morphing other practices that are no longer best.

If you intend to be in the game for the long haul, then quality matters. Nowadays, software firms have been trained to think about the exit while corporations answer to the quarter. I am not sure if IT still matters, but I know that quality in IT doesn't...






<< Home
| | View blog reactions


This page is powered by Blogger. Isn't yours?