Final Project: State Machine Diagram for ATM System Design

Verified

Added on  2022/08/12

|4
|471
|32
Project
AI Summary
This assignment presents a project plan for creating a state machine diagram for an Automated Teller Machine (ATM) system. The project involves designing the ATM system using UML, focusing on the customer authentication process, PIN verification, and transaction flows. The system includes classes such as Bank, ATM, Customer, Account, Debit Card, and ATM Transaction, along with their respective attributes. The state machine diagram is used to model the dynamic behavior of the ATM, detailing states like PIN verification (correct or incorrect), transaction processing, and account management. The project also covers scenarios such as handling incorrect PIN attempts, zero balance accounts, and card ejection. The provided solution includes references to relevant research papers and articles that support the project.
Document Page
Running head: STATE MACHINE DIAGRAM FOR ATM
STATE MACHINE DIAGRAM FOR ATM
Student
Course
Instructor
Date
tabler-icon-diamond-filled.svg

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
Running head: STATE MACHINE DIAGRAM FOR ATM
STATE MACHINE DIAGRAM FOR ATM
Part 1: Project Plan
For this final project, the project plan is chosen to create a state machine diagram for
the automated teller machine (ATM) (Wcislik, Suchenia & Łaskawski, 2015). For this, first,
create the appropriate classes which will represent the System that is ATM. Also, recognize
the attributes which will be needed to generate this system. First, the state machine diagram is
created to design the ATM system.
In this system, there are some requirements are present. First, the consumer needs to pass the
authentication formerly to withdraw the money. This authentication is executed by testing the
PIN of the ATM. If the PIN is correct, then the transaction proceeds further. If the PIN is
incorrect or bad then the card is ejected from the machine. The number of attempts for the
unproductive efforts is calculated. If the counter goes above the boundary of this attempt,
then the consumer is rejected by the machine. If the balance of the consumer’s account is
zero, then the account of the consumer is sealed. To implement this, a class named Bank is
created that has the attributes code and address (Dhineshkumar, 2014). Another class named
ATM is present that has the attributes named location and managed by. Another class is
present named Customer that has the attributes name, address and dob. The account is the
class that has attributes named type and owner. Debit Card is another class that has the
attributes named cardNo and ownnedBy. The ATM Transaction class has the attributes
named transactionId, date and type. Withdrawal transaction is another class has attribute
amount and Transfer Transaction is another class, has attribute amount and accountNo. Bank
maintains the ATM and manages the Debit Card also it has the Customer. Customer owns
Account and Debit Card. Debit Card provides access to the Account. ATM identifies the
Document Page
Running head: STATE MACHINE DIAGRAM FOR ATM
ATM Transaction that is generalized by Withdrawal transaction and Transfer Transaction. By
these classes and attributes, the ATM system is generated.
Document Page
Running head: STATE MACHINE DIAGRAM FOR ATM
References
Dhineshkumar, M. (2014, March). An approach to generate test cases from sequence
diagram. In 2014 International Conference on Intelligent Computing Applications
(pp. 345-349). IEEE.
Wcislik, M., Suchenia, K., & Łaskawski, M. (2015). Programming of sequential control
systems using functional block diagram language. IFAC-PapersOnLine, 48(4), 330-
335.
chevron_up_icon
1 out of 4
circle_padding
hide_on_mobile
zoom_out_icon
[object Object]