[go: up one dir, main page]

0% found this document useful (0 votes)
208 views25 pages

Computer Science Project - 074805

The document describes a bank management system project. It includes creating bank accounts, transactions, customer details, reports and deleting accounts. It outlines the objectives, flowchart, source code, outputs and testing of the project.

Uploaded by

GUNJAN KUMAR
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)
208 views25 pages

Computer Science Project - 074805

The document describes a bank management system project. It includes creating bank accounts, transactions, customer details, reports and deleting accounts. It outlines the objectives, flowchart, source code, outputs and testing of the project.

Uploaded by

GUNJAN KUMAR
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/ 25

2022-23

COMPUTER
SCIENCE PROJECT

GUNJAN KUMAR
KV CRPF
MOKAMAGHAT
KENDRIYA VIDYALAYA CRPF MOKAMAGHAT

A PROJECT REPORT ON

BANK MANAGEMENT SYSTEM

SUBMITTED BY
GUNJAN KUMAR
XII ‘science’
UNDER THE GUIDANCE OF
DEEPU SIR(PGT CS)
KENDRIYA VIDYALAYA
CRPF MOKAMAGHAT
DEPARTMENTOF COMPUTER
SCIENCE

CERTIFICATE

THIS IS TO CERTIFY THAT GUNJAN KUMAR


CLASS- XII-A ROLL NUMBER HAS
SUCCESSFULLY COMPLETED THE RESERCH
ON THE BELOW MENTIONED PROJECT
UNDER THE GUIDANCE OF MR DEEPU
KUMAR (PGT CS) DURING THE YEAR 2022-23
IN PARTIAL FULFILLMENTOFCOMPUTER
SCIENCE PRACTICAL EXAMINATION.

Signatureof external Signatureof cs


teacher
examiner
TABLE OF CONTENTS \ T O C 1

SER DESCRIPTION PAGE NO

01 ACKNOWLEDGEMENT 04

02 INTRODUCTION 05

03 OBJECTIVES OF THE PROJECT 05

04 FLOW CHART 06

05 SOURCE QODE 07-12

06 OUTPUT 13-18

07 TESTING 19-21

08 HARDWARE AND SOFTWARE REQUIREMENT 22

09 INSTALLATION PROCEDURE 23

24
10 BIBLIOGRAPHY 3
In

ACKNOWLEDGEMENT
the accomplishment of this project successfully,
many peoplehave best owned upon me their
blessings and the heart pledged support, this timeI
am utilizing tothank all the people who havebeen
concerned with project.

Primarily I would thank god for being able to


complete this project with success.Then I would like to
thank my principal sir and computer science teacher
DEEPU SIR whose valuable guidance has beenthe
onesthat helpedme patchthis project and make it full
proof success his suggestions and his instructions has
servedas the major contributor towards the completion
of theproject.

Then I would like to thank my parents and friends


who have helped me with their valuable suggestions and
guidance has been helpful in various phases of the
completion of the project.

Last but not the least I would like to thank


my classmates who have helped mea lot.
INTRODUCTION

BANK MANAGEMENT SYSTEM" This project is


useful for the bank employees as well as
customers to keep a track of account details.
The emerging of digital system made
information available on finger tips. By
automating the transactions one can view the
details as and when required in no time.
project emphases
This on creation of new
custome accounts, managing the existing
account
r in the bank, by making
holders system one
digital generat daily
can
reports, e
monthl reports and annual reports
can
y enhance the
which
system.

5
OBJECTIVES OF THE
PROJECT
The objective of this project is to let the stud seents
apply the programming knowledge into a real- world
situation/problem and exposed the students how
programming skills helps in developing a good software.
1. Write programs utilizing modern software tools.

2. Apply object oriented programming principles


effectively when developing small to medium
sized projects.

3. Write effective procedural code to solve


sm all to medium sized problems.

4. Students will demonstrate a breadth of knowledge


in computer science, as exemplified in the areas of
systems, theory and software development.

5.Students will demonstrate ability to conduct a research


or applied Computer Science project, requiring writing
and presentation skills which exemplify scholarly style
in computer science

6
IF M =2

PROGRAM FETCHES
DATA FROM
DATABASE

MENU IS DISPLAYED

1. CREATE CANK ACCOUNT

2..TRANSACTION

3. CU STO ME & DETAILS

4. TRANSACTION DETAILS

5. DELETE ACCOUNT
C.QUIT

FLOW
CHART
7
Source code

