0% found this document useful (0 votes)
9 views37 pages

Project Report

The document outlines the development of a web-based Expense Management System aimed at improving financial tracking for individuals and small businesses. It addresses common issues of financial mismanagement due to inefficient tracking methods and proposes a user-friendly solution that integrates modern technologies for real-time monitoring and reporting. The project follows a structured development methodology and aims to enhance financial awareness through an accessible platform while acknowledging its limitations such as lack of integration with external financial systems.

Uploaded by

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

Project Report

The document outlines the development of a web-based Expense Management System aimed at improving financial tracking for individuals and small businesses. It addresses common issues of financial mismanagement due to inefficient tracking methods and proposes a user-friendly solution that integrates modern technologies for real-time monitoring and reporting. The project follows a structured development methodology and aims to enhance financial awareness through an accessible platform while acknowledging its limitations such as lack of integration with external financial systems.

Uploaded by

Dhiraj Jha
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

CHAPTER I: INTRODUCTION

1.1 BACKGROUND OF THE PROJECT


Managing personal and small business finances efficiently is a critical challenge in
today's fast-paced environment. Individuals and business owners often struggle with
keeping accurate and timely records of their expenses, leading to financial
mismanagement and missed payment deadlines. The lack of a user-friendly,
accessible, and efficient expense recording system exacerbates these issues. This
project aims to develop an Expense Recording System that will provide users with a
comprehensive tool to record, categorize, and analyze their expenses effortlessly. The
system will integrate with various financial sources, offer real-time monitoring, and
generate insightful financial reports, ultimately empowering users to make informed
financial decisions.

Effective financial management is an essential aspect of both personal and business


administration. Individuals and organizations often struggle to maintain a structured
approach to tracking their expenses, leading to inefficient budget management and
financial uncertainty. Traditional methods, such as manual bookkeeping or
spreadsheet-based tracking, can be cumbersome, error-prone, and time-consuming.
This project, titled "Expense Management System," is a web-based solution that
facilitates real-time expense tracking, budget monitoring, and financial reporting.
Developed using PHP and MySQL for backend operations, along with HTML, CSS,
and JavaScript for frontend development, the system enables users to systematically
record, categorize, and analyze their financial transactions. With features such as
multi-user support, automated report generation, and secure authentication, the system
aims to provide an efficient and user-friendly alternative to traditional expense
management methods.

By leveraging a structured development approach and integrating modern web


technologies, this project contributes to enhancing financial awareness and decision-
making among users. The system is designed to be accessible, scalable, and adaptable,
making it a valuable tool for individuals, businesses, and financial planners.

1.2 PROBLEM STATEMENT


Financial mismanagement is a common issue faced by individuals and small
businesses due to the lack of an organized expense tracking system. Many people
struggle to recall how and where they have spent their earnings, leading to poor
budget control and financial stress. The absence of a comprehensive, user-friendly,
and cost-effective solution results in inefficient tracking methods that rely on manual
data entry, increasing the risk of errors and inaccuracies.
Existing expense management solutions either require significant manual effort or
come with high costs and complex interfaces, making them inaccessible for many
users. Additionally, the lack of automation in conventional tracking methods places a

1
burden on users to manually calculate and categorize their expenses, increasing the
likelihood of oversight.
To address these challenges, this project proposes a web-based Expense Management
System that will provide an intuitive, automated, and efficient platform for tracking
and managing financial transactions.

1.3 OBJECTIVES
The primary objectives of this project are as follows:
 To design and develop a user-friendly web-based Expense Management System
that enables individuals to track and manage their financial transactions
efficiently.
 To develop a secure multi-user authentication system that enables individuals to
create and manage personal accounts while maintaining privacy and data security.
 To allow users to edit, update, or delete expense entries, ensuring flexibility in
managing financial records.

1.4 REVIEW OF RELATED WORK AND LITERATURE


The development of expense tracking systems has been a significant area of interest in
the academic and technological spheres, with various approaches aimed at enhancing
efficiency, accuracy, and user experience. Existing literature highlights the integration
of modern technologies, such as web frameworks, mobile applications, and artificial
intelligence, to create seamless and automated expense management tools. A study by
(Shivam Mehra, 2021) explores the development of a Daily Expense Tracker, a web-
based application built using ReactJS and integrated with voice recognition features.
The system records income and expenses in real-time, visualizing data through
interactive pie charts. A significant aspect of their work is the use of local storage to
ensure data persistence, allowing users to retrieve their records even after long periods
of inactivity. This solution addresses the issue of mismanagement and loss of physical
records by digitizing expense tracking and making it accessible across devices.
Similarly, (Denis E. Yurochkin, 2021) discuss creating a mobile expense accounting
application that utilizes OCR (Optical Character Recognition) technology to extract
data from scanned receipts. Their study focuses on preprocessing images with
OpenCV to improve text recognition accuracy using Tesseract-OCR. This approach
automates data entry, reducing the time and effort required for manual inputs. A key
innovation in their system is the ability to split expenses among multiple users, a
feature that enhances the practicality of the application for households or shared
expenses.

Both studies emphasize the importance of user-friendly interfaces and cross-platform


accessibility. Mehra and Parashar's system is hosted on Netlify, providing secure
cloud infrastructure and HTTPS encryption, which safeguards user data and prevents
unauthorized access. Meanwhile, (Denis E. Yurochkin, 2021) highlight the role of

2
progressive web applications (PWA) in transforming websites into mobile-friendly
applications, ensuring seamless interaction across various devices.
While these implementations differ in technical execution, they share common goals
of improving financial literacy, streamlining expense management, and providing
users with intuitive tools to track and visualize their spending habits. The literature
underscores the growing demand for automated and secure expense-tracking solutions,
driven by advancements in AI, voice recognition, and cloud technologies. These
insights contribute to the foundation of the Expense Record System project, guiding
the integration of key features such as voice commands, data visualization, and OCR
for receipt scanning to enhance usability and efficiency.

1.5 DEVELOPMENT METHODOLOGY


The Waterfall Model is employed as the development methodology for this project.
This approach ensures a structured and systematic progression through five key
phases:
 Requirement Analysis: Identifying and defining functional and non-functional
system requirements.
 System Design: Structuring the database and defining system architecture, UI
design, and functionality.
 Implementation: Developing the backend using PHP and MySQL while
integrating the frontend with HTML, CSS, and JavaScript.
 Testing: Ensuring system functionality, security, and performance meet the
specified requirements.
 Deployment and Maintenance: Deploying the system on a web server and
providing continuous updates for security and usability improvements.

Figure 1.1 The Waterfall Model of SDLC

3
1.6 SCOPE AND LIMITATIONS
The Expense Management System is designed to provide individuals and small
businesses with a structured, efficient, and user-friendly platform for tracking and
managing their financial transactions. The system allows users to record income and
expenses, categorize transactions, set budget limits, and generate detailed financial
reports with graphical representations. Developed as a web-based application, it
ensures accessibility across different devices and browsers while maintaining a secure,
scalable, and responsive user experience. The system also supports multi-user
authentication, enabling individuals to manage their financial data securely. However,
despite its advantages, the system has certain limitations. It does not integrate with
external banking systems or financial APIs, requiring users to manually input their
transactions. Additionally, receipt scanning and OCR-based data extraction are not
currently implemented, limiting automation in data entry. The system relies on an
internet connection, making it unavailable for offline use. While it is optimized for
small businesses and personal finance tracking, it lacks enterprise-level financial
management features, such as tax calculations and multi-currency support. Future
enhancements may include mobile app development, AI-driven expense analysis, and
automated financial forecasting to further improve usability and efficiency.

1.7 REPORT ORGANIZATION


Chapter I: Introduction
This chapter provides an overview of the project, outlining the background, problem
statement, objectives, scope, and limitations. It also includes a detailed review of
related literature and existing systems to establish the relevance and foundation of the
proposed solution.

Chapter II: System Development Process


The System Development Process for this project involves three key phases: Analysis,
Design, and Implementation. In the Analysis phase, requirements were gathered,
feasibility was assessed, and object-oriented models were created to outline the
system behavior. The Design phase focused on developing user-friendly interfaces
and efficient database structures using ER and UML diagrams. Finally, in the
Implementation phase, the system was built using modern tools and technologies,
structured into functional modules, and rigorously tested to ensure performance and
reliability.

Chapter III: Conclusion and Recommendation


This chapter summarizes the outcomes of the project, discussing how the system
meets its intended objectives. It also provides suggestions for potential improvements
and future enhancements to extend the system’s functionality and usability.

4
References
This chapter includes a comprehensive list of sources referenced throughout the report,
such as journal articles, books, and online resources, formatted in APA style. It
ensures proper attribution of scholarly work and adherence to academic standards.
Any additional resources studied but not directly cited in the document can be
included in the bibliography section. Tools like Zotero can be used to manage
citations efficiently.

Appendices
The appendices include supplementary materials such as source code snippets,
screenshots of the system interface, sample outputs, and any other documentation
relevant to the understanding and replication of the project.

5
CHAPTER II: SYSTEM DEVELOPMENT PROCESS
2.1 ANALYSIS
The analysis phase of the project involves understanding the requirements, defining
the problem scope, and identifying the key components and technologies to be used.
In this expense management system, this project aims to simplify the expense
recording and tracking process and make it convenient for users.

2.1.1 Requirement Analysis


The Expense Management System is designed to provide an efficient and user-
friendly platform for tracking financial transactions. The system requirements are
categorized into functional requirements, which define the system’s essential features,
and non-functional requirements, which outline the performance and security
standards.

Functional Requirements
Functional requirements define the core operations of the system that are necessary
for managing expenses, user accounts, and reports. The key functional requirements
of the system are as follows:
1. User Authentication and Authorization: The system must allow users to register,
log in, and manage their accounts with different access levels (e.g., user and
admin).
2. Expense Entry and Management: Users should be able to add, edit, delete, and
categorize their expenses based on predefined or custom categories.
3. Transaction Search and Filtering: Users should be able to search for specific
transactions and filter them based on date, category, or amount for quick retrieval.
4. Multi-User Support: The system should allow multiple users to manage their
individual expense records securely.
5. Dashboard Overview: The system should provide a dashboard displaying a
summary of recent transactions, total income and total expenses.
6. Expense Categorization: Users should be able to select categories for their
transactions to ensure better organization and tracking.
7. Report Generation: The system must generate detailed expense reports and allow
users download the reports.

Non-Functional Requirements
Non-functional requirements define the performance, security, and usability standards
of the system. The key non-functional requirements are as follows:
1. System Performance: The system should provide a fast and responsive user
interface, ensuring that page loads and data retrieval take no longer than a few
seconds.
2. Data Integrity – Financial records should be accurately stored and updated
without data corruption or loss.

6
3. User-Friendly Interface – The system should have an intuitive design with easy
navigation, ensuring a seamless user experience for both technical and non-
technical users.
4. Security and Authentication – User data should be securely stored using
password hashing and role-based access controls to prevent unauthorized access.
5. Scalability – The system should be scalable to accommodate an increasing
number of users without significant performance degradation.

2.1.2 Feasibility Study


The Expense Recording System project is assessed to be technically, operationally,
economically, and schedule feasible.

Technical feasibility is ensured as the development team possesses expertise in web


application development, covering both frontend and backend technologies. The
system will utilize modern frameworks and tools, which guarantee scalability and
maintainability, while integration with financial APIs is achievable using the available
technology stack. Operational feasibility is highlighted by the system's capability to
streamline expense management, significantly reducing the time and errors associated
with manual tracking. The intuitive and user-friendly design is expected to drive user
adoption and regular usage. Automated features like real-time monitoring and
reminders will provide substantial operational benefits to users.

Economic feasibility is promising, given the justified development costs in light of


potential market demand and the system’s offered benefits. The system can be
monetized through subscription models, ensuring a sustainable revenue stream, while
users will experience reduced financial mismanagement and associated cost savings,
adding to the system’s value.

Schedule feasibility is supported by a well-defined project timeline, outlining specific


tasks such as requirements gathering, system design, development, testing,
deployment, and maintenance. The project aims to be completed within a 12-month
timeframe, with clear milestones and deliverables to ensure timely progress and
project completion.

2.1.3 Object-Oriented Modelling


To ensure modularity and reusability, the system follows an object-oriented approach.
This approach enhances system organization maintains a structured development
process.

Use Case Modeling


A Use-Case Diagram is developed to represent the interaction between users and the
system, including login, adding income and expenses and managing the records.

7
Figure 2.1: Use Case Diagram of Expense Management System

Table 2.1: Use Case Description of Expense Management System (Login)


Use-Case Identifier UC1- Login
Primary Actor Admin, User
Secondary Actor None
Description Allows users/admin to access the system
by entering valid credentials.

Precondition The user and admin must be registered


within the system.
Post Condition The actors get access to the system and
(Success Scenario) are redirected to the dashboard
Failure Scenario Incorrect credentials lead to login failure

Table 2.2: Use Case Description of Expense Management System (Signup)


Use-Case Identifier UC2- Signup
Primary Actor User

8
Secondary Actor None
Description The actor fills up the required
information and the information is stored
in the database.
Precondition User is not registered yet.
Post Condition User account is created and ready for
(Success Scenario) login.
Failure Scenario Incomplete or invalid details prevent
registration. Database is not updated.

Table 2.3: Use Case Description of Expense Management System (Add Budget)
Use-Case Identifier UC3- Add Budget
Primary Actor User
Secondary Actor None
Description Users can set a budget for expense
tracking.
Precondition User must be logged in.
Post Condition Budget is set and saved to the system.
(Success Scenario)
Failure Scenario Invalid budget amount prevents saving.

Table 2.4: Use Case Description of Expense Management System (Select


Category)
Use-Case Identifier UC4- Select Category
Primary Actor User
Secondary Actor None
Description Users select an expense category from a
list.

Precondition User must be logged in and must only


select the options added by the admin
Post Condition Selected category is applied to the
(Success Scenario) expense.
Failure Scenario No available category results in selection
failure.

Table 2.5: Use Case Description of Expense Management System (Add Income)
Use-Case Identifier UC5- Add Income
Primary Actor User
Secondary Actor None

9
Description The user should be able to add income.
Precondition To add the income the user should be
logged in to the system.
Post Condition The income details are stored in the
(Success Scenario) database.
Failure Scenario The income is not set and the database is
not updated.

Table 2.6: Use Case Description of Expense Management System (Add Expense)
Use-Case Identifier UC6- Add Expense
Primary Actor User
Secondary Actor None
Description The user should be able to add expense.
Precondition To add the expense the user should be
logged in to the system.
Post Condition The expense details are stored in the
(Success Scenario) database.
Failure Scenario The expense is not set and the database is
not updated.

Table 2.7: Use Case Description of Expense Management System (Add Date)
Use-Case Identifier UC7- Add Date
Primary Actor User
Secondary Actor None
Description Users attach a date to an expense or an
income.
Precondition To attach the date the user should be
logged in to the system.
Post Condition Date is saved with the expense or income
(Success Scenario) record.
Failure Scenario Invalid date format leads to error.

