Вы находитесь на странице: 1из 5

Object Oriented Analysis and Design Using UML

Case Study ATM System

ATM (Automatic Teller Machine) is a computerized environment where the customer can carry on
banking transactions any where at any time. ATM can also be called as anytime money. Customer is a
person who has a bank account and contains an ATM card . Customer can approach any ATM machine
which is near by and by using his ATM card he can perform banking transactions. The customer can
perform the following types of transactions such as, Balance Enquiry, Cash Withdrawal, Cash Deposit
and Cash Transfer.

ATM machine contains the following Components.

CardReader : It is the component where ATM Card is striped for performing any banking
transactions.
Monitor:It is a screen which displays messages for erroneous operations as well as status
information.
KeyPad:It is a numeric pad which contains buttons for all digits between 0 to 9 and buttons for
Cancel , Esc, etc.
CashDispencer: This component counts the required money for withdrawal by the user and
places currency in the slot so that user can collect the money withdrawn from his bank in which
he has account.
CashContainer: This component contains the cash in ATM in the denominations of Rs.100,
Rs.500 and Rs.2000.It supplies the required currency to the CashDispencer to dispence to the
user. It is generally filled with currency by Bank Operator at the time of ATM machine
maintenance.
ReceiptPrinter: This component prints the receipt about the bank transaction performed. The
printer paper and printing ink are supplied by the Bank Operator during ATMs maintenance time.
DepositBox: This component takes the deposit amount and counts them in the order of
denominations.
BankNetwork: This component connects your ATM with the Banking Network which is a
distributed system connecting all the banks in the Bank Consortium. Based on the ATM card
details the required bank is identified with the associated branch of the bank. Here, ATM can
interact with the account the user has in this banks branch to perform banking transactoions.

The following gives operators who can work with ATM:

User/Customer: He is the person containing ATM card. He uses his ATM card to perform bank
transactions through the ATM. He stripes his ATM card with Card Reader of the ATM.
BankOperator: He is a bank employee connected with the ATM. He operates ATM. He shutdown
ATM and removes the network connection with the bank. He replenishes the required cash into
the Cash Container of ATM based on the available cash in the Cash Container. He performs the
other maintenance activities including repair of the sytem. When everything is all right, The ATM
machine will be started up and connection with the bank network is established. Now, the ATM
waits for the user indefinitely.
BankNetwork: It acts as an actor to connect your ATM with the required branch of the bank
which is part of the Bank Consortium.
The following mentions the functions an ATM can offer for the customer:-

ATM can be shutdown to replenish cash into it. Once the ATM is ready, it is started up and bank
network connection is established . By then, ATM will be waiting for customers striping of ATM card to
perform banking transactions. Here the Bank Operator performs startup and shutdown of ATM for the
purpose of its maintenance. He replenishes cash into ATM and establishes connection with the bank
network.

Here, the actor Bank Operator does the following functions of ATM:-

SystemStartup.
SystemShutdown
CashReplenishment
Maintenance
Repair.
Establish Network Connection.

Now, the customer wants to perform banking transactions, stripes the ATM card with the Card
Reader of ATM. Then, ATM asks the Customer to enter PIN (Personal Identification Number). The ATM
card details with the PIN is sent to the corresponding bank through the Bank Network for the purpose of
validation. If the validation is successful, the bank authorizes the Customer for performing bank
transactions. If either the ATM Card details or PIN invalid , then display message to the Customer that he
is not authenticated to do banking activities through Monitor of ATM. Then, ATM goes to the state of
indefinitely waiting for customers interaction. If the Customer enters wrong PIN for three consecutive
times, then the ATM card is not accepted for the whole day.

If the ATM card with PIN are valid, a message is sent to the ATM authorizing the Customer to
perform bank transactions by the Bank through Bank Network. If the Customer is authenticated, he can
perform the following banking activities such as, Balance Enquiry, Cash Withdrawal, Cash Deposit, and
Cash Transfer.

If the Customer chooses the Balance Enquiry Transaction, a message is sent to the Bank
Network and Customers Bank Account is accessed. Bank Network sends back the Account Balance
retrieving it from the customers account to the ATM. The ATM displays the account balance as message
using the monitor. If the Customer wants the printed slip, he can ask for the same by entering response
through Key Pad. Customer can collect the printed slip from the ATM once it is printed. The ATM asks for
the customer whether to perform another transaction or not. If the Customer does not choose any
transaction, the transaction is complete and ATM goes into the state, where it indefinitely waits for the
Customers interaction. If the Customer chooses to perform another transaction, the Customer can
choose any of the transaction types displayed for him , by using Key Pad.

If the Customer chooses the Cash Withdrawal Transaction, the ATM displays message to the
Customer through Monitor to enter cash amount to be withdrawn from the Bank. If the customer chooses
further action after entering cash amount, this amount is checked against the maximum amount that can
be withdrawn (typically Rs.10,000). If this customer entered amount is more than the maximum amount
allowed, the ATM displays that message on the monitor and waits for the user to enter different amount
for 2 minutes. If nothing happens for two minutes the ATM cancels the transaction and goes into the state
of waiting indefinitely for Customer interaction. If the amount entered is less than the maximum allowed,
then this amount is checked against available currency in the ATM Cash Container. If the entered amount
is larger than the available currency in the Cash Container of ATM, this transaction cannot be approved
and the corresponding message is displayed on the Monitor to the Customer. After this, ATM waits for the
entry of new amount by the customer for 2 minutes. If nothing happens for 2 minutes, the ATM terminates
the Transaction and goes into the state of waiting indefinitely for Customer interaction.

