Blog

27 September, 2017

The Risks of Releasing Software With Known Defects

In the modern world, with the technologies and experience that software companies have at their disposal, you might assume that a company would be able to create and release new software that works 100% of the time. However, this is almost never the case. It is one thing for software to be released and later a fault is found within the system, but another to have knowledge that a problem exists and still go ahead with a live launch. Yet this is the case for so many software companies.

Take Microsoft for example. There are many stories about how every software product released my Microsoft has come with a list of known bugs. Microsoft could have delayed the launch of the products, fixed the problems and then released a working version to the public. However, this would no doubt have taken considerable time, cost a lot of money and upset many of their loyal customers. Therefore, they send out the product ‘as is’, taking the risk that it could fall flat on its face before they can fix the problems and release an update.

There are a lot of good reasons, from a business perspective, as to why this happens. Businesses always have deadlines to meet, or risk upsetting shareholders and customers alike. Businesses have limited resources dedicated to each project, and going over budget is often less appealing than releasing a faulty system. In these cases, software with bugs is better than no software at all. The adage followed by many is ‘release now, fix later’.

For small bugs the risk involved is normally minimal. The issues will affect few, if any, end users and can be fixed post production and released as updates. For larger defects the issue is much more serious.

We have spoken above about the business risks that are considered when releasing software but now we am going to explain these risks in real terms – well as real as a 1970’s movie can be. We have chosen Stephen Spielberg’s 1975 blockbuster film, Jaws. This may seem an odd choice but there are many examples in the film where known problems are ignored with disastrous effect.

So, let us set the scene …

Copy Of BA 2

Jaws is set around a small beach town where its only business comes during the summer in the form of tourists. This makes the holiday period essential to the welfare of the town. If we think of the town as a software company, the Mayor of the town as the Project Manager, the towns police force as the technical experts and the tourists as the paying customers that will use the software. Just as the town needs to put on a good show over the summer months to attract tourists, a software company needs to release quality software to gain revenue.

The film starts off with the town (or software company) preparing for the launch of the summer holiday season (the software) and the arrival of hundreds of tourists (the paying customers). Everything seems to be going to plan until there is a deadly shark attack close to the town’s shores. This is reported to the police force who advise the Mayor of the town to close the beach until the shark (the defect) has been dealt with. To relate back, this would mean a problem is found within software that should be fixed before launch. However, the Project Manager (Mayor) has decided to ignore this advice and underplay the importance of the defect. In the film, this immediately puts every beach-goer’s life at risk.

So why did the Mayor make this decision. Well, as he says in the film “You yell ‘Shark’, we’ve got a panic on our hands…” - it is therefore in the interests of the town’s economy to keep the beach open, letting the tourists spend their money, seemingly at any cost. In real terms this is the difficult choice between delaying a release, probably leading to loss of revenue and reputation, or launch the faulty system, hoping that nobody notices until a fix can be made later.

You are probably familiar with the film, or can at least guess what happens next. The risk that the Mayor took by keeping the beach open leads to more shark attacks and mass panic among the tourists. The Mayor finally concedes to the advice of the police force and closes the beach to the tourists. This would be very bad publicity for a software company having to recall their own faulty software, and is likely to incur costs. The Mayor now has a publicly known problem on his hands and hires a crew that set out to fix it.

The lesson here is that there are going to be risks involved with every software release. Small problems can usually go unnoticed, but generally if you have a big problem and choose to go ahead with a launch anyway, the problem will be noticed and have damaging effects. In the film, many people lost their lives because of a risk based around money and reputation. In the real world, these same risks are taken all the time. Hopefully these risks wouldn’t result in something as serious as death but it is definitely a question for software companies to think about… is it worth the risk?

 

By Stuart Dougans - Test Analyst, Edge Testing

Back to Blog