“My Software is not Safety-Critical – do I still need software testing and analyses tools?”

The short answer is yes. You want your software to work and you want your development process to be cheap. These are the problems software testing tools help to address:

1. Increasing Code Complexity

Looking at how the code of different software systems regarding their numbers of Lines of Code (LoC) develops, one can roughly ascertain that software doubles in size every five years. Thus, software nowadays can easily have millions of lines of code which makes it impossible to have a good overview. Moreover, according to Professor Les Hatton (Kingston University, London) software complexity doubles roughly every 18 months. Therefore, tools which support the programming process to have clear and well-structures code are helpful for understanding and maintaining the code in the long run.

2. Cost of finding an error

Although some developers might claim otherwise, a code without bugs has yet to be found. In software testing the principle “guilty until proven innocent” strictly applies. The earlier you test in the software development process, the easier (and less costly) it will be to correct any errors. According to Barry Boehm, the relative cost to fix bugs, based on time of detection, increases exponentially. If a bug is detected in the requirement or coding stage, it can be fixed relatively easily – a developer might only need to work a few hours to solve the problem. However, if a software is already released and an error occurs, it needs to be recalled with costs amounting to millions of euros. Software testing tools with the ability to discover bugs as early as the coding stage are detrimental to keeping your costs in check.

3. Enhancing your software quality

Software testing tools can help you to enhance your software quality. Not only will your code work, but the maintainability will be increased as well. This – again – leads to a decrease in cost in the long run.  Furthermore, a higher software quality might translate to a faster program – which might be especially interesting for the banking/ fintech sector, where transactions mean time mean money.

Obviously, you will not need every kind of testing that is on the market. Every project has its own requirements. Does an open source tool suffice, or do you need a commercial one? There are some excellent open source tools on the market, however you need to be aware that you get what you pay for.

Software test tools should be seen as long-time investments, with the advantages becoming clearer and clearer the longer you use them. One undetected mission-critical error can be quite costly – whereas good software testing tools help you avoid them in the first place – while saving you a lot of time in development and maintainability.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: