Sample-Use-Case: Withdraw Money from ATM *********************************************************************** .. Description of a use case .. The description must be formulated as seen from system (not: actors) .. Describes those changes an (outside) actor can notice .. Short and abstract as possible, as long as necessary. .. Each use case must have at least one actor involved .. Each use case must have a trigger and a result Short Description ----------------------------------------------------------------------- An account holder is paid a requested amount of money and the account is charged this amount. Actor(s) ----------------------------------------------------------------------- Account holder, Accounting System Trigger(s) ----------------------------------------------------------------------- The account holder puts a debit card into the ATM slot. Result(s) ----------------------------------------------------------------------- The account holder got an amount of money. The account has been charged. The account holder got back the debit card. Incoming Data ----------------------------------------------------------------------- PIN, requested amount Outgoing Data ----------------------------------------------------------------------- Data leaving the system _during_ use case. Includes only data not existing any more after use-case has been finished. For instance screen messages, etc. Precondition(s) ----------------------------------------------------------------------- The ATM is ready to receive a debit card. Postcondition(s) ----------------------------------------------------------------------- The ATM is ready to receive a debit card. Invariant(s) ----------------------------------------------------------------------- Essential Steps ----------------------------------------------------------------------- * Authenticate account holder * Get requested amount * Check possibility to withdraw * Charge account * Pay amount Open Issues ----------------------------------------------------------------------- Remarks ----------------------------------------------------------------------- .. raw:: latex \pagebreak[4]