Dir Ex1-5
Dir Ex1-5
Aim:
To select a project, define the process/steps to driving them to completion for Personal
Finance Tracker project.
The motivation behind selecting the Personal Finance Tracker project stems from
the growing importance of financial literacy and budget management in everyday life.
Many individuals struggle to maintain consistent oversight of their income, expenses, and
savings goals, leading to poor financial decisions and unplanned expenditures. This project
addresses that gap by providing a simple yet effective tool for personal financial
management.
This project not only demonstrates core data handling and visualization techniques but also
highlights responsible software development practices by focusing on user needs and
practical problem-solving. In essence, it combines technical learning with real-world utility,
making it an ideal choice for personal, academic, or portfolio-building purposes.
2. Problem Identification
In today’s fast-paced digital world, individuals often face challenges when it comes to
managing their personal finances effectively. While various apps and software exist for
1
financial tracking, many are either too complex, require subscriptions, or lack customization
to suit individual needs. As a result, users may:
Additionally, many users prefer lightweight, offline solutions that don’t rely on cloud
connectivity or external accounts. For those who are new to personal finance management, a
simple yet functional tool is essential for cultivating disciplined spending habits and
achieving financial goals.
This project directly addresses these needs by providing a minimal, functional, and
effective solution using accessible technologies like Python, SQLite, and Matplotlib.
3. Objective Definition
2
Generating visual reports using charts for better understanding of spending
patterns
Encouraging individual responsibility in financial planning
4. Requirement Gathering
Functional Requirements:
Non-Functional Requirements:
5. Technology Selection
Technology Purpose
3
6. Design and Architecture
Separation of Concerns
The logic is clearly separated into components:
7. Implementation
4
The application is implemented using Python’s modular approach.
Key components include:
Manual Testing:
Test Cases:
Presentation:
5
Optionally, integrate with tools like Streamlit for UI-based demo in future
Deployment:
Result:
6
Thus to select a project, define the process/steps to driving them to completion for
Personal Finance Tracker project was successfully completed.
Aim:
To choose an existing or new project with requirement and objective for Personal
Finance Tracker project.
Furthermore, these applications often have complex user interfaces and may include features
that are unnecessary for users with simple tracking needs. Students, beginners, or users from
non-technical backgrounds may find them overwhelming or inaccessible. Moreover, most
existing platforms do not support offline usage and may lack transparency in how data is used
or visualized.
To address these limitations, the proposed system titled “Personal Finance Tracker” is
developed as a lightweight, offline, and open-source command-line application that allows
users to track their financial activities locally and privately. This application uses Python as
the core language, SQLite for local data storage, and Matplotlib for visualizing financial
insights. It focuses on simplicity, data privacy, and educational value, especially for students
and individuals who want to build healthy financial habits while learning technical skills. The
tracker supports features like income/expense entry, savings goal management, and spending
visualizations, all in an intuitive and beginner-friendly environment.
7
Requirement of the Project
The Personal Finance Tracker aims to provide a secure, accessible, and easy-to-use tool
that empowers users to manage their income, expenses, and financial goals. The key
requirements for this project include:
The entire project must be lightweight, run entirely offline, and offer a balance between
functionality and simplicity, without relying on external cloud-based systems or third-party
logins
Objective
The main objective of the “Personal Finance Tracker” project is to design and
develop a simple, secure, and user-friendly financial tracking system that enables users to
take control of their money by keeping a clear record of their income, expenses, and savings
goals.
8
Many people struggle to manage their finances due to a lack of awareness, organization, or
access to intuitive tools. This tracker addresses that issue by offering a transparent and
educational platform that emphasizes financial literacy through practical usage.
Through this project, users—especially students and beginners—can gain real-time insights
into their financial habits and adopt responsible money management practices. The offline
nature of the tool ensures data privacy, while its open-source model encourages further
development and learning in Python, databases, and data visualization.
Result:
9
Thus to choose an existing or new project with requirement and objective for
Personal Finance Tracker project was successfully completed.
DATE:
Aim:
To collect a relevant information for Personal Finance Tracker project.
Once the Personal Finance Tracker project has been finalized, it is crucial to gather
all the relevant technical, functional, and domain-specific information required to design and
implement the system effectively. The success of any project, especially one dealing with
finance tracking and data visualization, depends on how well the requirements are
understood, researched, and analyzed. For the Personal Finance Tracker system, this step
involves studying existing financial tools, understanding user needs, reviewing technologies,
and ensuring data privacy and security.
Analyzed popular finance tools like Mint and YNAB to understand their features
and limitations, especially regarding cost and privacy concerns.
Identified the need for a lightweight, offline, and open-source alternative, which is
both accessible and free from subscription-based models.
10
Data Visualization
Chose SQLite for its lightweight, offline capabilities, ensuring secure local
storage for financial data.
Used Flask as the backend framework to manage the application’s routing and
logic, ensuring a simple, effective system structure.
Ensured that all financial data is stored locally and not in the cloud, prioritizing
user privacy and data protection.
Followed GDPR guidelines to ensure compliance with data privacy regulations,
offering ethical data handling practices.
Offline Functionality
Researched offline data management strategies to allow users to track their finances without
the need for an internet connection.
11
Ensured that all features, including data input, saving goals, and visualizations,
function seamlessly without online dependencies.
Built the system with a modular structure to allow easy future updates, such as
adding budgeting tools or recurring expense tracking.
Focused on flexibility to accommodate user needs and potential scalability for
future development, including multi-user support.
Chose the MIT License to ensure the project remains open-source, enabling free
use, modification, and distribution by others.
Planned to host the code on GitHub, allowing collaboration, contributions, and
development by the open-source community.
Result:
By collecting the relevant information at this stage, the Personal Finance Tracker project is
positioned for successful design and implementation. The research ensures that the system meets user
needs for privacy, simplicity, and educational value, while also aligning with best practices in
financial data management, budgeting, and visualization. With a well-informed understanding of user
12
needs, security considerations, and effective technologies, the project is now ready to move forward
with detailed design and development phases.
DATE:
Aim:
To include PII information related to GDPR for Personal Finance Tracker project.
What is PII?
Personally Identifiable Information (PII) refers to any information that could be used to
identify an individual. Common PII elements may include:
Full Name
Address
Bank account details
Payment methods
Transaction history
Though the Personal Finance Tracker does not directly collect PII like email or phone
numbers, it still handles sensitive financial data that must be safeguarded according to
privacy standards.
13
How GDPR Applies to This Project
The General Data Protection Regulation (GDPR) is an EU law that mandates how
personal data should be handled by organizations, ensuring the privacy and security of
individuals' data. While the Personal Finance Tracker is a local, offline application and not
commercial in nature, it is still essential to follow GDPR principles to maintain ethical
standards and build user trust.
To ensure user privacy and compliance with PII protection standards, the Personal
Finance Tracker will incorporate the following technical and policy-level decisions:
14
1. Offline Storage: All financial data is stored locally on the user’s device using
SQLite, and no data is transmitted over the internet, thus minimizing exposure to
potential data breaches.
2. No Data Retention: As there is no server-side storage, data is not retained
permanently. Users can choose to delete their data at any time, ensuring full
control over their financial records.
3. Transparency on Data Usage: Although the application doesn’t require explicit
consent for processing, users are provided with clear information on how their
data is used for local tracking and visualization purposes.
4. Sensitive Data Handling: The system avoids storing or using highly sensitive
financial data (such as bank account numbers or payment methods). The app
focuses on income, expenses, and goals, without storing or transmitting sensitive
financial identifiers.
5. Security of Local Data: Financial data stored on the user’s device will be
encrypted to protect it from unauthorized access. The system will also provide an
option for users to create a password or PIN to further protect their data.
6. User Control and Data Deletion: Users have the ability to delete their financial
records anytime from the local database, offering them full control over their data.
15
Result:
The Personal Finance Tracker prioritizes user privacy by operating entirely offline,
storing data locally on the user’s device, and avoiding the collection of sensitive PII.
Following GDPR principles, the project ensures ethical data management, security, and
transparency. This focus on privacy and data security strengthens user trust and encourages
responsible financial tracking without compromising personal information.
DATE:
Aim:
A working outline is critical for ensuring that the Personal Finance Tracker project
progresses smoothly, remains well-organized, and achieves its goals on time. It serves as a
roadmap, guiding the development from concept through deployment, and keeping the team
focused on each phase of the project. The working outline for the Personal Finance Tracker
covers all major phases — planning, research, design, development, testing, deployment, and
documentation. Each phase is aligned with specific deliverables to ensure the project's
objectives are met efficiently.
16
2. Technology Stack Finalization
o Frontend: HTML, CSS, Bootstrap (for a responsive user interface)
o Backend: Python (for handling user inputs and financial data management)
o Database: SQLite (for storing user financial records, transactions, and goals)
o Visualization: Matplotlib (for generating charts and graphs to visualize
financial trends)
o Additional Libraries: NumPy (for calculations and financial analytics), Flask
(for backend routing and web integration)
17
o Generate visualizations: Use Matplotlib to create charts and graphs showing
income vs. expenses, monthly spending trends, and savings progress.
o Interactive dashboard: Present the financial summary in a clean, user-friendly
interface with easily interpretable visuals.
9. Final Deployment
o Deploy the web application: Host the platform on a local server or on cloud
platforms like Heroku or Render for easy access.
o Ensure compatibility: Ensure the system works across multiple devices and
browsers to provide a consistent user experience.
18
Code structure: Include a breakdown of the project’s codebase, with
explanations for key sections of the code.
User guide and contribution guidelines: Since it’s an open-source project,
provide instructions for other developers to contribute to the project or adapt it
for their needs.
Final Deliverables
The Working Outline for the Personal Finance Tracker project provides a
comprehensive roadmap for the development and deployment of the application, which will
help users efficiently manage their finances. The outline begins with identifying the problems
faced by users and gathering the necessary requirements, followed by the selection of an
appropriate technology stack, including Python (Flask) for the backend and SQLite for data
storage. Key modules include income and expense tracking, savings goal management, data
visualization, and security measures to protect user privacy. The system will include features
like user registration, secure authentication, and financial data analysis with visual reports.
Testing will be carried out at various stages, ensuring all components work seamlessly.
Finally, the application will be deployed on cloud platforms like Heroku, and the project will
be documented with detailed reports and user guides. The project will deliver a fully
functional, secure, and user-friendly finance management tool, alongside well-documented
code and project reports.
19
Result:
A clear working outline was developed to guide the Personal Finance Tracker from
planning to development. Each phase ensures the project stays organized functional and
aligned with user needs.
EX.NO:6
Identify the Targeted client to satisfy their needs.
DATE:
Aim:
To identify the targeted client to satisfy their needs for Personal Finance Tracker
Project.
These users are often handling their own finances for the first time, managing
limited incomes from part-time jobs or allowances.
The Personal Finance Tracker helps them categorize expenses, set basic budgets,
and visualize where their money goes — fostering early financial discipline.
20
3.Freelancers and Gig Workers
Families need to monitor multiple categories like groceries, utilities, and kids'
education.
The app supports multiple categories and shows visual breakdowns for better
family financial planning.
Seniors often rely on fixed pensions and require a simple way to track their
spending and medical expenses.
The app’s clean interface and clear summaries make it easy for them to monitor
essential costs and stay within budget.
Advisors may use the tracker to help clients understand spending habits and
identify areas for improvement.
In future versions, anonymized reporting and client-specific dashboards can
support basic advisory services.
21
Custom Categorization: Users can label and sort their expenses, helping tailor
the app to personal lifestyles.
Visual Budgeting: Graphs and charts show monthly trends, helping clients
quickly understand where money is spent.
Goal Tracking: Users can define savings goals and measure progress, which is
especially useful for students and entry-level earners.
22
Result:
By clearly identifying and addressing the varied needs of its users — from students and
gig workers to families and seniors — the Personal Finance Tracker stands out as a practical,
educational, and inclusive financial tool. It empowers users with actionable insights,
encourages budgeting discipline, and promotes responsible personal finance management for
people at all stages of life.
EX.NO:7
Explore the competitor features providing in the same
DATE: domain to enhance further
Aim:
To explore the competitor features providing in the same domain to enhance further for
Personal Finance Tracker project.
23
2. YNAB (You Need a Budget)
3. PocketGuard
4. Goodbudget
5. Spendee
24
Feature Competitors Proposed Personal Finance Tracker
Savings Goal Tracking Limited or paid ✔ Core feature, available for all users
Reports & Graphs Yes (some paid) ✔ Free, clear visualizations with Matplotlib
Open Source ❌ Mostly commercial ✔ 100% open source and user editable
Offline and Privacy-Centric: No user login or data sync needed. All data stays
local, addressing privacy concerns.
Open Source and Educational: A great tool for students learning to manage
finances or developers looking to contribute to FOSS projects.
Custom Expense Categories: Tailored to individual lifestyles (e.g., “College
Supplies,” “Freelance Tools,” “Groceries”).
Command-Line Simplicity: A lightweight app ideal for terminal users and those
who prefer minimal interfaces.
Visual Reports: Monthly pie charts and line graphs for income/expense
comparison using Matplotlib.
Goal Tracking Feature: Allows users to define savings goals and monitor progress
over time.
Extensible Architecture: Can easily be extended to support GUI, mobile, or
online dashboards in the future.
25
Result:
The analysis of leading tools like Mint, YNAB, and Goodbudget reveals that while
these platforms offer robust features, they often come with trade-offs — like requiring
sensitive data sharing, being subscription-based, or offering overly complex setups for new
users. The Personal Finance Tracker fills this gap by offering a free, open-source, offline,
beginner-friendly solution that values privacy and simplicity. It empowers users to take
control of their finances with clear insights, practical tools, and complete freedom over their
data — making it ideal for students, freelancers, and everyday individuals seeking financial
clarity without complexity.
26