0% found this document useful (0 votes)
40 views26 pages

NEWWWW

Uploaded by

harshupl2002
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
40 views26 pages

NEWWWW

Uploaded by

harshupl2002
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 26

A MINI PROJECT REPORT

ON
Personal Finance Tracker
BACHELOR OF TECHNOLOGY
In
Computer Science & Engineering [AI]
Submitted By

HARSH KAPOOR (2101921520081)

Under the Supervision of


Dr. Madnesh Kumar Gupta

G.L. BAJAJ INSTITUTE OF TECHNOLOGY &


MANAGEMENT, GREATER NOIDA

Affiliated to
DR. APJ ABDUL KALAM TECHNICAL UNIVERSITY, LUCKNOW

2024-2025
TABLEOFCONTENT

Declaration.........................................................................................(ii)
Certificate............................................................................................(iii)
Acknowledgement..............................................................................(iv)
Abstract.................................................................................................(v)
Table of Content……………………………………………………..(vi)
List of Figures……………………………………………………….(vii)

Chapter 1.
Introduction....................................................................................Pg.No.
1.1 ProblemDefinition…...........................................................................
1.2 Project Overview.................................................................................
1.3 Existing System....................................................................................
1.4 Proposed System...................................................................................
1.5 Unique Features of the proposed system

Chapter 2.
Requirement Analysis and System Specification............................Pg.No
2.1 Introduction …………………………………………………………..
2.2 Functional requirements.......................................................................
2.3 Data Requirements................................................................................
2.4 Performance requirements....................................................................
2.5 SDLC Model to be used........................................................................
2.6 Used case digram..................................................................................

Chapter 3.
SystemDesign…...............................................................................PgNo
3.1 Introduction............................................................................................
3.2 Design Approach (function oriented/ object oriented)……………….
3.3 Design Diagrams...................................................................................
3.4 User Interface Design...........................................................................
3.5 Database Design...................................................................................
Chapter 4.
Implementation………….…............................................................Pg.No
4.1 Introduction...........................................................................................
4.2 Tools /Technologies used......................................................................
4.3 Coding Standards of the programing Language used..........................

Chapter 5.
Result & Discussion ………………………........................... Pg.No
5.1 Introduction..........................................................................................
5.2 Snapshots of system..............................................................................
5.3 Snapshots of Database tables................................................................

Chapter 6.
Conclusion, Limitation & Future Scope.…………………….Pg.No

Chapter 7.
References

LIST OF FIGURES

Figure No. Description Page No.

Figure 1.1 Pg.No

Figure 1.2 Pg.No

Figure 2.1 Pg.No Figure 2.2 Pg.No

Figure 3.1 Pg.No


Abstract

The Personal Finance Tracker with Budgeting Tools is a standalone,


desktopbased application designed to streamline personal financial management.
Developed in Python, it leverages the tkinter library for an intuitive GUI and
matplotlib for data visualization. Key functionalities include setting and tracking
budgets, recording and categorizing incomes and expenses, visualizing expense
distributions with dynamic pie charts (including remaining unspent funds),
toggling between light and dark modes, and deleting or modifying existing
records. By providing real-time feedback, simple controls, and engaging
visualizations, the system helps users gain better control and understanding of their
financial health, ultimately fostering informed decision-making and disciplined
spending.
Declaration

We hereby declare that the project work presented in this report


entitled “Personal Finance Tracker with Budgeting Tools”, in partial
fulfillment of the requirement for the award of the degree of Bachelor
of Technology in Computer Science & Engineering, submitted to
A.P.J. Abdul Kalam Technical University, Lucknow, is based on my
own work carried out at Department of Computer Science &
Engineering, G.L. Bajaj Institute of Technology & Management,
Greater Noida. The work contained in the report is original and project
work reported in this report has not been submitted by me/us for
award of any other degree or diploma.

Signature:

Name: HARSH KAPOOR

Roll No:2101921520081
Certificate

This is to certify that the Project report entitled “PERSONAL FINANCE


TRACKER WITH BUDGETING TOOLS” done by HARSH KAPOOR
(2101921530081) of Branch “COMPUTER SCIENCE AND ENGINEERING
(AI )” is original work carried out by them in the Department of Applied
Computational Science And Engineering G.L Bajaj Institute of Technology &
Management, Greater Noida under my guidance.The matter embodied in this
project work has not been submitted earlier for the award of any degree or diploma
to the best of my knowledge and belief.

Date:

Faculty Name

Signature of the Supervisor


Acknowledgement

The merciful guidance bestowed to us by the Almighty made us stick out this
project to a successful end. We humbly pray with sincere hearts for His guidance
to continue forever.

We pay thanks to our project guide Dr. MADHNESH KUMAR GUPTA, who has
given guidance and light to us during this project. Her versatile knowledge has
guided us during critical times over the span of this project.

We pay special thanks to our Head of Department Dr. SANJIV KUMAR PIPPAL,
who has always been present as a source of support and helped us in all possible
ways during this project.

We also take this opportunity to express our gratitude to all those who have been
directly and indirectly with us during the completion of the project. We extend our
thanks to our friends who have always encouraged us throughout this journey.

