## Analysis Classes

An initial reading of the use cases suggests that the following will be part of the system.

- A controller object representing the ATM itself (managing the boundary objects listed below.)
- Boundary objects representing the individual component parts of the ATM:
  - Operator panel.
  - Card reader.
  - Customer console, consisting of a display and keyboard.
  - Network connection to the bank.
  - Cash dispenser.
  - Envelope acceptor.
  - Receipt printer.
- Controller objects corresponding to use cases. (Note: class ATM can handle the Startup and Shutdown use cases itself, so these do not give rise to separate objects here.)
  - Session
  - Transaction (abstract generalization, responsible for common features, with concrete specializations responsible for type-specific portions)
- An entity object representing the information encoded on the ATM card inserted by customer.
- An entity object representing the log of transactions maintained by the machine.

This leads to the following diagram of analysis classes:

#### Click on a class icon to go to links to various kinds of information about it

Page of links for non frames-enabled browsers.

###### Copyright © 2000, 2001, 2002 - Russell C. Bjork. Permission for non-commercial reproduction for educational use is hereby granted; all other rights are reserved.