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

Dbms Second Review

The document outlines a project for a Banking Account Management System developed by students at SRM Institute of Science and Technology, focusing on digital banking functionalities such as account management, transactions, and financial tracking. Utilizing technologies like Node.js, Express.js, and MySQL, the system aims to enhance efficiency, security, and user accessibility compared to traditional banking methods. The project serves as an educational tool for developers and students while also being scalable for future enhancements and applications in fintech.

Uploaded by

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

Dbms Second Review

The document outlines a project for a Banking Account Management System developed by students at SRM Institute of Science and Technology, focusing on digital banking functionalities such as account management, transactions, and financial tracking. Utilizing technologies like Node.js, Express.js, and MySQL, the system aims to enhance efficiency, security, and user accessibility compared to traditional banking methods. The project serves as an educational tool for developers and students while also being scalable for future enhancements and applications in fintech.

Uploaded by

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

SRM INSTITUTE OF SCIENCE AND TECHNOLOGY

Ramapuram, Chennai – 600 089


SCHOOL OF COMPUTER SCIENCE AND ENGINEERING
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING

21CSC205P-Bank Account management system

BATCH NUMBER :6

Team Members Supervisor


Rishabh Singh ( RA2311003020809) NAME:A.Vadivelu
Vigneshwar R ( RA2311003020811 )

3/20/2025 Slide Number


Agenda
• Abstract
• Problem Statement
• Scope of the Project
• Novel Idea
• Objective
• Tools to be used
• Existing and Proposed System
• Block Diagram
• Architecture Diagram
• ER Diagram
• Module List
• Module Description
• Code Implementation
• Output
• Outcome of the Project
• Application
• References
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
Introduction
• The banking industry is one of the most critical sectors in the global economy,
providing financial services such as money transactions, deposits,
withdrawals, loans, and investments. With the advancement of technology,
traditional banking systems have evolved into digital banking solutions,
allowing users to manage their accounts from anywhere in the world. It
enables users to create accounts, perform transactions, and track their
financial history in a simple and efficient manner. The system is built
using:Node.js for backend processing, ensuring fast and asynchronous
handling of banking operations.Express.js, a lightweight framework for
building APIs and handling HTTP requests.MySQL, a powerful relational
database management system used for securely storing user data and
financial transactions.HTML, CSS, and JavaScript for frontend development,
ensuring a smooth and interactive user experience.this system focuses on
core banking functionalities, making it ideal for learning, prototyping, and
small-scale financial applications.

DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING


ABSTRACT
• The Banking Account Management System is a web-based platform that
simulates basic banking functionalities, including account creation, deposits,
withdrawals, and transaction history tracking.This project is developed using
Node.js, Express.js, MySQL, HTML, CSS, and JavaScript, making it a modern
and scalable web application. The system follows a client-server architecture,
where the frontend interacts with the backend via RESTful APIs..Key features of
the project include:User-friendly account management: Users can create
accounts, view their balance, and track their financial history in a structured
manner.Seamless deposit and withdrawal operations: Transactions are recorded
in the MySQL database, ensuring reliability and data integrity.Database-driven
architecture: The system uses MySQL to store user details and financial
transactions, ensuring fast query performance and secure data
storage.Scalability and extensibility: By implementing this project, developers can
gain hands-on experience in backend development, API creation, database
handling, and financial software development.

DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING


Problem Statement
• Problem Statement for Banking Account Management SystemIn traditional
banking systems, account management and transaction processing are often
time-consuming, inefficient, and prone to errors. Customers need to visit
physical bank branches for basic operations like balance inquiries, deposits,
and withdrawals, leading to delays and inconvenience. Additionally, manual
record-keeping increases the risk of human errors and security vulnerabilities.
The lack of a centralized, digital banking account management system further
limits accessibility, making it difficult for users to track their financial activities
in real-time. Fraudulent transactions and unauthorized access also pose a
significant threat due to weak authentication mechanisms in traditional
systems. To address these challenges, this project aims to develop a web-
based Banking Account Management System that allows users to seamlessly
manage their accounts, perform secure transactions, and access real-time
financial data. The system will integrate a secure database, user-friendly
interface, and robust transaction processing mechanism to enhance
efficiency, security, and accessibility for customers.
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
Scope Of Project
• Scope - Account management, transaction processing, financial tracking, and
database management- Extendable for commercial, educational, and
research purposesTechnical Features- Node.js, Express.js, HTML, CSS,
JavaScript, REST API, PostgreSQLFuture Enhancements- Authentication and
authorization- Encryption and security measures- Multi-user support- Loan
and credit management- AI-driven financial analytics- Integration with
payment gatewaysMotivation ,Fostering Education and Innovation: Providing
a practical learning platform for developers and students- Advancing Financial
Inclusion: Enhancing security, accessibility, and efficiency in banking services.
• Motivation - Empowering Digital Transformation: Meeting the growing
demand for online banking solutions- Fostering Education and Innovation:
Providing a practical learning platform for developers and students-
Advancing Financial Inclusion: Enhancing security, accessibility, and
efficiency in banking services .

DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING


Novel Idea
• 1. Separation of Concerns – Modular Architecture Unlike monolithic
banking applications that have tightly integrated frontend and backend
components, this system follows a modular architecture, ensuring a clear
separation of concerns:The frontend (HTML, CSS, JavaScript) is
independent, allowing UI improvements without affecting backend
operations.The backend (Node.js + Express.js) acts as an API server, making
the system scalable and easy to integrate with third-party applications.This
decoupled structure allows businesses and developers to customize and
expand the system efficiently without affecting core functionalities.
• 2. API-First Design – Future-Ready for Fintech Integration The system is
designed with an API-first approach, meaning all banking functionalities (such
as account management, transactions, and balance checks) are exposed
through a RESTful API. This enables:Seamless integration with mobile
banking apps, digital wallets, and third-party fintech services.Cross-platform
accessibility, allowing the banking system to work with different clients
(mobile, web, and even IoT devices).
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
Objective
• The Banking Account Management System is designed with several
objectives in mind, focusing on efficiency, reliability, and extensibility. The key
goals of the project are:
• 1. To develop an interactive and user-friendly banking system that allows
users to create and manage accounts easily.
• 2. To implement core banking functionalities, including deposits, withdrawals,
and transaction history tracking.
• 3. To offer an intuitive user interface, ensuring that even non-technical users
can navigate the system effortlessly.
• 4. To enable structured financial record-keeping, allowing users to track their
transactions over time.
• 5. To serve as an educational project, helping students and developers
understand the concepts of full-stack web development and database
optimization.
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
Tools to be used

To develop a secure, efficient, and user-friendly Banking Management System,


various tools and technologies will be utilized for frontend development,
backend processing, database management, security, and deployment.
• Tools for Backend: Node.js with Express.js
• Frontend: HTML, CSS, JavaScript
• Database: MySQL
• Development Environment: Visual Studio Code (VS Code) / Arsion any text
editor
• Version Control: Git & GitHubAPI
• Testing: Postman API

DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING


Existing System
• Existing System In traditional banking systems, account management relies
on manual record-keeping or legacy software with limited accessibility.
Customers must visit banks physically for basic transactions such as
deposits, withdrawals, and balance inquiries, leading to inefficiency and time
consumption. Additionally, existing systems often suffer from poor user
interfaces, a lack of real-time updates, and security vulnerabilities due to
outdated technology. The manual approach increases the chances of human
errors, delays in processing, and difficulty in tracking transactions efficiently.

DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING


Proposed System
• The proposed Banking Account Management System aims to provide a
digital, user-friendly, and efficient solution for handling banking transactions.
Built using MySQL, Node.js, Express.js, and JavaScript, the system allows
users to perform transactions such as deposits and withdrawals, check
account balances, and view transaction history in real time. The integration of
a secure database ensures safe storage and retrieval of financial data. The
system improves accessibility by enabling web-based interaction, reducing
the dependency on physical banking visits. With an intuitive user interface
and automated transaction processing, the proposed system enhances
efficiency, reduces errors, and ensures secure financial management.

DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING


Existing And Proposed Sytem

DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING


Block Diagram

DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING


Architectural Diagram

DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING


ER Diagram

DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING


Modules list
Internal Modules:
i) Express
ii) body-parser
iii) Cors
iv) dotenv
External Module:
i) mysql2

DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING


Modules Description
• 1. Internal Modules

• - express → Handles web servers and API routes

• - body-parser → Parses incoming JSON & form data (API requests)

• - cors → Enables cross-origin resource sharing (CORS)

• - dotenv → Loads environment variables from .env file

2.External Modules (Installed via npm)

• - mysql2 → Connects and interacts with the MySQL database.


Internal Modules
Express : a lightweight, unopinionated web framework for Node.js used to build web
applications and APIs. It simplifies handling HTTP requests and responses, routing, and
middleware management.
Key Features:
● Routing system for defining API endpoints
● Middleware support for request processing
● Template engine integration (EJS, Pug, Handlebars, etc.)
● Error handling mechanisms
Use Cases:
● Building RESTful APIs
● Server-side rendering applications
● Handling real-time web services (with WebSockets)
Cors :(Cross-Origin Resource Sharing) is an Express middleware that enables
or restricts cross-origin requests between different domains. It helps in
controlling how resources on a web server can be requested from external
origins.
Key Features:
● Configurable access control headers (Access-Control-Allow-Origin,
Access-Control-Allow-Methods, etc.)
● Supports preflight requests (OPTIONS method)
● Can allow credentials (cookies, authentication headers)
Use Cases:
● Enabling secure API access from frontend applications (React, Vue,
Angular, etc.)
● Preventing CORS-related security issues
● Restricting API access to trusted domains
Body Parser :
Body-parser is an Express middleware that processes incoming request
bodies and makes them accessible via req.body. It is particularly useful
for handling form data and JSON requests.
Key Features:
● Parses JSON request bodies (application/json)
● Parses URL-encoded request bodies (application/x-www-form-
urlencoded)
● Supports raw and text body parsing
Use Cases:
● Handling form submissions
● Receiving JSON payloads in API requests
● Processing user input from web forms
Dotenv:
Dotenv is a module that loads environment variables from a .env file into
process.env. This helps in separating configuration details (e.g.,
database credentials, API keys) from the source code.
● Key Features:
○ Keeps sensitive information out of source code
○ Provides an easy way to manage environment configurations
○ Works across different environments (development, production)
● Use Cases:
○ Storing database connection details
○ Keeping API keys secure
○ Managing different configurations for development and production
environments
External Modules
Mysql2 :
MySQL2 is an improved MySQL client for Node.js that provides better performance and
reliability compared to the older mysql module. It supports modern features such as
Promises and async/await, making database interactions smoother.
● Key Features:
○ Supports both Promises and traditional callbacks
○ Faster performance due to optimized query execution
○ Provides connection pooling for better resource management
○ Supports prepared statements for security against SQL injection
● Use Cases:
○ Connecting Node.js applications to MySQL databases
○ Executing SQL queries asynchronously
○ Building database-driven applications (e.g., banking systems, e-commerce
platforms)
Outcome Of The Project

• 1. Functional Outcome: Users can view account details including balance


and transaction history. Users can deposit and withdraw money, with real-time
updates to their balance. A transaction history feature logs all deposits and
withdrawals. Users can access full transaction records with timestamps.
Secure database storage with MySQL, ensuring data consistency.

• 2. Technical Outcome: Full-stack web application using Node.js (backend),


MySQL (database), and EJS (frontend). RESTful API endpoints for
transactions and account management. Express.js framework for handling
server-side logic efficiently. Modular and scalable design, allowing easy
integration of new features like loan management.

DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING


Applications
• 1. Digital Banking Prototype Serves as a testing ground for new banking features
before integration into a full-scale banking system.Can be expanded to include multi-
user accounts, authentication, and mobile banking integration.
• 2. Small Business Accounting System Useful for small businesses needing a simple
way to track cash flow, deposits, and withdrawals.Provides transaction history
records for financial analysis.
• 3. Fintech Application Development Can be integrated into fintech applications for
managing transactions, payments, and digital wallets.Useful for startups developing
customized banking solutions.
• 4. Educational and Learning ToolHelps students and developers learn about backend
programming, database management, and financial systems.Serves as a practical
project in web development courses.
• 5. Open-Source Banking APICan be converted into an API service to allow third-party
apps to access banking functionalities securely.
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
Publication
-No publication
References
• Casciaro, M., & Mammino, L. (2020). "Node.js Design Patterns" (3rd Ed.). Packt Publishing.
(Covers best practices in Node.js backend development relevant to this project.)
• Mardan, A. (2014). "Pro Express.js: Master Express.js". Apress. (Provides an in-depth
understanding of Express.js for backend development.)
• Hellerstein, J. M., Stonebraker, M., & Hamilton, J. (2007). "Architecture of a Database System".
Foundations and Trends in Databases. (Explains relational databases like PostgreSQL in detail.)
• Chowdhury, M. A., & Roy, A. (2022). "A Secure and Scalable Banking System using Node.js and
PostgreSQL". International Journal of Computer Science and Information Security. (Discusses the
security aspects of banking systems built with PostgreSQL.)
• Zhou, W., & Tian, Y. (2021). "Web-Based Banking Systems: A Comparative Analysis of Security and
Performance". Journal of Financial Technology. (Analyzes the performance of web-based banking
applications.)

DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING

You might also like