0% found this document useful (0 votes)
13 views

Oop Project 1

The document discusses a banking system micro project for an Object Oriented Programming course. It includes an abstract, introduction, discussion of banking system functions and features, examples of tasks performed in a banking system like account creation and transaction processing, advantages and disadvantages of banking systems, an entity relationship diagram, and planned programming and conclusion. The project involves developing a banking system application in C++ with features like account creation, transaction processing, and account management.

Uploaded by

Neha Navale
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
13 views

Oop Project 1

The document discusses a banking system micro project for an Object Oriented Programming course. It includes an abstract, introduction, discussion of banking system functions and features, examples of tasks performed in a banking system like account creation and transaction processing, advantages and disadvantages of banking systems, an entity relationship diagram, and planned programming and conclusion. The project involves developing a banking system application in C++ with features like account creation, transaction processing, and account management.

Uploaded by

Neha Navale
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 22

MAHARASHTRA STATE BOARD OF TECHNICAL EDUCATION

DILKAP RESEARCH INSTITUTE OF ENGINEERING & MANAGEMENT


STUDIES (POLYTECHNIC)

MICRO PROJECT
Academic Year (2023-2024)

TITLE OF PROJECT
Banking System

Program: CO1I Course code: 22316

Course: Object Oriented Programming Using C++

Page | 1
MAHARASHTRA STATE
BOARD OF TECHNICAL EDUCATION
Certificate

This is to certify that


Roll No of :- Semester of Diploma in 3
DILKAP RESEARCH INSTITUTE OF ENGINEERING & MANAGEMENT
STUDIES(POLYTECHNIC)of Institute, DRIEMS POLYTECHNIC (Code:1748) has
completed the Micro Project satisfactorily in Subject– Object Oriented Programming
Using C++ (22316) for the academic year 2023 - 2024 as prescribed in the curriculum.
Place: Enrollment No :-
Date://Exam. Seat No:-

Subject Teacher Head of the Department Principal

Member Details

Page | 2
Sr Name of member Roll No Enrollment Seat
No. No No
1. Neha Navale 13 221748003
7
2. Yashashree Mhase 16 221748004
0
3. Harshita Gawali 12 221748003
6

Name Of Guide:

INDEX
Page | 3
Sr No. Particular Page No.

01 Abstract 5

02 Introduction

03 Functions & features 6

04 Task perform in Banking system 7-9


05 Advantages & Disadvantages 10-16

06 ER Diagram 17

07 Programming

08 Conclusion

Abstract

Page | 4
Bank management system is an essential software system for any financial institution
to manage its operations effectively. This paper presents a comprehensive study on the
bank management system, including its functions, features, benefits, and challenges.
The study also discusses the different types of bank management systems available in
the market, their advantages, and their limitations. Furthermore, the paper covers the
various factors to consider when selecting a bank management system, such as
security, scalability, flexibility, and cost-effectiveness. Finally, the paper concludes by
highlighting the importance of adopting a bank management system for the success
and sustainability of financial institutions.
KEYWORDS: Bank management system, financial institution, software system,
security, scalability, flexibility, cost-effectiveness.
The banking sector plays a vital role in the development of one country’s economy. The
growth of banking sector depends upon the services provided by them to the
customers in various aspects. It is generally agreed that a strong and healthy banking
system is a prerequisite for sustainable economic growth.

Intoduction

Page | 5
The banking sector plays a vital role in the development of one country’s economy. The
growth of banking sector depends upon 6 the services provided by them to the
customers in various aspects. It is generally agreed that a strong and healthy banking
system is a prerequisite for sustainable economic growth. Banking institutions have
undergone a significant transformation in the past few decades due to the technological
advancements and changing customer needs. In this context, bank management
systems have emerged as an essential software system for financial institutions to
manage their operations efficiently. A bank management system is a software system
that provides various functionalities, including customer management, account
management, transaction management, and reporting. Banking systems perform
several different functions, depending on the network of institutions. For example,
payment loan functions at commercial banks allow us to deposit funds and use our
checking accounts and debit cards to pay our bills or make purchases. Banking system
refers to a collection of a network of institutions that provides financial services to the
people. Purpose of banking systems: The purpose of banking system sis to provide
security and confidence in the economy.
What is the Structure of a Banking System?
The banking system comprises some organizational features like:
• Unit banking
• Branch banking
• Group banking or holding company 17
• Chain banking
Banking systems are also formed on some functions or techniques:
• Mixed banking
• Deposit banking
• Merchant banking
• Investment banking
Banking Activities
With passing time, banking activities have become widespread, and today, banks
propose different other services. These days, banking services comprise the issuance of
credit and debit cards. Again, banks also propose custody of people’s valuable items.
You can also get lockers, online transfers of funds, and ATM services from banks.