Table 2.8: Use Case Description of Expense Management System (Add Bill)
Use-Case Identifier UC7- Add Bill
Primary Actor User
Secondary Actor None
Description Users add a bill to the system.
Precondition To attach the bill the user should be

10
logged in to the system.
Post Condition Bill is recorded in the system.
(Success Scenario)
Failure Scenario Missing details or incorrect information
prevents bill addition.

Table 2.9: Use Case Description of Expense Management System (Add Image)
Use-Case Identifier UC9- Add Image (Extended from Add
Bill)
Primary Actor User
Secondary Actor None
Description Users can optionally add an image to a
bill.
Precondition Add Bill must be in progress.
Post Condition Image is attached to the bill.
(Success Scenario)
Failure Scenario Image upload fails due to unsupported
format.

Table 2.10: Use Case Description of Expense Management System (Request


Report)
Use-Case Identifier UC10- Request Report
Primary Actor User
Secondary Actor None
Description Users request a report of expenses over a
time period.
Precondition User must be logged in.
Post Condition Report is generated and displayed on the
(Success Scenario) user’s screen.
Failure Scenario No expenses result in an empty report.

Table 2.11: Use Case Description of Expense Management System (Manage


Profile)
Use-Case Identifier UC11- Manage Profile
Primary Actor User, Admin
Secondary Actor None
Description The actors can manage and update their
profile information.
Precondition The actors must be logged in.

11
Post Condition Profile is updated successfully.
(Success Scenario)
Failure Scenario Invalid details or missing fields prevent
updates.

Table 2.12: Use Case Description of Expense Management System


(Modify/Remove Income and Expense)
Use-Case Identifier UC12- Modify/ Remove Income and
Expense
Primary Actor User
Secondary Actor None
Description Users can edit or delete previously
recorded income and expenses.
Precondition Users must be logged in and have
recorded income or expense.
Post Condition Income and Expense is modified or
(Success Scenario) removed.
Failure Scenario Expense or Income not found or
modification error.

Table 2.13: Use Case Description of Expense Management System (Add


Category)
Use-Case Identifier UC13- Add Category
Primary Actor Admin
Secondary Actor None
Description Admin can add new expense categories.
Precondition Admin must be logged in.
Post Condition New category is added to the system.
(Success Scenario)
Failure Scenario Duplicate category or missing details
prevent addition.

Table 2.14: Use Case Description of Expense Management System (View


Category)
Use-Case Identifier UC14- View Category
Primary Actor User, Admin
Secondary Actor None
Description User and Admin can view all available
categories.

12
Precondition User and admin must be logged in.
Post Condition All listed categories are displayed.
(Success Scenario)
Failure Scenario No categories available results in an
empty list.

Table 2.15: Use Case Description of Expense Management System (View Report)
Use-Case Identifier UC15- View Report
Primary Actor Admin
Secondary Actor None
Description Admin views detailed reports of income
and expenditure.
Precondition Admin must be logged in.
Post Condition On request the report is displayed..
(Success Scenario)
Failure Scenario No data leads to an empty report.

Object Modelling
The class diagram and object diagram define the system’s objects, attributes, their
relationships and functionalities.

Figure 2.2: Class Diagram of Expense Management System

13
The class diagram of the Expense Management System represents the core structure
of the system by modeling the essential classes, their attributes, and the relationships
among them. The primary classes include User, Category, and Expense. The User
class contains attributes such as user_id, username, password, and role, which are
used for authentication and access control within the system. The Category class
manages the various types of expense categories and includes category_id and
category_name. The Expense class holds information related to financial transactions,
including expense_id, item, price, details, expense_date, category_id, added_on, and
added_by. There exists a one-to-many relationship between User and Expense each
user can record multiple expenses and between Category and Expense each category
can group multiple transactions. This diagram provides a blueprint for the system’s
database structure and supports a scalable and modular approach to development.

Figure 2.3: Object Diagram of Expense Management System

The object diagram illustrates a snapshot of the system’s data at a particular moment
during runtime by showcasing instances of the classes defined in the class diagram.
For example, an object of the User class may represent a user named "john_doe" with
the role of a standard user. A Category object may represent a category such as
"Food" with a unique identifier. An Expense object linked to these may represent a
transaction like "Lunch," with a price of "500," dated "2025-03-01," categorized
under "Food," and added by "john_doe." These object instances confirm the
relationships and interactions established in the class diagram. The object diagram is
especially useful for validating the design by providing a concrete view of how the
system's data is organized and utilized during execution.

2.2 DESIGN
The design phase transforms the system’s requirements and analysis into a structured
blueprint, ensuring a clear and efficient implementation. This chapter presents an
object-oriented design approach, refining analysis diagrams and introducing

14
additional diagrams such as the component diagram, deployment diagram, database
schema.
To provide a comprehensive system design, following diagrams are introduced,
detailing system components, deployment architecture, and database schema.

2.2.1 User Interface Design


This system features a well-structured and user-friendly interface designed to enhance
usability for both administrators and users. The interface is developed using modern
web technologies to ensure responsiveness, accessibility, and an intuitive user
experience.

