ATM Project
ATM Project
PROJECT REPORT
GRADE – XII
“……………………………………………………………………
….”
Date:
Registration No.:
ACKNOWLEDGEMENT
I would like to take this opportunity to express my deep sense
of gratitude to all those people without whom this project could
have never been completed. First and foremost I like to thank God
for giving me such a great opportunity to work on this project, and I
would like to express my special thanks and gratitude to the
Management, the Directors and the Correspondent of Hosur Public
School, for their constant guidance and providing a very nice
platform to learn.
INDEX
Sl.n Topic Page
o number
1 Abstract 1
2 System 2
requirements
3 Feasibility study 3
4 Errors and its types 4
5 Testing 5
6 Maintenance 6
7 Flow chart of 7-8
program
8 Source Code 9-19
9 Output 20-24
10 Conclusion 25
11 Bibliography 26
Abstract
Our project ATM management is a python project
done using coding.
Our ATM management does the functions of ATM
machine such as withdrawal, lodgment, viewing
statement and changing pin of the user.
The interface is user-friendly.
The pin of users is well protected and makes the
transaction very fast.
If wrong pin is entered the card will be blocked.
SYSTEM
REQUIREMENTS
1. HARDWARE:
Processor
Keyboard
Minimum memory - 2GB
2. SOFTWARE:
Operating System –OS7, OS8
Python IDLE
FEASIBILITY STUDY
Feasibility study is a system proposal according to its work, ability,
impact on the operation ability to meet the needs of users and
efficient use of resources. An important outcome of preliminary
investigations the determination of that system requested
feasible.
ECONOMICAL FEASIBILITY:
Economics analysis is the most frequent use method for
evaluating the effectiveness of the candidates the benefits and
savings that are expected from system and compare them with
cost. This software is not very costly. It just worth Rs.5500/-.So
users records can be maintained at a cheaper cost and every
school would like to use this software so that the student’s
records can be managed easily.
TECHNICAL FEASIBILTY:
Technical feasibility center on the existing computer system and
to what extent it can support the proposed task. This involves
financial consideration to accommodate technical enhancements.
It is technically feasible because whatever technology is needed to
develop this software is easily available.
TESTING
1. Alpha Testing: It is the most common type of testing used in the
software industry. The objective of this testing is to identify all
possible issues or defects before releasing it into the market or to
the user. It is conducted at the developer’s site.
2. Beta Testing: It is a formal type of software testing which is
carried out by the customers. It is performed in a real
environment before releasing the products into the market for the
actual end-users. It is carried out to ensure that there are no
major failures in the software or product and it satisfies the
business requirement. Beta Testing is successful when the
customer accepts the software.
3. White Box Testing: White box testing is based on the
knowledge about the internal logic of an application’s code. It is
also known as Glass box Testing. Internal Software and code
working should be known for performing this type of testing.
These tests are based on the coverage of the code statements,
branches, paths, conditions etc.
4. Black Box Testing: It is a software testing, method in which the
internal structure or design of the item to be tested is not known
to the tester. This method of testing can be applied virtually to
every level of the software testing.
MAINTENANCE
Programming maintenance refers to the modifications in the
program. After it has been completed, in order to meet changing
requirement or to take care of the errors that shown up. There are
four types of maintenance:
1. Corrective Maintenance: When the program after compilation
shows error because of some unexpected situations, untested
areas such errors are fixed up by Corrective maintenance.
2. Adaptive Maintenance: Changes in the environment in which
an information system operates may lead to system management.
To accommodate changing needs time to time maintenance is
done and is called Adaptive maintenance.
3. Preventive Maintenance: If possible the errors could be
anticipated before they actually occur; the maintenance is called
Preventive maintenance.
4. Perfective Maintenance: In this rapidly changing world,
information technology is the fastest growing area. If the existing
system is maintained to keep tuned with the new features, new
facilities, new capabilities, it is said to be Perfective maintenance.
Invalid pin
Login successful
Re-enter pin
Statement (S)
Lodgment (L)
Invalid pin
Change pin (P)
Re-enter
Quit(Q)
Stop
Co
de
#!/usr/bin/python
import string
import os
count = 0
while True:
user = user.lower()
if user in users:
if user == users[0]:
n=0
n=1
else:
n=2
break
else:
print('----------------')
print('****************')
print('INVALID USERNAME')
print('****************')
print('----------------')
# comparing pin
print('------------------')
print('******************')
print('******************')
print('------------------')
if pin.isdigit():
if user == 'user1':
if pin == pins[0]:
break
else:
count += 1
print('-----------')
print('***********')
print('INVALID PIN')
print('***********')
print('-----------')
print()
if user == 'user2':
if pin == pins[1]:
break
else:
count += 1
print('-----------')
print('***********')
print('INVALID PIN')
print('***********')
print('-----------')
print()
if user == 'user3':
if pin == pins[2]:
break
else:
count += 1
print('-----------')
print('***********')
print('INVALID PIN')
print('***********')
print('-----------')
print()
else:
print('------------------------')
print('************************')
print('************************')
print('------------------------')
count += 1
if count == 3:
print('-----------------------------------')
print('***********************************')
print('***********************************')
print('-----------------------------------')
exit()
print('-------------------------')
print('*************************')
print('-------------------------')
print()
print('--------------------------')
print('**************************')
print('**************************')
print('----------ATM SYSTEM-----------')
# Main menu
while True:
#os.system('clear')
print('-------------------------------')
print('*******************************')
print('*******************************')
print('-------------------------------')
response = response.lower()
if response == 's':
print('---------------------------------------------')
print('*********************************************')
print(str.capitalize(users[n]), 'YOU HAVE ',
amounts[n],'RUPEES ON YOUR ACCOUNT.')
print('*********************************************')
print('---------------------------------------------')
print('---------------------------------------------')
print('*********************************************')
print('*********************************************')
print('---------------------------------------------')
if cash_out%10 != 0:
print('------------------------------------------------------')
print('******************************************************')
print('******************************************************')
print('------------------------------------------------------')
print('-----------------------------')
print('*****************************')
print('YOU HAVE INSUFFICIENT BALANCE')
print('*****************************')
print('-----------------------------')
else:
print('-----------------------------------')
print('***********************************')
print('***********************************')
print('-----------------------------------')
print()
print('---------------------------------------------')
print('*********************************************')
print('*********************************************')
print('---------------------------------------------')
print()
if cash_in%10 != 0:
print('----------------------------------------------------')
print('****************************************************')
print('****************************************************')
print('----------------------------------------------------')
else:
print('----------------------------------------')
print('****************************************')
print('****************************************')
print('----------------------------------------')
print('-----------------------------')
print('*****************************')
print('*****************************')
print('-----------------------------')
print('------------------')
print('******************')
new_ppin = input('CONFIRM NEW PIN: ')
print('*******************')
print('-------------------')
if new_ppin != new_pin:
print('------------')
print('************')
print('PIN MISMATCH')
print('************')
print('------------')
else:
pins[n] = new_pin
else:
print('-------------------------------------')
print('*************************************')
print('*************************************')
print('-------------------------------------')
exit()
else:
print('------------------')
print('******************')
print('******************')
print('------------------')
Output
1) Entering username and pin;
2) Login successful;
3) To view statement of user1/user2/user3;