The importance of testing to determine the quality of software products or applications has never been under question. Testing is essential to conduct a thorough examination of every feature of the application, to make sure that it functions properly. Once that is determined, non-functional tests are made to guarantee that it will continue to function according to what can be expected of any platform or device, irrespective of the number of recurring users. The effectiveness and robustness of the system are evaluated and tests are conducted to check that processes and business rules are properly applied and user experience is optimal.
Any defect identified when testing can be corrected during the development life cycle. Every problem will be detected and resolved. Why is it so important to correct defects before the system goes live? When a critical defect is found in the production environment, its impact and severity affect the final user, the company’s reputation and even any sensitive data relative to the organization or its clients. Therefore, tests are key to mitigate risk and to guarantee that the application can be run live without major problems.
The additional-cost paradox
Developing software without testing? That is like betting on the roulette: things can go well, or they can fail. Even if the direct correlation between testing and quality is fully understood, some resistance will remain, very often related to budgetary issues (as if the cost of any inconvenience resulting from the use of the product were not higher than having duly invested in quality) or to corporate pressures: on occasion, the pressing need to launch a product to market makes things difficult if the company has to take care of all the details at the same time.
If we talk about costs, there is a paradox: many projects are delayed due to poor software quality. Additionally, as projects progress and turn more complex, they become more difficult, take up more time and problems become more expensive to correct. Therefore, avoiding investment early on can lead to very high final expenses (not counting any prior calculation or estimation), or to an even higher monetary loss if the product goes live and still drags unresolved errors.
The digital finance case
The transformation that the financial sector is undergoing again focuses on this topic: we are no longer dealing with flaws in the use of the application, or a damaged reputation or a bad user experience. In these cases, a product that has not been properly tested can generate losses in the millions for financial entities or failed operations for their clients. There is no room for error in this industry.
Today, both fintechs and traditional banks pursue common objectives, such as offering products and services based on innovative technologies to cater to a constantly-growing client base in a safer and personalized way. The pandemic played a very important role in speeding up the process. The use of e-wallets grew exponentially in just a couple of years.
The growing competition in the sector and the efforts to be the first to surprise clients requires a delicate balance that is not always achieved: the time-to-market speed of new products should not lead to software tests of a deteriorating quality that need to be run on the system. Various scenarios need to be evaluated, focusing particularly on safety issues in all transactions and data privacy. The possibility of not testing enough is always there, but not giving in to this “temptation” allows us to remain credible to our clients.