Saturday, April 26, 2008

Thinking about Zero defect software - Attaining software Nirvana ...

“Humans have always proved impossible is possible … Dreaming, Desire and passion is key to achieve “impossible”. Wright Brothers dreamt about “flying” – they achieved it. Once, reaching moon was impossible – now? You need to give your life to it …Zero defect software is possible …” You need to aim high”.

This is how, a colleague of mine argued with me when we were discussing about Zero defect software. He believed that many software like IBM mainframe apps are running with near zero defects … (there could be defects but of cosmetic nature)

The notion of defects, number…

No defect is bigger or smaller … Let us say there is a 0.5 second delay in system response … Will this matter? Is this a bug … depends upon which software we are talking about? Context is important …

When people talk about software processes, discipline and making an attempt to achieve zero defect … they are often of the opinion that …
Human beings make mistakes deliberately … many or all can be avoided if there is a second eye or a watch dog
Human do sloppy work unless controlled – given a choice no one would do a good job (if no one is observing)
Humans require constrained and regulated environment
Humans - overlook


It is this possibility that people require discipline makes others (mangers especially) to think that zero defect is possible. People who vociferously argue in favor of zero defect software – think so because they feel that it is because of human laziness and other related aspects – defects are introduced. Put a system of governance, policing – you will achieve zero defect. How true is this?

1 comment:

Sharath Byregowda said...

Hi Shrini,

I agree that “Humans have always proved impossible is possible” and I also wish for the day “Zero defect software is possible”.

Wright brothers dreamt about flying and they achieved it, but have we mastered it yet? Even today, a lot of crashes are reported. There have been more than 90 crashes in Jan 2007 alone in United States source (http://www.ntsb.gov/ntsb/month.asp). Well, the probable cause could vary, but have we humans mastered the art even after 112 years?

We might achieve Zero defect software, but can we be consistent at that? To err is human isn’t it?

People who vociferously argue in favor of zero defect software – think so because they feel that it is because of human laziness and other related aspects – defects are introduced. Put a system of governance, policing – you will achieve zero defect. How true is this?

A set of questions to those managers

Don’t I want to be recognized as the best developer?
Don’t I want to be recognized as a developer who produced defect free software?
Don’t I want to do development instead of bug-fixing?
Don’t I want to go home early?
Don’t I want to be with family on weekends?
Don’t I want a good appraisal?
so on…

Thanks,
Sharath B