ATM Adv. SW Engineering
-
Upload
peter-cook -
Category
Documents
-
view
213 -
download
0
Transcript of ATM Adv. SW Engineering
ATM
Adv. SW Engineering
http://www.math-cs.gordon.edu/courses/cps211/ATMExample/
Requirement Phase
Textual Requirement Documentation
Use Case Diagram
Use Case Diagram
Use Case Description
System Startup Use Case
The system is started up when the operator turns the operator switch to the "on" position. The operator will be asked to enter the amount of money currently in the cash dispenser, and a connection to the bank will be established. Then the servicing of customers can begin. <see Interaction Diagram>
System Shutdown Use Case
The system is shut down when the operator makes sure that no customer is using the machine, and then turns the operator switch to the "off" position. The connection to the bank will be shut down. Then the operator is free to remove deposited envelopes, replenish cash and paper, etc. <see Interaction Diagram>
Analysis Phase
Detailed Use Case Diagram
Initial Function Tests
Analysis Classes
Initial Functional Test Cases(Examples)
Use Case Function Being Tested Initial System State Input Expected Output
System StartupSystem is started when the
switch is turned "on"System is off Activate the "on" switch
System requests initial cash amount
System StartupSystem accepts initial cash
amountSystem is requesting cash
amountEnter a legitimate
amountSystem is on
System StartupConnection to the bank is
establishedSystem has just been
turned onPerform a legitimate
inquiry transaction
System output should demonstrate that a connection has been established to the Bank
System ShutdownSystem is shut down when the
switch is turned "off"System is on and not
servicing a customerActivate the "off" switch System is off
System ShutdownConnection to the Bank is
terminated when the system is shut down
System has just been shut down
Verify from the bank side that a
connection to the ATM no longer exists
SessionSystem reads a customer's ATM
cardSystem is on and not
servicing a customerInsert a readable card
Card is accepted;System asks for entry of PIN
SessionSystem rejects an unreadable
cardSystem is on and not
servicing a customerInsert an unreadable
card
Card is ejected;System displays an error screen;System is ready to start a new session
Session System accepts customer's PINSystem is asking for entry
of PINEnter a PIN
System displays a menu of transaction types
SessionSystem allows customer to
perform a transactionSystem is displaying menu
of transaction typesPerform a transaction
System asks whether customer wants another transaction
Analysis Class
Design Phase
CRC CardsClass DiagramState Charts
Interaction Diagrams
Class Diagram
State Chart for One Session
State Chart for One Session (cont.)
Italicized operations are Unique to each particular type of transaction
System Startup Sequence Diagram
System Shutdown Sequence Diagram
Session Sequence Diagram
Transaction Sequence Diagram
Withdrawal Transaction Collaboration
Deposit Transaction Collaboration
Transfer Transaction Collaboration
Inquiry Transaction Collaboration
Invalid PIN Extension Collaboration
Detailed Design & Implementation
Detailed Class Diagram
Package Diagram
Code
All other classes from class diagram must be done in the same way.
Package Diagram