The Growing Need for Test Data Management
Early in 2018 four major Banks in the US had clients up in arms when, for several hours, banking services were not accessible via their mobile banking apps. The interrupted services were attributed to a major spike in traffic due to it being payday. Notwithstanding, reputational damage had been done to the banks and, adding to their woes, a social media tirade on platforms like Twitter, where irate clients vented their frustrations and further lambasted the banks, ensued. The experience of these banks again highlighted the importance of software system testing in banking and financial services. However, software system testing is only as good as its test data management strategy, which should be adopted and implemented to:
- Manage test and development processes to meet testing and application development requirements
- Secure data and streamline cloning processes, delivering clones needed to meet upgrade and patch cycles as well as maintain data security
- Identify appropriate replicable accounts and transactions from production to meet test criteria
- Mitigate the threat of identity theft concerns among consumers and regulators
- Improve turn-around-times during system upgrades through improved planning of data refreshes and overall data utilization.
The importance of test data management in testing
At its core, data management is the science of creating and maintaining the data sets generated by software system testing, driven by cause-effect relationships, producing predictable outcomes and responses. These data sets can be generated entirely by the tester, by simulating each stage of the customer or transaction journey, producing what is called synthetic data. Alternatively, data generated by actual transactions and previously recorded is called migrated data, providing authentic sets. Each of these forms of data generation has its value and challenges.
Synthetic data needs to be interoperable, able to account for diverse systems in varying environments without diluting the complexity of inter-relationships. Besides, the data needs to be refreshed and valid for multiple rounds of testing and if in an automated environment, should not need to be updated by manual intervention. Migrated data, in turn, is drawn from authentic transactions has limited reusability across different test-cycles, hamstrung further by data confidentiality obligations.
Mitigating the risks inherent in Test Data Management
Implementing a Test Data Management strategy requires that several risks and their potential impacts be considered. The complexity of the data, structured or unstructured, whether the databases are new or from legacy systems and how the data is stored. If kept in multiple environments, it may have the added challenge of access sensitivities and potential confidentiality breaches. Assessing the time available for data discovery, its generation and management is another factor that is paramount in ensuring representative samples are obtained. Besides, test data management requires different types of data for different types of testing, from performance through to user acceptance testing, so data needs to be organized correctly to fit within the required time and budgetary constraints. Another potential risk is the measure to which the organization operates in a distributed multi-supplier or outsourced environment, with multiple users accessing the data in multiple locations. Operating in such an environment also highlights the importance of data security and protection. As a standard, new security protocols will be required as well as staff training, highlighting the importance of protecting live production data as well as guarding test environments.
Empowered Software Testing through Test Data Management
Given the dynamic nature of the banking environment and the need to ensure optimized and efficient process continuity, any process that does not facilitate this expediency will have a negative impact on the entire system. Accordingly, if the process of choosing, interpreting and scrutinizing test results is time-consuming, arduous, and requiring specific knowledge of underlying applications, it will have a direct negative impact on the entire system. The time it takes for reporting and information sharing in an organization can also be a significant factor in the efficiency of the entire organization.
To meet these dual needs of time and efficiency, banks should implement the following test data management techniques, while taking care to mask sensitive information:
- Database cloning through the copying of production data
- Data sub-setting by substituting production data when appropriate, &
- Synthetic data generation, through the production of synthetic data based on a clear understanding of the underlying data model, which requires no de-identification
Yethi, a leader in software solutions and quality assurance in global banking and financial services has developed substantial expertise in creating end-to-end enterprise-wide test data management services which include data quality assessment, data masking, data subset, data archiving, data cleansing and data optimization. Yethi also assures that through rigorous control the thorough management of test data is ensured, beginning with quality assured consistent data. Data security and privacy are also safeguarded, while storage requirements and software costs are significantly reduced.