Login Interface
The login interface provides a secure authentication system where users enter their
credentials to access their respective user or admin accounts. With a clean and simple
design, the login page ensures ease of access while maintaining security, promptly
flagging any errors if the information provided deviates from the specified
requirements. The login button is prominently displayed, and input fields for
username and password are clearly labeled.

Figure 2.4: Login Interface of Expense Management System

Admin Dashboard
The Admin Dashboard is tailored to provide full control over the system’s expense
management and user access. It features a category management section where
administrators can add, edit, or delete different expense categories. Each category is
displayed in a structured table with unique identification numbers and options for
editing or deleting entries. Furthermore, the admin panel enables monitoring of users.
Similar to the user dashboard, the admin interface includes a sidebar for quick
navigation, allowing administrators to switch between different functionalities

15
seamlessly. With a sleek and professional design, the admin dashboard enhances
efficiency and provides a comprehensive overview of the system’s data.

Figure 2.5: Admin Dashboard of Expense Management System

User Dashboard
The User Dashboard is designed to provide a seamless and intuitive experience for
users managing their expenses. Upon logging in, users are greeted with a visually
appealing interface that presents key financial insights at a glance. The dashboard
prominently displays expense summaries, including today's expenses, yesterday’s
expenses, weekly, monthly, and yearly expenses. The information is neatly arranged
in colorful cards that make it easy for users to quickly analyze their spending patterns.
Additionally, a sidebar navigation menu is provided, allowing users to efficiently
move between different sections, such as adding new expenses, viewing detailed
reports, and logging out. The clear layout and minimalist design ensure an efficient
and user-friendly experience.

Figure 2.6: User Dashboard of Expense Management System

Expense Report Page


The Expense Report page is designed to allow users to generate and view categorized
expense reports over a selected date range. At the top, users can easily specify a start
and end date using date pickers, and select a category from a dropdown menu, such as
“Wedding Expenses.” Upon clicking the “Submit” button, the system filters and
displays the relevant expense data. The report section below clearly outlines the
selected category and its associated cost, followed by a calculated total. Additional

16
options like “Reset” and “Download Data” are available for convenience. The clean
layout, intuitive controls, and straightforward data presentation ensure that users can
effortlessly track and analyze their financial activities over time.

Figure 2.7: Expense Report Page of Expense Management System

User Dashboard Overview


The Dashboard Overview offers users an immediate snapshot of their recent spending
activities through an array of colorful summary cards. Each card is labeled with a
specific time frame, including Today’s Expense, Yesterday’s Expense, This Week’s
Expense, This Month’s Expense, This Year’s Expense, and the Total Expense. The
values are dynamically updated and displayed prominently to help users quickly
assess their spending patterns. Each card also includes a “Details” link, guiding users
to more in-depth reports. The use of gradient backgrounds and a clean layout
contributes to a visually appealing and user-friendly experience, ensuring quick
access to key financial data at a glance.

Figure 2.8: User Dashboard of Expense Management System

Expense Report Page


The Detailed Expense Report Table provides a breakdown of expenses recorded
within a specific date range in this case, from 2025-03-06 to 2025-03-13. The report is
structured in a tabular format with columns for Category, Item, Expense Date, and
Price, making it easy to analyze spending behavior. For the selected period, users can
view entries such as “Dosa” and “Current” under the “Food” category, and “Flowers”

17
under “Wedding Expenses.” A total amount is calculated and displayed at the bottom
of the table. The format ensures clarity and transparency, helping users review
specific expense details and better manage their budgets.

Figure 2.9: Expense Report Page of Expense Management System

2.2.2 Object Oriented Design Models


Object Oriented Design Models typically involves identifying system requirements
and representing them through various UML diagrams such as sequence, activity,
component and deployment diagrams.

Deployment Diagram
A Deployment Diagram visually represents how software components are physically
distributed across different nodes (servers, devices). It helps in understanding how the
system is hosted, deployed, and interacts in a real-world environment. The
deployment structure consists of:
1. Web Server
 Device: Hosts the homepage on the web server.
 Role: Serves as the entry point for users accessing the system via a web
browser.
2. Application Server
 Device: Manages back-end processing.
 Components include User Module, Expense Tracker, Report Generator,
Admin Module.
3. Database Server (DB Server)
 Device: Store and manage data.
 Artifact: Database for storing user credentials, expenses, categories and
reports.
 Role: Centralized data storage and retrieval for all system transactions.
The system follows a distributed architecture, where requests from the web server are
processed by the application server, which then communicates with the database
server for data storage and retrieval.

18
Figure 2.10: Deployment Diagram of Expense Management System

Component Diagram
A Component Diagram represents the different components of the system and their
dependencies. The Expense Management System consists of the following
components:
1. User Interface Component: Handles user interactions and displays data. This
component also manages user login, registration, and user session handling.
2. Expense Management Component: Processes expense-related operations like
adding, updating, and deleting transactions.
3. Report Component: Generates reports based on financial transactions, date and
categories.
4. Database Component: Stores and retrieves data from MySQL.

Figure 2.11: Component Diagram of Expense Management System

19
Sequence Diagram
Sequence diagrams are dynamic modeling approaches used in object oriented based
projects. The sequence diagram is the communication between the system objects or
classes.

