AUse Case diagram is a collection of related success and failurescenarios demonstrating how system actors use it to archive a certaingoal. For this exercise, the Use Cases are for all possible scenariosthat can happen when an account holder visits an ATM to perform atransaction. While the actors describe something with a role orbehaviour, for example, an organization or in this case study themain actors are the Account holder, the bank, and ATM. The primaryactor in this scene is the account holder who seeks to fulfil atransaction goal with the bank and ATM as supporting actors of thecase study. The following Use Case demonstrates how a Bank accountholder withdraws cash using the Bank ATM from his Bank account. TheUse Case major players are the Account Holder, the Bank, and the BankATM. Some of the prerequisites to withdraw cash from the Bank ATM areas follows: First, there needs to be a stable network connection tothe Bank database. The second requirement is the Bank ATM to withdrawmoney needs to have enough cash in it. In this Use Case scenario, theflowchart contains the following events:
Thefirst event (i), is the Account Holder walking to the ATM with theirATM cards, inserts the ATM card in the card slot. Second (ii), theATM checks the ATM card if it is active, if yes, it prompts theAccount holder for the PIN. (iii). The Account holder then inputstheir PIN. (iv). The Bank system authenticate the PIN entered for theAccount holder’s bank account, if authorized, the ATM systemprompts the user to choose an action from the screen menu. (v). TheATM user then selects the Deposit/ Withdraw option. (vi). The Accountholder then selects Withdrawal (vii). The ATM system retrieves theAccount holders account balance details then prompts the ATM user toinput the amount to withdraw. (viii). The ATM user then enters theamount he/she wishes to withdraw. (ix). The ATM system then verifiesif there is enough cash in the account and ATM, and the limit amountallowed for daily withdrawal from the ATM (x). The ATM system thenverifies that the ATM user has entered an amount authorized for thedaily withdrawal, and also the ATM itself has enough cash todispense. It then prompts the user if they would like the moneyallocated to be accompanied by a receipt of the withdrawaltransaction. The ATM then displays the correct amount to be dispensedthe ATM user approval.
(xi).If the selection is okay, the Bank system goes on to deduct theamount withdrawn from the Account holder and dispenses the cash(xii). The ATM card is then returned to the Account holder, and themoney dispensed accompanied by a receipt showing the amount withdrawntogether with the remaining account balance. (xiii). Finally, the ATMboots back to the primary menu for another user to perform atransaction, ending the Use Case for this scenario successfully.
Alternatively,the entered ATM card is rejected by the ATM. For this scenario theflow of events would be as follows: From the previous scenario, theevents are different for the event phases (v), (vi) and (vii). At(v), the ATM system confirms that the ATM card or entered PIN isinvalid. (vi). The ATM then prints the error message on the screenand cancels the transaction. (vii). The ATM card is returned to theAccount holder.
Anotheralternate scenario is where the Account holder passes steps (i) to(viii) and goes direct to step (ix) where it verifies that there isenough money. If there is insufficient amount in the Account holdersaccount, phases (ix) to (xii) change and consists of the followingevents (ix). The Bank system confirms there are insufficient fundsin the holder’s account for cash dispense. Then phase (x), the ATMprints the error message on the display. (xi). The ATM Cancels thetransaction and returns the ATM card to the user. (xii). Finally, theATM prints a receipt saying that the operation could not be called atthis time.
Fora successful transaction, the Account holder receives the amountwithdrawn, which is deducted from their bank account and the internalsystem logs are updated.
Figure1 the ATM cash withdrawal Use Case with all three possible scenarios.
BankUse Case scenario to demonstrate case deposit into the Accountholder’s account
Acash deposit transaction at a Bank is initialized when a customerdecides to deposit money the ATM transactions menu. First, thecustomer selects cash deposit from the list and inputs a dollaramount by keying it on the keyboard. The bank system retrieves theholder`s account information and prompts the system user to enter anamount for deposit. The system user then keys in the desired cashdeposit amount. If the user inputs an incorrect PIN, the bank systemdisapproves the transaction the system then runs the invalid PINextensions. When the entered value is accepted, the bank system thenoperates the cash deposit slot mechanism. The user then places thecash amount into the cash deposit slot and selects okay for the slotmechanism to collect the money. When prompted, the item deposit slotthen pulls in the deposited amount and confirms the amount for thebank system to add the amount to the account holder’s accountvalue. After successful transaction, the bank system displays on thescreen the new account balance and exits the user. The ATM card isthen returned to the Account holder, and a receipt is printed for asuccessful cash deposit. If the transaction fails at the cash depositslot phase, the bank system prints an error message on the screendisplaying that the operation cannot be completed at this time andreturns the card to the account holder then cancels the transaction.The second service failure can occur at the cash deposit amountphase, in case the account holder does not put the cash depositamount in the deposit slot and selects ENTER to start thetransaction. In this scenario, the bank system detects nothing at thedeposit slot and cancels the transaction while displaying the message“No cash to deposit identified.” The ATM then returns the card tothe account holder.
Figure2 the Cash deposit scenario Use Case for all possible outcomes.
Thethird scenario Use Case is when the account holder selects from thetransaction menu to transfer funds and hits ENTER to start theoperation. From the list is displayed, the account holder selects anaccount type to transfer the funds. The user then chooses the cashamount to transfer by keying in on the keyboard and selects ENTER.The bank system then validates the account number for the accountselected and the card number, the Account holder PIN, and amountchosen, which the bank system will either approve or reject thetransaction. When the transaction is approved, the ATM system issuesa success transaction receipt. However, when the transaction isdenied, either due to an incorrect PIN entered, or insufficient fundsin the holder’s account, the ATM prints an error message onto thedisplay. The bank system cancels the transaction and returns the ATMcard to the account holder with a printed receipt saying “transactioncanceled at this time.” The bank system writes a success receipt ifthe operation is successful and returns the card to the accountholder.
Figure3 Use Case scenario for cash transfer transaction.
Oneof the operations issues the Use Case scenarios demonstrate is at thetime the ATM system is full of technical and operational errors,which makes its use inconvenient. However, the bank customer lovesthis ATM system since it allows them to transact at any time unlikestanding in long lines waiting to be served. However, at the time theATM system experience errors, the banks and customers must deal withthem. As an intern software developer for the firm, I have createdthe ATM system Use Case diagrams that aid in explaining how thesystems work in all possible outcomes. The base Use Case may bestand-alone, but under extended situations depending on thebehaviours of other Use Cases.
Dhar,S. K., & Rahman, T. (2013). Case study for bank ATM queuingmodel.IOSRJournal of Mathematics (IOSR-JM), 7(1).
Karahasanović,A., Nordlander, T. E., & Schittekat, P. (2015, August).Optimization-based training in ATM. In InternationalConference on Augmented Cognition (pp.757-766). Springer International Publishing.
SenthilKumaran, U. U., Arun Kumar, S. S., & Vijaya Kumar, K. K. (2011).An Approach to Automatic Generation of Test Cases Based on Use Casesin the Requirements Phase. International Journal On Computer Science& Engineering, 3(1), 102-113.
Shelly,Rosenblatt. (2012). Systems Analysis and Design (9th ed.). Boston:Thomson Course Technology.