Object-oriented analysis
A product is to be install control software for ATM. The problem concerns the financial transaction to the following constraints.
C1: Each card has PIN. If the PIN is incorret then card reject.
C2: Deposit. Print report showing the date, amount depositted, and account number
C3: Withdraw up to $200 in units of $20 and account may not be overdrawn. Print report showing the date, amount withdraw, account number, and account balance.
C4: Determine account balance. On sreen display
C5: Transfer funds between accounts. The transfering account can not be overdraw. Print report showing the date, amount transfer, and two account number
C6: Card reject if PIN number is incorrect or quit
1.Class modeling
Stage 1: Concise Problem Definition
The ATM controlled withdraw, deposite, account balance and transfer funds. To access the account. user have to enter correct PIN number. Quit to terminated the transaction.
Stage 2: Informal Strategy
The ATM controlled withdraw, deposite, account balance and transfer funds. To access the account. user have to enter correct PIN number. Quit to terminated the transaction. Print report for any financial transaction and reject card in case of incorrect PIN number, quit or completion on the transaction.
Stage 3: Formalize the strategy
The Atm controlled withdraw, deposite, account balance and transfer funds. To access the account. user have to enter correct PIN number. Quit to terminated the transaction. Print report for any financial transaction and reject card in case of incorrect PIN number, quit or completion on the transaction.
There are three class as ATM class, Transaction class, and Report class. The problem specified four operation of financial transaction so that their four method of transaction class as Withdraw, Deposite, Balance, and Transfer class. The report also contents four method as descriped above.
2.Dynamic modeling
Dynamic model for ATM class is shown as below
Dynamic model for Transaction class is shown as below
Dynamic model for Printer class is shown as below
3. Functional modeling
Object-oriented design
1. Determine the actions of the class
Class | Attributes | Methods |
ATM | PIN number | GetPIN |
Account data structure | VerifyPIN | |
Quit | ||
Transaction | Account data structure | Withdraw |
Deposite | ||
Balance | ||
Transfer | ||
Printer | Account data structure | PrintWithdraw |
Date | PrintDeposite | |
PrintTransfer |
2. Design the product in terms of clients of objects is shown as below
3. Proceed to the detailed design
Class Name Printer Method Name PrintWithdraw Modifier, Type public void Agrument Account data structure, Date Error message Printer Error Files access none Files changed none Method called none Narrative Print withdraw slip
Class Name Printer Method Name PrintDeposite Modifier, Type public void Agrument Account data structure, Date Error message Printer Error Files access none Files changed none Method called none Narrative Print deposite slip
Class Name Printer Method Name PrintTransfer Modifier, Type public void Agrument Account data structure, Date Error message Printer Error Files access none Files changed none Method called none Narrative Print transfer funds slip
Class Name Transaction Method Name Withdraw Modifier, Type public boolean Agrument Account data structure Error message Error if overdrawn Files access user's account Files changed user's account Method called none Narrative performs withdraw from user's account
Class Name Transaction Method Name Deposite Modifier, Type public boolean Agrument Account data structure Error message error if update can not exist Files access user's account Files changed user's account Method called none Narrative performs update ba;lance in user's account
Class Name Transaction Method Name Balance Modifier, Type public boolean Agrument Account data structure Error message error in case of can not get user's account Files access user's account Files changed none Method called none Narrative Show user's account balance on monitor
Class Name Transaction Method Name Transfer Modifier, Type public boolean Agrument Account data structure of user, Account data structure of transfer account Error message error in case of failed transaction Files access user's account and transfered's account Files changed user's account and transfered's account Method called none Narrative performs transfer funds between two accounts
Class Name ATM Method Name GetPIN Modifier, Type public String Agrument none Error message error if null string Files access none Files changed none Method called none Narrative get PIN number from keypad
Class Name ATM Method Name VerifyPIN Modifier, Type public booleam Agrument user's pin as string Error message error if no card in slot Files access none Files changed none Method called none Narrative verify PIN number on card and user's enter on keypad
Class Name ATM Method Name Quit Modifier, Type public void Agrument none Error message error if card in slot Files access none Files changed none Method called none Narrative eject card from slot
Remark: main function sitted in ATM class wich call instantaneous of transaction class if PIN number are correct. In case of incorrect PIN , the software call quit method to eject card.