Figure 2.12: Sequence Diagram of Expense Management System

The Sequence Diagram illustrates the dynamic interaction within the Expense
Management System. The User initiates actions such as adding expenses and viewing
budget reports. The process begins from the Dashboard, where the user sends a
request to the Expense module to add a new expense. The Expense module interacts
with the Category component to retrieve or add categories, ensuring each expense is
properly categorized. Once a category is selected or added, the system processes the
expense and updates the database. If the user wishes to view their budget, the system
fetches and compiles relevant data through the Budget module, which in turn
communicates with the Database to retrieve necessary records. The system then
generates and presents a detailed budget report to the user. This sequence ensures
efficient communication between components such as Expense, Category, Budget,
and Database, providing the user with accurate tracking and reporting of their
financial activities. The diagram highlights the logical flow of requests and responses,
ensuring data integrity and smooth user experience in managing personal expenses.

State Diagram
A state diagram, also known as a state machine diagram or state chart diagram, is a
visual representation of the possible states an object or system can be in and the
transitions between those dstates, triggered by events or conditions.

20
Figure 2.13: State Diagram of Expense Management System

The state diagram of the Expense Management System visually illustrates the flow of
user interaction through various system states. It begins at the login screen, where the
user authenticates and is directed to the dashboard. From there, the system waits for
the user's action, offering options such as adding income or expenses, tracking
expenses, or generating reports. Each option leads to a specific state—inputting data
in the income/expense state, viewing transactions in the expense tracker, or accessing
summaries in the report generator. All these paths ultimately converge at the process
transaction state, where data is handled and stored, concluding with the receive details
state, which signifies the successful completion of the process.

Activity Diagram
Activity diagrams are graphical representations of workflows of stepwise activities
which represents the flow of one activity to another activity.
In the given activity diagram, the process begins with an initial interaction. The user
logs in to the system according to their role, whether that is user or an admin. The
admin can view details regarding the categories and the users in the system. The
admin can accordingly manage the users and categories by performing activities such
as adding, updating/modifying or deleting. The user in the system can also perform
various different actions such as viewing, adding or modifying expenses, viewing and
downloading various filtered reports.

21
Figure 2.14: Activity Diagram of Expense Management System

This activity diagram illustrates the workflow of an Expense Management System,


showing how different users (Admin and User) interact with the system based on their
roles. The process starts with a register/login step, followed by a conditional check to
determine if the user is an admin or a regular user. Admins can view details and
manage categories and users. Within these management tasks, they can add, update,
or delete categories and users, based on further conditions, ultimately leading to a
result display. Regular users, on the other hand, can perform actions such as viewing
expenses, viewing reports, downloading reports, modifying expenses, and accessing
the dashboard. Their session ends with a logout. This diagram effectively maps out
both user and admin flows, highlighting different system functionalities accessible
based on user roles.

Database Schema
The database schema represents the structure of the MySQL database, including
tables, attributes, primary key, foreign keys and their relationships. Key tables include:

22
Users Table: The User Table stores information about users who interact with the
system. Each user is uniquely identified by a user_id, which serves as the primary key.
The table also contains the username (used for login credentials), password for
authentication which has been hashed using the hash function, and role, which
differentiates between a regular user and an administrator. The role field determines
the level of access within the system, ensuring security and proper authorization for
managing expenses and categories.

Expense Table: The Expenses Table is crucial for tracking and managing various
expenditures within the system. This table contains fields such as:
 expense_id: A unique identifier for each expense entry.
 item: A description of the purchased item or service.
 price: The amount spent on the item.
 details: Additional information regarding the expense.
 expense_date: The date the expense was incurred.
 category_id: A reference to the Category Table, linking each expense to a specific
category.
 added_on: Timestamp indicating when the expense was recorded.
 added_by: The user who added the expense.

Category Table: The Category Table stores details about different expense categories.
The fields in this table include:
 category_id: A unique identifier for each category.
 category_name: The name of the expense category (e.g., Food, Travel, School
Fees, etc.).

2.3 IMPLEMENTATION
The implementation of the expense management system involves integrating various
components, including user authentication, expense management and report
generation. The system consists of both user and admin interfaces, where customers
can browse various expenses, add them to their expenses, and collect reports, while
the admin oversees users, expenses, and reports. The implementation section of the
Expense Management System report outlines the practical realization of the system’s
design using modern web development technologies. It details how the frontend was
developed using HTML, CSS, and JavaScript to create a responsive and user-friendly
interface, while the backend was implemented using PHP for server-side scripting and
MySQL for database management. The section describes how different components
such as user authentication, expense entry, category management, and report
generation were coded and integrated to ensure seamless functionality. It also covers
the tools and platforms used during development, including Visual Studio Code for
coding, [Link] for diagramming, and Excel for handling report data. The
implementation section translates the conceptual design into a working system and
demonstrates how the core features were developed to meet the project's objectives.

23
2.3.1 Tools and Techniques Used
The Expense Management System is developed using the modern web technologies.
The selection of tools and technologies is crucial in ensuring that the system is both
functional and efficient. The following technologies were chosen based on their
suitabality for different parts of the project:

