Fintech is modern technology to automate the delivery and implementation of financial services. While fintech was initially limited to backend applications in the financial industry, consumer fintech applications have experienced a boom in recent years. Mobile banking and other financial apps have become ubiquitous on smartphones. Today, customers want to perform financial transactions wherever they happen to be without having to visit a brick-and-mortar bank or other financial services office.
There are, however, many other use cases for fintech. For example, crowdfunding platforms such as GoFundMe are fintech applications, as are microfinance lending programs in the developing world. Automated policy management in the insurance industry is part of this domain as well, as insurtech, a subset of fintech.
Fintech applications generally operate in an enterprise environment. As such, testing fintech applications before deployment can be tricky. It is not good practice to run development and test environments against production data, but at the same time, you must test applications using realistic data. You need to figure out where to get this test data.
Customer relationship management (CRM) data is relatively easy to find. Plenty of public data is available, and you can find open machine learning (ML) datasets. However, masked health and financial data (data with personally identifiable information removed) are much harder to find, particularly for banking, financial, or payment systems.
Once you have the data, it’s important to understand best practices for testing your fintech application. In this article, we look at some of these considerations, let you know how to mask your data, and suggest some places to find test data.
While many organizations use production data in test environments, this is not advisable. Typically, a test environment does not have the same level of security as a production environment. It is easier for an intruder to access and put your customers’ personal information at risk.
In addition, many users in a test environment don't normally have access to production data. When you put user data in a test environment, suddenly, QA departments, consultants, and contractors have an open door to live data, making the data vulnerable. A study by the Ponemon Institute discusses an outside consultant hired by a financial firm to develop applications. The consultant sold some of the firm's customer data he had access to during the engagement, compromising the firm’s privacy policy and putting personal information at risk.
Another factor to consider is compliance. Depending on your industry, especially the health and financial industries, using production data for testing can have compliance implications and violate privacy regulations.
While you should avoid testing your fintech application with production data, the data must still be realistic. Financial applications are complex, and test data that doesn’t mirror production data may not expose bugs in an application. These bugs would then only surface once the application goes live, with potentially disastrous results. For example, if an apostrophe is missing in the test data for an application that uses SQL queries, the testing process can miss potential errors.
Using realistic data also means using data that is a representative subset of the complete dataset. Also, failure to use representative test data can miss defects that won't surface until the application is in production, since the data doesn't cover all the possibilities in the real world.
You can use a variety of techniques to develop test data. It's essential to research various options and select a technique that's right for your organization and application. Most experts agree on several test data requirements.
First, you should consider: Where does your test data come from? What is the domain and the nature of the application? What is the data structure? Does the end-user type it into the system, or is it entered automatically? All these factors influence the data's behavior, so understanding them is essential for accurate testing.
Once you have reviewed these factors, consider the following:
It is important to involve the business as a whole, including all stakeholders, from the earliest testing stages. Otherwise, the development team may overlook factors important to users on the business side.
Taking these requirements into account helps you perform a safe and successful test cycle.
Because access to the test environment is typically given to additional parties — such as contractors or QA testers — who do not have access to production data, it’s important to mask your test data.
Some ways to mask test data are:
The wide range of data masking techniques includes:
Finally, various vendors provide solutions for generating test data. While sometimes pricey, these solutions have the advantage of generating realistic test data without compromising your production data.
Test data is available from a variety of sources, both commercial and free. Here are some examples for your convenience. We imply no endorsement.
This is only a sample of potential test data sources. You may find others that better meet your needs. Or, you may find it best to create your own data using the strategies from this article.
As with requirements, philosophies on best practices for managing fintech data vary, but there are some common perspectives:
Organizations can review their processes and improve efficiencies by implementing proper procedures. Ask questions like: What does it take to create test data? What is the cost of creating test data?
Bring together a cross-functional team to fully analyze your process. You may discover hidden costs in your testing process. Implementing more efficient test processes and more effectively managing your test data can reduce testing costs considerably.
Now that you know why you should not test using production data, and some techniques for masking your data, you can create your own financial test datasets while keeping your customer information safe. As you develop and test solutions implementing GrapeCity products, we hope the techniques and best practices in this paper will assist you in your tasks.
GrapeCity’s product line provides developers, designers, and architects with a complete selection of quality JavaScript and .NET grids, along with reporting tools, spreadsheets, document APIs, and mobile controls.
Over 40 years of experience developing award-winning solutions brings you full-featured applications with a familiar user interface and intuitive controls. GrapeCity products enable you to design and develop for a variety of platforms and devices. To learn more, explore the GrapeCity website today.