Banking software is an inherently complex business application that involves a multitude of channels, sensitive data, real-time interactions, multi-tier user sessions, legacy platforms, evolving regulations, and governance – leading to reduced agility. The complexity also makes application testing an expensive affair. Due to its dependencies, the testing process requires more time, resources, and continuous monitoring that the traditional testing process cannot keep up with.
Typical stages of testing banking applications follow the waterfall method that involves requirement gathering, development, testing, and finally user acceptance. Although robust, this approach does not work for the modern requirements of rapid product development. For instance, consumer’s digital demands are rapidly evolving. Products must be developed and tested based on their requirements that keep changing as and when the product is developed. With the waterfall model, the testing stage comes at the end of the cycle, where it is difficult to go back and change the core application. The rate of failure is high and the cost of fixing issues even more. According to a report by IBM, the cost of fixing a bug grows exponentially based on which phase it is detected. If found in the gathering requirements phase – $100, if found in the testing phase -$1500, if found in the production phase – $10,000.
By this, it makes sense to introduce testing at an earlier stage of the SDLC. This is where shift-left enters. Compared to the traditional testing process, shift-left ensures that testing is done in sync with product development and business requirements. The shift-left approach addresses testing at an earlier stage of SDLC and not towards the end of it. It breaks down testing silos by designing test automation strategy earlier in the SDLC including scripting and making executables ready for the development process. It is easier and cost-effective when a bug or defect is caught early instead of the end of the SDLC. Fixing bugs or defects on time help deliver projects within defined time frameworks and prevent project delays. This way the developers, operations, and quality engineering teams, all work together as a single unit that is ready to validate the functionality of assets being developed.
Moving from QA to QE
Although used interchangeably, quality assurance (QA), and quality engineering (QE) are two separate aspects of product development. In simple terms, quality assurance QA is a process of ensuring the quality of a product. Whereas, QE drives the quality development of products and processes while enabling effective and efficient testing in parallel. For instance, a banking application may meet all the QA requirements, but if a customer has to repeatedly enter their account details to access their account, it may frustrate the user to abandon the app and look at competitor apps for ease of use. QA will pass this workflow as it does what it’s supposed to. But QE would explore the scenario by analyzing if the workflow is suitable for the customer and take in their feedback to deliver a quality product. This is done by implementing automation and predicting user behavior to build test cases early in the SDLC. For digital-only banks, the speed of transactions and customer demands for better experience forms the core of their product development endeavors. QE helps introduce sustainable quality in products and services, assuring seamless operations. Artificial intelligence (AI) plays a crucial role in building a robust QE practice as it helps testers accelerate testing. The emphasis is on creating several automated test cases that are closer to the development code – eliminating redundancy in code. It enables the rapid development of products wherein it is easy to complete validation tasks quickly. For instance, a leading global bank had to deal with testing several combinations of credit cards. Over 2.5 lakhs test cases would take over two months to test and release. With Maveric’s continuous QE framework and AI automation capabilities, the testing time was reduced by at least 50 percent as over 30 percent of duplicates were eliminated – a feat that would take forever if done without AI. The intelligent automation framework helps in optimizing the testing process without losing out on valuable time and resources. Enhanced test coverage helps in assuring the quality of the software as every feature of the application/software can be tested directly from the origin of the development process.
Benefits of shift-left from QA to QE
A successful shift-left testing approach should trigger a cascade reaction where continuous testing (CT) triggers a proactive continuous integration (CI) approach which in turn accelerates continuous delivery (CD). But the transformation from QA to QE requires a mindset change wherein QA engineers make a smoother transition to quality engineers. The approach involves emphasizing the quality of the process, inter team’s collaboration between developers, business analysts, and domain experts, and not just focusing on the quality of the product. Some of the benefits of shift-left testing are:
- Accelerating release cycles
- Incorporating user feedback
- Cost-saving in development and testing
- Better code and product quality with early bug detection
- Reducing time-to-market
- Validating your application quickly across multiple devices and browsers
Adopting an optimized QE framework
An optimized QE framework assists SDLC by integrating three main aspects of business development – Behavioral-Driven Development (BDD), and Domain led expertise to new-age testing. Both the BDD and Domain help in preventing defect induction into the SDLC pipeline.
Figure 1: Traditional testing approach vs. Maveric’s Shift-left approach
With years of experience and experimentation, Maveric has perfected the art of testing. Its QE framework adopts the best of development testing strategies with exceptional banking domain expertise. For instance, adopting the agile approach means that different testers, with vastly different skill sets, are required to be involved in the testing process. Adopting the shift-left approach can seem daunting for banks that have limited resources and technical skills or require upskilling talent to different stages of testing – all requiring time and money that they may not have. Maveric has spent years on training and changing the thought process to shift-left testing by building a talent pool of QE specialists to cater to rapid testing demands. With a framework in place, developers, testers, and non-technical users can all access the same set of tools and processes – contributing to the quality of the product. Maveric’s QE framework fits seamlessly into an agile or DevOps workflow by leveraging automated testing and shift-left testing best practices.