Frontend Development: HTML, CSS and JavaScript


 HTML (HyperText Markup Language): HTML is the backbone of major web
pages providing the structure and content using elements like heading, paragraphs,
images and forms. It defines the layout but does not control styling or
interactivity.
 CSS (Cascading Style Sheets): CSS enhances the appearance of HTML elements
by applying styles such as colors, fonts, layouts and animations. It enables
responsive design and ensures visually appealing user interface across different
devices.
 JavaScript: JavaScript adds interactivity and dynamic behavior to web pages,
allowing real time updates, form validation and user interactions. It works
alongside HTML and CSS.

Back-end Development: PHP and MySQL


 PHP (Hypertext Preprocessor): PHP is a server-side scripting language used for
building dynamic web applications. In this project, PHP handles user
authentication, form submissions and communication between frontend and back-
end.
 MySQL: MySQL is a relational database management system developed by
Oracle that is based on Structured Query Language (SQL), used to store user data,
categories and expense related data. It ensures efficient data management,
allowing the system to retrieve, update and store information securely for smooth
operation.

Development Tools: VS Code, [Link], Excel


 VS Code (Visual Studio Code): Microsoft Visual Studio Code is an Integrated
Development Environment (IDE) used to develop console and Graphical User
Interface Applications along with windows form applications, websites, web
application and web services. It is a lightweight yet powerful code editor used for
writing and managing PHP and JavaScript files. It offers extensions and
debugging tools to make development easier and efficient.
 [Link]: [Link] us an outline diagramming tool used for creating flowcharts,
ER diagrams, system architectures, and other visual representations. It helps in
designing and documenting project workflows, making complex systems easier to
understand.

24
 Excel: Microsoft Excel is a spreadsheet software used for organizing and
analyzing data. It supports various formats, including csv files which can be used
in this project to download expense related reports for analysis.

Database Management System


The Database Management System (DBMS) is a crucial component of the
implementation of the project, providing a structured and efficient way to store,
manage, and retrieve data. For this system, MySQL has been chosen as the primary
DBMS due to its reliability, scalability, and compatibility with web-based
applications. The database is structured into three primary tables: the User Table,
Expenses Table, and Category Table. These tables work in tandem to ensure smooth
data management and retrieval, which is essential for the seamless operation of the
application.

2.3.2 Module Description


The Expense Management System is composed of several integrated modules, each
designed to perform specific functions that contribute to the overall operation of the
system.

The User Authentication Module ensures secure access by allowing users to register,
log in, and manage their credentials. It includes features such as password hashing
and role-based access control to differentiate between regular users and administrators.

The Expense Module enables users to add, update, delete, and view their expenses.
Each expense entry includes fields like item name, price, date, category, and
additional details, ensuring comprehensive tracking of financial transactions.

The Category Module manages the classification of expenses by allowing


administrators to create, modify, or remove predefined expense categories. These
categories help users organize their financial records for better clarity and analysis.

The Report Module provides functionality to generate detailed expense reports based
on selected filters such as date range or category. It allows users to view summaries
and download reports in tabular format, facilitating data-driven decision-making.

The Admin Module grants privileged users access to manage system-wide settings,
such as user accounts and category lists. It allows administrators to view registered
users, assign roles, and oversee category configurations.

The Dashboard Module offers a centralized visual summary of key financial metrics,
such as today’s, weekly, and monthly expenses. This module improves usability by
providing a quick overview of spending patterns through colorful cards and charts.

25
Finally, the User Module is responsible for handling user-specific operations such as
profile management, password updates, and personalized expense views. Together,
these modules work cohesively to deliver a secure, efficient, and intuitive platform for
personal and small business expense management.

2.3.3 Testing
The techniques used for testing this project are Unit Testing and Integration Testing.
These testing techniques were used in order to ensure a seamless system.
1. Unit Testing: Each module such as user login, admin login, adding expenses and
categories, modifying or deleting users in the project is tested independently.
2. Integration Testing: After each individual module is tested independently, the
modules are integrated into a system and then tested again for seamless integration
between modules.

Table 2.16: Test Case of Admin Login


Unit Effected Input Data Actual Result Expected Remarks
Result
Admin Login Username=admin Admin is Admin is Pass
Password=admin123 logged into logged into the
the system. system.

Table 2.17: Test Case of Add Category


Unit Effected Input Data Actual Result Expected Result Remarks
Add Category Category Name= Category is Category is Pass
Test added. added.

Table 2.18: Test Case of Add User


Unit Effected Input Data Actual Result Expected Result Remarks
Add User Username=user New User is New User is Pass
Password=user@ added. added.

Table 2.19: Test Case of User Login


Unit Effected Input Data Actual Result Expected Remarks
Result
User Login Username=user User is logged User is logged Pass
Password=user@ into the into the system.
system.

26
Table 2.20: Test Case of Add Expense
Unit Effected Input Data Actual Result Expected Result Remarks
Add Expense Category=Test New Expense New Expense is Pass
Item=Shoes is added. added.
Price=5000
Details=test
Expense
Date=01/03/2025

Table 2.21: Test Case of Add Expense (Negative Pricing)


