We programmers know about bugs. We fight them now and then, create them sometimes but most of all try to keep them out of our software. At least, I hope you do too ;). Trend Micro has been the victim of a bug, and this had some nasty consequences for them. April 23rd this year, Trend Micro offered the update ‘Official Pattern Release 2.594.00’ on their website. This update allocated almost all system memory, making it impossible to work with the computer. Within two hours (!) a new version of the update was placed on the website and the erroneous one was removed. That two hours cost Trend Micro 8 million dollars! Tens of thousands of computers were ‘infected’ by the bug, more than 28000 customers called the callcenter that was rapidly put together.

I think this illustrates the importance of a few things I think every release in a software development project must go through:

– Unit testing
– Testing new features
– Testing old features
– Testing the influence of changes
– Regression testing

Although testing is beginning to get more important in software development, I think a lot of companies are not up to par in that department. Where design and development of software have reached maturity puberty, testing seems to be strugling to get out of its diapers. Of course, there’s someone who is pushing the buttons and looking at the results, but that’s not enough. These days, software is very important. Like with Trend Micro, errors in software can cost you lots of money. I think the problem is that people don’t like to spend money for something when it’s hard to see if it pays off.

Maybe the problem is that good testing doesn’t show itself. When an error is found in a system through testing, that’s what the test was there for. But there’s no (easy) way to estimate what the influence (or the cost) of that error would have been if it wouldn’t have been found. Maybe what happened to Trend Micro was a good thing, because it illustrates the importance of testing.

I mean: it’s better to spend thousands of dollars more on testing than 8 million on repairing the trail of a bug later on, right?