Background
Finance applications used by Banks (Retail and Commercial) have been slow to adopt new technologies for a couple of reasons:
- Regulations
- Data Security
- Siloed Operations
The only exception being high speed transaction (buy and sell) systems used by stock markets. Most other applications are monolithic without a proper user friendly user interface.
As can be seen from the diagram above, there are many organizations within a bank with varying business needs. It can become very difficult to build a system with one-size-fit-all approach. Hence historically each business unit within a bank has developed (build / buy) a system that addresses their particular needs. But as business needs and technologies have evolved, there’s a need for applications that can address these evolving business needs.
Approach for building FinTech Application
In order to build a new age FinTech application there are some critical aspects that need to be taken into consideration without which there won’t be any significant adoption of the application.
As shown in the figure below the approach for building FinTech application has 5 key considerations:
1] Understanding Business Context:
This is the first and the most important step to ensuring that the FinTech application being built actually addresses the business / users needs. When understanding the business context, start with User Persona first. Gain deep understanding of user’s goals and the environment that they are operating in, their key challenges, etc. There is a whole science behind getting the user context right. This process should be repeated in various stages of application development, not just at the beginning.
2] Identifying Supporting Applications:
In this day and age of connected world where data is collected at every possible point and shared among different systems, it’s impossible to imagine an application that works in isolation. Hence, when building out a FinTech application it is necessary to identify the data elements required for addressing business needs upfront. The output of #1 above feeds into #2. Take into consideration the following points when thinking about data exchange:
- Is the data exchange unidirectional or bidirectional?
- What is the frequency of data exchange?
- What kind of processing validations have to put in place to ensure correctness and completeness of the data?
- What corrective actions should be taken if the data is delayed or has other issues?
- Can new data attributes be added with ease without making major customizations?
- Is the data transfer secure?
3] Identifying Required Infrastructure:
With the advent of SaaS (Software-As-A-Service) most applications are deployed on the cloud (private or public or hybrid). There is a variety of criteria that needs to be taken into consideration for selecting the type of cloud. Here are some of them:
- Security: This is one of the most critical considerations. In case of public cloud infrastructure like Amazon Web Services (AWS), sensitive data resides on 3rd party servers. Irrespective how secure the cloud is, there’s always a possibility of 3rd party gaining access to servers / data. Hence, FinTech applications are typically hosted on private or hybrid clouds. This ensures that data remains in the control of the owner. The only tradeoff is cost associated with private / hybrid cloud.
- Scalability: Applications need to be able to scale horizontally as well as vertically as the data, user and transactions footprint expands. If application is not able to scale smoothly / automatically, then it may result in poor user experience, loss of data and much more, rendering the application unusable. Public clouds provide a verity of mechanisms for auto scalability for various aspects of application such as frontend, backend and data processing.
- Cost: Cost associated with private / hybrid cloud is typically more than public clouds. There is a lot more upfront investment and ongoing maintenance. Hence, it’s necessary that companies take the cost aspect into consideration and find ways to offset the cost in case they want to explore private cloud. There’s also the question of hardware become obsolete and finding ways to dispose it off.
Here are the silent application architecture features that must be present:
- Best of the Breed: It’s critical that the application components continue to evolve not just based on customer requirements, but by being able to leverage the best in the industry.
- Extensible: Application should be easily customizable and extensible without having to rewrite the code from scratch.
- Federated (aka loosely coupled): Various components within the application should be able to communicate using microservices architecture. This ensures that each component can evolve independently and can be easily leveraged in conjunction with other components.
4] Create a Governance System:
Creating application usage, access, upgrade and change management in case of FinTech applications is very critical. Process must be created and enforced for the following:
- User Management: This includes creating / editing users, roles, permissions and auditing every change being made to user access. A strong user management module ensures that there’s no unauthorized access and users only get access to that data which required for doing their job function.
- Change Management : A rigorous process of change management must be implemented for any changes being done the application.
- Changes can be of following types:
- Functional changes
- Software changes
- Hardware changes
- Deployment / Infrastructure changes
Every change must be thoroughly tested and signed off before being deployed to production environment. There has to be a proper approval process in place.
5] Gauge your Readiness:
Once the application has been developed its readiness must be checked using various methods such as:
- User Acceptance Testing (UAT): This is where users sign off on the functional readiness of application.
- Security Testing: Ensures that application wherever it is deployed is secure from various types of cyber-attacks such as DDOS, etc.
- Scalability Testing: Using artificial transactions, user access, etc. to test if the application can scale horizontally and vertically.
YuktaOne Enterprise Application Platform
YuktaOne Enterprise Application platform has been built from the ground up to support development and deployment of enterprise business applications. Various components required for enterprise app development are provided out of the box for rapid development of a variety of enterprise applications.
One of the leading examples is that of YuktaOne Media ERP, a ERP built using YuktaOne Enterprise Applications platform. The Media ERP is used by Publishers who monetize their digital assets (web. Mobile, video, CTV, OOH, OTT) to automate ad and revenue operations tasks and to foster internal and external collaboration. Various components using in the Media ERP are highlighted in the screenshots below.
YuktaOne Data Exchange has more than hundred prebuilt data integration APIs which are used to import and export data from various AdTech, MarTech, FinTech, CRM, Social, Email and Could Storage platforms. Users can schedule reports to import data at any frequency as per their business needs.
For the most part users want to be able to see trends, filter and sort data, export data and track KPIs that matter to them from business perspective. Above image shows the components that address these business needs.
Communication among users is necessary to foster collaboration required for rapidly identifying opportunities and solving issues.
Most user play around data in tabular format. As they find issues / opportunities they want to drill down to the next level. Representing data in tabular format with a tree structure enables users to do that.
User Management enables users, especially Admin, to create new users, roles using permissions to ensure that data access is restricted.
Dashboards are critical for tracking KPIs. Each user should be able to personalize KPI tracking and view data that’s useful for their role / job function.