Last but not least, we extend our heartfelt thanks to all the faculty of the ACSE
department who provided valuable suggestions during the period of the project.

Chapter 1
1 .2 Project Overview
Introduction

1.1 Problem Definition

Modern personal finance management can be complex, with numerous income


streams, expense categories, and savings goals. Manually tracking these details in
spreadsheets or on paper is tedious and error-prone. Users need a tool that not only
stores this data but also makes it visually accessible and easy to understand. The
primary problem is the lack of a simple, offline, and intuitive platform to help
users monitor their spending habits, set budgets, and visualize their financial health
in real-time.

The Personal Finance Tracker with Budgeting Tools is a desktop


application that aims to simplify personal finance management. Users
can record income, categorize expenses, set budgets, and quickly view
summaries of their financial status. By offering dynamic data
visualizations—such as pie charts displaying expense distributions and
remaining funds—this application provides actionable insights,
empowering users to adjust spending patterns and meet their savings
objectives.
1.3 Existing System

Existing solutions include:

● Spreadsheets: Flexible but lack interactivity, visualization, and require


manual management.

● Online Finance Apps: Provide advanced features but often need internet
connectivity, raise privacy concerns, and may include subscription fees.

● Budgeting Websites: Convenient but limited to online use and may not
offer offline privacy or customization.

1.4 Proposed System

The proposed system combines the simplicity of offline


tools with the sophistication of real-time visualization. Users can:

● Add/delete incomes and expenses instantly.

● Set and track budgets against actual spending.

● Visualize spending patterns with dynamic charts.

● Toggle themes for accessibility and comfort.


1.5 Unique Features of the Proposed System

● Dynamic Pie Chart with Remaining Funds: In addition to expenses, the


chart includes remaining income, offering a holistic financial snapshot.

● Dark Mode Toggle: Enhances usability, reduces eye strain, and improves
accessibility for various lighting conditions.

● Delete and Modify Entries: Ensures data accuracy over time without
manually editing files.

Chapter 2

Requirement Analysis and System Specification

2.1 Introduction

Requirement analysis sets the foundation for development. Functional


requirements define what the system should do, while non-functional requirements
(performance, reliability, usability) shape how it operates.
2.2 Functional Requirements (Table 2.1)

● FR1: The system shall allow users to add income entries with amounts and
timestamps.

● FR2: The system shall allow users to add categorized expense entries (e.g.,
Food, Transport, Miscellaneous).

● FR3: The system shall enable users to set and update a budget.

● FR4: The system shall visualize expenses through a pie chart reflecting
categories and remaining income.

● FR5: The system shall display total income, total expenses, and balance.

● FR6: The system shall allow users to delete expense entries to maintain
data accuracy.

● FR7: The system shall provide a toggle for dark/light mode.

Table 2.1: Functional Requirements

Requirement ID Description Priority

FR1 High
The system shall allow the
user to add income entries
with amounts
and timestamps.

FR2 High
The system shall allow the
user to add categorized
expense entries.
FR3 High
The system shall enable the
user to set and update a
budget.

FR4 Medium
The system shall visualize
expenses and remaining
income through a pie chart.

FR5 High
The system shall display
total income, total
expenses, and balance.

FR6 The system shall allow Medium


deletion of expense entries.

FR7 The system shall provide a Low


toggle for dark/light mode.

2.3 Data Requirements (Table 2.2)

● Income Data: Amount (float), Timestamp (datetime).

● Expense Data: Amount (float), Category (string), Timestamp (datetime).

● Budget Data: A single numeric value representing the budget limit.

Table 2.2: Data Requirements

Data Element Description Constraints

Income Amount Numeric value of income Must be > 0

Income Time Date/Time of entry Valid datetime

Expense Amount Numeric value of expense Must be > 0

Expense Category Category string (e.g., Food) Non-empty string


Budget Numeric value for limit Must be >= 0

2.4 Performance Requirements (Table 2.3)

● Response Time: Adding or deleting records should reflect in UI within a


fraction of a second.

● Scalability: The system should handle up to 1,000 entries without


noticeable performance degradation.

● Resource Utilization: Should run smoothly on standard


consumer hardware with no dedicated servers.

Table 2.3: Performance Requirements

Metric Requirement

Response Time UI updates (adding/removing entries)


should be <1 second.

Max Entries Up to 1,000 entries without noticeable lag.

Resource Utilization Runs on a standard desktop machine


without high CPU usage.

2.5 SDLC Model to be Used

The Iterative and Incremental Model is chosen. The project started with a
minimum viable product (MVP) and was enhanced through multiple iterations.
This approach offered flexibility, allowed early user feedback, and guided
refinements in subsequent phases.

2.6 Use Case Diagram (Figure 1.1)

Actors: User (Primary)


Use Cases: Add Income, Add Expense, Set Budget, View Summary, View
Expense History, Delete Expense, Toggle Mode

The diagram shows the user interacting with the system to perform all these tasks,
and the system responding by updating data, recalculating totals, and regenerating
visualizations.

Fig 1.1
Chapter 3

System Design

3.1 Introduction