Page | 6
Functions and Features

A bank management system comprises various functionalities that enable financial


institutions to manage their operations efficiently. The primary functions of a bank
management system include:
i) Customer Management: 7 A bank management system enables financial
institutions to manage their customer information, including personal details,
account information, transaction history, and communication history.

ii) Account Management: A bank management system allows financial


institutions to manage their account information, including account opening,
closing, balance management, and interest calculation.

iii) Transaction Management: A bank management system provides functionalities


to manage different types of transactions, including deposits, withdrawals, fund
transfers, and bill payments.

iv) Reporting: A bank management system provides various reporting


functionalities, including balance sheet, profit and loss statement, and customer
transaction history.

Page | 7
Task to perform in Banking System

1. Create Account:

Here we have chosen option ‘1’ from the menu to open an account. Then we have entered the first
and last name of the user i.e. “Rahul Singh”. Then we have given the initial balance as 2000. After
providing the details, we got the message “Congratulation Account is created” and the details of
the user will be printed on the screen

2. Create Another Account:

Here we have created another account of the name “Shiva Sharma” with an initial balance of 3000.
This is the 2nd account that we have created so the account number is 2. In the same way, we can
create as many accounts as we want.

Page | 8
3. Check Account Balance :

We have chosen option ‘2’ which is “Balance Enquiry”. To check the balance in a particular
account we have to provide the account number. We have given the account number as 2.
The details of account number 2 will be displayed on the screen.

4. Deposit Money to an Account:

The 3rd option is the deposit. To deposit in a bank account, we should know the account number
and balance that we want to 11 deposit. Here we have given account number 1 and the balance as
2000. The details of that account will be shown on the screen with an updated balance.

5. Withdraw Money from an Account:

4th option is withdrawal from an account. Here we need the account number and the
withdrawal balance.

Page | 9
6. Close Account:

The 5 th option is to close an account. Here we need to provide the account number only. Then the
account details will be displayed and we got the message “Account is closed”.

7. List all Accounts with Details:

6th option is to list all the accounts that we have created. This will display all the accounts with
their details on the screen.

8.Quit Application:

7 th option is to quit. This will close our Banking program. Now let us understand the code of this
project.

Page | 10
Advantages & Disadvantages

• Advantages of a Banking System :


1. Financial Intermediation: Banks facilitate the flow of funds from savers to borrowers, promoting
economic growth.
2. Safety and Security: Deposits in banks are typically insured, providing a secure place to store
money.
3. Payment Services: Banks offer a wide range of payment methods, making transactions
convenient.
4. Liquidity Management: Banks provide access to funds through ATMs, online banking, and
branches.

• Disadvantages of a Banking System:


1. Fees and Charges: Banks may impose fees for various services, which can be a burden for
customers.
2. Risk of Financial Crisis: Banks can be vulnerable to economic downturns, potentially causing
instability.
3. Limited Accessibility: Some people, especially in remote areas, may have limited access to
banking services.
4. Overhead Costs: Maintaining physical branches and infrastructure can be costly, which may
lead to higher fees.
5. Inefficiency: Banks may have bureaucratic processes, resulting in slower service compared to
alternative financial institutions.

Page | 11
ER Diagram

