The Budgeteers

Team Name

THE BUDGETEERS

Fall 2019 – Spring 2020

Students

  • Anil Karki
  • Robert Kemp
  • Emily Knowles
  • Roshan Shrestha
  • Hedges Omordia

Abstract

BUDGET MANAGER is the budgeting application that will let user to manage their daily expenses with the help of different features that are availabe on it.  After registering with the application, user can add multiple bank accounts. Plaid API will provide the necessary information of bank transactions, bill due date, available balances etc. and based on those information, it will let user to set budgeting plan, send due date notifications, view all transactions of different bank at one place, view expenses in diagram( like pie-chart) etc.

Background

The app market is over-saturated with budgeting apps, however articles have been written on how they don’t help people save money. cite{Long2017} We wish to change the relationship that people have with their budgeting apps, and with their money. On its own, the concept of budgeting apps is simple: let users generate a budget, and send them notifications on how they’re doing. Fundamentally, the apps on the market don’t help users set realistic or sensible budgeting goals, and they don’t hold users accountable. In an article by CNBC, the interviewed investment advisor stressed the difficulty that young adults have when trying to budget around their student debt. \cite{Kuh2019} The final problem we have with traditional budgeting apps is the lack of ability for users to experiment with budgeting styles, if an individual wished to try different app styles, they would have to download five separate apps and transfer information between them.

We hope to change how budgeting apps are viewed. We want to make it easy for users to try different budgeting styles and provide reference or guides for the user to build their budget. We strive to make budgeting easy for everyone and teach our users how to maintain their financial health. We hope that through use of our app we can recommend healthy financial goals for our users and motivate them to keep themselves accountable for their spending habits.

Project Requirements

Basically the top project requirements are those that are critical for project to operate flawlessly and fulfill project criteria.

●Web interface – The project should be at least web interface and if possible offline desktop version would be developed.

●Transaction input

●Bank account linking – User should be able to add multiple accounts.
●Security
  • Handle sensitive information/tokens securely
●Periodic, configurable expense deduction
  • Allocate $X every month for recurring expenditure Y
●Authentication
  • Secure backend authentication, frontend login view
  • User creation; password management; bank account management
●Application settings
  • Change application behavior
●Budgeting visualization and reporting tools
●Alert System- The application should send notifications if there is over expenditure on certain topics.
●Budgeting customization/fund allocation and rollover
  • Must be able to set caps on funds, allocate funds to other portions depending on strategy
  • Unused funds should usually rollover (strategy dependent)

System Overview

The budgeting application will be composed of roughly four main components/sections. The first section is the means by which the user will access the application, being either a web browser or an operating system (for a desktop application). The second main section is the budgeting app itself, running on either a remote server and accessed via a web browser, or running locally on the user’s machine. Third, the application back end runs on a remote server and will be used to store user data and authenticate users with the fourth and final major component, the Banking API. These components and their relationships to one another are shown in Figure 1 below.

The basics of a budgeting app starts with the budgeting style, there are five main budgeting strategies that are utilized by budget savvy people these strategies are: subtraction budgeting, cash budgeting, proportional budgeting, two-bank budgeting, and automatic budgeting. Our first solution to the problem is to allow users to pick between these budgeting styles in our app, removing the problem of having to get multiple apps or reenter their financial data.

Because one of the main problems with currently popular budgeting apps is rigidity in budgeting structure, our application will ideally allow for users to dynamically switch between different budgeting styles. The application will provide a host of various pre-built budgets based on popular budgeting strategies. It will also provide budgets that are more bare-bones, allowing the user to customize them from the ground up. All of these budgeting styles will be able to be edited and tweaked by the user to ensure maximum flexibility and satisfaction.

A major design goal of the app is the emphasis of simplicity. Therefore, menus, home screens, etc. will ideally be laid out as sparsely and simply as possible. Budgeting can be a very overwhelming task that is intimidating for people to delve into, and we seek to mitigate this intimidation by providing a clean, simple interface to allow people to manage their money.

We plan for our system to contain a variety of pictorial representations of of users budget such as graphs and charts to help users visually understand the financial situation, while not feeling overwhelmed or swallowed in complex charts and pictorials. Therefore, graphs, charts, and other visual aspects of the applications will be minimalistic, yet informative. We plan for our home screen to be customizable so that users can choose the best visual for easily determining the state of their finances at a glance.

 

Results

Future Work

  • Developers will discussed and finalize in Senior Design II.

Project Files

Project Charter (link)

System Requirements Specification (link)

Architectural Design Specification (link)

Detailed Design Specification (link)

Poster (link)

References

Any references go here, properly formatted

jxg4185