Analysis Model for a Simple Automatic Teller Machine (ATM)

Client: Bank of Antarctica
Developer: CyberSystems.com
Author: Keith Richards

Introduction

The Simple ATM allows account holders to make deposits to and withdraw funds from any accounts held at any branch of the Bank of Antarctica.

Detailed requirements can be found in the functional specification document.

The Analysis Model

Boundaries

Cash Dispenser

interface CashDispenser {
   void dispense(Money amount) throws InsufficientFunds;
}

Card Reader

interface CardReader {
   int getPIN();
   Bank getBank();
   void ejectCard();
}

Terminal

interface Terminal {
   void display(String message);
   String getCommand();
}

Deposit Slot

interface DepositSlot {
   void activate();
}

Bank Gateway

interface BankGateway {
   void debit(Account account, Money amount) throws Exception;
   void credit(Account account, Money amount) throws Exception;
}

Entities

No entities in this model!

Controllers

 

ATM Controller

External Dynamics

Internal Dynamics

Withdraw Controller

External Dynamics
Internal Dynamics

Deposit Controller

External Dynamics

Internal Dynamics

Revision History

Revision

Revised by

Date

1.0

Richards

7/30/2009

1.1

Jagger

8/8/2009

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Appendices