Upload
jai-shroff
View
569
Download
7
Tags:
Embed Size (px)
Citation preview
ATM SYSTEM
1 | P a g e
ATM SYSTEMEXP. NO. 3
DATE:
ABSTRACT
Our project “ATM SYSTEM “ help the users to do banking easily through online access.
The system is so beneficial that it helps the users to know about the account balance and other
transactions. Through this system the user can perform various transactions like deposit,
withdrawal etc.
After the transaction is over, the user can check the balance amount he has in his account.
Thus the transaction details are maintained. He can withdraw more amounts if he wishes. Here is
also a limit associated with a particular user as to how many times he can log on to his account.
The corresponding updating of balance will be made automatically on the main database.
SCOPE OF THE SYSTEM
The following subsection describes the scope of new ATM SYSTEM in terms of
its audience and organization.
AUDIENCE
The intended users are the people responsible for implementing ATM SYSTEM.
ORGANIZATION
This document describes the new ATM system requirements in terms of system
requirements, executive summary, analysis and design diagrams.
ANALYSIS
PROBLEM STATEMENT
The bank client must be able to deposit an amount from his/her account using the bank
applications. Each transaction must be recorded and the client must have the ability to review all
transaction performed against A given account balance after the transaction.
A bank client can have two types of accounts namely checking account and savings
account. For each checking account, one related savings account can exit.
2 | P a g e
The application must verify that a client can gain access to her/his account by
identification via the personal id no. Neither a checking nor a savings account can have a
negative balance. The application should automatically withdraw amount on the checking
account is more than its current balance.
If the savings account balance is insufficient to cover the request withdraw amount, the
application should inform the user and terminate the application.
ASSUMPTIONS
Access to the bank client is provided by a pin code consisting of 4 integers between 0 and
9 numbers.
One pin code allows access to all account held by a bank client.
No receipt will be provided for any account transactions.
The bank application operates for a single banking institution only.
There is no automatic transfer from a related checking account to a savings account. If
the balance on a savings account is less than the withdrawal amount request the
transaction. The transaction will stop and bank client will be notified.
REQUIREMENTS
HARDWARE REQUIREMENTS
Mother board : Intel
Processor : Intel Pentium IV
RAM : 1 GB
Hard Disk : 80 GB
SOFTWARE REQUIREMENTS
Operating system : Windows XP/Vista
Software : Rational rose
3 | P a g e
DESIGN – RATIONAL ROSE
INTRODUCTION TO DIAGRAMS
Rational rose is a design tool used to depict our project in the form of diagrams so that
the user can easily understand the project.
USE CASE DIAGRAM
Use - case diagrams graphically depict system behavior. These diagrams present a high
level view of how the system is used as viewed from an outsider’s perspective. A use-case
diagram may depict all or some of the use cases of a system. A use-case diagram may contain:
Actors
Use cases
Interaction or relationships between actors and use cases in the system including the
associations, dependencies and generalizations.
CLASS DIAGRAMS
The class diagram allows you to add, retrieve and delete classes and categories to and
from a class diagram. The class diagram class has a set of properties and methods that apply
specially to class diagrams,
SEQUENCE DIAGRAM
A sequence diagram is a graphical view of a scenario that shows object interaction in a
time based sequence ¾ of what happens first, what happens next. Sequence diagrams establish
the roles of the objects and help in proving essential information to determine class
responsibilities and interfaces. This type of diagram is best used during analysis phases in design
because they are simple to comprehend. Sequence diagrams are normally associated with the use
cases.
4 | P a g e
COLLABORATION DIAGRAM
A collaboration diagram provides a way to model the workflow of a business process.
Activity diagrams are very similar to flowchart because you can model a workflow because you
can model a workflow from activity to activity.
ACTIVITY DIAGRAM
Activity diagram provides a way to model the workflow of a business process. These are
similar to flowchart because you can model a workflow from activity to activity.
COMPONENT DIAGRAM
Component diagrams provide a physical view of the current model. It shows the
organizations and dependencies among software components, including source code
components, binary code components and executable components. These diagrams also show the
externally visible behavior of the components.
DEPLOYMENT DIAGRAM
A deployment diagram shows processors, devices and connections. Each model contains
a single deployment diagram, which shows the connections between its processors to processors.
5 | P a g e
USECASE DIAGRAM
The following diagram represents the usecase diagram for ATM system.
Bank serverCustomer
Insert card
verify user information
Balance enquiry
Withdrawl
Deposit
Maintainance
Serviceman Repair
6 | P a g e
CLASS DIAGRAM
The following diagram represents the class diagram for ATM system.
Bank
NewInterface
ATMMachineadressstate
TranscationTransIDTransDateTransTimeTransTypeAmountPostBalance
BankClientFirstNameLastNameCardNoPinNo
VerifyPassword()
AccountnumberBalance
Deposit()Withdraw()CreateTranscation()
1..*1..*
1
CheckingAccountSavings : Account
Withdraw()
SavingAccountChecking
111 1
savings-Checking
has
Account- Transcation
1..*1..*
1
7 | P a g e
SEQUENCE DIAGRAMThe following diagram represents sequence diagram for balance enquiry in ATM system.
client ATM machine
Account
1: insert card
2: enter pin no
4: verify pin no
5: pin valid
6: enter kind
7: balance enquiry8: balance enquired
9: show balance
10: print receipt
11: terminate
3: pin no entered
8 | P a g e
CLIENTCLIENT ATMATM
ACCOUNTACCOUNT CHECKINGCHECKING SAVINGSSAVINGS
insert card
enter pin
request pin
verify pin pin valid
request kind
enter kind
request amt
enter amount process transaction
withdrawal checking account
withdraw saving account
withdrawal savings successful
withdrawal sucessful
transaction successful
depense cash
request take cash
take cash
request transaction
terminate
21: print receipt
The following diagram represents sequence diagram for withdrawal transaction in ATM
system.
9 | P a g e
The following diagram represents sequence diagram for deposit transaction in ATM
system.
ATM machine
account checking account
client
1: insert card
2: enter pin no
3: pin no entered
4: verify pin no
5: pin valid
6: enter kind
7: deposit
8: enter amount
9: amount entered
10: update amount
11: update amount
12: amount updated
13: amount updated
14: amount deposited successfully
15: terminate
10 | P a g e
COLLABORATION DIAGRAM
The following diagram represents collaboration diagram for balance enquiry in ATM
system.
client ATM machine
Account
1: insert card7: balance enquiry
11: terminate
2: enter pin no6: enter kind
10: print receipt
4: verify pin no8: balance enquired
5: pin valid9: show balance
The following diagram represents collaboration diagram for withdrawal transaction in
ATM system.
client atm machine
account
checking
savings
1: insert card3: enter pin7: enter kind18: terminate
2: request pin pin6: request kind
14: dispense cash15: request take cash
16: take cash17: request for continuation
4: verify pin8: process transaction
5: pin ok13: transaction sucessful
9: withraw checking
12: withdraw checking successful
10: withdraw saving
11: withdraw saving sucessful
11 | P a g e
The following diagram represents collaboration diagram for deposit transaction in ATM
system.
account checking account
ATM machine
client
1: insert card
2: enter pin no
3: pin no entered
4: verify pin no
5: pin valid
6: enter kind
7: deposit
8: enter amount
9: amount entered
10: update amount
11: update amount
12: amount updated
13: amount updated
14: amount deposited successfully
15: terminate
ACTIVITY DIAGRAM
The following diagram represents activity diagram for bank transaction in ATM system.
12 | P a g e
COMPONENT DIAGRAM
The following diagram represents the component diagram for ATM system.
DEPLOYMENT DIAGRAM
The following diagram represents the deployment diagram for ATM system.
13 | P a g e
FORWARD ENGINEERING
1. Design the use case diagram, sequence diagram, collaboration diagram, class diagram,
activity diagram, component diagram, deployment diagram for On-line reservation
system.
2. Go to the component view and select anyone relevant component in the component
diagram and choose open specification and select general tab and set the language as
ANSI C++ and press apply.
3. Right click the same component and choose “open specifications” and click the realize
tab and then assign the classes which are listed.
4. Select the same component in the browser window, right click and choose ANSI C++ and
then click generate code. The dialog window specifies the directory path where the
header files and the C++ files are stored and press ok.
5. All the required files will be generated in the specified directory if any change is done in
the code diagram, do the above step.
14 | P a g e
REVERSE ENGINEERING
1. Type the cpp program in ANSI C++ software and save the file.
2. Open rational rose. Go to browse menu, create a class diagram and place the class.
3. Give the class name as one of the class name as you defined in cpp file (Turbo C++).
4. Go to browse menu, create a component diagram and place the component in that
component diagram.
5. Go to the component view and select anyone relevant component in the component
diagram and choose open specification and select general tab and set the language as
ANSI C++ and press apply.
6. Right click the same component and choose “open specifications” and click the realize
tab and then assign the classes which are listed.
7. Select the same component in the browser window, right click and choose ANSI C++ and
then click generate code. The dialog window specifies the directory path where the
header files and the C++ files are stored and press ok.
8. Open directory and open the header file of the class. After erasing the empty class in the
header file, copy the C++ program (typed in the ANSI C++ software), paste it and save it.
9. Come back to Rational Rose software, right click the component, Choose ANSI C++ and
click reverse engineering.
10. Open the class diagram and see the changes in the class diagram.
15 | P a g e
IMPLEMENTATION
#include<iostream.h>#include<conio.h>#include<stdlib.h>class Transaction{
public:double p;char n;int code,id,i;double w[100],amt[100],am[100];void process(){
cout<<"\n Welcome to our atm system";cout<<"\n Enter the valid pin number";cin>>p;if((p>=100)&&(p<=9999)){
cout<<"\n Your pin is valid";}cout<<"\n Press y to continue";cin>>n;if(n=='y'){
clrscr();cout<<"\n Choose ur option by giving code";cout<<"\n\n\t1.deposit\n\t2.Amount withdrawn in the last transaction\n\t3.withdraw amount\n\t4.check balance\n\t5.exit";cout<<"\n Enter ur chosen code";cin>>code;clrscr();swith(code){
case 1:cout<<"\n Do you like to deposit amount";cout<<"\n Enter your secret id";cin>>id;am[100]=0;amt[100]=0;cout<<"\n Enter the amount of deposit";cin>>am[i];amt[i]=am[i]+amt[i];cout<<"\n Your amount is refilled with the deposited amount.Please repay it in the bank within 24 hours";break;
case 2:
16 | P a g e
cout<<"\nTo know ur amount withdrawn in ur last transaction give ur secret id";cin>>i;cout<<"\n Withdrawn amount="<<w[i];break;
case 3:cout<<"\n Do you want to withdraw amount";cout<<"\nEnter ur secret id";cin>>i;cout<<"\n Enter the amount in multiples of 100:";w[100]=0;cin>>w[i];amt[i]=amt[i]-w[i];cout<<amt[i]+2*amt[i];cout<<"\n Transaction successful";cout<<"\n Collect ur amount and receipt within few seconds";break;
case 4:cout<<"\n To check your current account balance give ur secret id";cin>>i;cout<<"\n Your account balance="<<amt[i];
case 5:exit(0);break;
}}
}};void main(){
Transaction a2;int m;char n='y';char x;clrscr();cout<<"\n\t\tATM system";cout<<"\nchoose ur role of interaction:";cout<<"\n\t1.user\n\t2.exit";cin>>m;switch(m){
case 1:
17 | P a g e
while(n=='y'){
a2.process();cout<<"\n Thank you";
}break;
case 2:break;
}getch();
}
18 | P a g e
OUTPUT
ATM SystemChoose your role of interaction:1.User2.Exit 1
Welcome to our our atm system:Enter the valid pin number:5678
Your pin is valid
Press y to continue:y
Choose your option by giving code:
1.deposit 3.withdraw amount2.Amount withdrawn in the last transaction 4.exit
Enter your choosen code:1
Do you like to deposit amount
Enter your secret id:30Enter the amount of deposit:50000
Your amount is refilled with the deposited amount.Please repay it in the bankWithin 24 hours
ATM SystemChoose your role of interaction:1.User2.Exit 1
Welcome to our our atm system:Enter the valid pin number:5678
Your pin is valid
Press y to continue:y
Choose your option by giving code:
1.deposit 3.withdraw amount2.Amount withdrawn in the last transaction 4.exitEnter your choosen code:3
19 | P a g e
Do you want to withdraw amount
Enter your secret id:30
Enter the amount in multiples of 100:25000
Transaction successful.
Collect your amount and balance receipt within few seconds.Thank you
Welcome to our our atm system:
Enter the valid pin number:5678
Your pin is valid.
Press y to continue:y
Choose your option by giving code:
1.deposit 3.withdraw amount2.Amount withdrawn in the last transaction 4.exit
Enter your choosen code:2
To your amount withdrawn in your last transaction give your secret id 30
Withdrawn amount=25000Thank you
Welcome to our our atm system:Enter the valid pin number:5678
Your pin is valid.
Press y to continue:y
Choose your option by giving code:
1.deposit 3.withdraw amount2.Amount withdrawn in the last transaction 4.exit
Enter your choosen code:4
20 | P a g e
TESTING
TEST OBJECTIVETesting is a process of executing the programs with intend of finding errors. A good test
case is the one that has high probability of finding error. A successful test is the one that
uncovers and undiscovered error.
If testing is done successfully, it will uncover errors the software. Testing demonstrates
that software function appears to be working according to the specification that behavioral and
performs requirements appear to have me the data collected as testing is conducted to provide
good indication o software quality as a who.
TEST PLAN
Before testing is to be done, test plan must be done in order to identify which testing
method is to be implemented for the project. Test cases must be identified.
WHITE BOX TESTING
The test method used in our project is WHITE BOX TESTING. It is otherwise called as
GLASS BOX TESTING. It is a testing in which test case design method is used to control the
procedural design to derive test cases that
Guarantee that all independent paths within a module have been exercised at least once.
Exercise all logical decision on their true and false sides.
Exercise all loops at their boundaries and within their operational bounds.
Exercise internal data structures to ensure their validity.
CONCULSION
Thus the “ATM SYSTEM “developed has the essential requirements made where strictly
followed. The system was tested vigorously with simple data for all possible errors. The
encountered errors were set right. A good amount of user friendly features have been
incorporated in the system and it is possible for any user to exploit these features to the
maximum benefit.
21 | P a g e