15 Jan 2018
Why Testing is Important?
Testing a system is always an important part of any implementation. As the saying goes, ‘seeing is believing’, similarly we can say that any system is working fine not when data has been migrated successfully or the new system has been installed successfully, but when we see that the system is behaving as per business requirement without causing inconvenience to its clients/customers.
The existing/legacy system will be replaced with new CBS by transferring data from the former to the later.
Data migration is the process of transferring data between storage types, formats, or computer systems. It is a key consideration for any system implementation, upgrade, or consolidation. Data migration occurs for a variety of reasons, including server or storage equipment replacements, maintenance or upgrades, application migration etc…
When the data is migrated, extensive amount of testing should be done to ensure that the migrated data does not impact the business of the bank by suspending/stopping the functionality which was working earlier in the previous version of CBS or Legacy system.
Data is a key element during any migration. Most banks use a mapping study to analyse available legacy data versus required data in the core banking system.
This helps uncover issues with data quality and will have to be cleaned.
Testing the deliverables of data capture or migration tools helps verify the availability and quality of required data during migration.
The Migration Process
To model a data migration effort, most banks extract data from legacy systems using a data capture tool, process it through a migration tool, and deliver output in a flat file format that can be uploaded to the migration staging area. Validation is run on the staging data to check that it is correct.
Migration tool testing and data validation checks are used in this phase to minimize defects. To mitigate data-related risks, it is crucial to perform exhaustive data testing and validation.
Database migration testing is needed when you move data from the old database(s) to a new database. Database migration may be done manually but it is more common to use an automated ETL (Extract-Transform-Load) process to move the data. In addition to mapping the old data structure to the new one, the ETL tool may incorporate certain business-rules to increase the quality of data moved to the target database.
What should be the Scope of Testing?
Here are some of the things that you may want to test –
Activities during Migration Testing
The test approach for database migration testing consists of the following activities:
I. Design the validation tests
In order to test database migration, you need to use SQL queries. Need to create the validation queries to run against both the source as well as the target databases. It is common to arrange the validation queries in a hierarchy e.g. you want to test if all the Orders records have migrated before you test for all OrderDetails records. Put logging statements within your queries for the purpose of effective analysis and bug reporting later.
II. Set up the test environment
The test environment should contain a copy of the source database, the ETL tool (if applicable) and a clean copy of the target database. You should isolate the test environment so that it does not change externally.
III. Run your validation tests
Depending on your test design, you need not wait for the database migration process to finish before you start your tests.
Here are a few tips below to refine your test approach –