【正文】
STATE_WITHDRAW_INPUT_CASH ii. 確定后,進(jìn)入下一界面。 STATE_CHOOSE_TASK 請(qǐng)選擇您所要操作的賬戶: * 賬戶 賬戶類型 賬號(hào) 余額 1 〈賬戶類型〉 〈賬號(hào)〉 余額 2 〈賬戶類型〉 〈賬號(hào)〉 余額 3 〈賬戶類型〉 〈賬號(hào)〉 余額 4 〈賬戶類型〉 〈賬號(hào)〉 余額 取回磁卡 由于密碼輸入錯(cuò)誤,您的磁卡 已被沒(méi)收, 請(qǐng)持您的有效證件于銀行內(nèi)部領(lǐng)取磁卡 密碼輸入錯(cuò)誤 , 請(qǐng) 重新 輸入密碼: ************** 取回磁卡 29 當(dāng)用戶選擇 操作 后,界面進(jìn)入各操作界面。 STATE_RETAIN_CARD 用戶輸入正確的密碼后,則可以登陸進(jìn)入 賬戶選擇界面 。STATE_INPUT_PIN_AGAIN *****銀行 Wele … .. 請(qǐng) 插入磁卡 請(qǐng)輸入密碼: ************** 取回磁卡 確認(rèn) 28 系統(tǒng)一共允許用戶輸入一定次數(shù)密碼,如果這幾次輸入密碼都不正確,則顯示 “磁卡被沒(méi)收”提示界面 。 STATE_WELCOME 當(dāng)用戶插入磁卡時(shí),屏幕顯示 “要求輸入密碼”界面 。 5. 2 順序圖 ⑴ Session 19 : C C a r d R e a d e r : C S e s s i o n : C C u s t o m e r C o n s o l e : C T a s k : C N e t T o B a n k : C L o g w h i l e c a n 39。 戶與轉(zhuǎn)出賬戶是否屬于同一銀行,如是,則執(zhí)行分支流( S1),如屬于不同銀行,則執(zhí)行( E2) . ⅱ .替代流 E1:若賬戶不存在或無(wú)效,系統(tǒng)顯示信息, 客戶可以重新輸入或終止用例。 ,并更新賬戶的相關(guān)信息。 。 ⑷事件流 ⅰ .主事件流 客戶向系統(tǒng)輸入轉(zhuǎn)帳命令時(shí),用例啟動(dòng)。 ⑶后置條件 若用例成功,則客戶賬戶中存款金額變化。 18 ④ Transfer(轉(zhuǎn)賬) ⑴簡(jiǎn)要說(shuō)明 本用例描述了客戶如何將資金從一個(gè)賬戶轉(zhuǎn)到另一個(gè)賬戶。 ⅱ .替代流 E1:若賬戶不存在或無(wú)效, 系統(tǒng)顯示信息,客戶可以重新輸入或終止用例。 ,系統(tǒng)確認(rèn)賬戶存在并有效( E1), 賬戶余額是否夠支付( E2)。 ⑷事件流 ⅰ .主事件流 客戶向系統(tǒng)輸入取款金額時(shí),用例啟動(dòng)。 ⑶后置條件 若用例成功,則客戶賬戶中存款金額減少。 ③ Withdraw(取款) ⑴簡(jiǎn)要說(shuō)明 本用例描述了客戶如何取款。 C. 系統(tǒng)建立存款事件記錄,并更新賬戶的相關(guān)信息。 A. 系統(tǒng)提示客戶輸入賬號(hào)和存款金額。否則,系統(tǒng)狀態(tài)不 17 變。 ⑵前提條件 在本用例開(kāi)始前,客戶必須已經(jīng)登錄到系統(tǒng)中。 ⅱ .替代流 E1:若密碼輸入無(wú)效,系統(tǒng)提示錯(cuò)誤信息, 客戶可以重新輸入或終止用例。 B. 客戶輸入自己的密碼,提交。 ⑷事件流 ⅰ .主事件流 當(dāng)客戶插入 ATM卡到機(jī)器中時(shí),用例 Session啟動(dòng)。 ⑶后置條件 若成功,則客戶登錄到系統(tǒng)中。 8 3. 3 Use Case Diagram(系統(tǒng)用例圖) Q u e r y A c c o u n tW it h D r a wD e p o s itT r a n s f e rC h a n g e P I NC u s t o m e rP r in t R e c e i p tS e s s io nB a n k S e r v eT a s k u s e s u s e s 4.靜態(tài)結(jié)構(gòu)模型 4. 1 類的分析 9 4. 2 CRC 邊界類: 1. CcardReader a) Responsibility: i. Tell ATM When Card is Inserted ii. Eject Card iii. Read info from card iv. Retain card b) Collaborations: 10 i. ATM ii. Session iii. Card 2. CcashDispenser a) Responsibility: i. Dispense cash ii. Keep the amount of cash available iii. Init cash amount b) Collaborations: i. Clog ii. CTransaction 3. CCustomerConsole a) Responsibility: i. Display messages ii. Display menu and receive a choice iii. Display a prompt and receive a PIN iv. Display a prompt and receive the amount of money v. Display a dialog and receive the response b) Collaborations: i. CTransaction