Create an online webapp to allow users to view their financial data from multiple bank accounts. The application should also be able to provide financial insights and visualisations to the users.
We conducted a semi-structured interview.
Q: What are the requirements for an open banking application for
you?
A: I would want the app to show me my categorical spending and transaction history in an
understandable and
easily digestible way.
Q: What are the preferred functions for an open banking application
for you?
A: It would be nice to be able to set budgets for easier financial management. If the app could
also predict
future expenditure based on my past expenditures, it'd help me better manage my finances. Having
bill
reminders would also be incredibly helpful as I tend to forget bill payments. Overall, I want to
move towards
a better credit score.
Q: What are the design features that you would look for in an open
banking application?
A: Having modern design is of utmost importance to put your app above all other open banking
applications.
Visualisations such as graphs would be very helpful for insights. It should be fast, regularly
updated and
free of bugs!
We've used these questions to write up the requirement list:
Must have | Should have | Could have | Won't have |
---|---|---|---|
Data Visualisation (BI) | Categorical Spending | HyperCube data structure to get more insights from analysis of multi-dimensional data | Real Authentication from a bank using Open Banking API |
Framework for interaction between database and front-end | Functionality to allow user to view transactions between certain date ranges | Report generation of data | Ability to make payments in user's behalf using the Open Banking API (PIS) |
Budgeting functionality (Setting caps) | Data Processing for each user and reuploading to database | Algorithm to analyse of spending patterns and/or fraudulent payment | Ability to track user's credit history and/or perfom credit checks |
Financial Overview Display | Bill reminders | Sophisticated Natural Language Processing which looks at more than keywords and categorises data more deeply | Sophisticated security implementation of user login/registration system |
Ability to connect and select multiple bank accounts | Ability to predict user going into overdraft | Creation of saving pots | |
NoSQL database, hosted on Azure which stores customer banking data | "Help" functionality using a form | Dummy Data Generation (JSON format) | |
Readable Number Formatting for Tables and Graphs | "Profile" functionality for each user | ||
Readable Date Formatting | Creating a full login system | ||
Pagination and seach for tables |
ID | Use Case For User |
---|---|
UCU1 | View and Update Profile |
UCU2 | Viewing Balances (Spendable and Total Expected Payable) |
UCU3 | Viewing Individual Account Information |
UCU4 | View Dashboard with Categorical Spending |
UCU5 | Viewing All Transactions |
UCU6 | View Alerts |
UCU7 | Generate Report |
UCU8 | Set Budgets |
UCU9 | View Detailed Credit Card Information |
UCU10 | Ask A Question |
ID | Use Case For Admin (App Developer) |
UCA1 | Answering Questions |
UCA2 | Password Management |
UCA3 | Database Management |
Use Case | |
---|---|
ID | UCU1 |
Actor | User |
Description | View and Update Profile |
Main Flow |
|
Result | Profile updated and financial data retrieved |
Use Case | |
ID | UCU3 |
Actor | User |
Description | Viewing Individual Account Information |
Main Flow |
|
Result | Viewing financial data from only Account 1 |
Use Case | |
ID | UCU10 |
Actor | User |
Description | Ask A Question |
Main Flow |
|
Result | Question has been sent to app developers |