Page | 12
Program for Bank System
#include <iostream>
#include <fstream>
#include <cstdlib>
#include <vector>
#include<map>
using namespace std;
#define MIN_BALANCE 500
class InsufficientFunds
{
};
class Account
{
private:
long accountNumber;
string firstName;
string lastName;
float balance;
static long NextAccountNumber;
public:
Account()
{
}
Account(string fname, string lname, float balance);
long getAccNo()
{
return accountNumber;
}
string getFirstName()
{
return firstName;
}
string getLastName()
{
return lastName;
}
float getBalance()
{
return balance;
}

Page | 13
void Deposit(float amount);
void Withdraw(float amount);
static void setLastAccountNumber(long accountNumber);
static long getLastAccountNumber();
friend ofstream & operator << (ofstream & ofs, Account & acc);
friend ifstream & operator >> (ifstream & ifs, Account & acc);
friend ostream & operator << (ostream & os, Account & acc);
};
long Account::NextAccountNumber = 0;
class Bank
{
private:
map < long, Account > accounts;
public:
Bank();
Account OpenAccount(string fname, string lname, float balance);
Account BalanceEnquiry(long accountNumber);
Account Deposit(long accountNumber, float amount);
Account Withdraw(long accountNumber, float amount);
void CloseAccount(long accountNumber);
void ShowAllAccounts();
~Bank();
};
int main()
{
Bank b;
Account acc;
int choice;
string fname, lname;
long accountNumber;
float balance;
float amount;
cout << "***Banking System***" << endl;
do
{
cout << "\n\tSelect one option below:";
cout << "\n\t1 Open an Account";
cout << "\n\t2 Balance Enquiry";
cout << "\n\t3 Deposit";
cout << "\n\t4 Withdrawal";
cout << "\n\t5 Close an Account";

Page | 14
cout << "\n\t6 Show All Accounts";
cout << "\n\t7 Quit";
cout << "\nEnter your choice: ";
cin >> choice;
switch (choice)
{
case 1:
cout << "Enter First Name: ";
cin >> fname;
cout << "Enter Last Name: ";
cin >> lname;
cout << "Enter initil Balance: ";
cin >> balance;
acc = b.OpenAccount (fname, lname, balance);
cout << endl << "Congradulation Account is Created" << endl;
cout << acc;
break;
case 2:
cout << "Enter Account Number:";
cin >> accountNumber;
acc = b.BalanceEnquiry (accountNumber);
cout << endl << "Your Account Details" << endl;
cout << acc;
break;
case 3:
cout << "Enter Account Number:";
cin >> accountNumber;
cout << "Enter Balance:";
cin >> amount;
acc = b.Deposit (accountNumber, amount);
cout << endl << "Amount is Deposited" << endl;
cout << acc;
break;
case 4:
cout << "Enter Account Number:";
cin >> accountNumber;
cout << "Enter Balance:";
cin >> amount;
acc = b.Withdraw (accountNumber, amount);
cout << endl << "Amount Withdrawn" << endl;
cout << acc;

Page | 15
break;
case 5:
cout << "Enter Account Number:";
cin >> accountNumber;
b.CloseAccount (accountNumber);
cout << endl << "Account is Closed" << endl;
cout << acc;
case 6:
b.ShowAllAccounts ();
break;
case 7:
break;
default:
cout << "\nEnter corret choice";
exit (0);
}
}
while (choice != 7);
return 0;
}
Account::Account (string fname, string lname, float balance)
{
NextAccountNumber++;
accountNumber = NextAccountNumber;
firstName = fname;
lastName = lname;
this->balance = balance;
}
void Account::Deposit (float amount)
{
balance += amount;
}
void Account::Withdraw (float amount)
{
if (balance - amount < MIN_BALANCE)
throw InsufficientFunds ();
balance -= amount;
}
void Account::setLastAccountNumber (long accountNumber)
{
NextAccountNumber = accountNumber;

Page | 16
}
long Account::getLastAccountNumber ()
{
return NextAccountNumber;
}
ofstream & operator << (ofstream & ofs, Account & acc)
{
ofs << acc.accountNumber << endl;
ofs << acc.firstName << endl;
ofs << acc.lastName << endl;
ofs << acc.balance << endl;
return ofs;
}
ifstream & operator >> (ifstream & ifs, Account & acc)
{
ifs >> acc.accountNumber;
ifs >> acc.firstName;
ifs >> acc.lastName;
ifs >> acc.balance;
return ifs;
}
ostream & operator << (ostream & os, Account & acc)
{
os << "First Name:" << acc.getFirstName () << endl;
os << "Last Name:" << acc.getLastName () << endl;
os << "Account Number:" << acc.getAccNo () << endl;
os << "Balance:" << acc.getBalance () << endl;
return os;
}
Bank::Bank ()
{
Account account;
ifstream infile;
infile.open ("Bank.data");
if (!infile)
{
//cout<<"Error in Opening! File Not Found!!"<<endl;
return;
}
while (!infile.eof ())
{

Page | 17
infile >> account;
accounts.insert (pair < long, Account > (account.getAccNo (), account));
}
Account::setLastAccountNumber (account.getAccNo ());
infile.close ();
}
Account Bank::OpenAccount (string fname, string lname, float balance)
{
ofstream outfile;
Account account (fname, lname, balance);
accounts.insert (pair < long, Account > (account.getAccNo (), account));
outfile.open ("Bank.data", ios::trunc);
map < long, Account >::iterator itr;
for (itr = accounts.begin (); itr != accounts.end (); itr++)
{
outfile << itr->second;
}
outfile.close ();
return account;
}
Account Bank::BalanceEnquiry (long accountNumber)
{
map < long, Account >::iterator itr = accounts.find (accountNumber);
return itr->second;
}
Account Bank::Deposit (long accountNumber, float amount)
{
map < long, Account >::iterator itr = accounts.find (accountNumber);
itr->second.Deposit (amount);
return itr->second;
}
Account Bank::Withdraw (long accountNumber, float amount)
{
map < long, Account >::iterator itr = accounts.find (accountNumber);
itr->second.Withdraw (amount);
return itr->second;
}
void Bank::CloseAccount (long accountNumber)
{
map < long, Account >::iterator itr = accounts.find (accountNumber);
cout << "Account Deleted" << itr->second;

Page | 18
accounts.erase (accountNumber);
}
void Bank::ShowAllAccounts ()
{
map < long, Account >::iterator itr;
for (itr = accounts.begin (); itr != accounts.end (); itr++)
{
cout << "Account " << itr->first << endl << itr->second << endl;
}
}
Bank::~Bank ()
{
ofstream outfile;
outfile.open ("Bank.data", ios::trunc);
map < long, Account >::iterator itr;
for (itr = accounts.begin (); itr != accounts.end (); itr++)
{
outfile << itr->second;
}
outfile.close ();
}