Unit Effected Input Data Actual Result Expected Result Remarks
Add Expense Category=Test Failed to add Failed to add Pass
Item=Shoes expense as expense.
Price=-5000 price cannot
Details=test be negative.
Expense
Date=01/03/2025

Table 2.22: Test Case of Viewing Report


Unit Input Data Actual Result Expected Remarks
Effected Result
View Report From=01/03/2025 Expense report is Expense report Pass
To=13/03/2025 displayed from is displayed
given date to from given date
given date. to given date.

Table 2.23: Test Case of Downloading Report


Unit Input Data Actual Result Expected Remarks
Effected Result
Download From=01/03/2025 Expense report is Expense report Pass
Report To=13/03/2025 downloaded from is downloaded
given date to from given date
given date. to given date.

2.4 REPORTS ANALYTICS


In this section, a Power BI dashboard has been developed to visually represent the
expense data recorded in the Expense Management System. This dashboard helps in
analyzing spending behavior over time, across different categories, and for specific
items. It provides clear insights into where the user’s money is going, and supports
better financial decision-making.

27
Figure 2.15: Power BI Dashboard of Expense Management System

The dashboard showcases various interactive visualizations of one report. The bar
chart on the left displays the total amount spent per category, with School Fees being
the highest. The chart on the right breaks down expenses by month and item,
revealing that April had the highest expenditure mainly due to Seventh Semester Fees.
The pie chart presents the distribution of item count across categories, highlighting
that Food and School Fees had the most frequent transactions. A filter section on the
top and right allows users to drill down data by category, item, and date range. The
table at the bottom lists individual expense items along with their associated details
such as category, date, and price. Finally, the card on the right shows the total sum of
all expenses, which is NPR 79,000 in this filtered view.

28
CHAPTER III: CONCLUSION AND
RECOMMENDATION
3.1 SUMMARY
This project focused on the design and development of a web-based Expense
Management System aimed at improving how individuals and small businesses record,
manage, and analyze their financial transactions. The system was built using PHP and
MySQL for the backend, and HTML, CSS, and JavaScript for the frontend. Key
features include secure user authentication, categorization of expenses, report
generation, and role-based access for administrators and users. The system supports
real-time tracking of expenses through a responsive dashboard, offering users
valuable insights into their spending habits. Throughout the development process, the
Waterfall Model was followed to ensure a systematic approach from requirements
gathering to implementation and testing.

3.2 CONCLUSION
The implementation of the Expense Management System successfully addresses the
limitations of traditional manual expense tracking by offering a structured, efficient,
and user-friendly digital platform. The system allows users to log their income and
expenses, categorize transactions, and generate reports that aid in financial planning
and control. Secure login mechanisms ensure that data is protected and accessible
only to authorized users. Administrators have control over user accounts and
categories, making the system manageable and scalable. By integrating modern web
technologies and a relational database, the system achieves its goal of simplifying
financial management while maintaining data accuracy and accessibility.

3.3 RECOMMENDATION
To enhance the system's usability and performance in future versions, several
improvements are recommended. First, integrating banking APIs and payment
gateways could automate the process of importing transactions, reducing manual
entry and human error. Secondly, implementing OCR (Optical Character Recognition)
for scanning and extracting data from physical receipts would further streamline
expense recording. Development of a mobile application version would increase
accessibility, allowing users to manage their finances on the go. Additional features
like AI-based expense analysis, budget forecasting, multi-currency support, tax
calculation, and offline functionality with data synchronization are also suggested to
expand the system's applicability to a wider user base. These enhancements would
transform the Expense Management System into a more intelligent, automated, and
globally accessible financial management tool.

29
REFERENCES

Denis E. Yurochkin, A. A. (2021). Development of an Application for


Expense Accounting. Conference of Russian Young Researchers in
Electrical and Electronic Engineering, 753-757.

M. Vanitha, A. K. (2020). Expense Management System. International


Journal of Advanced Networking and Applications, 208-211.

Shivam Mehra, P. P. (2021). Daily Expense Tracker. International Journal of


Research in Engineering and Science, 70-73.

30
APPENDICES
Code Listings
Login System
This code snippet demonstrates how users authenticate by checking their credentials
against the database.

Figure: Login System of Expense Management System

31
Expense Entry Form
This section includes a simple HTML form and a JavaScript function for validating
user input before submitting an expense entry.

Figure: Expense Form of Expense Management System

Category Management Code


This section includes a simple PHP code and SQL for managing the categories in the
Expense Management System.

Figure: Category Management of Expense Management System

32
User Management Code
This section includes a simple PHP code and SQL for managing the users in the
Expense Management System.

Figure: User Management of Expense Management System

33
Download Report Code
This section includes a simple PHP code and SQL to allow users to download their
expense report for a set or predefined filters set in the reports section of the Expense
Management System.

Figure: Download Report of Expense Management System

34
Screenshots of the System

Figure: Login

Figure: Category Page

Figure: Add Category

35
Figure: Add User

Figure: Users of System

Figure: User Dashboard

Figure: Add Expense

36
Figure: Expense Page

Figure: Dashboard Details

Figure: Download Report

37

You might also like