第一篇:基于UML的圖書館管理系統(tǒng)建模設(shè)計(jì)
基于UML的圖書館管理系統(tǒng)建模設(shè)計(jì)
一、圖書館管理系統(tǒng)可行性分析
隨著政府機(jī)關(guān)與廣大企事業(yè)單位內(nèi)部網(wǎng)絡(luò)的廣泛建立,在通用信息平臺上構(gòu)筑高效實(shí)用的協(xié)同工作和自動(dòng)化辦公應(yīng)用系統(tǒng),滿足信息高度共享和即時(shí)發(fā)布的需求,有效實(shí)現(xiàn)內(nèi)部知識管理,已成為眾多用戶的共同需求。
該圖書管理系統(tǒng),為圖書館管理提供了一個(gè)較好的解決方案。在開發(fā)過程中,按照軟件工程的步驟,從設(shè)計(jì)到開發(fā)采用了面向?qū)ο蟮乃枷牒图夹g(shù),采用了SQL SERVER 2000數(shù)據(jù)庫,使得本系統(tǒng)可以方便的和其他子系統(tǒng)進(jìn)行數(shù)據(jù)交換。同時(shí),注意從軟件的圖形應(yīng)用界面上優(yōu)化軟件質(zhì)量,使得本系統(tǒng)具有很強(qiáng)的可操作性。
二、需求分析
需求分析的目的是深入描述軟件功能和性能,確定軟件設(shè)計(jì)的約束和軟件同其他系統(tǒng)元素的接口細(xì)節(jié),定義軟件的其他有效性需求。2.
1、客戶需求分析
①能夠?qū)D書進(jìn)行注冊登記,也就是將圖書的基本信息(如:書的編號、書名、作者、價(jià)格等)預(yù)先存入數(shù)據(jù)庫中,供以后檢索。
②能夠?qū)栝喨诉M(jìn)行注冊登記,包括記錄借閱人的姓名、編號、班級、年齡、性別、地址、電話等信息。
③提供方便的查詢方法。如:以書名、作者、出版社、出版時(shí)間(確切的時(shí)間、時(shí)間段、某一時(shí)間之前、某一時(shí)間之后)等信息進(jìn)行圖書檢索,并能反映出圖書的借閱情況;以借閱人編號對借閱人信息進(jìn)行檢索;以出版社名稱查詢出版社聯(lián)系方式信息。
④提供舊書注銷功能,對于淘汰、損壞、丟失的書目可及時(shí)對數(shù)據(jù)庫進(jìn)行修改。
⑤能夠?qū)κ褂迷摴芾硐到y(tǒng)的用戶進(jìn)行管理,按照不同的工作職能提供不同的功能授權(quán)。⑥對所借圖書情況進(jìn)行登記,包括借閱時(shí)間、借閱人等 ⑦對超出借閱時(shí)間、損壞或丟失圖書的讀者進(jìn)行相應(yīng)處理 ⑧讀者可以查詢自己的信息 ⑨借書、還書、續(xù)借書
2.2 定義系統(tǒng)的邊界和范圍 該系統(tǒng)的邊界為學(xué)校的圖書館
該系統(tǒng)的范圍可包括“讀者管理子系統(tǒng)”、“書籍管理子系統(tǒng)”、“借閱管理子系統(tǒng)”、“系統(tǒng)管理子系統(tǒng)” 2.3確定執(zhí)行者
根據(jù)前面介紹的客戶需求分析可以看出?!皥D書館管理系統(tǒng)”有三個(gè)執(zhí)行者,即“讀者”、“圖書管理員”、“系統(tǒng)管理員”
1)2)讀者:查詢個(gè)人信息、查詢圖書信息、借閱圖書、返還圖書、續(xù)借圖書、接受相應(yīng)處理
圖書管理員:借書處理、還書處理、新舊書登記處理、辦理相應(yīng)處理手續(xù)
3)系統(tǒng)管理員:系統(tǒng)維護(hù)工作——學(xué)生信息管理、圖書信息管理、系統(tǒng)狀態(tài)維護(hù) 2.4確定用例
(1)“圖書館管理系統(tǒng)”中的用例
在第一層,根據(jù)客戶對“圖書館管理系統(tǒng)”的整體業(yè)務(wù)功能要求,可選的用例有:
·基本業(yè)務(wù)功能管理
·基本數(shù)據(jù)修改 ·信息查詢
·數(shù)據(jù)庫管理
(2)“基本業(yè)務(wù)功能子系統(tǒng)”中的用例
在第二層,客戶對“基本業(yè)務(wù)功能子系統(tǒng)”的整體業(yè)務(wù)功能要求,可選的用例有: ·借閱管理 ·借書
·續(xù)借書 ·還書
(3)“基本數(shù)據(jù)修改功能子系統(tǒng)”中的用例
在第二層,客戶對“基本數(shù)據(jù)修改功能子系統(tǒng)”的整體業(yè)務(wù)功能要求,可選的用例有: ·讀者信息管理 ·讀者信息錄入 ·讀者信息修改 ·讀者信息注銷 ·書籍信息管理 ·書籍信息錄入 ·書籍信息修改
·書籍信息注銷(4)“信息查詢子系統(tǒng)”中的用例
在第二層,客戶對“信息查詢子系統(tǒng)”的整體業(yè)務(wù)功能要求,可選的用例有: ·圖書信息查詢 ·讀者信息查詢
(5)“數(shù)據(jù)庫管理子系統(tǒng)”中的用例
在第二層,客戶對“數(shù)據(jù)庫管理子系統(tǒng)”的整體業(yè)務(wù)功能要求,可選的用例有: ·借閱管理 2.5分層繪制用例圖
根據(jù)系統(tǒng)需求分析中客戶對系統(tǒng)的功能要求,我們一確定了系統(tǒng)和子系統(tǒng)的邊界、執(zhí)行者和用例,現(xiàn)在就可以繪制用例圖了。
1. 最高層用例圖
根據(jù)客戶對“圖書館管理系統(tǒng)”的整體業(yè)務(wù)功能要求,可以繪制如圖1-1所示的最高層用例圖 2. 第2層用例圖
在第2層用例圖中包括四個(gè)用例圖:基本業(yè)務(wù)功能子系統(tǒng)、基本數(shù)據(jù)修改功能子系統(tǒng)、信息查詢子系統(tǒng)、數(shù)據(jù)庫管理子系統(tǒng)。如下圖所示:
System<
System讀者信息銷毀<
System借閱管理系統(tǒng)管理員圖1-5 數(shù)據(jù)庫管理子系統(tǒng)
2.6 描述用例
1.“借書”用例
用例編號:0102(共有兩層用例圖,每層用2位數(shù)字表示,采用4位編號)用例名:借書
執(zhí)行者:直接執(zhí)行者:圖書管理員,涉及到的執(zhí)行者有:讀者、系統(tǒng)管理員 目的:借閱圖書
過程描述:
(1)圖書管理員登陸基本數(shù)據(jù)修改功能子系統(tǒng),點(diǎn)擊“借閱管理”中的“借閱”(2)輸入圖書證編號
若輸入不正確,則提示“您輸入的借閱證號碼有誤,請重新輸入!”;輸入正確后,顯示讀者已借閱圖書信息,提示超期未歸還的圖書;(3)輸入圖書編號
若讀者已借滿,提示“您已借滿,請先歸還部分圖書再來借,謝謝!”;若讀者可以正常 4 借閱,提示“您確定要借閱這本書嗎?”
(4)確定借閱圖書,則借閱證號增加一條借閱信息記錄;讀者選擇 “放棄”,回到步驟(3)重新選擇圖書;
(5)讀者成功借閱圖書,系統(tǒng)管理員保存借閱記錄并修改庫存圖書數(shù)量、讀者借出數(shù)量。
(6)借閱完成,點(diǎn)擊“退出”,退出系統(tǒng)。2.“還書”用例 用例編號:0103 用例名:還書
執(zhí)行者:直接執(zhí)行者:圖書管理員,涉及到的執(zhí)行者有:讀者、系統(tǒng)管理員 目的:歸還圖書 過程描述:
(1)圖書管理員登陸基本數(shù)據(jù)修改功能子系統(tǒng),點(diǎn)擊“借閱管理”中的“還書”;(2)輸入圖書證編號;
若輸入不正確,則提示“您輸入的借閱證號碼有誤,請重新輸入!”;輸入正確后,顯示讀者已借閱圖書信息,提示超期未歸還的圖書,有超期未還的圖書,調(diào)用“超期罰款”;若讀者說自己丟失圖書,調(diào)用“丟失罰款”
(3)輸入要還的圖書編號; 若輸入錯(cuò)誤,提示“您未借閱該圖書!” 若輸入正確,提示“您確定要?dú)w還這本書嗎?”(4)讀者選擇“確定”,讀者借閱的圖書信息記錄消失;讀者選擇 “放棄”,返回到步驟(3)
(5)完成還書,點(diǎn)擊“退出”,退出系統(tǒng);
(6)讀者成功歸還圖書,系統(tǒng)管理員刪除借閱記錄,并修改數(shù)據(jù)庫管理子系統(tǒng)的圖書數(shù)量和讀者借出數(shù)量。
3.“讀者信息錄入”用例
用例編號:0302 用例名:讀者信息錄入
執(zhí)行者:直接執(zhí)行者:系統(tǒng)管理員,間接執(zhí)行者:讀者 目的:錄入新讀者相關(guān)信息,包括姓名、身份、學(xué)院 過程描述:
(1)系統(tǒng)管理員登陸基本數(shù)據(jù)修改功能子系統(tǒng),點(diǎn)擊“讀者信息錄入”(2)寫入讀者相應(yīng)信息,將讀者信息保存至數(shù)據(jù)庫
(3)發(fā)放圖書證
(4)創(chuàng)建完成,讀者信息錄入成功,在數(shù)據(jù)庫管理子系統(tǒng)增加圖書信息,退出系統(tǒng)
4.“讀者信息注銷”用例 用例編號:0303 用例名:讀者信息銷毀
執(zhí)行者:直接執(zhí)行者:系統(tǒng)管理員,間接執(zhí)行者:讀者
目的:當(dāng)讀者由于工作地點(diǎn)變化或其他原因,無需再使用圖書館的圖書資料時(shí),應(yīng)當(dāng)為其辦理注銷
過程描述:
(1)系統(tǒng)管理員登陸基本數(shù)據(jù)修改功能子系統(tǒng),點(diǎn)擊“讀者信息注銷”(2)查詢讀者的借閱記錄
若有未歸還圖書,給出提示:暫時(shí)不能注銷
否則注銷讀者,提示:注銷后,不能借閱圖書 若不確定,返回上一層界面
(3)注銷圖書證,刪除基本數(shù)據(jù)修改功能子系統(tǒng)中的讀者信息(4)注銷完成,在數(shù)據(jù)庫管理子系統(tǒng)刪除讀者信息,退出系統(tǒng) 5.“書籍信息錄入”用例 用例編號:0305 用例名:書籍信息錄入
執(zhí)行者:直接執(zhí)行者:系統(tǒng)管理員,間接執(zhí)行者:圖書管理員,數(shù)據(jù)庫管理子系統(tǒng) 目的:圖書館里的圖書根據(jù)館藏需求進(jìn)行更新 過程描述:
(1)系統(tǒng)管理員登陸基本數(shù)據(jù)修改功能子系統(tǒng),點(diǎn)擊“書籍信息錄入”
(2)寫入圖書相應(yīng)信息
(3)圖書管理員給圖書進(jìn)行分類編號,記錄條形碼信息(4)圖書管理員為圖書張貼條形碼
(5)圖書管理員檢查圖書編號是否入庫
(6)在數(shù)據(jù)庫管理子系統(tǒng)增加圖書信息,書籍信息錄入成功,退出系統(tǒng) 相應(yīng)活動(dòng)圖如下:
系統(tǒng)管理員界面圖書管理員數(shù)據(jù)庫管理子系統(tǒng)登陸基本數(shù)據(jù)修改功能子系統(tǒng)點(diǎn)擊書籍信息錄入圖書進(jìn)行分類編號,記錄條形碼信息圖書張貼條形碼檢查圖書編號是否入庫增加圖書信息[否]退出系統(tǒng)[是]
6.“書籍信息注銷”用例
用例編號:0306 用例名:書籍信息注銷
執(zhí)行者:直接執(zhí)行者:系統(tǒng)管理員,間接執(zhí)行者:圖書管理員,數(shù)據(jù)庫管理子系統(tǒng)
目的:當(dāng)圖書館里藏書,由于受到毀損或其他意外的破壞而無法再使用的情況下,需要對館藏圖書進(jìn)行注銷。過程描述:
(1)系統(tǒng)管理員登陸基本數(shù)據(jù)修改功能子系統(tǒng),點(diǎn)擊“書籍信息注銷”
(2)輸入圖書編號,若該書借閱出庫,則暫時(shí)不能注銷,提示“該書借閱中,不能注銷”;若該書未被借閱,提示“確定要注銷此書嗎?”若不確定,返回上一層界面(3)成功注銷圖書后,在數(shù)據(jù)庫管理子系統(tǒng)刪除圖書信息,退出系統(tǒng)
三、系統(tǒng)分析
3.1建立對象類(1)reader 類名:reader 類的類型:該類創(chuàng)建的對象是持久對象,存儲在服務(wù)器上的數(shù)據(jù)庫中,不可以共享 功能:負(fù)責(zé)讀者信息并對這些信息進(jìn)行處理,便于對讀者借閱信息進(jìn)行統(tǒng)一管理。屬性:讀者的編號ID(reader_id)、姓名(reader_Name)、身份(identification)、學(xué)院(academy)、所借書籍的編號(borrowed)等 操作:借書和還書、接受相應(yīng)處理
(2)system admin 類名:system admin 類的類型:該類創(chuàng)建的對象是持久對象,存儲在服務(wù)器上的數(shù)據(jù)庫中,不可以共享 屬性:編號和姓名等
操作:讀者信息管理、書籍信息管理、借閱管理、(3)books admin 類名:books admin
類的類型:該類創(chuàng)建的對象是持久對象,存儲在服務(wù)器上的數(shù)據(jù)庫中,不可以共享 屬性:編號和姓名等
操作:借閱管理、書籍信息錄入、書籍信息修改、書籍信息注銷(3)Books 類名:Books 類的類型:該類創(chuàng)建的對象是持久對象,存儲在服務(wù)器上的數(shù)據(jù)庫中,可以共享 屬性:書名、作者、書籍編碼、類別、價(jià)錢、入庫時(shí)間 操作:分類編號、記錄條形碼信息、(4)borrow 類名:borrow 類的類型:該類創(chuàng)建的對象是持久對象,存儲在服務(wù)器上的數(shù)據(jù)庫中,不可以共享 屬性:借閱書籍的編號、借閱時(shí)間、操作:借書、還書、續(xù)借書、交欠款、交罰款(5)data 類的類型:該類創(chuàng)建的對象是持久對象,存儲在服務(wù)器上的數(shù)據(jù)庫中,不可以共享 屬性:書籍信息、讀者信息、借閱信息
操作:讀者信息錄入、讀者信息修改、讀者信息注銷、書籍信息錄入、書籍信息修改、書籍信息注銷、增加借閱信息、刪除借閱信息 3.2 建立對象類圖
reader+編號+姓名+身份+學(xué)院+所借書籍的編號+借書()+還書()+接受相應(yīng)處理()data+書籍信息+讀者信息+Attribute1+讀者信息錄入()+讀者信息修改()+讀者信息注銷()+書籍信息錄入()+書籍信息修改()+書籍信息注銷()+增加借閱信息()+刪除借閱信息()system admin+編號+姓名+讀者信息管理()+書籍信息管理()+借閱管理()Books+書名+作者+書籍編碼+類別+價(jià)錢+入庫時(shí)間+分類編號()+記錄條形碼信息()borrow+借閱書籍的編號+借閱時(shí)間+借書()+還書()+續(xù)借書()+交欠款()+交罰款()books admin+編號+姓名+借閱管理()+書籍信息錄入()+書籍信息修改()+書籍信息注銷()圖2-1 圖書館管理系統(tǒng)類圖
四、系統(tǒng)設(shè)計(jì)
4.1順序圖建模
◆在“借書”用例中涉及的對象間的交互分析如下:
1)登錄系統(tǒng)。圖書管理員登陸“基本數(shù)據(jù)修改功能子系統(tǒng)”,對讀者的借書要求進(jìn)行處理。涉及的對象:
·消息的發(fā)送者:“系統(tǒng)管理員”對象 ·消息的接收者:“基本數(shù)據(jù)修改功能子系統(tǒng)借閱窗口”對象 傳遞的消息:
·消息:口令密碼()
·消息的類型:同步消息
·返回消息:口令密碼正確或出錯(cuò)信息 2)輸入圖書證編號。涉及的對象:
·消息的發(fā)送者:“基本數(shù)據(jù)修改功能子系統(tǒng)借閱窗口”對象 ·消息的接收者:“基本數(shù)據(jù)修改功能子系統(tǒng)借閱窗口”對象
傳遞的消息:
·消息:核對圖書證編號()·消息的類型:自調(diào)用消息
·返回消息:圖書證編號正確或出錯(cuò)信息 3)輸入圖書編號。涉及的對象:
·消息的發(fā)送者:“基本數(shù)據(jù)修改功能子系統(tǒng)借閱窗口”對象 ·消息的接收者:“reader”對象
傳遞的消息:
·消息:[最大借書額為0]:核對借書額()·消息的類型:同步消息
·返回消息:可以借書 4)確定借閱圖書。涉及的對象: ·消息的發(fā)送者:“reader”對象 ·消息的接收者:“reader”對象 傳遞的消息:
·消息:[確定借書]: 借閱證號增加借閱信息記錄()·消息的類型:自調(diào)用消息 ·返回消息:借書成功 5)修改數(shù)據(jù)庫。涉及的對象: ·消息的發(fā)送者:“reader”對象 ·消息的接收者:“數(shù)據(jù)庫管理系統(tǒng)借閱管理”對象
傳遞的消息:
·消息:[借書成功]: 保存借閱記錄并修改庫存圖書數(shù)量、讀者借出數(shù)量()·消息的類型:同步消息
·返回消息:退出系統(tǒng)
根據(jù)以上確立的“借書”用例圖中涉及的對象,建立“借書”用例的順序圖如圖3-1:
基本數(shù)據(jù)修改功能子系統(tǒng)借閱窗口reader數(shù)據(jù)庫管理系統(tǒng)借閱管理窗口 : 圖書管理員1 : 登錄系統(tǒng)()2 : 核對圖書證編號()3 [最大借書額為0] : :核對借書額()4 [確定借書] : 借閱證號增加借閱信息記錄()5 [借書成功] : 保存借閱記錄并修改庫存圖書數(shù)量、讀者借出數(shù)量()圖3-1 “借書”用例順序圖
◆在“還書”用例中涉及的對象間的交互分析如下:
1)登錄系統(tǒng)。圖書管理員登陸“基本數(shù)據(jù)修改功能子系統(tǒng)”,對讀者的還書要求進(jìn)行處理。涉及的對象:
·消息的發(fā)送者:“系統(tǒng)管理員”對象 ·消息的接收者:“基本數(shù)據(jù)修改功能子系統(tǒng)還書窗口”對象 傳遞的消息:
·消息:口令密碼()
·消息的類型:同步消息
·返回消息:口令密碼正確或出錯(cuò)信息
2)輸入圖書證編號。涉及的對象:
·消息的發(fā)送者:“基本數(shù)據(jù)修改功能子系統(tǒng)還書窗口”對象 ·消息的接收者:“基本數(shù)據(jù)修改功能子系統(tǒng)還書窗口”對象
傳遞的消息:
·消息:核對圖書證編號()
·消息的類型:自調(diào)用消息
·返回消息:圖書證編號正確或出錯(cuò)信息
3)超期罰款處理。涉及的對象:
·消息的發(fā)送者:“基本數(shù)據(jù)修改功能子系統(tǒng)還書窗口”對象 ·消息的接收者:“基本數(shù)據(jù)修改功能子系統(tǒng)超期罰款窗口”對象 傳遞的消息:
·消息:[超期]:超期罰款()·消息的類型:同步消息 ·返回消息:銷毀超期信息
3)丟失罰款處理。涉及的對象:
·消息的發(fā)送者:“基本數(shù)據(jù)修改功能子系統(tǒng)還書窗口”對象 ·消息的接收者:“基本數(shù)據(jù)修改功能子系統(tǒng)丟失罰款窗口”對象
傳遞的消息:
·消息:[丟失]:丟失罰款()·消息的類型:同步消息 ·返回消息:銷毀超期信息
4)輸入圖書編號。涉及的對象:
·消息的發(fā)送者:“基本數(shù)據(jù)修改功能子系統(tǒng)還書窗口”對象 ·消息的接收者:“reader”對象 傳遞的消息:
·消息:[借閱]:核對是否借閱此書()·消息的類型:同步消息 ·返回消息:是否借閱此書 5)確定還書。涉及的對象: ·消息的發(fā)送者:“reader”對象 ·消息的接收者:“reader”對象
傳遞的消息:
·消息:[確定還書]: 借閱證號刪除借閱信息記錄()·消息的類型:自調(diào)用消息 ·返回消息:還書成功
6)修改數(shù)據(jù)庫。涉及的對象:
·消息的發(fā)送者:“reader”對象 ·消息的接收者:“數(shù)據(jù)庫管理系統(tǒng)借閱管理”對象
傳遞的消息:
·消息:[還書成功]: 刪除借閱記錄并修改庫存圖書數(shù)量、讀者借出數(shù)量()·消息的類型:同步消息 ·返回消息:退出系統(tǒng)
根據(jù)以上確立的“還書”用例圖中涉及的對象,建立“還書”用例的順序圖如圖:
基本數(shù)據(jù)修改功能子系統(tǒng)還書窗口基本數(shù)據(jù)修改功能子系統(tǒng)超期罰款窗口基本數(shù)據(jù)修改功能子系統(tǒng)丟失罰款窗口reader : 圖書管理員1 : 登錄系統(tǒng)()2 : 核對圖書證編號()3 [超期] : :超期罰款()4 [丟失] : :丟失罰款()5 [借閱] : :核對是否借閱此書()6 [確定還書] : : 借閱證號刪除借閱信息記錄()
圖3-2 “還書”用例順序圖一
reader數(shù)據(jù)庫管理系統(tǒng)借閱管理5 [確定還書] : : 借閱證號刪除借閱信息記錄()6 [還書成功] : :刪除借閱記錄并修改庫存圖書數(shù)量、讀者借出數(shù)量()
圖3-3 “還書”用例順序圖二
4.2 構(gòu)件圖建模
構(gòu)件圖主要用于建立系統(tǒng)的靜態(tài)實(shí)現(xiàn)視圖模型,通過構(gòu)件之間的依賴關(guān)系描述系統(tǒng)軟件的組織結(jié)構(gòu),展示了系統(tǒng)中的不同物理構(gòu)件機(jī)器之間的聯(lián)系。
圖3-4所示的是圖書館管理系統(tǒng)部分構(gòu)件圖,圖書管理員登陸“基本數(shù)據(jù)修改功能子系統(tǒng)”并成功通過驗(yàn)證后,進(jìn)入基本數(shù)據(jù)修改功能子系統(tǒng)主界面
圖書管理員登陸驗(yàn)證基本數(shù)據(jù)修改功能子系統(tǒng)主界面續(xù)借書借書還書丟失罰款超期罰款圖3-4 基本數(shù)據(jù)修改功能子系統(tǒng)構(gòu)件圖
4.3 配置圖建模
實(shí)用配置圖定義的軟硬件結(jié)構(gòu)及通訊機(jī)制,表示軟硬件系統(tǒng)之間的合作關(guān)系;使用構(gòu)件圖描述系統(tǒng)由哪些構(gòu)件組成。
圖書館管理系統(tǒng)是一個(gè)客戶/服務(wù)器和服務(wù)器/瀏覽器相結(jié)合的系統(tǒng),可以同配置圖顯示系統(tǒng)的物理結(jié)構(gòu),如圖3-5所示:
TCP/IP應(yīng)用服務(wù)器ODBC圖3-5 圖書館管理系統(tǒng)配置圖SQL SERVER13 客戶程序數(shù)據(jù)庫服務(wù)器
第二篇:UML建模--銀行管理系統(tǒng)(范文)
銀行管理系統(tǒng)的UML
建模
課程設(shè)計(jì)報(bào)告
專業(yè):
學(xué)號:
姓名:
任課教師:
一、系統(tǒng)概述
銀行是與人們生活密切相關(guān)的一個(gè)機(jī)構(gòu),銀行可以提供存款、取款、轉(zhuǎn)賬等業(yè)務(wù)。在銀行設(shè)立賬戶的人或機(jī)構(gòu)被稱為銀行的客戶(customer)。一個(gè)客戶可以在銀行開設(shè)多個(gè)賬戶(account),客戶可以存錢到賬戶中,也可以從自己的賬戶中取錢,還可以將存款從一個(gè)賬戶轉(zhuǎn)到另一個(gè)賬戶。另外,客戶可以隨時(shí)查詢自己的賬戶情況,以及查詢以前所進(jìn)行的存款、取款等交易記錄??蛻暨€有權(quán)利要求關(guān)閉自己的賬戶。
實(shí)際生活中的銀行功能其實(shí)還要復(fù)雜得多,但為了簡化系統(tǒng),本次設(shè)計(jì)只考慮銀行的基本功能。簡化版的銀行信息系統(tǒng)至少應(yīng)具有如下功能:
1.一個(gè)銀行可以有多個(gè)賬戶; 2.一個(gè)銀行可以有多個(gè)客戶; 3.一個(gè)客戶可以持有多個(gè)賬戶; 4.一個(gè)賬戶可以有多個(gè)持有者; 5.銀行可以為客戶開設(shè)賬戶; 6.銀行可以為客戶注銷賬戶; 7.客戶可以從自己賬戶中取錢; 8.客戶可以向自己賬戶中存錢;
9.客戶可以在同一銀行的不同賬戶之間轉(zhuǎn)賬; 10.客戶可以在不同銀行的不同賬戶之間轉(zhuǎn)賬; 請完成登錄、存款、取款、轉(zhuǎn)賬和查詢幾個(gè)模塊的設(shè)計(jì)。
二、需求分析
銀行系統(tǒng)是與生活緊密相關(guān)的一個(gè)機(jī)構(gòu),銀行提供了存款、取款、轉(zhuǎn)賬等業(yè)務(wù)。在銀行設(shè)立賬戶的人或機(jī)構(gòu)通常被稱為銀行的儲戶。一個(gè)儲戶可以在銀行開多個(gè)賬戶,儲戶可以存錢到賬戶中,也可以從自己的賬戶中取現(xiàn),還可以將存款從一個(gè)賬戶轉(zhuǎn)到另一個(gè)賬戶。儲戶還可以隨時(shí)查詢自己賬戶的情況,并查詢以前所進(jìn)行的存款、取款等交易記錄。后臺管理員可以對客戶的賬戶進(jìn)行注銷、刪除、查詢等管理,還有就是銀行利息、匯率、手續(xù)費(fèi)之類參數(shù)的設(shè)置,以及財(cái)務(wù)管理以及財(cái)務(wù)分析。
軟件分別有開戶,查詢存取款,轉(zhuǎn)賬等功能。各個(gè)模塊各有不同的功能,但都能完成查詢和存取功能。各模塊的數(shù)據(jù)都存放在數(shù)據(jù)庫中。數(shù)據(jù)的調(diào)用和連接都有程序來完成。
此軟件所要完成的主要功能有三方面:如果是存款,用戶填寫存款單,然后交給收銀員鍵入系統(tǒng),同時(shí)系統(tǒng)還要記錄存款人姓名,住址,身份證號碼,存款類型,存款日期,利率及密碼(可選)等信息,完成后由系統(tǒng)反饋成功存款信息給用戶。如果是取款,用戶填寫取款的相關(guān)信息(取款金額、取款幣種)進(jìn)行提交,系統(tǒng)要求用戶輸入密碼以確認(rèn)身份,核對密碼正確無誤后系統(tǒng)計(jì)算利息并印出利息單給用戶。如果是轉(zhuǎn)賬,用戶填寫轉(zhuǎn)賬的相關(guān)信息進(jìn)行提交,系統(tǒng)要求用戶輸入密碼以確認(rèn)身份,核對密碼正確無誤后系統(tǒng)計(jì)算利息并反饋信息給用戶。系統(tǒng)及時(shí)更新數(shù)據(jù)庫。
外部功能:實(shí)現(xiàn)化窗口,開戶/銷戶、存款/取款、查詢/轉(zhuǎn)賬。
內(nèi)部功能:同步,過濾,定位,識別,更新,連接。
三、系統(tǒng)的UML基本模型
(1)、用例圖
通過分析對銀行管理系統(tǒng)的需求分析,確定參與者有銀行客戶、收銀員。收銀員具有維護(hù)系統(tǒng)信息、維護(hù)客戶信息、查詢客戶情況和處理處理客戶需求的作用。用例包括:
1)開戶、2)存款、3)取款、4)轉(zhuǎn)賬、5)查詢、6)銷戶等
(2)、用例描述:
用例名稱:銀行信息系統(tǒng)
描述:銀行客戶對需要辦理業(yè)務(wù)的需求以及收銀員對事件的處理。
(3)、銀行信息系統(tǒng)的事件流
1.用例存款的事件流
1.1 前置條件
在存款之前,客戶已經(jīng)辦理銀行賬號并且?guī)憩F(xiàn)金若干,并到達(dá)銀行網(wǎng)點(diǎn)。1.2 后置條件
如果這個(gè)用例成功,這個(gè)存款事件是成功的,否則,系統(tǒng)沒有變化。1.3 擴(kuò)充點(diǎn)
無 1.4 事件流
1.4.1 基流(1)客戶將銀行卡交給收銀員。
(2)收銀員要求客戶輸入卡密碼。
(3)客戶輸入卡密碼,并確認(rèn)密碼。
(4)收銀員提示,請客戶選擇服務(wù)類型。
(5)客戶選擇存款服務(wù)。
(6)收銀員提示:存款數(shù)目。
(7)客戶說出數(shù)目,并把錢交給收銀員。
(8)收銀員完成服務(wù)。
(9)收銀員退還卡。1.4.2 替代流
如果輸入的密碼無效,用戶可以重新輸入密碼或者終止用例。
2.用例轉(zhuǎn)賬的事件流
2.1 前置條件
在轉(zhuǎn)賬之前,客戶已經(jīng)辦理銀行賬號,被轉(zhuǎn)賬人的賬號已經(jīng)存在并且已經(jīng)知道了對方的賬號。
2.2 后置條件
如果這個(gè)用例成功,這個(gè)轉(zhuǎn)賬事件是成功的,否則,系統(tǒng)沒有變化。2.3 擴(kuò)充點(diǎn)
無 2.4 事件流
2.4.1 基流
(1)客戶填寫轉(zhuǎn)賬單。
(2)客戶把轉(zhuǎn)賬單和銀行卡交給收銀員。
(3)收銀員要求客戶輸入卡密碼。
(4)客戶輸入卡密碼,并確認(rèn)密碼。
(5)收銀員轉(zhuǎn)賬成功。
(6)收銀員退還卡。2.4.2 替代流
如果輸入的密碼無效,用戶可以重新輸入密碼或者終止用例。
3.用例查詢的事件流
3.1 前置條件
在查詢之前,客戶已經(jīng)辦理銀行賬號并且攜帶銀行卡,并到達(dá)銀行網(wǎng)點(diǎn)。3.2 后置條件
如果這個(gè)用例成功,這個(gè)查詢事件是成功的,否則,系統(tǒng)沒有變化。3.3 擴(kuò)充點(diǎn)
無 3.4 事件流
3.4.1 基流
(1)客戶將銀行卡交給收銀員。
(2)收銀員要求客戶輸入卡密碼。
(3)客戶輸入卡密碼,并確認(rèn)密碼。
(4)收銀員提示,請客戶選擇服務(wù)類型。(5)客戶選擇查詢服務(wù)。
(6)客戶說出查詢內(nèi)容,收銀員將內(nèi)容反饋給客戶。
(7)收銀員完成服務(wù)。
(8)收銀員退還卡。3.4.2 替代流
如果輸入的密碼無效,用戶可以重新輸入密碼或者終止用例。
(4)、活動(dòng)圖
活動(dòng)圖是基于對象的狀態(tài)變遷所繪制的視圖。
收銀員首先憑著自己的系統(tǒng)用戶名和密碼登錄系統(tǒng),收銀員可以通過銀行客戶提供的有效證件號開戶,提供客戶賬號開戶、存款、取款、轉(zhuǎn)賬、查詢、銷戶等功能,最后退出系統(tǒng)。
1.存款活動(dòng)圖
2.轉(zhuǎn)賬活動(dòng)圖
3.查詢活動(dòng)圖
(5)、時(shí)序圖
時(shí)序圖(Sequence Diagram)主要用于按照交互發(fā)生的一系列順序,顯示對象之間的這些交互。收銀員通過用戶賬號和密碼登錄系統(tǒng),在系統(tǒng)的操作窗口對需要存款、取款、轉(zhuǎn)賬、查詢、銷戶的用戶進(jìn)行操作,最后退出操作窗口。
我們所開發(fā)的銀行管理系統(tǒng)時(shí)序圖如圖所示:
(6)、類圖
類圖是對象結(jié)構(gòu)建模的一部分,類圖描述系統(tǒng)中類的靜態(tài)結(jié)構(gòu)。類圖是代碼生成(將模型轉(zhuǎn)化為代碼)的來源,也是逆向工程(將代碼轉(zhuǎn)化為模型)的目標(biāo)設(shè)生成物。
類圖設(shè)計(jì)如下圖:
系統(tǒng)中主要的類(1)用戶類: 它的屬性有用戶名(Name)、密碼(Password)、銀行卡號(Cardnumber)、用戶身份證號碼(ID)。
操作包括修改密碼(Changpassword)、存款(deposit)、取款(cash)、轉(zhuǎn)賬(transfer)、查詢(Chaxun)、、用戶開戶(Registered)。
(2)系統(tǒng)類:
它的屬性有電腦號(Computernumber)、機(jī)器地址(Mac)。本身的操作沒有,但有被管理員使用的操作。(3)收銀員類:
它的屬性有用戶名(name)、密碼(password)。
操作包括用戶開戶(Registeredusers)、注銷用戶(Deleteusers)、查詢用戶信息(Chaxun)、系統(tǒng)維護(hù)(Weihu)。
(7)狀態(tài)圖
狀態(tài)圖用來表示建模對象是如何改變其狀態(tài)的,狀態(tài)定義為對象行為在某一時(shí)刻的快照或轉(zhuǎn)折點(diǎn)。
四、結(jié)論
系統(tǒng)主要的實(shí)現(xiàn)目標(biāo)是實(shí)現(xiàn)客戶開戶、存款、取款、轉(zhuǎn)賬、查詢、銷戶和后臺服務(wù)器端系統(tǒng)的設(shè)計(jì),提供完善的功能設(shè)計(jì)。
五、總結(jié)及心得體會
UML工具很好的幫助我們實(shí)現(xiàn)了對銀行信息系統(tǒng)的設(shè)計(jì),通過UML建模,把事物從抽象到實(shí)例化的過程,對每個(gè)對象進(jìn)行細(xì)化分析,從而得到簡單而方便,容易理解的模型結(jié)構(gòu)。通過此次試驗(yàn)收獲很大,使我們認(rèn)識到了通過UML模型可以高效完成軟件設(shè)計(jì),收獲頗豐。
一、開發(fā)背景與目標(biāo)
1.1開發(fā)背景
本系統(tǒng)選題為銀行存儲系統(tǒng),是模擬銀行存儲開發(fā)的。隨著計(jì)算機(jī)的飛速發(fā)展及應(yīng)用領(lǐng)域的擴(kuò)大,特別是計(jì)算機(jī)網(wǎng)絡(luò)和電子商務(wù)的發(fā)展,極大的改變了商業(yè)銀行傳統(tǒng)的經(jīng)營模式。能夠?yàn)榭蛻籼峁┓奖?、快捷、安全的服?wù),也能夠有效的降低銀行的營運(yùn)成本,這是銀行存儲系統(tǒng)追求的目標(biāo)。目前,對于現(xiàn)代化銀行運(yùn)營的要求是客戶可以實(shí)現(xiàn)方便安全的業(yè)務(wù)交易,銀行職員可以進(jìn)行高效合理的工作管理,實(shí)現(xiàn)銀行業(yè)務(wù)電子化
在銀行管理系統(tǒng)中,系統(tǒng)包括4個(gè)節(jié)點(diǎn),分別是:銀行管理員業(yè)務(wù)處理節(jié)點(diǎn)、ATM自動(dòng)取款機(jī)節(jié)點(diǎn)、系統(tǒng)維護(hù)節(jié)點(diǎn)、數(shù)據(jù)庫節(jié)點(diǎn)。
銀行管理員業(yè)務(wù)處理節(jié)點(diǎn),銀行管理員通過該節(jié)點(diǎn)辦理相應(yīng)業(yè)務(wù); ATM自動(dòng)取款節(jié)點(diǎn),用戶通過該節(jié)點(diǎn)進(jìn)行自動(dòng)取款服務(wù);
系統(tǒng)維護(hù)節(jié)點(diǎn),系統(tǒng)管理員通過該節(jié)點(diǎn)進(jìn)行后臺維護(hù),執(zhí)行銀行管理員允許的所有操作;數(shù)據(jù)庫節(jié)點(diǎn),負(fù)責(zé)數(shù)據(jù)的存儲與處理。
誰使用系統(tǒng)的主要功能?誰改變系統(tǒng)的數(shù)據(jù)? 誰從系統(tǒng)獲取信息? 誰需要系統(tǒng)的支持才能完成日常的工作任務(wù)?誰負(fù)責(zé)維護(hù),管理并保持系統(tǒng)的正常運(yùn)行?系統(tǒng)需要應(yīng)付,處理那些硬件設(shè)備?系統(tǒng)需要和那些外部系統(tǒng)交互?誰(或是什么)對系統(tǒng)運(yùn)行產(chǎn)生的結(jié)果感興趣?
用例圖主要用來描述“用戶、需求、系統(tǒng)功能單元”之間的關(guān)系。它展示了一個(gè)外部用戶能夠觀察到的系統(tǒng)功能模型圖。
【用途】:幫助開發(fā)團(tuán)隊(duì)以一種可視化的方式理解系統(tǒng)的功能需求
第三篇:UML建模--銀行管理系統(tǒng)
銀行管理系統(tǒng)的UML
建模
課程設(shè)計(jì)報(bào)告
專業(yè):
學(xué)號:
姓名:
任課教師:
一、系統(tǒng)概述
銀行是與人們生活密切相關(guān)的一個(gè)機(jī)構(gòu),銀行可以提供存款、取款、轉(zhuǎn)賬等業(yè)務(wù)。在銀行設(shè)立賬戶的人或機(jī)構(gòu)被稱為銀行的客戶(customer)。一個(gè)客戶可以在銀行開設(shè)多個(gè)賬戶(account),客戶可以存錢到賬戶中,也可以從自己的賬戶中取錢,還可以將存款從一個(gè)賬戶轉(zhuǎn)到另一個(gè)賬戶。另外,客戶可以隨時(shí)查詢自己的賬戶情況,以及查詢以前所進(jìn)行的存款、取款等交易記錄??蛻暨€有權(quán)利要求關(guān)閉自己的賬戶。
實(shí)際生活中的銀行功能其實(shí)還要復(fù)雜得多,但為了簡化系統(tǒng),本次設(shè)計(jì)只考慮銀行的基本功能。簡化版的銀行信息系統(tǒng)至少應(yīng)具有如下功能:
1.一個(gè)銀行可以有多個(gè)賬戶; 2.一個(gè)銀行可以有多個(gè)客戶; 3.一個(gè)客戶可以持有多個(gè)賬戶; 4.一個(gè)賬戶可以有多個(gè)持有者; 5.銀行可以為客戶開設(shè)賬戶; 6.銀行可以為客戶注銷賬戶; 7.客戶可以從自己賬戶中取錢; 8.客戶可以向自己賬戶中存錢;
9.客戶可以在同一銀行的不同賬戶之間轉(zhuǎn)賬; 10.客戶可以在不同銀行的不同賬戶之間轉(zhuǎn)賬; 請完成登錄、存款、取款、轉(zhuǎn)賬和查詢幾個(gè)模塊的設(shè)計(jì)。
二、需求分析
銀行系統(tǒng)是與生活緊密相關(guān)的一個(gè)機(jī)構(gòu),銀行提供了存款、取款、轉(zhuǎn)賬等業(yè)務(wù)。在銀行設(shè)立賬戶的人或機(jī)構(gòu)通常被稱為銀行的儲戶。一個(gè)儲戶可以在銀行開多個(gè)賬戶,儲戶可以存錢到賬戶中,也可以從自己的賬戶中取現(xiàn),還可以將存款從一個(gè)賬戶轉(zhuǎn)到另一個(gè)賬戶。儲戶還可以隨時(shí)查詢自己賬戶的情況,并查詢以前所進(jìn)行的存款、取款等交易記錄。后臺管理員可以對客戶的賬戶進(jìn)行注銷、刪除、查詢等管理,還有就是銀行利息、匯率、手續(xù)費(fèi)之類參數(shù)的設(shè)置,以及財(cái)務(wù)管理以及財(cái)務(wù)分析。
軟件分別有開戶,查詢存取款,轉(zhuǎn)賬等功能。各個(gè)模塊各有不同的功能,但都能完成查詢和存取功能。各模塊的數(shù)據(jù)都存放在數(shù)據(jù)庫中。數(shù)據(jù)的調(diào)用和連接都有程序來完成。
此軟件所要完成的主要功能有三方面:如果是存款,用戶填寫存款單,然后交給收銀員鍵入系統(tǒng),同時(shí)系統(tǒng)還要記錄存款人姓名,住址,身份證號碼,存款類型,存款日期,利率及密碼(可選)等信息,完成后由系統(tǒng)反饋成功存款信息給用戶。如果是取款,用戶填寫取款的相關(guān)信息(取款金額、取款幣種)進(jìn)行提交,系統(tǒng)要求用戶輸入密碼以確認(rèn)身份,核對密碼正確無誤后系統(tǒng)計(jì)算利息并印出利息單給用戶。如果是轉(zhuǎn)賬,用戶填寫轉(zhuǎn)賬的相關(guān)信息進(jìn)行提交,系統(tǒng)要求用戶輸入密碼以確認(rèn)身份,核對密碼正確無誤后系統(tǒng)計(jì)算利息并反饋信息給用戶。系統(tǒng)及時(shí)更新數(shù)據(jù)庫。
外部功能:實(shí)現(xiàn)化窗口,開戶/銷戶、存款/取款、查詢/轉(zhuǎn)賬。
內(nèi)部功能:同步,過濾,定位,識別,更新,連接。
三、系統(tǒng)的UML基本模型
(1)、用例圖
通過分析對銀行管理系統(tǒng)的需求分析,確定參與者有銀行客戶、收銀員。收銀員具有維護(hù)系統(tǒng)信息、維護(hù)客戶信息、查詢客戶情況和處理處理客戶需求的作用。用例包括:
1)開戶、2)存款、3)取款、4)轉(zhuǎn)賬、5)查詢、6)銷戶等
(2)、用例描述:
用例名稱:銀行信息系統(tǒng)
描述:銀行客戶對需要辦理業(yè)務(wù)的需求以及收銀員對事件的處理。
(3)、銀行信息系統(tǒng)的事件流
1.用例存款的事件流
1.1 前置條件
在存款之前,客戶已經(jīng)辦理銀行賬號并且?guī)憩F(xiàn)金若干,并到達(dá)銀行網(wǎng)點(diǎn)。1.2 后置條件
如果這個(gè)用例成功,這個(gè)存款事件是成功的,否則,系統(tǒng)沒有變化。1.3 擴(kuò)充點(diǎn)
無 1.4 事件流
1.4.1 基流(1)客戶將銀行卡交給收銀員。
(2)收銀員要求客戶輸入卡密碼。
(3)客戶輸入卡密碼,并確認(rèn)密碼。
(4)收銀員提示,請客戶選擇服務(wù)類型。
(5)客戶選擇存款服務(wù)。
(6)收銀員提示:存款數(shù)目。
(7)客戶說出數(shù)目,并把錢交給收銀員。
(8)收銀員完成服務(wù)。
(9)收銀員退還卡。1.4.2 替代流
如果輸入的密碼無效,用戶可以重新輸入密碼或者終止用例。
2.用例轉(zhuǎn)賬的事件流
2.1 前置條件
在轉(zhuǎn)賬之前,客戶已經(jīng)辦理銀行賬號,被轉(zhuǎn)賬人的賬號已經(jīng)存在并且已經(jīng)知道了對方的賬號。
2.2 后置條件
如果這個(gè)用例成功,這個(gè)轉(zhuǎn)賬事件是成功的,否則,系統(tǒng)沒有變化。2.3 擴(kuò)充點(diǎn)
無 2.4 事件流
2.4.1 基流
(1)客戶填寫轉(zhuǎn)賬單。
(2)客戶把轉(zhuǎn)賬單和銀行卡交給收銀員。
(3)收銀員要求客戶輸入卡密碼。
(4)客戶輸入卡密碼,并確認(rèn)密碼。
(5)收銀員轉(zhuǎn)賬成功。
(6)收銀員退還卡。2.4.2 替代流
如果輸入的密碼無效,用戶可以重新輸入密碼或者終止用例。
3.用例查詢的事件流
3.1 前置條件
在查詢之前,客戶已經(jīng)辦理銀行賬號并且攜帶銀行卡,并到達(dá)銀行網(wǎng)點(diǎn)。3.2 后置條件
如果這個(gè)用例成功,這個(gè)查詢事件是成功的,否則,系統(tǒng)沒有變化。3.3 擴(kuò)充點(diǎn)
無 3.4 事件流
3.4.1 基流
(1)客戶將銀行卡交給收銀員。
(2)收銀員要求客戶輸入卡密碼。
(3)客戶輸入卡密碼,并確認(rèn)密碼。
(4)收銀員提示,請客戶選擇服務(wù)類型。(5)客戶選擇查詢服務(wù)。
(6)客戶說出查詢內(nèi)容,收銀員將內(nèi)容反饋給客戶。
(7)收銀員完成服務(wù)。
(8)收銀員退還卡。3.4.2 替代流
如果輸入的密碼無效,用戶可以重新輸入密碼或者終止用例。
(4)、活動(dòng)圖
活動(dòng)圖是基于對象的狀態(tài)變遷所繪制的視圖。
收銀員首先憑著自己的系統(tǒng)用戶名和密碼登錄系統(tǒng),收銀員可以通過銀行客戶提供的有效證件號開戶,提供客戶賬號開戶、存款、取款、轉(zhuǎn)賬、查詢、銷戶等功能,最后退出系統(tǒng)。
1.存款活動(dòng)圖
2.轉(zhuǎn)賬活動(dòng)圖
3.查詢活動(dòng)圖
(5)、時(shí)序圖
時(shí)序圖(Sequence Diagram)主要用于按照交互發(fā)生的一系列順序,顯示對象之間的這些交互。收銀員通過用戶賬號和密碼登錄系統(tǒng),在系統(tǒng)的操作窗口對需要存款、取款、轉(zhuǎn)賬、查詢、銷戶的用戶進(jìn)行操作,最后退出操作窗口。
我們所開發(fā)的銀行管理系統(tǒng)時(shí)序圖如圖所示:
(6)、類圖
類圖是對象結(jié)構(gòu)建模的一部分,類圖描述系統(tǒng)中類的靜態(tài)結(jié)構(gòu)。類圖是代碼生成(將模型轉(zhuǎn)化為代碼)的來源,也是逆向工程(將代碼轉(zhuǎn)化為模型)的目標(biāo)設(shè)生成物。
類圖設(shè)計(jì)如下圖:
系統(tǒng)中主要的類(1)用戶類: 它的屬性有用戶名(Name)、密碼(Password)、銀行卡號(Cardnumber)、用戶身份證號碼(ID)。
操作包括修改密碼(Changpassword)、存款(deposit)、取款(cash)、轉(zhuǎn)賬(transfer)、查詢(Chaxun)、、用戶開戶(Registered)。
(2)系統(tǒng)類:
它的屬性有電腦號(Computernumber)、機(jī)器地址(Mac)。本身的操作沒有,但有被管理員使用的操作。(3)收銀員類:
它的屬性有用戶名(name)、密碼(password)。操作包括用戶開戶(Registeredusers)、注銷用戶(Deleteusers)、查詢用戶信息(Chaxun)、系統(tǒng)維護(hù)(Weihu)。
(7)狀態(tài)圖
狀態(tài)圖用來表示建模對象是如何改變其狀態(tài)的,狀態(tài)定義為對象行為在某一時(shí)刻的快照或轉(zhuǎn)折點(diǎn)。
四、結(jié)論
系統(tǒng)主要的實(shí)現(xiàn)目標(biāo)是實(shí)現(xiàn)客戶開戶、存款、取款、轉(zhuǎn)賬、查詢、銷戶和后臺服務(wù)器端系統(tǒng)的設(shè)計(jì),提供完善的功能設(shè)計(jì)。
五、總結(jié)及心得體會
UML工具很好的幫助我們實(shí)現(xiàn)了對銀行信息系統(tǒng)的設(shè)計(jì),通過UML建模,把事物從抽象到實(shí)例化的過程,對每個(gè)對象進(jìn)行細(xì)化分析,從而得到簡單而方便,容易理解的模型結(jié)構(gòu)。通過此次試驗(yàn)收獲很大,使我們認(rèn)識到了通過UML模型可以高效完成軟件設(shè)計(jì),收獲頗豐。
第四篇:UML(ATM系統(tǒng))動(dòng)態(tài)建模
實(shí)驗(yàn)3 動(dòng)態(tài)建模
一、實(shí)驗(yàn)?zāi)康呐c要求 掌握分析ATM系統(tǒng)用例中用例的流程,分析對象之間的交互關(guān)系 掌握用UML設(shè)計(jì)參與對象之間的交互,用狀態(tài)圖、時(shí)序圖、協(xié)作圖和活動(dòng)圖來描述系統(tǒng)的行為。
二、實(shí)驗(yàn)設(shè)備、環(huán)境
PC(一臺),Windows 2000或以上版本,安裝Microsoft Visio 2003
三、實(shí)驗(yàn)內(nèi)容及步驟 交互圖:實(shí)現(xiàn)ATM系統(tǒng)的序列關(guān)系圖和通信(協(xié)作)關(guān)系圖; 2 分析設(shè)計(jì)軟件系統(tǒng)的狀態(tài)圖。((1)和(2)選做一個(gè)狀態(tài)圖);
(1)ATM系統(tǒng)
(2)具體題目如下:某銷售POS機(jī),它的工作流程是:當(dāng)客戶到收銀臺后,收銀員逐一輸入用戶購買的商品,輸入完之后,計(jì)算出總金額,然后等待用戶付款,確定支付成功之后,完成收銀,等待下一個(gè)客戶。請為其繪制出相應(yīng)的狀態(tài)機(jī)圖。
3分析設(shè)計(jì)ATM系統(tǒng)的活動(dòng)圖(選做1個(gè)活動(dòng)圖)。
建立動(dòng)態(tài)模型:
建立序列關(guān)系圖、狀態(tài)圖、活動(dòng)圖
步驟:
?
編寫腳本
?
確定各個(gè)對象之間的事件
?
構(gòu)造事件追蹤圖(交互圖)?
構(gòu)造狀態(tài)圖
?
添加活動(dòng)和動(dòng)作
一、時(shí)序關(guān)系圖
1)ATM系統(tǒng)的正常情況腳本
? ATM請儲戶插卡;儲戶插入一張現(xiàn)金兌換卡。? ATM接受該卡并讀它上面的卡號。
? ATM要求儲戶輸入密碼;儲戶輸入自己的密碼“1234”等數(shù)字。
? ATM請求系統(tǒng)驗(yàn)證卡號和密碼;核對儲戶密碼,然后通知顯示器顯示說這張卡有效。
? ATM要求儲戶選擇事務(wù)類型(取款、轉(zhuǎn)賬、查詢等);儲戶選擇“取款”。? ATM要求儲戶輸入取款額;儲戶輸入“880”。
? ATM確認(rèn)取款額在預(yù)先規(guī)定的限額內(nèi),然后要求處理這個(gè)事務(wù);成功處理完這項(xiàng)事務(wù)并返回該賬戶的新余額。
? ATM吐出現(xiàn)金并請儲戶拿走這些現(xiàn)金;儲戶拿走現(xiàn)金。? ATM問儲戶是否繼續(xù)這項(xiàng)事務(wù);儲戶回答“不”。
? ATM打印賬單,退出現(xiàn)金兌換卡,請儲戶拿走它們;儲戶取走賬單和卡。? ATM請儲戶插卡。
2)ATM系統(tǒng)的異常情況腳本
? ATM請儲戶插卡;儲戶插入一張現(xiàn)金兌換卡。? ATM接受該卡并順序讀它上面的數(shù)字。
? ATM要求密碼;儲戶誤輸入“8888”等數(shù)字。
? ATM請求總行驗(yàn)證卡號和密碼;經(jīng)驗(yàn)證發(fā)現(xiàn)密碼錯(cuò)誤,拒絕這張卡。? ATM顯示“密碼錯(cuò)”,并請儲戶輸入密碼;儲戶輸入“1234”等數(shù)字;ATM請求總行驗(yàn)證后知道輸入密碼正確。
? ATM要求儲戶選擇事務(wù)類型;儲戶選擇“取款”。
? ATM詢問取款額;儲戶改變主意不想取款了,按“取消”。? ATM退出現(xiàn)金兌換卡,請儲戶拿走它們;儲戶取走卡。? ATM請儲戶插卡。
ATM 腳本的事件時(shí)序圖如下圖所示:(正常情況)
用戶讀卡器顯示器ATM卡用戶賬戶事務(wù)提款機(jī)插卡讀卡初始化提示輸入密碼輸入密碼驗(yàn)證密碼獲取密碼獲取賬戶初始化提示選擇業(yè)務(wù)選擇業(yè)務(wù)執(zhí)行事務(wù)初始化提示輸入金額輸入金額獲取余額驗(yàn)證取款金額計(jì)算余額計(jì)算利息更新賬戶配給現(xiàn)金打印收據(jù)退卡
二、狀態(tài)圖
主屏]do:顯示主屏幕插卡[可讀]Do:要求密碼輸入密碼Do:驗(yàn)證賬戶繼續(xù)密碼錯(cuò)拿走卡退卡do:退卡請拿走卡插卡[不可讀]不可讀的卡do:顯示信息取消取消do:顯示取消信息無效賬戶賬戶有效Do:要求類型取消輸入類型Do:要求金額取消結(jié)束do:打印賬單Do:顯示無效賬戶信息輸入金額等待5秒Do:處理事務(wù)中止取消Do:請求繼續(xù)拿走現(xiàn)金do:吐出現(xiàn)金請拿走現(xiàn)金事務(wù)成功取消事務(wù)失敗Do:失敗信息網(wǎng)絡(luò)響應(yīng)等待網(wǎng)絡(luò)響應(yīng)中斷do:顯示取消信息ATM類的狀態(tài)圖
處理事務(wù)驗(yàn)證賬戶請求處理事務(wù)請求驗(yàn)卡事務(wù)成功事務(wù)失敗無效賬戶賬戶有效密碼錯(cuò)
事務(wù)處理狀態(tài)圖
賬戶驗(yàn)證狀態(tài)圖
三、活動(dòng)圖
插卡<沒有接收動(dòng)作>輸入密碼<沒有接收動(dòng)作>輸入賬戶類型輸入金額取卡取錢<沒有發(fā)送動(dòng)作>
四、實(shí)驗(yàn)體會
順序圖的重點(diǎn)是完成某個(gè)行為的對象類之間所傳遞的消息的時(shí)間順序。一個(gè)順序圖事務(wù)對象角色,生命線,激活期和消息構(gòu)成。協(xié)作圖用于描述系統(tǒng)的行為是如何有系統(tǒng)的成分合作實(shí)現(xiàn)的。協(xié)作時(shí)一種靜態(tài)結(jié)構(gòu),是一個(gè)系統(tǒng)對實(shí)現(xiàn)某些服務(wù)所涉及的對象及其交互的投影。一個(gè)協(xié)同定義了一組對某些服務(wù)有意義的參加者和它們的聯(lián)系,這些參加者定義了交互中的對象所扮演的角色。
第五篇:uml建模報(bào)告ATM自動(dòng)柜員機(jī)系統(tǒng)
UML建模報(bào)告
(2010 / 2011 學(xué)年 第 2學(xué)期)
題 目:
基于UML的ATM自動(dòng)
柜員機(jī)系統(tǒng)
專
業(yè):
成員:
指
導(dǎo)
教
師:
基于UML的ATM自動(dòng)柜員機(jī)系統(tǒng)建模報(bào)告
一、需求分析
(1)功能需求:
1.登陸:客戶通過輸入正確的登陸密碼即可登陸ATM。
2.取款:允許客戶取出自己賬戶中的現(xiàn)金。3.客戶存款:允許客戶把現(xiàn)金存入自己賬戶。4客戶查詢余額:允許客戶查詢自己的賬戶余額。
5客戶轉(zhuǎn)賬:允許客戶將自己賬戶中的金額轉(zhuǎn)移至另一賬戶。6客戶更改密碼:允許客戶修改自己的登錄密碼。
(2)系統(tǒng)操作要求:
1.要求用戶每次取款數(shù)額為50的整數(shù)倍;
2.要求用戶一次取款數(shù)額不得大于1000元; 3.要求用戶一天取款數(shù)額不得超過5000元; 4.要求用戶每次取款數(shù)額不得大于賬戶余額; 5.要求用戶設(shè)置的登錄密碼為6位。
(3)系統(tǒng)性能要求:
1.要求反應(yīng)時(shí)間不得大于10秒鐘; 2. 系統(tǒng)設(shè)計(jì)目標(biāo):
ATM自動(dòng)取款機(jī)可以提供24小時(shí)不間斷服務(wù),操作簡單,可以很方便為用戶提供取款、轉(zhuǎn)賬/匯款、查詢賬戶余額等服務(wù)。
(4)實(shí)現(xiàn)手段:
使用ASP.NET進(jìn)行界面設(shè)計(jì),建立一個(gè)數(shù)據(jù)庫保存客戶的賬戶信息,使用C#語言功能函數(shù)并對數(shù)據(jù)庫中的賬戶信息進(jìn)行操作。
二、總體設(shè)計(jì)
本系統(tǒng)總共分為登陸、查詢、存款、取款、轉(zhuǎn)賬、修改密碼等6個(gè)功能模塊。
1.登錄模塊:登陸模塊使用字符匹配算法,要求用戶在輸入賬號之后輸入登陸密碼,只有輸入正確的密碼才能登陸自己的賬戶。否則提示密碼錯(cuò)誤。
2.查詢模塊:用戶輸入正確的密碼后就可登陸自己的賬戶并接受服務(wù)。查詢功能允許用戶查得自己賬戶上的余額信息。
3.存款模塊:允許客戶向自己的賬戶中存入現(xiàn)金。
4.取款模塊:允許客戶從賬戶中取走現(xiàn)金,要求取出的金額不能大于所剩余款,否則提示余額不足。
5.轉(zhuǎn)賬模塊:允許客戶將自己賬戶中的金額轉(zhuǎn)移至另一賬戶。要求所轉(zhuǎn)的金額不能多于所剩余款,否則提示余額不足。
6.修改密碼模塊:允許用戶修改自己的登陸密碼,密碼仍然是6位數(shù)的,修改之后,下次登陸就應(yīng)該用新密碼。
三、詳細(xì)設(shè)計(jì) 用例圖:
類圖:
客戶取錢的協(xié)作圖:
其他功能的協(xié)作圖與此類似。
賬目類的狀態(tài)圖:
ATM系統(tǒng)的部署圖:
四、測試報(bào)告 我們在客戶數(shù)據(jù)庫中建立四個(gè)賬戶,如下:
其中四個(gè)屬性分別是客戶名、賬號、密碼、賬戶余額。打開網(wǎng)頁,進(jìn)入初始頁面:
若選擇取回磁卡,顯示如下:
1.登錄功能測試
我們選擇繼續(xù)以進(jìn)行測試,單擊測試進(jìn)入如下頁面:
若輸入不存在的賬號,則出現(xiàn)提示:
現(xiàn)在我們輸入正確的賬號,這里以08060112為例:
單擊確認(rèn),系統(tǒng)將提示客戶輸入密碼,正確的密碼是“123456”,我們輸入“333333”以進(jìn)行測試,系統(tǒng)提示密碼錯(cuò)誤:
我們輸入正確的密碼“123456”,單擊確認(rèn),則進(jìn)入交易界面:
2.查詢功能測試
單擊查詢,顯示如下
與數(shù)據(jù)庫表中的number值比較可得,結(jié)果正確。3.取款功能測試
選擇返回,回到主菜單,單擊取款,系統(tǒng)提示客戶輸入取款金額:
我們輸入300單擊確認(rèn),顯示如下
單擊確定回到主菜單,單擊查詢,顯示如下:
余額為700,說明取款成功,取款功能順利實(shí)現(xiàn)。4.轉(zhuǎn)賬功能測試
單擊返回,回到主菜單,單擊轉(zhuǎn)賬,系統(tǒng)提示用戶輸入轉(zhuǎn)入賬號,我們以轉(zhuǎn)入08060119為例:
單擊確認(rèn),系統(tǒng)提示轉(zhuǎn)賬金額,我們輸入300:
單擊確認(rèn),提示轉(zhuǎn)賬成功:
單擊確定回到主菜單,這時(shí)我們單擊查詢08060112的余額:
結(jié)果正確,我們再通過數(shù)據(jù)庫查詢08060119的余額,打開表格,右擊,執(zhí)行,顯示如下:
結(jié)果也正確,說明轉(zhuǎn)賬功能也已順利實(shí)現(xiàn)。5.存款功能測試
單擊返回回到主菜單,單擊“存款”,我們通過輸入數(shù)值來模擬放入現(xiàn)金:
單擊確認(rèn),系統(tǒng)提示操作成功:
單擊“確定”回到主菜單,單擊查詢,顯示如下:
結(jié)果正確。
6.修改密碼功能測試
單擊返回回到主菜單,單擊“修改密碼”,系統(tǒng)提示如下:
我們將密碼修改為“555555”,輸入“555555”后,提示操作成功:
單擊確定就回到主菜單。這時(shí)我們?nèi)』卮趴ㄖ匦碌卿浺詼y試密碼是否已經(jīng)修改。依舊輸入卡號08060112,單擊確認(rèn),輸入舊密碼“123456”,提示密碼錯(cuò)誤:
單擊確定,重新輸入新密碼“555555”,單擊確認(rèn),則可順利登錄到主菜單
可見,密碼已經(jīng)修改成功,另一方面,我們查看數(shù)據(jù)庫中的數(shù)據(jù),右擊,執(zhí)行,顯示如下:
可以看到賬戶08060112的password屬性已經(jīng)變?yōu)椤?55555”,因此,修改密碼功能也能順利實(shí)現(xiàn)。至此,ATM系統(tǒng)的六大功能都已通過測試并正確無誤。
五、總結(jié)
通過這次UML建模的學(xué)習(xí),我們學(xué)會了很多知識。之前我對UML建模一無所知,但現(xiàn)在我已學(xué)會了一些UML建模的基本知識,并學(xué)會了建立一些簡單的模型。
雖然只有短短的幾個(gè)禮拜,但收獲卻是很大的。首先是分析問題的能力,剛拿到這個(gè)題,總覺得無從下手,不知道題目到底要我們做什么,心里只是干著急,不知道該干嘛。經(jīng)過一周的迷茫,我們開始靜下心來,分析題目,找參考書,嘗試性地進(jìn)行編程。到第三周,我們終于做出了一個(gè)成果并且編譯沒有錯(cuò)誤。之后就是嘗試運(yùn)行,運(yùn)行的過程中出現(xiàn)很多問題。比如轉(zhuǎn)賬,修改密碼等,但經(jīng)過我們細(xì)心的測試、排查,還是找到了錯(cuò)誤的原因并進(jìn)行了糾正。因此,我們的查錯(cuò)改錯(cuò)的能力也得到了提高。最重要的是,我們通過這次實(shí)習(xí)學(xué)會了互相合作,俗話說“三個(gè)臭皮匠頂個(gè)諸葛亮”,也許我們單獨(dú)做很難完成這個(gè)程序。但是只要我們團(tuán)結(jié)一致就沒有克服不了的困難。這次實(shí)習(xí)在我們的大學(xué)生活乃至整個(gè)人生中都有著非常重要的意義,是一筆不小的財(cái)富,難忘的經(jīng)歷。我們會以此為基礎(chǔ)走好人生的每一步。
以上是我們對UML建模的學(xué)習(xí)的一點(diǎn)總結(jié),同時(shí)也是為自己的未來整理好思路,為以后的學(xué)習(xí)做好準(zhǔn)備。UML建模,教會了我很多,而我要做的,就是在以后的學(xué)習(xí)與生活中更加努力的學(xué)習(xí)來迎接它帶來的知識與挑戰(zhàn)。