This involves resources used to test whether the functionality is right, whether it does what it is supposed to. Suppliers are buying into methodologies such as the independent Test Maturity Model integrated (TMMi), which has five stages and ensures testing is carried out throughout the development process rather than when it is finished.
But service providers are also investing in technology to check the structural quality of the code well before the functionality testing takes place.
This is important because although software might be functional and do what it is supposed to, it might have little errors hidden away that become problems in the future.
I am not saying that banking failures such as, most recently a system error at Lloyds TSB causing customers problems, are the result of structural problems with software but if it is taking time to explain problems it could be.
Back to my point about IT services firms investing in analysing the structural quality of software. I met up with Lev Lesokhin from Cast Software yesterday. The company does analysis of the structural quality of software to find if there are errors that are overlooked in development that might cause future problems. It describes these as "critical violations".
Cast sells its services to both suppliers and direct to end user businesses. About 60% of sales are direct to end user businesses.
Its business customers include Wells Fargo, Deutsche Bank and the US army. These companies scan their software using the Cast software to catch potential future problems. This will save a lot of money that will be required for fixes, not to mention reducing the risk of reputational damage caused by failures.
Lev told me about the growing number of service providers that are now taking on the service. IBM and Capgemini have been customers for a while. It also works with companies like HCL, Mahindra Satyam and Steria. These companies are using this within their own software development teams to test quality and are offering the Cast product as a service. It has become a calling card for some.
I wanted to get people's views on this so please leave comments about the processes you use to check the structural quality of applications.