What’s happening in Banking World?
The entire landscape is very competitive and banks today are evolving. Banks are relying more and more on technology to reach customers and deliver services in short span of time. It is becoming important for them to be consistent and deliver quality customer services using technology to reach, expand and deliver faster and better services. Adding additional services and transactions via technology, integrating with legacy systems and delivering using new delivery methods are becoming a norm. The banking industry is embracing newer technology to grow their market share. With technology, banks today are global players and no more local. Challenges Challenges in the multiple industries are similar but in Banking, there are specific challenges, which makes it unique, which are
- Frequently changing market and regulatory requirements
- High data confidentiality requirements
- Complex system landscapes including legacy systems
- Newer technologies such as mobile and the web services
- Enterprise banking integration – Core banking, Corporate Banking and Retail Banking
- Application performance – Internal and External
It is very important that banks and financial establishments conduct regression tests over the entire application lifecycle for every release and also maintain test suites for each release using effective version control system linked to requirements, test cases, test scenarios and realistic test data. Based on this, an effective testing approach can be taken individually or by combination of the following to achieve the desired results:
- Risk-based testing
- Test data management
- Compliance / Statutory testing
- Performance and Capacity engineering
Risk based Testing
To deliver quality product to the market on time, it is necessary to ensure that you have tested it effectively. Risk based testing helps you to prioritize the tests / features and reduce the number of tests to be executed for each release or upgrade while keeping the risks within an acceptable range thus reduce the impact of any failures.
To ensure effective regression tests, test automation is necessary. Automating tests for your legacy, the web and mobile applications and conducting effective integrated tests will be a step towards achieving the results you would expect and accept.
The crucial success factor is reliability & sustainability, which is provided by automated test suites. The automated test suites can be run in new releases and upgrades without too much of maintenance effort.
Regression tests ensure that the rate of defects per executed test is significantly lower than for the new functionality. The majority of the defects found by automated regression tests would be functionalities that worked fine in earlier releases but not working in the new release, integration tests issues, effects of changes in 3rd party components, integrated systems or external features. Effective end-to-end testing using automated regression tests combined with risk based testing will help ensure quality and also time to market while decreasing costs.
Test Data Management
Production data is very important for testing. However, due to security concerns, testing is done on test data, which does not even resemble near to the production data.
Data masking tools and techniques are used to change the production data in a way that it is secure and can be used for testing. The advantage of this approach is that you would conduct tests on realistic scenarios to get realistic results and good coverage.
Maintaining test data is also important as it may change over a period of time. Verifying test data for every execution is as important as keeping the test scripts maintained. The other technique of test data management is to generate synthetic test data, which is excellent to ensure compliance, sustainability and integrity. The assumption is that you would generate the synthetic test data as you produced the production data.
A combination of masking test data and creating synthetic test data for tests would provide you the desired results to ensure coverage and conduct a more realistic integrated tests.
Compliance and Software quality assurance goes hand in hand. Organizations are faced with increasing number of regulations and changes year on year while they still have to ensure the IT systems are compliant to the frequent changes.
In the financial industry, SOX (Sarbanes-Oxley), was enacted to protect shareholders from fraudulent practices. In the EU, similar legislation called Solvency has been enacted upon the insurance companies. Penalties for non-compliance quickly reach into thousands of dollars and the negative publicity that can damage the reputation. In many cases, organizations are forced to go back to paper based system until all the exposures are mitigated.
Each system has to be validated and certified to be compliant before testing and production. Compliance testing with right test data and test automation will help you ensure systems are validated before shipped.
Performance of your product on the web and on Mobile defines adoption of your services today. End-user experience matters the most.
Employing techniques, which help you in ensuring that code is executing correctly, network is behaving properly, Servers are performance as it should and pinpointing to the problem area in the highly integrated environment is the key.
As you add additional customers online, it is also important to ensure that your application is able to handle the extra load by optimizing the application, adding addition resources to the network or the server. The trick is to add more and more users while maintaining the performance parameters and SLA’s.
You will need to conduct accurate affordable scalable load test. You will need to the do the following to ensure performance and scalability:
- Performance Engineering
- Bottleneck analysis
- Capacity Planning
- Load Testing
- Stress Testing
- Scalability Analysis