RationalDB   Tweet
OOPortal RedhatLinuxSysAdmin




UML  «Prev  Next»
Lesson 10The use case narrative, part 2
ObjectiveWrite a Use Case Narrative for the Withdraw of Cash
Here is a sample use case narrative for the Withdraw Cash use case from the checking account example earlier in this module. Note that all the elements discussed in the previous lesson are included.
Use case narrative
Name Withdraw Cash
Number 11.0
Author Gregor Hohpe
Last update 4/1/2008
Assumptions The user has provided a valid card and password.
Pre-conditions  
Use case description  
Use case initialization This use case starts on demand.
Use case dialog The system asks for the withdrawal amount.
The user provides an amount.
The ATM verifies that the amount is within the predefined policy limits and is an amount divisible by the defined denomination, for example, multiples of $20.00. If the amount fails these requirements, the user receives an error message.
Otherwise:
The ATM attempts to connect with the bank.
If the connection is not successful, the user receives an error message.
If the funds are available, the ATM gives the user their money and prints a receipt.
If the funds are not available, the user gets an error message.
Use case termination This use case ends when:
  1. The system dispenses the cash and prints the receipt.
  2. The system displays the message that the entered amount is invalid.
  3. The system displays the message that it could not connect with the bank.
  4. The user cancels the transaction.
Post-conditions Upon successful completion of the withdrawal:
  1. The system prints the final outcome on the receipt.
    a) The bank account is updated.
    b) The transaction is logged
  2. Upon an error condition, the ATM returns to its initial state.
  3. Upon receiving the Cancel option, the ATM returns to its initial state .

In the next lesson, use case scenarios will be discussed.
Use Case Narrative - Exercise
Click the Exercise link below to write a use case narrative for the course project.
Use Case Narrative - Exercise