CRC Cards

ATM
Start of ATM sessionDisplay, Card reader
Get PIN from userKeyboard, Display
Get transaction choice from userKeyboard, Display
Get transaction specifics from userKeyboard, Display, Transaction
Accept deposit envelopeDisplay, Envelope slot
Dispense cashCash dispenser
Issue receipt to userReceipt printer
Return bank card to userCard reader
Keep bank cardCard reader
Require user to enter new PINKeyboard, Display
Finish ATM sessionKeyboard, Display

Card reader
Check for readable card insertedNone
Eject cardNone
Keep cardNone

Display
Display different kinds of messagesNone

Keyboard
Read PINNone
Read transaction choiceNone
Read accountNone
Read amountNone
Read cancel keyNone

Cash dispenser
Dispense cashNone

Deposit slot
Accept deposit envelopeNone

Recepit printer
Print recepit for transactionsNone

Transaction
Perform choosen transactionDeposit, Withdrawal, Transfer, Balance Inquiry transaction

Deposit transaction
Get specifics from userATM
Accept envelopeATM
Issue receipt to be printedATM

Withdrawal transaction
Get specifics from userATM
Dispense cashATM
Issue receipt to be printedATM

Transfer transaction
Get specifics from userATM
Issue receipt to be printedATM

Balance Inquiry Transaction
Get specifics from userATM
Issue receipt to be printedATM


[ ATM Requirement Specification | Finding classes | Finding responsibilities | Use cases | CRC Cards | Class Diagram | State Transition Diagram | Message Trace Diagram | Object Message Diagram ]