0% found this document useful (0 votes)
53 views13 pages

DBMS A6 Project Report Complete

Uploaded by

lorone8362
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)
53 views13 pages

DBMS A6 Project Report Complete

Uploaded by

lorone8362
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
You are on page 1/ 13

Project Title

Project Report

Database Management System (PGCSA103)


Master of Computer Application
PROJECT GUIDE: SUBMITTED BY:
Mr. Aditya Kumar RISHIKESH (23CSA3BC032)
SUNNY KUMAR (23CSA3BC029)
KOMAL SHARMA (23CSA3BC040)
MUSKAAN SHRIMALI (23CSA3BC043)
ADARSH KUMAR (23CSA3BC037)

VIVEKANANDA GLOBAL
UNIVERSITY

1
ACKNOWLEDGEMENT

I have taken this opportunity to express my gratitude and humble regards to the Vivekananda Global
University to provide an opportunity to present a project on the “Banking System” which is a Python
programming based project.

I would also be thankful to my project guide Mr. Aditya Kumar to help me in the completion of my
project and the documentation. I have taken efforts in this project but the success of this project
would not be possible without their support and encouragement.

I would like to thanks our principal sir “Dr.Surendra Yadav” to help us in providing all the necessary
books and other stuffs as and when required .I show my gratitude to the authors whose books has
been proved as the guide in the completion of my project I am also thankful to my classmates and
friends who have encouraged me in the course of completion of the project.

Thanks

RISHIKESH (23CSA3BC032)
SUNNY KUMAR (23CSA3BC029)
KOMAL SHARMA (23CSA3BC040)
MUSKAAN SHRIMALI (23CSA3BC043)
ADARSH KUMAR (23CSA3BC037)

Place: Jaipur
Date: 12-12-2023

2
DECLARATION

We hereby declare that this Project Report titled “Banking System” submitted by us
and approved by our project guide, to the Vivekananda Global University, Jaipur is a
bonafide work undertaken by us and it is not submitted to any other University or
Institution for the award of any degree diploma / certificate or published any time
before.

Project Group

Student Name: RISHIKESH (23CSA3BC032)


SUNNY KUMAR (23CSA3BC029)
KOMAL SHARMA (23CSA3BC040)
MUSKAAN SHRIMALI (23CSA3BC043)
ADARSH KUMAR (23CSA3BC037)

Project Guide: Mr. Aditya Kumar

3
CONTENTS

1. Introduction 5

2. Entities 5
2.1 Customers
2.2 Accounts
2.3 Transactions
2.4 Employees
2.5 Loans
2.6 Payments
2.7 Transactions_Log
3. Sql Schema 6-7

4. DFD(Data Flow Diagram) 8-10


4.1 Level 0 DFD Diagram
4.2 Level 1 DFD Diagram
7. Output of the Micro-Project 11

8. Skill Developed / learning out of this Micro-Project 12

9. Benefits of this Micro-Project 12-13

10. Conclusion of this Micro-Project 13

4
1. Introduction
In the dynamic and intricate landscape of the banking sector, the effective management
of data stands as a cornerstone for operational success. A database within a bank
management system serves as the robust foundation upon which every financial
transaction, customer interaction, and administrative process relies.

Creating a comprehensive database for a bank involves multiple tables to manage various
aspects of banking operations

2. Entities:
An entity is a “thing” or “object” in the real world. An entity contains attributes, which
describe that entity. So anything about which we store information is called an entity.
Entities are recorded in the database and must be distinguishable, i.e., easily recognized
from the group.

2.1 Customers:

• CustomerID (Primary Key)


• Name
• Address
• Phone
• Email
2.2 Accounts:
• AccountNumber (Primary Key)
• CustomerID (Foreign Key referencing Customers)
• Balance
• AccountType (Savings, Checking, etc.)
• OpenDate
• Status (Active, Closed, Frozen)
2.3 Transactions:

• TransactionID (Primary Key)


• AccountNumber (Foreign Key referencing Accounts)
• TransactionType (Deposit, Withdrawal, Transfer, etc.)
• Amount
• Date
• Description
2.4 Employees:

• EmployeeID (Primary Key)


• Name
• Address
• Phone
• Email
• Department
• Position
5
2.5 Loans:

LoanID (Primary Key)


CustomerID (Foreign Key referencing Customers)
LoanType
LoanAmount
InterestRate
StartDate
EndDate
Status (Approved, Pending, Rejected)

2.6 Payments:
• PaymentID (Primary Key)
• LoanID (Foreign Key referencing Loans)
• Amount
• PaymentDate

2.7 Transactions_Log:
• LogID (Primary Key)
• TransactionID (Foreign Key referencing Transactions)
• EmployeeID (Foreign Key referencing Employees)
• Timestamp
• Action (Viewed, Modified, Deleted, etc.)

3. Sql Schema
CREATE TABLE Customers (
CustomerID INT PRIMARY KEY,
Name VARCHAR(100),
Address VARCHAR(255),
Phone VARCHAR(20),
Email VARCHAR(100)
);

CREATE TABLE Accounts (


AccountNumber INT PRIMARY KEY,
CustomerID INT,
Balance DECIMAL(15, 2),
AccountType VARCHAR(50),
OpenDate DATE,
Status VARCHAR(20),
FOREIGN KEY (CustomerID) REFERENCES Customers(CustomerID)
);

6
CREATE TABLE Transactions (
TransactionID INT PRIMARY KEY,
AccountNumber INT,
TransactionType VARCHAR(50),
Amount DECIMAL(15, 2),
Date DATE,
Description VARCHAR(255),
FOREIGN KEY (AccountNumber) REFERENCES Accounts(AccountNumber)
);

CREATE TABLE Employees (


EmployeeID INT PRIMARY KEY,
Name VARCHAR(100),
Address VARCHAR(255),
Phone VARCHAR(20),
Email VARCHAR(100),
Department VARCHAR(50),
Position VARCHAR(50)
);

CREATE TABLE Loans (


LoanID INT PRIMARY KEY,
CustomerID INT,
LoanType VARCHAR(50),
LoanAmount DECIMAL(15, 2),
InterestRate DECIMAL(5, 2),
StartDate DATE,
EndDate DATE,
Status VARCHAR(20),
FOREIGN KEY (CustomerID) REFERENCES Customers(CustomerID)
);

CREATE TABLE Payments (


PaymentID INT PRIMARY KEY,
LoanID INT,
Amount DECIMAL(15, 2),
PaymentDate DATE,
FOREIGN KEY (LoanID) REFERENCES Loans(LoanID)
);

CREATE TABLE Transactions_Log (


LogID INT PRIMARY KEY,
TransactionID INT,
EmployeeID INT,
Timestamp TIMESTAMP,
Action VARCHAR(50),
FOREIGN KEY (TransactionID) REFERENCES Transactions(TransactionID),
FOREIGN KEY (EmployeeID) REFERENCES Employees(EmployeeID)
);

7
4. Data Flow Diagram(DFD)
4.1 Level 0 DFD:
Entities:

• Customer
• Employee
• Account
• Transaction
• Loan
• Payment
• Transactions Log
Processes:

• Manage Customer Information


• Manage Employee Information
• Manage Accounts
• Process Transactions
• Manage Loans
• Process Payments
• Log Transactions

Data Stores:

• Customers Database
• Employees Database
• Accounts Database
• Transactions Database
• Loans Database
• Payments Database
• Transactions Log Database
External Entities:

• Users

Level 0 DFD Diagram:

Users

Manage Customer
Information System

Customer DB 8
Manage Employee
Information System

Employee DB

Bank Management
System

Processes
(Transactions,Loans,etc)

Accounts DB

Transaction DB

Loans DB

Payment DB

Transation Log DB

This is a simplified Level 0 DFD for the bank management system. In reality, each process may
involve more detailed sub-processes and interactions, but this gives a high-level overview of
how data flows between various components within the system.

9
4.2 Level 2 DFD (Expansion of Level 1.4 - Process Transactions System):
Level 2 Processes:
• Accept Deposit (Level 2.1)
• Process Withdrawal (Level 2.2)
• Handle Transfers (Level 2.3)
• Generate Transaction Receipts (Level 2.4)
Level 2 Data Stores:
• Transactions Database (Level 2.4.1)
• Customers Database (Level 2.4.2)
• Accounts Database (Level 2.4.3)
• Transactions Log Database (Level 2.4.4)

Level 2 DFD Diagram

Process Transaction System

Sub-Processes

Accept Deposit Process Handle Generate Transaction


(2.1) Withdrawal (2.2) Transfers(2.3) Receipt(2.4)

Transactions Customer Accounts Transaction log


Database Database Database Database
(2.4.1) (2.4.2) (2.4.3) (2.4.4)

These diagrams provide a more detailed view of the processes and their interactions within the
bank management system, showing subprocesses within the Process Transactions System (Level
1.4) in the Level 2 DFD.

10
5. OUTPUT
5.1 Customer Table

5.2 Accounts Table

11
6. Skill Developed / learning out of this Micro-Project
• Programming Languages: Enhance proficiency in programming languages such as Python
and JavaScript (if you incorporated client-side scripting).

• Web Development: Gain understanding and hands-on experience in building web


applications using Flask (a Python web framework) for server-side functionality.

• Database Management: Learn about database design, SQL (Structured Query Language),
and database management systems like MySQL, focusing on schema design, table
relationships, and SQL queries.

• HTML/CSS: Practice HTML for creating web forms and CSS for styling to improve user
interface design.

• Backend Development: Understand backend development concepts by implementing


server-side logic to handle form submissions and interact with a database.

• Data Validation and Security: Learn about data validation to ensure the integrity of data
entered in forms, and consider security measures like preventing SQL injection attacks.

• Version Control: Utilize version control systems like Git to manage changes and collaborate
on the project, learning about branches, commits, and merges.

• Problem-Solving: Encounter various challenges and errors throughout the project, providing
opportunities to troubleshoot and solve problems effectively.

• Project Management: Improve project management skills by breaking down the project into
modules, organizing tasks, and managing time effectively.

• Documentation: Enhance documentation skills by writing explanations, comments, and


documentation for code, providing clarity and guidance for others (or your future self!).

7. Benefits of this Micro-Project


7.1 Hands-on Learning:
• Practical Application: Apply theoretical knowledge to real-world scenarios, reinforcing
understanding of programming concepts and database management.
• Experience with Tools: Gain hands-on experience with frameworks (e.g., Flask), databases (e.g.,
MySQL), and languages (e.g., Python, SQL), increasing proficiency with these tools.
7.2 Skill Enhancement:
• Programming Skills: Improve programming skills in Python and potentially other languages used
in web development (HTML, CSS, JavaScript).
• Database Management: Enhance skills in database design, querying, and management, crucial
in various software development roles.
• Web Development: Learn about web application development, handling form submissions, and
building user interfaces.
7.3 Problem-Solving Abilities:
• Troubleshooting: Encounter and solve coding challenges, bugs, and errors, strengthening
problem-solving skills.

12
• Critical Thinking: Develop critical thinking by planning and implementing solutions for various
functionalities in the application.
7.4 Understanding System Architecture:
• Understanding System Flow: Gain insights into how different parts of a system (front-end, back-
end, and database) interact and function together.
• Architecture Design: Explore how to structure databases, manage relationships between tables,
and handle complex transactions.
7.5 Project Management and Collaboration:
• Task Organization: Practice breaking down a project into manageable modules, improving
project organization and planning.
• Collaboration: Foster teamwork if working with others, enhancing communication and
collaboration skills.
Personal Development:
• Confidence Building: Gain confidence in your coding abilities by completing a full-fledged
project.
• Continuous Learning: Develop a mindset for continuous learning, setting the stage for tackling
more complex projects in the future.

8. Conclusion of this Micro-Project

Key Learnings:
• Application of Theoretical Knowledge: Applied theoretical concepts to a practical,
real-world scenario, solidifying understanding.
• Collaboration and Teamwork: If working with others, experienced collaboration and
teamwork, improving communication and cooperation skills.
• Adaptability and Continuous Learning: Embraced adaptability and a growth
mindset, as every challenge offered a learning opportunity.
Future Steps:
• Further Refinement: Continuously refine and improve the project, implementing
additional functionalities or enhancing existing ones.
• Portfolio Development: Add the project to your portfolio, potentially expanding it
with more comprehensive projects.
• Exploration of Advanced Concepts: Pursue more advanced topics or technologies,
building upon the foundation laid by this micro-project.
Reflection:
• Recognizing Achievements: Acknowledge and celebrate the achievements and
skills acquired during this project.
• Identifying Improvement Areas: Reflect on areas for improvement and future
directions in learning and project development.
• Applying Lessons Learned: Apply the lessons learned from this project to future
endeavors.

13

You might also like