If the ATM contains the required cash, a message is sent to the bank through the Bank Network
to access Customers Account. If the amount entered is greater than the available account balance, then
this transaction is not allowed and the corresponding message is sent to the ATM through Bank Network.
The ATM displays this message to the Customer on Monitor and waits for the new amount to be entered
for two minutes. If the Customer does not respond for two minutes, then the Transaction is cancelled and
the ATM goes in to the state of waiting indefinitely for Customers interaction.

If the Customer entered amount is less than the account balance, then this transaction is
legitimate and the account is debited with the amount. A positive message is sent to the ATM from Bank
Network, then the ATM counts the required currency from the Cash Container and gives out for
Customers collection through Cash Dispenser. A corresponding message for the Customer is displayed
on to the monitor to collect the cash dispensed. If nothing happens for two minutes, the dispensed cash is
taken back by the ATM and the corresponding bank transaction is cancelled. Before dispensing cash , the
ATM may ask for choosing a printed slip of bank transaction. If the Customer chooses for the printed slip,
after cash dispensed , a slip containing the transaction details is printed for customer collection.

If Customer chooses Cash Deposit Transaction, ATM asks for the amount to be deposited into the
bank. The ATM waits for currency submission by opening Deposit Box for two minutes. If nothing happens
in two minutes, the Deposit Box will be closed and transaction is cancelled and the ATM displays the
corresponding message to the customer on the monitor. Then ATM goes into the state of waiting
indefinitely for Customers interaction. If the currency is deposited , it is counted by ATM and compares
with the amount entered. If they do not mach, the relevant message is displayed on to the monitor to the
Customer and the ATM waits for two minutes for response. If nothing happens the currency submitted by
the Customer is given back and the current bank transaction is cancelled and ATM goes into the state of
waiting indefinitely for Customers interaction.

If the amount entered matches with the currency submitted through Deposit Box , a message is
sent into the Bank Network with the amount. Then the Bank Account is credited with this amount. If the
customer wants printed slip, he can ask it by using Key Pad. Then the current transaction details with the
available balance in the bank account are printed on the slip. Then, ATM asks for another transaction if
the customer wants to continue working with the ATM. Otherwise, the current transaction is successfully
completed and the relevant message is displayed for the Customer and the ATM goes into a state of
waiting indefinitely for Customers interaction.

If the Customer chooses Cash Transfer Transaction, the ATM asks for the Customer to enter
amount for Cash Transfer and the persons ATM card number. The amount of money entered by the
Customer is checked against his account balance, so as to decide whether the transaction is legal. If the
transfer amount entered by the customer is larger than his account balance, a relevant message is
displayed to the Customer on the monitor and the ATM waits for reentry of different amount. If the
Customer does not respond for about two minutes, ATM cancels the current bank transaction and goes
into the state of waiting indefinitely for Customers interaction.

If the transfer amount entered is less than the account balance of the Customer, then the Cash
Transfer Transaction is legal. The account balance of the Customer is debited and the account balance of
the cash receiver is credited with this amount through Bank Network. If the Customer wants a printed slip
containing the details of the current transaction, he can do it so by choosing that option on the Key Pad.
After the Cash Transfer , a slip is printed and the customer can collect the same. The ATM after this
transaction may ask for another transaction from the customer. If the customer chooses no , then the
current transaction is successfully completed and the ATM goes into the state of waiting indefinitely for
Customers interaction by displaying welcome message on to the monitor.

The functions of ATM with respect to the customer can be specified as follows:-

When Customer stripes the ATM card with the Card Reader of ATM, ATM asks for PIN ,both of
these details are sent to the bank for customer authentication through Bank Network.
Customer can choose a Bank Transaction which can be any of the following types such as
Balance Enquiry, Cash Withdrawal, Cash Deposit and Cash Transfer.
During performance of a transaction, the Customers Bank account is accessed and required
modifications are made to it through Bank Network.

System Analysis:
The following use cases can be identified for the ATM system based on its functions that it offers:

The Bank Operator performs ATM system shutdown for the purpose of maintenance, cash replenishment,
and repair. He can disconnect the bank network while ATM is shutdown. When ATM is ready for operation
, he can re establish Bank Network connection after system startup. The ATM displays welcome message
on to the monitor and goes into the state of waiting indefinitely for customers interaction. The following
are the use cases identified.:-

System Shutdown use case which includes use cases such as Maintenance, Repair, and Cash
Replenishment and Disconnect Bank Network.
System Startup use case which includes use cases Connect Bank Network, Wait for User
Response.
The Customer stripes his card resulting into use cases Read Card and Accept PIN which includes
Validate Account use case.
The Customer can choose Bank Transaction use case which are of the following types such as
Balance Inquiry, Cash Withdrawal, Cash Deposit and Cash Transfer. Here, the Bank Transaction
use case includes Validate Account use case. A Bank Transaction use case may include Print Slip
use case.
ATM <<include>> Repair <<include>>
Diagnostics

<<include>> <<include>> Cash Replenishment


<<include>>
Maintenance
ATM
<<include>> <<include>>
Operator System ATM Ready Disconnect Bank
Startup Network
<<include>>

<<include>> Connect Bank


Network
Read Card
<<include>> Customer
Authentication
Accept PIN
<<include>>

Transaction

Bank
Network

Cash Cash Deposit Cash Transfer


Balance Inquiry
<<include>> <<include>> <<include>> <<include>>
Withdrawal

Validate Details
Custom
er

Вам также может понравиться