Page | 19
Conclusion

The banking system plays a crucial role in the modern economy, offering numerous
advantages, such as financial intermediation, safety, convenience, and access to credit.
However, it also has its downsides, including fees, interest rate disparities, and the risk
of default. The choice to participate in the banking system depends on individual
financial goals and circumstances, and understanding both its advantages and
disadvantages is important for making informed decisions about how to manage and
grow one's finances. The most important role that a bank plays is matching up
borrowers and creditors. A bank becomes important to the international as well as a
domestic payment system, and it forms money. Contrary to popular belief, only
individuals do not need money as governments and businesses are required to borrow
and deposit money. In this aspect, a bank plays a pivotal role. Banks process payments,
and they range from little personal checks to high-value electronic payments. The
payment systems of banks are considered complex arrangements of national, local, and
international banks. Most often, it includes private clearing facilities and government
central banks that match up the things between banks

Page | 20
WEEKLY PROGRESS REPORT

MICRO PROJECT
Sr No.
Week Activity Performed Sign of Guide Date

Discussion and finalization


1 1st of topic
Preparation and submission
2 2nd of Abstract
3 3rd Definition and codes

4 4th Editing and proof Reading Of


Content
Compilation of Report And
5 5th Presentation
6 6th Final submission of Micro Project

Sign of the student Sign of the faculty

Page | 21
ANEEXURE – II
Evaluation Sheet for the Micro Project

Academic Year: 2023-2024 Name of the Faculty:


Course: OOP in C++ Course Code: 22316 Sem: III

Title of the project: Banking System

Cos addressed by Micro Project:


A: Formulate grammatically correct sentences.
B: Summarize comprehension passages.
C: Use relevant words as per context.
D: Deliver prepared speeches to express ideas, thoughts and emotions.

Major learning outcomes achieved by students by doing the project


1) Deliver oral presentations using correct grammar.
2) Rewrite sentences using relevant forms of verbs.
3) Function as team member.
4) Follow Ethic.

Roll No Student Name Marks out of 6 for Marks out of 4for Total out of 10
performance performance in oral/
presentation

(Signature of faculty)

Page | 22

You might also like