Industry must cut software errors

Why is software of such poor quality? It is a question many of us face every day as we labour through the latest series of...

Why is software of such poor quality? It is a question many of us face every day as we labour through the latest series of patches that need to be applied to keep our IT systems running. One IT director I met was appalled by the amount of patching his team had undertaken recently: 629 patches to Solaris in six months.

The key question is whether users would be prepared to pay more for higher quality. For instance, would you be willing to pay if Sun charged 10 times as much for Solaris but guaranteed that you would only need to patch your systems 63 times in the next six months? It is a dilemma.

Quality costs money. One IT director I have spoken to was so fed up with the constant maintenance on his Exchange e-mail server that he moved the entire e-mail system onto an IBM AS/400 e-mail system - a box renowned for its bomb-proof reliability. The AS/400 may have cost more than a PC server, and it runs a proprietary system, but it does appear to be more reliable.

I wish the industry would take more notice of users. We do not want more bells and whistles. How many people only use 10% of the functionality in Microsoft Word, for example?

Software suppliers need to ensure the highest levels of quality in their core products. The car industry is often cited as an example of a sector where quality really matters. "I really want my car brakes to work," said the IT director. Brake failure is serious. But if the remote key fob fails it is just a small inconvenience.

Users need the main parts of the software - the functions people use the most - working 100%. That way, any time there is failure, it is more like having a broken key fob than the brakes failing - a minor inconvenience rather than a major catastrophe. If Microsoft, or any other software firm, could guarantee that there would be no bugs in the 10% of its applications I actually use, the world would be a far better place.

The industry needs to reduce the total number of errors, not just the error rate in increasingly complex systems. Consider that a 1% error rate equates to 10,000 bugs in one million lines of code. Any one of these could cause an IT system to fail or be compromised, or worse, contribute directly to injury or death, in the case of a safety-critical system. But that won't happen will it?

We often hear of "five nines" (99.999%) availability from suppliers. A system that is right 99.999% of the time will have an error rate of 0.001%. With a UK population of almost 60 million people in the NHS' electronic patient records system, the lives of 600 people could be at risk due to computer error. Acceptable risk? I think not.

Quality versus subscription >>

Read more on Business applications