Top Banner
ATM SYSTEM 1 | Page
28
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Atm System

ATM SYSTEM

1 | P a g e

Page 2: Atm System

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

Page 3: Atm System

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

Page 4: Atm System

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

Page 5: Atm System

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

Page 6: Atm System

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

Page 7: Atm System

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

Page 8: Atm System

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

Page 9: Atm System

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

Page 10: Atm System

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

Page 11: Atm System

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

Page 12: Atm System

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

Page 13: Atm System

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

Page 14: Atm System

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

Page 15: Atm System

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

Page 16: Atm System

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

Page 17: Atm System

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

Page 18: Atm System

while(n=='y'){

a2.process();cout<<"\n Thank you";

}break;

case 2:break;

}getch();

}

18 | P a g e

Page 19: Atm System

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

Page 20: Atm System

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

Page 21: Atm System

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