System design transforms requirements into a blueprint. It involves choosing


architectures, data models, and interfaces that ensure the system’s reliability,
maintainability, and usability.
3.2 Design Approach

An Object-Oriented Design (OOD) approach was adopted:

● Encapsulation: Income, expenses, and settings are handled by separate


classes.

● Modularity: Functions for updating expenses, calculating totals, and


rendering charts are kept modular and reusable.

This fosters cleaner code, easier debugging, and future scalability.


3.3 Design Diagrams

● Class Diagram (Figure 3.2): Shows classes for


FinanceTracker, ExpenseManager, and IncomeManager.

Fig 3.2

● Database Schema (Figure 3.3): While the current version stores data
inmemory, a schema is prepared for future database integration.
3.4 User Interface Design

● Dashboard (Figure 3.1): Central view showing budget, total income, total
expenses, and progress bars. Buttons for adding income/expenses and
viewing summaries.

● Expense History Screen: Lists each expense with a delete option.

● Summary Screen: Showcases a text summary and dynamically updated


pie chart.

All UI elements follow a consistent design language, adhering to accessibility


guidelines (contrasting colors, large clickable elements).

3.5 Database Design

The current prototype uses in-memory lists for data storage. However, the design
accounts for future integration with a local SQLite database:

● Expenses Table (Table 3.1): Fields: ID, Category, Amount, Timestamp


Table 3.1: Expenses Table Structure

Field Type Description Constraints

id Integer Unique identifier Primary Key, Auto-


for the expense inc

category Text Non-empty


Category of the
expense

amount Real Expense amount Must be > 0


timestamp Text/Datetime
Date and time of Valid datetime
the expense format

● Income Table (Table 3.2): Fields: ID, Amount, Timestamp

Table 3.2: Income Table Structure

Field Type Description Constraints

id Integer Unique identifier Primary Key,


for the income Autoinc

amount Real Income amount Must be > 0

timestamp Text/Datetime Date and time of Valid datetime


the income format

By planning a database schema upfront, future enhancements become simpler.

Chapter 4

Implementation
4.1 Introduction

Implementation involves coding the application based on the design. Python was
selected for its rich ecosystem, simplicity, and powerful libraries (tkinter for GUI,
matplotlib for charts).

4.2 Tools/Technologies Used

● Python 3.x: Main programming language.

● tkinter: Default Python library for building GUIs.

● matplotlib: For dynamic pie charts and data visualization.

● PEP 8 Standards: Ensures readable, maintainable code.


Git Version Control: For managing iterative enhancements.

4.3 Coding Standards of the Programming Language Used

● Naming Conventions: Functions and variables use lowercase with


underscores. Classes use CamelCase.

● Comments and Docstrings: Each class and function documented for


clarity.

● Exception Handling: Try-except blocks to handle invalid inputs or


unexpected states gracefully.
Chapter 2

Result & Discussion


5.2 Snapshots of System (Figures 5.1, 5.2, 5.3)

● Dashboard View (Fig. 5.1): Shows budget utilization bar and quick buttons
for adding income/expenses.

Fig 5.1

● Expense History (Fig. 5.2): Lists entries with a "Delete" button next to
each record.

2 .1 Introduction

The application was tested against typical usage scenarios: adding


multiple expenses, adjusting the budget, toggling dark mode, and
verifying if the pie chart and summaries updated correctly.

Fig 5.2

Pie Chart Visualization (Fig. 5.3): Dynamically updates to reflect


expense categories and remaining funds.

Fig 5.3
5.3 Snapshots of Database Tables

Currently, the system maintains data in memory. Future versions will display
SQLite tables, wherein each row corresponds to an expense or income entry. This
will facilitate persistent storage and data retrieval.

Chapter 6

Conclusion, Limitation & Future Scope

6.1 Conclusion

The Personal Finance Tracker with Budgeting Tools successfully addresses the
problem of manual and disorganized personal finance management. Users can
intuitively manage their income and expenses, gain immediate insights through
visual cues, and maintain a disciplined budgeting routine.

6.2 Limitations

● No Persistent Storage: The current iteration does not store data between
sessions.

● Single-User Environment: Multi-user functionality or user authentication


is not implemented.

● Limited Reporting: Only basic charts and summaries are provided.

6.3 Future Scope

Database Integration: Implement SQLite or another DBMS for persistent


storage.

● Advanced Analytics: Introduce predictive analytics and trend forecasting.

● Mobile/Cloud Integration: Expand availability to mobile devices or


provide a secure cloud backup for data.
Chapter 7

References

1. Python Software Foundation. Python Language Reference, version 3.x.


Available at: https://docs.python.org/3/

2. Tkinter Official Documentation. Available at:


https://docs.python.org/3/library/tk.html

3. Matplotlib Official Documentation. Available at: https://matplotlib.org/


4. GeeksforGeeks. “SDLC Models,”
https://www.geeksforgeeks.org/software-engineering-sdlc-models/

5. PEP 8 – Style Guide for Python Code. https://peps.python.org/pep-0008/

6. Nielsen, J., “Usability Engineering,” Morgan Kaufmann, 1993. (For


UI/UX insights)

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy