Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 24

HAPPY SCHOOL / 2023-24

CERTIFICATE

This is to certify that SARTHAK GUPTA Roll No: 12441 has successfully

completed the project entitled BANK MANAGEMENT in the subject Computer

Science laid down in the regulations of CBSE for the purpose of Practical

Examination in Class XII to be held in Happy School Darya Ganj .

Mrs. Ritu Pandey


Computer Science

Examiner:
Name:

Signature:

SARTHAK GUPTA XII-S 12441 / CS PROJECT


HAPPY SCHOOL / 2023-24

TABLE OF CONTENTS

S.No. DESCRIPTION PAGE NO.

01 ACKNOWLEDGEMENT 4

02 INTRODUCTION 5

03 OBJECTIVE OF PROJECT 6

04 ADVANTAGES OF BANK MANAGEMENT SYSTEM 7

05 FLOW OF EXECUTION 8

06 SOURCE CODE 9

07 OUTPUT RESULTS 18

08 BIBLIOGRAPHY 23

SARTHAK GUPTA XII-S 12441 / CS PROJECT


HAPPY SCHOOL / 2023-24

SARTHAK GUPTA XII-S 12441 / CS PROJECT


HAPPY SCHOOL / 2023-24

INTRODUCTION

➢ In today's fast-paced and technology-driven financial landscape,


efficient and secure management of banking operations is
paramount. The Bank Management System is a robust and
sophisticated software solution designed to streamline and
automate the various facets of banking, from customer account
management and transaction processing to regulatory
compliance and data security.

➢ This comprehensive system serves as the backbone of modern


banking institutions, offering a wide range of features and
functionalities to enhance operational efficiency, customer
service, and financial decision-making. With its user-friendly
interfaces and powerful backend capabilities, the Bank
Management System plays a pivotal role in revolutionizing the
way banks manage their operations and interact with
customers.

➢ In this era of digital banking, where convenience, speed, and


data integrity are of utmost importance, the Bank Management
System is a critical tool that empowers financial institutions to
meet the ever-evolving demands of their customers while
maintaining the highest standards of security and compliance.

➢ This introduction will delve deeper into the key components,


features, and benefits of a Bank Management System,
showcasing its indispensable role in the modern banking
ecosystem.

SARTHAK GUPTA XII-S 12441 / CS PROJECT


HAPPY SCHOOL / 2023-24

OBJECTIVE OF PROJECT:

➢ Efficiency and Automation:


One of the primary objectives is to automate routine banking tasks such
as account management, transaction processing, and record-keeping. This
reduces manual errors and increases operational efficiency.
➢ Customer Service:
Improve customer service by providing faster and more accurate
information regarding accounts, transactions, and services. This enhances
customer satisfaction and loyalty.
➢ Security:
Ensure the security of customer data, financial transactions, and sensitive
information. Implement robust security measures to protect against
fraud and data breaches.
➢ Data Management:
Efficiently manage and store customer data, financial records, and
transaction history. This makes it easier to retrieve information when
needed and maintain compliance with regulatory requirements.
➢ Risk Management:
Identify and mitigate risks associated with banking operations, lending,
and investments. Analyse data to make informed decisions that minimize
financial risks.
➢ Cost Reduction:
Reduce operational costs by minimizing manual labor, paperwork, and
administrative overhead. Automation can lead to significant cost savings
over time.
➢ Reporting and Analysis:
Generate accurate and real-time reports for management, auditors, and
regulatory authorities. This helps in monitoring and assessing the
bank's performance and compliance.

SARTHAK GUPTA XII-S 12441 / CS PROJECT


HAPPY SCHOOL / 2023-24

ADVANTAGES OF BANK MANAGEMENT SYSTEM:

➢ Improved Efficiency:
Automation of tasks reduces processing times and errors, leading to
faster and more accurate operations.
➢ Enhanced Customer Experience:
Customers benefit from quicker transactions, better access to account
information, and improved customer support.
➢ Increased Security:
Advanced security features protect customer data and financial
assets from unauthorized access and fraud.
➢ Cost Savings:
Reduce labor costs, paperwork, and the need for physical
infrastructure, leading to long-term cost savings.
➢ Better Decision-Making:
Access to real-time data and analytical tools enables bank management
to make informed decisions and respond to market changes promptly.
➢ Streamlined Operations:
All banking operations, including account management, loan processing,
and payment processing, can be streamlined and integrated into a
single system.
➢ Scalability:
Easily scale the system as the bank grows, accommodating new
branches and services without significant disruptions.
➢ Data Analytics:
Analyze customer data to identify trends, preferences, and
opportunities for cross-selling and upselling financial products.
➢ Competitive Advantage:
A well-implemented Bank Management System can give a bank a
competitive edge by providing superior services and efficient operations.

In summary, a Bank Management System is designed to achieve objectives like


efficiency, customer service, security, and cost reduction while offering
advantages such as improved efficiency, enhanced security, and better decision-
making capabilities. When properly implemented, it can be a valuable asset for
banks in today's technology-driven financial industry.

SARTHAK GUPTA XII-S 12441 / CS PROJECT


HAPPY SCHOOL / 2023-24

FLOW OF EXECUTION

SARTHAK GUPTA XII-S 12441 / CS PROJECT


HAPPY SCHOOL / 2023-24

SOURCE CODE

import mysql.connector

# Establish a connection to the MySQL database


conn = mysql.connector.connect(
host="localhost",
user="root",
password="12345",
database="BANK_MANAGEMENT"
)

cursor = conn.cursor()

# Create a table to store account information if it doesn't exist


cursor.execute('''
CREATE TABLE IF NOT EXISTS accounts (
account_number VARCHAR(255) PRIMARY
KEY, name VARCHAR(255),
phone_number VARCHAR(255),
location VARCHAR(255),
date_of_birth DATE,
balance DECIMAL(10, 2)
)
''')

SARTHAK GUPTA XII-S 12441 / CS PROJECT


HAPPY SCHOOL / 2023-24

# Commit changes and close the


connection conn.commit()
conn.close()

#Starting Of Program
print("WELCOME TO BANK MANAGEMENT SYSTEM", end='')

# Dictionary to store account


information accounts = {}

# Function to create a new account


def create_account(account_number, name, phone_number, location,
date_of_birth, initial_balance):
if account_number in accounts:
print("Account number already
exists.")
else:
if initial_balance < 0:
print("Initial balance cannot be
negative.") else:
accounts[account_number] = {
"name": name,
"phone_number": phone_number,
"location": location,
"date_of_birth": date_of_birth,
"balance": initial_balance

SARTHAK GUPTA XII-S 12441 / CS PROJECT


HAPPY SCHOOL / 2023-24

}
print("Account created successfully.")

# Function to deposit money into an


account def deposit(account_number,
amount):
if account_number in
accounts: if amount <= 0:
print("Invalid amount. Please enter a positive amount.")
else:
accounts[account_number]["balance"] += amount
print("Deposit successful.")
print("Current balance:",
accounts[account_number]["balance"])
else:
print("Account not found. Please enter a valid account number.")

# Function to withdraw money from an account


def withdraw(account_number, amount):
if account_number in
accounts: if amount <= 0:
print("Invalid amount. Please enter a positive amount.")
elif amount > accounts[account_number]["balance"]:
print("Insufficient balance.")
else:
accounts[account_number]["balance"] -= amount
print("Withdrawal successful.")

SARTHAK GUPTA XII-S 12441 / CS PROJECT


HAPPY SCHOOL / 2023-24

print("Current balance:",
accounts[account_number]["balance"])
else:
print("Account not found. Please enter a valid account number.")

# Function to display account details


def show_details():
if accounts:
print("Account Details:")
print("{:<20} {:<15} {:<15} {:<15} {:<10}".format(
"Account Number", "Name", "Phone Number", "Location",
"Balance"))
print("-" * 80)
for account_number, account_info in accounts.items():
name = account_info["name"]
phone_number =
account_info["phone_number"] location =
account_info["location"]
balance = account_info["balance"]
print("{:<20} {:<15} {:<15} {:<15} {:<10.2f}".format(
account_number, name, phone_number, location, balance))
else:
print("No accounts found.")

# Function to inquire about an account


def enquiry(account_number):
if account_number in accounts:
SARTHAK GUPTA XII-S 12441 / CS PROJECT
HAPPY SCHOOL / 2023-24

account_info = accounts[account_number]
print("Account Details:")
print("Account Number:", account_number)
print("Name:", account_info["name"])
print("Phone Number:", account_info["phone_number"])
print("Location:", account_info["location"])
print("Date of Birth:", account_info["date_of_birth"])
print("Balance:", account_info["balance"])
else:
print("Account not found. Please enter a valid account number.")

# Function to modify account information


def modify_account(account_number):
if account_number in accounts:
print("Modify Account:")
print("1. Change Name")
print("2. Change Phone
Number") print("3. Change
Location") print("4. Change Date
of Birth")
choice = int(input("Enter your choice: "))
if choice == 1:
new_name = input("Enter the new name: ")
accounts[account_number]["name"] = new_name
print("Name has been changed successfully!!")
elif choice == 2:
new_phone_number = input("Enter the new phone number: ")

SARTHAK GUPTA XII-S 12441 / CS PROJECT


HAPPY SCHOOL / 2023-24

accounts[account_number]["phone_number"] = new_phone_number
print("Phone Number has been updated successfully!!")
elif choice == 3:
new_location = input("Enter the new location: ")
accounts[account_number]["location"] = new_location
print("Location has been updated successfully!!")
elif choice == 4:
new_date_of_birth = input("Enter the new date of birth (YYYY-MM-DD):
") accounts[account_number]["date_of_birth"] = new_date_of_birth
print("Date Of Birth has been updated successfully!!")
else:
print("Invalid choice. Please select a valid option.")
else:
print("Account not found. Please enter a valid account number.")

# Function to transfer funds between two accounts


def fund_transfer(from_account_number, to_account_number, amount):
if from_account_number in accounts and to_account_number in accounts:
if amount <= 0:
print("Invalid amount. Please enter a positive amount.")
elif amount > accounts[from_account_number]["balance"]:
print("Insufficient balance for transfer.")
else:
accounts[from_account_number]["balance"] -= amount
accounts[to_account_number]["balance"] += amount
print("Funds transferred successfully.")

SARTHAK GUPTA XII-S 12441 / CS PROJECT


HAPPY SCHOOL / 2023-24

print("Current balance for account",


from_account_number, ":", accounts[from_account_number]
["balance"])
print("Current balance for account",
to_account_number, ":", accounts[to_account_number]["balance"])
else:
print("One or both accounts not found. Please enter valid account
numbers.")

# Function to close an account


def close_account(account_number):
if account_number in accounts:
del accounts[account_number]
print("Account closed
successfully.")
else:
print("Account not found. Please enter a valid account number.")

# Example usage
while True:
print("\n1. Create
Account") print("2.
Deposit")
print("3. Withdraw")
print("4. Details Of All Accounts")
print("5. Single Account
Enquiry") print("6. Modify
Account") print("7. Fund
SARTHAK GUPTA XII-S 12441 / CS PROJECT
HAPPY SCHOOL / 2023-24

Transfer") print("8. Close


Account")

SARTHAK GUPTA XII-S 12441 / CS PROJECT


HAPPY SCHOOL / 2023-24

print("9. Exit")

choice = int(input("Enter your choice: "))

if choice == 1:
account_number = input("Enter the account number: ")
name = input("Enter the name: ")
phone_number = input("Enter the phone number: ")
location = input("Enter the location: ")
date_of_birth = input("Enter the date of birth (YYYY-MM-DD): ")
initial_balance = float(input("Enter the initial balance to start your account
with: "))
create_account(account_number, name, phone_number, location,
date_of_birth, initial_balance)

elif choice == 2:
account_number = input("Enter the account number:
") amount = float(input("Enter the amount to deposit:
")) deposit(account_number, amount)

elif choice == 3:
account_number = input("Enter the account number: ")
amount = float(input("Enter the amount to withdraw: "))
withdraw(account_number, amount)

elif choice == 4:
show_details()

SARTHAK GUPTA XII-S 12441 / CS PROJECT


HAPPY SCHOOL / 2023-24

elif choice == 5:
account_number = input("Enter the account number for enquiry about your
account: ")
enquiry(account_number)

elif choice == 6:
account_number = input("Enter the account number to modify: ")
modify_account(account_number)

elif choice == 7:
from_account_number = input("Enter the account number to transfer from:
")
to_account_number = input("Enter the account number to transfer to: ")
amount = float(input("Enter the amount to transfer: "))
fund_transfer(from_account_number, to_account_number, amount)

elif choice == 8:
account_number = input("Enter the account number to close: ")
close_account(account_number)

elif choice == 9:
print("Thank you for using the BANK MANAGEMENT SYSTEM")
break

else:
print("Invalid choice. Please try again.")

SARTHAK GUPTA XII-S 12441 / CS PROJECT


HAPPY SCHOOL / 2023-24

OUTPUT RESULTS

1. Creating An Account

Account 1:

Account 2:

SARTHAK GUPTA XII-S 12441 / CS PROJECT


HAPPY SCHOOL / 2023-24

Account 3:

2. Depositing Money

SARTHAK GUPTA XII-S 12441 / CS PROJECT


HAPPY SCHOOL / 2023-24

3. Withdrawing Money

4. Viewing Details Of All Accounts

SARTHAK GUPTA XII-S 12441 / CS PROJECT


HAPPY SCHOOL / 2023-24

5. Single Account Enquiry

6. Modification Of Account

SARTHAK GUPTA XII-S 12441 / CS PROJECT


HAPPY SCHOOL / 2023-24

7. Transfer of Money

8. Closing An Account

9. Exiting the Bank Management System

SARTHAK GUPTA XII-S 12441 / CS PROJECT


HAPPY SCHOOL / 2023-24

BIBLIOGRAPHY

• Computer Science With Python – Class


XII By: Preeti Arora

SARTHAK GUPTA XII-S 12441 / CS PROJECT

You might also like