TABLE.PY
import mysql.connector as sql
conn=sql.connect(host=’localhost’,user=’root’,passwd=’manager
' database=’bank’)
ifconn.is_connected():
print(’connected succesfully’) cur =
conn.cursor() cur.execute(’create table
customer_details(acct_noint primary key,acct_namevarchar(25)
,phone_nobigint(25)
check(phone_no>11),address
varchar(25),cr_amt float )’)

MENU.PY

import mysql.connector as sql


conn=sql.connect(host=’localhost’,user=’root’,passwd=
’manager’, database=’bank’) cur = conn.cursor()

conn.autocommit = True

print(’1.CREATE BANK ACCOUNT’)


print(’2.TRANSACTION’) print(’3.CUSTOMER
DETAILS’) print('4.TRANSACTION
DETAILS') print(’5.DELETE DETAILS’)
print(’6.QUIT’)

8
n=int(input(’Enter your CHOICE=’)) if n ==
1:
acc_no=int(input(’Enter your ACCOUNT NUMBER=’))
acc_name=input(’Enter your ACCOUNT NAME=’)
ph_no=int(input(’Enter your PHONE NUMBER=’))
add=(input(’Enter your place=’)) cr_amt=int(input(’Enter your
credit amount=’)) V_SQLInsert="INSERT INTO customer_details
values (”
+ str (acc_no) + ”,’ ” + acc_name + ” ’,”+str(ph_no) + ”,’ ”
+add + ” ’,” + str (cr_amt) + ” ) ” cur.execute(V_SQLInsert)
print(’Account Created SuccesfullyM!!!’) conn.commit()

if n == 2:
acct_no=int(input(’Enter Your Account Number=’))
cur.execute(’select * from customer_details where
acct_no=’+str (acct_no) ) data=cur.fetchall()
count=cur.rowcount conn.commit() if count == 0:
print(’Account Number Invalid Sorry Try
Again Later')
else:
print(’1.WITHDRAW AMOUNT’) print(’2.ADD
AMOUNT’)
x=int(input(’Enter
your CHOICE=’))
if x == 1:
amt=int(input(’Enter withdrawl amount=’))
cur.execute(’update customer_details set cr_amt=cr_amt-
’+str(amt) + ’ where acct no=’

9
+str(acct_no) ) conn.commit() print('Account Updated
Succesfully!!!!!') if x== 2: amt=int(input('Enter
amount to be added=')) cur.execute('update
customer_details set cr_amt=cr_amt+'+str(amt) +
' where acct_no='
+str(acct_no) ) conn.commit() print('Account Updated
Succesfully!!!!!')

if n == 3:
acct_no=int(input('Enter your account number=')
cur.execute('select * from customer_details
where
acct_no='+str(acct_no) ) ifcur.fetchone() is None:
print('Invalid Account number') else:
cur.execute('select * from customer_details where
acct_no='+str(acct_no) ) data=cur.fetchall() for row
in data:
print('ACCOUNT NO=',acct_no) print('ACCOUNT
NAME=',row[1]) print(' PHONE NUMBER=',row[2])
print('ADDRESS=',row[3]) print('cr_amt=',row[4]) if
n==
4: acct_no=int(input('Enter your account number='))
print() cur.execute('select * from
customer_details where acct_no='+str(acct_no) )
ifcur.fetchone() is None:
print() print('Invalid Account number') else:
cur.execute('select * from transactions where

10
acct_no=’+str(acct_no) )
data=cur.fetchall() for row in data:
print(’ACCOUNT NO=’,acct_no) print()
print(’DATE=’,row[1]) print() print(’
WITHDRAWAL AMOUNT=’,row[2]) print()
print(’AMOUNT ADDED=’,row[3]) print()

if n == 5:

print(’DELETE YOUR ACCOUNT’) acct_no=int(input(’Enter your


account number=’))

cur.execute(’delete fro customer_details where


m
acct_no=’+str(acct_no) ) print(’ACCOUNT
SUCCESFULLY’) DELETED

if n == 6: quit()

MAIN.PY

import mysql.connector as sql


conn=sql.connect(host=’localhost’,user=’root’,passwd=
’manager’ database=’bank’) cur = conn.cursor()
#cur.execute(’create table user_table(username varchar(25)
primarykey,passwrdvarchar(25) not null )’)
print(’l.REGISTER’) print(’2.LOGIN’) n=int(input(’enter
your choice=’)) if n==

1:

11
name=input('Enter a Username=') passwd=int(input('Enter a 4
DIGIT Password=’))
V_SQLInsert="INSERT INTOuser_table (passwrd,username)
values (” + str (passwd) +
” + name + ” ’) ”
cur.execute(V_SQLInsert) conn.commit() print(’USER created
succesfully’) if n==2 :
name=input(’Enter your Username=’) passwd=int(input(’Enter
your 4 DIGIT Password=’)) V_Sql_Sel="select * from user_table
where passwrd='"+str (passwd)+”’ and username= ’ ” +name+
” ’ ” cur.execute(V_Sql_Sel) ifcur.fetchone() is None:
print(’Invalid username or password’) else: import main

OUTPU
T 12
MAIN
\Jl 'Python 3.7.0rc1 Shell’ PAGE
File Edit Shell Debug Options Window Help

Python 3.7.Orel (v3.7.0rc1 :dfad352267, Jun 12 2018, 07:05:25) [MSC v.1914 64 bit (Al Type
"copyright", "credits" or "license()" for more information.
»>
========= RESTART: C:\Python\Python37\6009\source codelmain bank.py =======
=========================WELCOME TO STARK BANK=====================
2020-01-01 10:34:27.377132
1. REGISTER

2. LOGIN
enter your choice^

'Python 3.7.0rc1 Shell'


File Edit Shell Debug Options Window Help
Python 3.7.0rc1 (v3.7.0rc1:dfad352267, Jun 12 2018, 07:05:25) [MSC v.1914 64 bit (AIV
Type "copyright", "credits" or "licenseO" for more information.
»>
========= RESTART: C:\Python\Python37\6009\source code\main bank.py =======
=========================W ELCOME TO STARK BANK======================
2020-01-01 10:34:27.377132

1. REGISTER

2. LOGIN

enter your choice=2 Enter your

Username= Enter your 4 DIGIT

Password^

13
MENU PAGE
WELCOME TO STARK BANK
2020-01-01
10:38:14.014927
1. REGISTER

2. LOGIN

enter your choice=2

Enter your Username=suryah

Enter your 4 DIGIT Passwords

298
1. CREATE BANK
ACCOUNT

2. TRANSACT10N

3. CUSTOMER DETAILS

4. TRANSACTION DETAILS

5. DELETE ACCOUNT

6. QUIT

Enter your CHOICE^

14
CREATE BANK ACCOUNT

1. CREA 7E BANK ACCOUNT

2. TRANSACT10N

3. CUST0MER DETAILS

4. TRANSACTION DETAILS

5. DELETE ACCOUNT

6. QUIT

Enter your CHOICE=1

Enter your ACCOUNT NUMBER=7865

Enter your ACCOUNT NAME=mackenize

Enter your PHONE NUMBER=9965433211

Enter your place=florida

Enter your credit amount=10000

Account Created Succesfully!!!!!

15
CUSTOMER
DETAILS
1. CREATE BANK ACCOUNT

2. TRANSACT10N

3. CUSTOMER DETAILS

4. TRANSACTION DETAILS

5. DELETE ACCOUNT

6. QUIT

Enter your CHOICE=3 Enter your account

number=6009 ACCOUNTNO=

6009 ACCOUNT NAME= james

PHONE

NUMBER= 9965411899
ADDRESS= usa cr

amt= 8900.0

16
1. CREATE BANK ACCOUNT

2. TRANSACTION

3. CUSTOMER DETAILS

4. TRANSACTION DETAILS

5. DELETE ACCOUNT

6. QUIT

Enter your CHOICE=2 Enter

Your Account Number=6009 1

.WITHDRA W AMOUNT

2.ADD AMOUNT

Enter your CHOICE=1 Enter

withdrawl amount=1000

Account Updated Succesfully!!!!!

17
TRANSACTION DETAILS

1. CREATE BANK ACCOUNT

2. TRANSACT10N

3. CUSTOMER DETAILS

4. TRANSACTION DETAILS

5. DELETE ACCOUNT

6. QUIT

Enter your CHOICE=4 Enter your

account number=6009

ACCOUNT NO= 6009 DATE=

2020-01-01

WITHDRAWAL AMOUNT= 1000

AMOUNTADDED*0

TESTING

18
Software Testing is an empirical investigation conducted to provide stakeholders with information about the

quality of the product or service under test[1] , with respect to the context in which it is intended to operate. Software

Testing also provides an objective, independent view of the software to allow the business to appreciate and understand

the risks at implementation of the software. Test techniques include, but are not limited to, the process of executing a

program or application with the intent of finding software bugs.

It can also be stated as the process of validating and verifying that a software program/application/product

meets the business and technical requirements that guided its design and development, so that it works as expected and

can be implemented with the same characteristics. Software


Testing, depending on the testing method employed, can be implemented at any time in the development

process, however the most test effort is employed after the requirements have been defined and coding

process has been completed.

TESTING METHODS
Software testing methods are traditionally divided into black box testing and white box testing.

These two approaches are used to describe the point of view that a test engineer takes when designing test

cases.

BLACK BOX TESTING

Black box testing treats the software as a "black box," without any knowledge of internal implementation.

Black box testing methods include: equivalence partitioning, boundary value analysis, all- pairs testing, fuzz testing,

model-based testing, traceability matrix, exploratory testing and specification- based testing.

SPECIFICATION-BASED TESTING

Specification-based testing aims to test the functionality of software according to the applicable

requirements.[16] Thus, the tester inputs data into, and only sees the output from, the test object. This level of testing

usually requires thorough test cases to be provided to the tester, who then can simply verify that for a given input, the

output value (or behaviour), either "is" or "is not" the same as the expected value specified in the test case.

Specification-based testing is necessary, but it is

insufficient to guard against certain risks

19
ADVANTAGES AND DISADVANTAGES

The black box tester has no "bonds" with the code, and a tester's perception is very simple: a code

must have bugs. Using the principle, "Ask and you shall receive," black box testers find bugs where programmers

don't. But, on the other hand, black box testing has been said to be "like a walk in a dark labyrinth without a

flashlight," because the tester doesn't know how the software being tested was actually constructed.

That's why there are situations when (1) a black box tester writes many test cases to check

something that can be tested by only one test case, and/or (2) some parts of the back end are not tested at all.

Therefore, black box testing has the advantage of "an unaffiliated opinion," on the one hand, and the disadvantage of

"blind exploring," on the other.

WHITE BOX TESTING

White box testing, by contrast to black box testing, is when the tester has access to the internal data

structures and algorithms (and the code that implement these

.Types of white box testing-

The following types of white box testing exist:

• api testing - Testing of the application using Public and Private APIs.

• Code coverage - creating tests to satisfy some criteria of code

coverage.
For example, the test designer can create tests to cause all statements in the
program to be executed at

least once.
• fault injection methods.

• mutation testingmethods.

• static testing - White box testing includes all static testing.

20
CODE COMPLETENESS
EVALUATION

White box testing methods can also be used to evaluate the completeness of a test suite that was

created with black box testing methods. This allows the software team to examine parts of a system that are rarely

tested and ensures that the most important function points have been tested.

Two common forms of code coverage are:

• FunctionCoverage: Which reports on functions executed and

• StatementCoverage:Which reports on the number of lines executed to


complete the test.
They both return coverage metric, measured as a percentage

HARDWARE AND SOFTWARE REQUIREMENTS


I.OPERATING SYSTEM : WINDOWS 7 AND ABOVE
21
II. PROCESSOR : PENTIUM(ANY) OR AMD

ATHALON(3800+- 4200+ DUALCORE)


III. MOTHERBOARD :
1.845 OR 915,995 FOR PENTIUM 0R MSI

K9MM-V VIAK8M800+8237R PLUS

CHIPSET FOR AMD ATHALON

IV. RAM : 512MB+

V. Hard disk : SATA 40 GB OR ABOVE

VI. CD/DVD r/w multi drive combo: (If back up required)


VII. FLOPPY DRIVE 1.44 MB : (If Backup required)

VIII. MONITOR 14.1 or 15 -17 inch

IX. Key board and mouse


(if print is required - [Hard copy])
X. Printer : SOFTWARE
REQUIREMENTS:
I. Windows OS
II. Python

22
INSTALLATION PROCEDURE

• Install python and my sql from the web.

• Open mysql and create the database bank


• Then run the table.py file.

• Next run the user table.py file.

• Then the transactions table.py file .


• Open the main bank file.

• Then register your account.

BIBLIOGRAPHY
1. Computer science With Python - Class Xii By: SumitaArora

2. Website: https://www.w3resource.com

3. https://en.wikipedia.oro/wiki/E (mathematical constant)

23
1.
BIBLIOGRAPHY
Computer science With Python - Class Xii
By: SumitaArora
2. Website: https://www.w3resource.com
3. https://en.wikipedia.oro/wiki/E (mathematical
constant)

You might also like