第一篇:基于UML的綜合設(shè)計(jì)--圖書(shū)館
實(shí)驗(yàn)三 基于UML的綜合設(shè)計(jì)
[實(shí)驗(yàn)名稱(chēng)]
基于UML的綜合設(shè)計(jì) [實(shí)驗(yàn)?zāi)康腯
1、熟練使用Rational rose2003或其它UML建模工具。
2、綜合應(yīng)用用例圖、類(lèi)圖、序列圖、活動(dòng)圖和狀態(tài)圖進(jìn)行面向?qū)ο蟮姆治龊驮O(shè)計(jì)。
[實(shí)驗(yàn)內(nèi)容] 題目:圖書(shū)管理系統(tǒng)的分析和設(shè)計(jì)
描述:在一個(gè)圖書(shū)館中,書(shū)可外借1個(gè)月,期刊可外借3天,學(xué)生可以預(yù)約已被借出的書(shū)。當(dāng)一本書(shū)被歸還時(shí),如果已經(jīng)有學(xué)生預(yù)約了這本書(shū),則這本書(shū)將放在大廳中的借書(shū)處,否則放回書(shū)庫(kù)。倘若過(guò)了預(yù)約期限還沒(méi)有人來(lái)取,預(yù)約的書(shū)也將放回書(shū)庫(kù)。圖書(shū)館工作人員由1位領(lǐng)導(dǎo)、20位正式的圖書(shū)管理員和10位學(xué)生圖書(shū)管理員(幫助大廳借書(shū)處或書(shū)庫(kù)中工作的正式圖書(shū)管理員)組成。在任何時(shí)候,大廳中的借書(shū)處有兩位正式的圖書(shū)管理員、兩位學(xué)生管理員以及另外可能是領(lǐng)導(dǎo)、學(xué)生圖書(shū)管理員或正式圖書(shū)管理員的人。正式圖書(shū)管理員負(fù)責(zé)監(jiān)督學(xué)生圖書(shū)管理員并向領(lǐng)導(dǎo)匯報(bào)工作。該圖書(shū)館準(zhǔn)備開(kāi)發(fā)一個(gè)圖書(shū)借閱系統(tǒng),學(xué)生可以利用該系統(tǒng)借書(shū)。在使用該系統(tǒng)時(shí),如果想借的書(shū)在圖書(shū)館,這本書(shū)將借給借閱者。該系統(tǒng)由一個(gè)擴(kuò)展版供圖書(shū)館管理員們維護(hù)圖書(shū)館的數(shù)據(jù)庫(kù)并跟蹤借閱情況和發(fā)送過(guò)期通知。
完成:
1)給出學(xué)生使用該系統(tǒng)的用例圖; 2)給出描述學(xué)生借書(shū)的序列圖; 3)給出描述圖書(shū)館中工作人員的類(lèi)圖; 4)給出一本書(shū)在流通過(guò)程中的狀態(tài)圖; 5)為每個(gè)用例制作活動(dòng)圖。1.學(xué)生使用用例圖
借書(shū)/還書(shū)預(yù)定/解除預(yù)定圖書(shū)檢索圖書(shū)信息管理圖書(shū)訂購(gòu)借閱信息查詢(xún)個(gè)人信息查詢(xún)/修改讀者信息管理 讀者借閱超期罰款 圖書(shū)管理員系統(tǒng)管理
2.學(xué)生借書(shū)的序列圖
圖書(shū)管理員讀者信息圖書(shū)信息修改圖書(shū)借出刷卡進(jìn)入并選書(shū)核對(duì)讀者信息 圖書(shū)掃描并消磁修改讀者借閱信息 3.圖書(shū)館中工作人員的類(lèi)圖
4.活動(dòng)圖。
:圖書(shū)管理員:借出窗口:書(shū)目:書(shū)籍:借閱者:借出書(shū)籍1:登錄系統(tǒng)()2:查詢(xún)書(shū)目()3:查找書(shū)籍(書(shū)目)4:Available5:鑒定借閱者()6:建立預(yù)約()
三.實(shí)驗(yàn)心得
這次實(shí)驗(yàn)讓我學(xué)會(huì)了很多的知識(shí)。
第二篇:基于UML的圖書(shū)館管理系統(tǒng)建模設(shè)計(jì)
基于UML的圖書(shū)館管理系統(tǒng)建模設(shè)計(jì)
一、圖書(shū)館管理系統(tǒng)可行性分析
隨著政府機(jī)關(guān)與廣大企事業(yè)單位內(nèi)部網(wǎng)絡(luò)的廣泛建立,在通用信息平臺(tái)上構(gòu)筑高效實(shí)用的協(xié)同工作和自動(dòng)化辦公應(yīng)用系統(tǒng),滿(mǎn)足信息高度共享和即時(shí)發(fā)布的需求,有效實(shí)現(xiàn)內(nèi)部知識(shí)管理,已成為眾多用戶(hù)的共同需求。
該圖書(shū)管理系統(tǒng),為圖書(shū)館管理提供了一個(gè)較好的解決方案。在開(kāi)發(fā)過(guò)程中,按照軟件工程的步驟,從設(shè)計(jì)到開(kāi)發(fā)采用了面向?qū)ο蟮乃枷牒图夹g(shù),采用了SQL SERVER 2000數(shù)據(jù)庫(kù),使得本系統(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、客戶(hù)需求分析
①能夠?qū)D書(shū)進(jìn)行注冊(cè)登記,也就是將圖書(shū)的基本信息(如:書(shū)的編號(hào)、書(shū)名、作者、價(jià)格等)預(yù)先存入數(shù)據(jù)庫(kù)中,供以后檢索。
②能夠?qū)栝喨诉M(jìn)行注冊(cè)登記,包括記錄借閱人的姓名、編號(hào)、班級(jí)、年齡、性別、地址、電話(huà)等信息。
③提供方便的查詢(xún)方法。如:以書(shū)名、作者、出版社、出版時(shí)間(確切的時(shí)間、時(shí)間段、某一時(shí)間之前、某一時(shí)間之后)等信息進(jìn)行圖書(shū)檢索,并能反映出圖書(shū)的借閱情況;以借閱人編號(hào)對(duì)借閱人信息進(jìn)行檢索;以出版社名稱(chēng)查詢(xún)出版社聯(lián)系方式信息。
④提供舊書(shū)注銷(xiāo)功能,對(duì)于淘汰、損壞、丟失的書(shū)目可及時(shí)對(duì)數(shù)據(jù)庫(kù)進(jìn)行修改。
⑤能夠?qū)κ褂迷摴芾硐到y(tǒng)的用戶(hù)進(jìn)行管理,按照不同的工作職能提供不同的功能授權(quán)。⑥對(duì)所借圖書(shū)情況進(jìn)行登記,包括借閱時(shí)間、借閱人等 ⑦對(duì)超出借閱時(shí)間、損壞或丟失圖書(shū)的讀者進(jìn)行相應(yīng)處理 ⑧讀者可以查詢(xún)自己的信息 ⑨借書(shū)、還書(shū)、續(xù)借書(shū)
2.2 定義系統(tǒng)的邊界和范圍 該系統(tǒng)的邊界為學(xué)校的圖書(shū)館
該系統(tǒng)的范圍可包括“讀者管理子系統(tǒng)”、“書(shū)籍管理子系統(tǒng)”、“借閱管理子系統(tǒng)”、“系統(tǒng)管理子系統(tǒng)” 2.3確定執(zhí)行者
根據(jù)前面介紹的客戶(hù)需求分析可以看出。“圖書(shū)館管理系統(tǒng)”有三個(gè)執(zhí)行者,即“讀者”、“圖書(shū)管理員”、“系統(tǒng)管理員”
1)2)讀者:查詢(xún)個(gè)人信息、查詢(xún)圖書(shū)信息、借閱圖書(shū)、返還圖書(shū)、續(xù)借圖書(shū)、接受相應(yīng)處理
圖書(shū)管理員:借書(shū)處理、還書(shū)處理、新舊書(shū)登記處理、辦理相應(yīng)處理手續(xù)
3)系統(tǒng)管理員:系統(tǒng)維護(hù)工作——學(xué)生信息管理、圖書(shū)信息管理、系統(tǒng)狀態(tài)維護(hù) 2.4確定用例
(1)“圖書(shū)館管理系統(tǒng)”中的用例
在第一層,根據(jù)客戶(hù)對(duì)“圖書(shū)館管理系統(tǒng)”的整體業(yè)務(wù)功能要求,可選的用例有:
·基本業(yè)務(wù)功能管理
·基本數(shù)據(jù)修改 ·信息查詢(xún)
·數(shù)據(jù)庫(kù)管理
(2)“基本業(yè)務(wù)功能子系統(tǒng)”中的用例
在第二層,客戶(hù)對(duì)“基本業(yè)務(wù)功能子系統(tǒng)”的整體業(yè)務(wù)功能要求,可選的用例有: ·借閱管理 ·借書(shū)
·續(xù)借書(shū) ·還書(shū)
(3)“基本數(shù)據(jù)修改功能子系統(tǒng)”中的用例
在第二層,客戶(hù)對(duì)“基本數(shù)據(jù)修改功能子系統(tǒng)”的整體業(yè)務(wù)功能要求,可選的用例有: ·讀者信息管理 ·讀者信息錄入 ·讀者信息修改 ·讀者信息注銷(xiāo) ·書(shū)籍信息管理 ·書(shū)籍信息錄入 ·書(shū)籍信息修改
·書(shū)籍信息注銷(xiāo)(4)“信息查詢(xún)子系統(tǒng)”中的用例
在第二層,客戶(hù)對(duì)“信息查詢(xún)子系統(tǒng)”的整體業(yè)務(wù)功能要求,可選的用例有: ·圖書(shū)信息查詢(xún) ·讀者信息查詢(xún)
(5)“數(shù)據(jù)庫(kù)管理子系統(tǒng)”中的用例
在第二層,客戶(hù)對(duì)“數(shù)據(jù)庫(kù)管理子系統(tǒng)”的整體業(yè)務(wù)功能要求,可選的用例有: ·借閱管理 2.5分層繪制用例圖
根據(jù)系統(tǒng)需求分析中客戶(hù)對(duì)系統(tǒng)的功能要求,我們一確定了系統(tǒng)和子系統(tǒng)的邊界、執(zhí)行者和用例,現(xiàn)在就可以繪制用例圖了。
1. 最高層用例圖
根據(jù)客戶(hù)對(duì)“圖書(shū)館管理系統(tǒng)”的整體業(yè)務(wù)功能要求,可以繪制如圖1-1所示的最高層用例圖 2. 第2層用例圖
在第2層用例圖中包括四個(gè)用例圖:基本業(yè)務(wù)功能子系統(tǒng)、基本數(shù)據(jù)修改功能子系統(tǒng)、信息查詢(xún)子系統(tǒng)、數(shù)據(jù)庫(kù)管理子系統(tǒng)。如下圖所示:
System<
System讀者信息銷(xiāo)毀<
System借閱管理系統(tǒng)管理員圖1-5 數(shù)據(jù)庫(kù)管理子系統(tǒng)
2.6 描述用例
1.“借書(shū)”用例
用例編號(hào):0102(共有兩層用例圖,每層用2位數(shù)字表示,采用4位編號(hào))用例名:借書(shū)
執(zhí)行者:直接執(zhí)行者:圖書(shū)管理員,涉及到的執(zhí)行者有:讀者、系統(tǒng)管理員 目的:借閱圖書(shū)
過(guò)程描述:
(1)圖書(shū)管理員登陸基本數(shù)據(jù)修改功能子系統(tǒng),點(diǎn)擊“借閱管理”中的“借閱”(2)輸入圖書(shū)證編號(hào)
若輸入不正確,則提示“您輸入的借閱證號(hào)碼有誤,請(qǐng)重新輸入!”;輸入正確后,顯示讀者已借閱圖書(shū)信息,提示超期未歸還的圖書(shū);(3)輸入圖書(shū)編號(hào)
若讀者已借滿(mǎn),提示“您已借滿(mǎn),請(qǐng)先歸還部分圖書(shū)再來(lái)借,謝謝!”;若讀者可以正常 4 借閱,提示“您確定要借閱這本書(shū)嗎?”
(4)確定借閱圖書(shū),則借閱證號(hào)增加一條借閱信息記錄;讀者選擇 “放棄”,回到步驟(3)重新選擇圖書(shū);
(5)讀者成功借閱圖書(shū),系統(tǒng)管理員保存借閱記錄并修改庫(kù)存圖書(shū)數(shù)量、讀者借出數(shù)量。
(6)借閱完成,點(diǎn)擊“退出”,退出系統(tǒng)。2.“還書(shū)”用例 用例編號(hào):0103 用例名:還書(shū)
執(zhí)行者:直接執(zhí)行者:圖書(shū)管理員,涉及到的執(zhí)行者有:讀者、系統(tǒng)管理員 目的:歸還圖書(shū) 過(guò)程描述:
(1)圖書(shū)管理員登陸基本數(shù)據(jù)修改功能子系統(tǒng),點(diǎn)擊“借閱管理”中的“還書(shū)”;(2)輸入圖書(shū)證編號(hào);
若輸入不正確,則提示“您輸入的借閱證號(hào)碼有誤,請(qǐng)重新輸入!”;輸入正確后,顯示讀者已借閱圖書(shū)信息,提示超期未歸還的圖書(shū),有超期未還的圖書(shū),調(diào)用“超期罰款”;若讀者說(shuō)自己丟失圖書(shū),調(diào)用“丟失罰款”
(3)輸入要還的圖書(shū)編號(hào); 若輸入錯(cuò)誤,提示“您未借閱該圖書(shū)!” 若輸入正確,提示“您確定要?dú)w還這本書(shū)嗎?”(4)讀者選擇“確定”,讀者借閱的圖書(shū)信息記錄消失;讀者選擇 “放棄”,返回到步驟(3)
(5)完成還書(shū),點(diǎn)擊“退出”,退出系統(tǒng);
(6)讀者成功歸還圖書(shū),系統(tǒng)管理員刪除借閱記錄,并修改數(shù)據(jù)庫(kù)管理子系統(tǒng)的圖書(shū)數(shù)量和讀者借出數(shù)量。
3.“讀者信息錄入”用例
用例編號(hào):0302 用例名:讀者信息錄入
執(zhí)行者:直接執(zhí)行者:系統(tǒng)管理員,間接執(zhí)行者:讀者 目的:錄入新讀者相關(guān)信息,包括姓名、身份、學(xué)院 過(guò)程描述:
(1)系統(tǒng)管理員登陸基本數(shù)據(jù)修改功能子系統(tǒng),點(diǎn)擊“讀者信息錄入”(2)寫(xiě)入讀者相應(yīng)信息,將讀者信息保存至數(shù)據(jù)庫(kù)
(3)發(fā)放圖書(shū)證
(4)創(chuàng)建完成,讀者信息錄入成功,在數(shù)據(jù)庫(kù)管理子系統(tǒng)增加圖書(shū)信息,退出系統(tǒng)
4.“讀者信息注銷(xiāo)”用例 用例編號(hào):0303 用例名:讀者信息銷(xiāo)毀
執(zhí)行者:直接執(zhí)行者:系統(tǒng)管理員,間接執(zhí)行者:讀者
目的:當(dāng)讀者由于工作地點(diǎn)變化或其他原因,無(wú)需再使用圖書(shū)館的圖書(shū)資料時(shí),應(yīng)當(dāng)為其辦理注銷(xiāo)
過(guò)程描述:
(1)系統(tǒng)管理員登陸基本數(shù)據(jù)修改功能子系統(tǒng),點(diǎn)擊“讀者信息注銷(xiāo)”(2)查詢(xún)讀者的借閱記錄
若有未歸還圖書(shū),給出提示:暫時(shí)不能注銷(xiāo)
否則注銷(xiāo)讀者,提示:注銷(xiāo)后,不能借閱圖書(shū) 若不確定,返回上一層界面
(3)注銷(xiāo)圖書(shū)證,刪除基本數(shù)據(jù)修改功能子系統(tǒng)中的讀者信息(4)注銷(xiāo)完成,在數(shù)據(jù)庫(kù)管理子系統(tǒng)刪除讀者信息,退出系統(tǒng) 5.“書(shū)籍信息錄入”用例 用例編號(hào):0305 用例名:書(shū)籍信息錄入
執(zhí)行者:直接執(zhí)行者:系統(tǒng)管理員,間接執(zhí)行者:圖書(shū)管理員,數(shù)據(jù)庫(kù)管理子系統(tǒng) 目的:圖書(shū)館里的圖書(shū)根據(jù)館藏需求進(jìn)行更新 過(guò)程描述:
(1)系統(tǒng)管理員登陸基本數(shù)據(jù)修改功能子系統(tǒng),點(diǎn)擊“書(shū)籍信息錄入”
(2)寫(xiě)入圖書(shū)相應(yīng)信息
(3)圖書(shū)管理員給圖書(shū)進(jìn)行分類(lèi)編號(hào),記錄條形碼信息(4)圖書(shū)管理員為圖書(shū)張貼條形碼
(5)圖書(shū)管理員檢查圖書(shū)編號(hào)是否入庫(kù)
(6)在數(shù)據(jù)庫(kù)管理子系統(tǒng)增加圖書(shū)信息,書(shū)籍信息錄入成功,退出系統(tǒng) 相應(yīng)活動(dòng)圖如下:
系統(tǒng)管理員界面圖書(shū)管理員數(shù)據(jù)庫(kù)管理子系統(tǒng)登陸基本數(shù)據(jù)修改功能子系統(tǒng)點(diǎn)擊書(shū)籍信息錄入圖書(shū)進(jìn)行分類(lèi)編號(hào),記錄條形碼信息圖書(shū)張貼條形碼檢查圖書(shū)編號(hào)是否入庫(kù)增加圖書(shū)信息[否]退出系統(tǒng)[是]
6.“書(shū)籍信息注銷(xiāo)”用例
用例編號(hào):0306 用例名:書(shū)籍信息注銷(xiāo)
執(zhí)行者:直接執(zhí)行者:系統(tǒng)管理員,間接執(zhí)行者:圖書(shū)管理員,數(shù)據(jù)庫(kù)管理子系統(tǒng)
目的:當(dāng)圖書(shū)館里藏書(shū),由于受到毀損或其他意外的破壞而無(wú)法再使用的情況下,需要對(duì)館藏圖書(shū)進(jìn)行注銷(xiāo)。過(guò)程描述:
(1)系統(tǒng)管理員登陸基本數(shù)據(jù)修改功能子系統(tǒng),點(diǎn)擊“書(shū)籍信息注銷(xiāo)”
(2)輸入圖書(shū)編號(hào),若該書(shū)借閱出庫(kù),則暫時(shí)不能注銷(xiāo),提示“該書(shū)借閱中,不能注銷(xiāo)”;若該書(shū)未被借閱,提示“確定要注銷(xiāo)此書(shū)嗎?”若不確定,返回上一層界面(3)成功注銷(xiāo)圖書(shū)后,在數(shù)據(jù)庫(kù)管理子系統(tǒng)刪除圖書(shū)信息,退出系統(tǒng)
三、系統(tǒng)分析
3.1建立對(duì)象類(lèi)(1)reader 類(lèi)名:reader 類(lèi)的類(lèi)型:該類(lèi)創(chuàng)建的對(duì)象是持久對(duì)象,存儲(chǔ)在服務(wù)器上的數(shù)據(jù)庫(kù)中,不可以共享 功能:負(fù)責(zé)讀者信息并對(duì)這些信息進(jìn)行處理,便于對(duì)讀者借閱信息進(jìn)行統(tǒng)一管理。屬性:讀者的編號(hào)ID(reader_id)、姓名(reader_Name)、身份(identification)、學(xué)院(academy)、所借書(shū)籍的編號(hào)(borrowed)等 操作:借書(shū)和還書(shū)、接受相應(yīng)處理
(2)system admin 類(lèi)名:system admin 類(lèi)的類(lèi)型:該類(lèi)創(chuàng)建的對(duì)象是持久對(duì)象,存儲(chǔ)在服務(wù)器上的數(shù)據(jù)庫(kù)中,不可以共享 屬性:編號(hào)和姓名等
操作:讀者信息管理、書(shū)籍信息管理、借閱管理、(3)books admin 類(lèi)名:books admin
類(lèi)的類(lèi)型:該類(lèi)創(chuàng)建的對(duì)象是持久對(duì)象,存儲(chǔ)在服務(wù)器上的數(shù)據(jù)庫(kù)中,不可以共享 屬性:編號(hào)和姓名等
操作:借閱管理、書(shū)籍信息錄入、書(shū)籍信息修改、書(shū)籍信息注銷(xiāo)(3)Books 類(lèi)名:Books 類(lèi)的類(lèi)型:該類(lèi)創(chuàng)建的對(duì)象是持久對(duì)象,存儲(chǔ)在服務(wù)器上的數(shù)據(jù)庫(kù)中,可以共享 屬性:書(shū)名、作者、書(shū)籍編碼、類(lèi)別、價(jià)錢(qián)、入庫(kù)時(shí)間 操作:分類(lèi)編號(hào)、記錄條形碼信息、(4)borrow 類(lèi)名:borrow 類(lèi)的類(lèi)型:該類(lèi)創(chuàng)建的對(duì)象是持久對(duì)象,存儲(chǔ)在服務(wù)器上的數(shù)據(jù)庫(kù)中,不可以共享 屬性:借閱書(shū)籍的編號(hào)、借閱時(shí)間、操作:借書(shū)、還書(shū)、續(xù)借書(shū)、交欠款、交罰款(5)data 類(lèi)的類(lèi)型:該類(lèi)創(chuàng)建的對(duì)象是持久對(duì)象,存儲(chǔ)在服務(wù)器上的數(shù)據(jù)庫(kù)中,不可以共享 屬性:書(shū)籍信息、讀者信息、借閱信息
操作:讀者信息錄入、讀者信息修改、讀者信息注銷(xiāo)、書(shū)籍信息錄入、書(shū)籍信息修改、書(shū)籍信息注銷(xiāo)、增加借閱信息、刪除借閱信息 3.2 建立對(duì)象類(lèi)圖
reader+編號(hào)+姓名+身份+學(xué)院+所借書(shū)籍的編號(hào)+借書(shū)()+還書(shū)()+接受相應(yīng)處理()data+書(shū)籍信息+讀者信息+Attribute1+讀者信息錄入()+讀者信息修改()+讀者信息注銷(xiāo)()+書(shū)籍信息錄入()+書(shū)籍信息修改()+書(shū)籍信息注銷(xiāo)()+增加借閱信息()+刪除借閱信息()system admin+編號(hào)+姓名+讀者信息管理()+書(shū)籍信息管理()+借閱管理()Books+書(shū)名+作者+書(shū)籍編碼+類(lèi)別+價(jià)錢(qián)+入庫(kù)時(shí)間+分類(lèi)編號(hào)()+記錄條形碼信息()borrow+借閱書(shū)籍的編號(hào)+借閱時(shí)間+借書(shū)()+還書(shū)()+續(xù)借書(shū)()+交欠款()+交罰款()books admin+編號(hào)+姓名+借閱管理()+書(shū)籍信息錄入()+書(shū)籍信息修改()+書(shū)籍信息注銷(xiāo)()圖2-1 圖書(shū)館管理系統(tǒng)類(lèi)圖
四、系統(tǒng)設(shè)計(jì)
4.1順序圖建模
◆在“借書(shū)”用例中涉及的對(duì)象間的交互分析如下:
1)登錄系統(tǒng)。圖書(shū)管理員登陸“基本數(shù)據(jù)修改功能子系統(tǒng)”,對(duì)讀者的借書(shū)要求進(jìn)行處理。涉及的對(duì)象:
·消息的發(fā)送者:“系統(tǒng)管理員”對(duì)象 ·消息的接收者:“基本數(shù)據(jù)修改功能子系統(tǒng)借閱窗口”對(duì)象 傳遞的消息:
·消息:口令密碼()
·消息的類(lèi)型:同步消息
·返回消息:口令密碼正確或出錯(cuò)信息 2)輸入圖書(shū)證編號(hào)。涉及的對(duì)象:
·消息的發(fā)送者:“基本數(shù)據(jù)修改功能子系統(tǒng)借閱窗口”對(duì)象 ·消息的接收者:“基本數(shù)據(jù)修改功能子系統(tǒng)借閱窗口”對(duì)象
傳遞的消息:
·消息:核對(duì)圖書(shū)證編號(hào)()·消息的類(lèi)型:自調(diào)用消息
·返回消息:圖書(shū)證編號(hào)正確或出錯(cuò)信息 3)輸入圖書(shū)編號(hào)。涉及的對(duì)象:
·消息的發(fā)送者:“基本數(shù)據(jù)修改功能子系統(tǒng)借閱窗口”對(duì)象 ·消息的接收者:“reader”對(duì)象
傳遞的消息:
·消息:[最大借書(shū)額為0]:核對(duì)借書(shū)額()·消息的類(lèi)型:同步消息
·返回消息:可以借書(shū) 4)確定借閱圖書(shū)。涉及的對(duì)象: ·消息的發(fā)送者:“reader”對(duì)象 ·消息的接收者:“reader”對(duì)象 傳遞的消息:
·消息:[確定借書(shū)]: 借閱證號(hào)增加借閱信息記錄()·消息的類(lèi)型:自調(diào)用消息 ·返回消息:借書(shū)成功 5)修改數(shù)據(jù)庫(kù)。涉及的對(duì)象: ·消息的發(fā)送者:“reader”對(duì)象 ·消息的接收者:“數(shù)據(jù)庫(kù)管理系統(tǒng)借閱管理”對(duì)象
傳遞的消息:
·消息:[借書(shū)成功]: 保存借閱記錄并修改庫(kù)存圖書(shū)數(shù)量、讀者借出數(shù)量()·消息的類(lèi)型:同步消息
·返回消息:退出系統(tǒng)
根據(jù)以上確立的“借書(shū)”用例圖中涉及的對(duì)象,建立“借書(shū)”用例的順序圖如圖3-1:
基本數(shù)據(jù)修改功能子系統(tǒng)借閱窗口reader數(shù)據(jù)庫(kù)管理系統(tǒng)借閱管理窗口 : 圖書(shū)管理員1 : 登錄系統(tǒng)()2 : 核對(duì)圖書(shū)證編號(hào)()3 [最大借書(shū)額為0] : :核對(duì)借書(shū)額()4 [確定借書(shū)] : 借閱證號(hào)增加借閱信息記錄()5 [借書(shū)成功] : 保存借閱記錄并修改庫(kù)存圖書(shū)數(shù)量、讀者借出數(shù)量()圖3-1 “借書(shū)”用例順序圖
◆在“還書(shū)”用例中涉及的對(duì)象間的交互分析如下:
1)登錄系統(tǒng)。圖書(shū)管理員登陸“基本數(shù)據(jù)修改功能子系統(tǒng)”,對(duì)讀者的還書(shū)要求進(jìn)行處理。涉及的對(duì)象:
·消息的發(fā)送者:“系統(tǒng)管理員”對(duì)象 ·消息的接收者:“基本數(shù)據(jù)修改功能子系統(tǒng)還書(shū)窗口”對(duì)象 傳遞的消息:
·消息:口令密碼()
·消息的類(lèi)型:同步消息
·返回消息:口令密碼正確或出錯(cuò)信息
2)輸入圖書(shū)證編號(hào)。涉及的對(duì)象:
·消息的發(fā)送者:“基本數(shù)據(jù)修改功能子系統(tǒng)還書(shū)窗口”對(duì)象 ·消息的接收者:“基本數(shù)據(jù)修改功能子系統(tǒng)還書(shū)窗口”對(duì)象
傳遞的消息:
·消息:核對(duì)圖書(shū)證編號(hào)()
·消息的類(lèi)型:自調(diào)用消息
·返回消息:圖書(shū)證編號(hào)正確或出錯(cuò)信息
3)超期罰款處理。涉及的對(duì)象:
·消息的發(fā)送者:“基本數(shù)據(jù)修改功能子系統(tǒng)還書(shū)窗口”對(duì)象 ·消息的接收者:“基本數(shù)據(jù)修改功能子系統(tǒng)超期罰款窗口”對(duì)象 傳遞的消息:
·消息:[超期]:超期罰款()·消息的類(lèi)型:同步消息 ·返回消息:銷(xiāo)毀超期信息
3)丟失罰款處理。涉及的對(duì)象:
·消息的發(fā)送者:“基本數(shù)據(jù)修改功能子系統(tǒng)還書(shū)窗口”對(duì)象 ·消息的接收者:“基本數(shù)據(jù)修改功能子系統(tǒng)丟失罰款窗口”對(duì)象
傳遞的消息:
·消息:[丟失]:丟失罰款()·消息的類(lèi)型:同步消息 ·返回消息:銷(xiāo)毀超期信息
4)輸入圖書(shū)編號(hào)。涉及的對(duì)象:
·消息的發(fā)送者:“基本數(shù)據(jù)修改功能子系統(tǒng)還書(shū)窗口”對(duì)象 ·消息的接收者:“reader”對(duì)象 傳遞的消息:
·消息:[借閱]:核對(duì)是否借閱此書(shū)()·消息的類(lèi)型:同步消息 ·返回消息:是否借閱此書(shū) 5)確定還書(shū)。涉及的對(duì)象: ·消息的發(fā)送者:“reader”對(duì)象 ·消息的接收者:“reader”對(duì)象
傳遞的消息:
·消息:[確定還書(shū)]: 借閱證號(hào)刪除借閱信息記錄()·消息的類(lèi)型:自調(diào)用消息 ·返回消息:還書(shū)成功
6)修改數(shù)據(jù)庫(kù)。涉及的對(duì)象:
·消息的發(fā)送者:“reader”對(duì)象 ·消息的接收者:“數(shù)據(jù)庫(kù)管理系統(tǒng)借閱管理”對(duì)象
傳遞的消息:
·消息:[還書(shū)成功]: 刪除借閱記錄并修改庫(kù)存圖書(shū)數(shù)量、讀者借出數(shù)量()·消息的類(lèi)型:同步消息 ·返回消息:退出系統(tǒng)
根據(jù)以上確立的“還書(shū)”用例圖中涉及的對(duì)象,建立“還書(shū)”用例的順序圖如圖:
基本數(shù)據(jù)修改功能子系統(tǒng)還書(shū)窗口基本數(shù)據(jù)修改功能子系統(tǒng)超期罰款窗口基本數(shù)據(jù)修改功能子系統(tǒng)丟失罰款窗口reader : 圖書(shū)管理員1 : 登錄系統(tǒng)()2 : 核對(duì)圖書(shū)證編號(hào)()3 [超期] : :超期罰款()4 [丟失] : :丟失罰款()5 [借閱] : :核對(duì)是否借閱此書(shū)()6 [確定還書(shū)] : : 借閱證號(hào)刪除借閱信息記錄()
圖3-2 “還書(shū)”用例順序圖一
reader數(shù)據(jù)庫(kù)管理系統(tǒng)借閱管理5 [確定還書(shū)] : : 借閱證號(hào)刪除借閱信息記錄()6 [還書(shū)成功] : :刪除借閱記錄并修改庫(kù)存圖書(shū)數(shù)量、讀者借出數(shù)量()
圖3-3 “還書(shū)”用例順序圖二
4.2 構(gòu)件圖建模
構(gòu)件圖主要用于建立系統(tǒng)的靜態(tài)實(shí)現(xiàn)視圖模型,通過(guò)構(gòu)件之間的依賴(lài)關(guān)系描述系統(tǒng)軟件的組織結(jié)構(gòu),展示了系統(tǒng)中的不同物理構(gòu)件機(jī)器之間的聯(lián)系。
圖3-4所示的是圖書(shū)館管理系統(tǒng)部分構(gòu)件圖,圖書(shū)管理員登陸“基本數(shù)據(jù)修改功能子系統(tǒng)”并成功通過(guò)驗(yàn)證后,進(jìn)入基本數(shù)據(jù)修改功能子系統(tǒng)主界面
圖書(shū)管理員登陸驗(yàn)證基本數(shù)據(jù)修改功能子系統(tǒng)主界面續(xù)借書(shū)借書(shū)還書(shū)丟失罰款超期罰款圖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)件組成。
圖書(shū)館管理系統(tǒng)是一個(gè)客戶(hù)/服務(wù)器和服務(wù)器/瀏覽器相結(jié)合的系統(tǒng),可以同配置圖顯示系統(tǒng)的物理結(jié)構(gòu),如圖3-5所示:
TCP/IP應(yīng)用服務(wù)器ODBC圖3-5 圖書(shū)館管理系統(tǒng)配置圖SQL SERVER13 客戶(hù)程序數(shù)據(jù)庫(kù)服務(wù)器
第三篇:UML與面向?qū)ο蠓治雠c設(shè)計(jì)
UML與面向?qū)ο蠓治雠c設(shè)計(jì)
實(shí)驗(yàn)實(shí)踐訓(xùn)練體系
適用專(zhuān)業(yè): 計(jì)算機(jī)科學(xué)技術(shù)、軟件工程
第一部分 課程與實(shí)驗(yàn)綜述
一.課程簡(jiǎn)介及實(shí)踐要求:
《UML與面向?qū)ο蠓治雠c設(shè)計(jì)》是以介紹面向?qū)ο蟮慕y(tǒng)一建模語(yǔ)言UML為主,使學(xué)生了解面向?qū)ο蠹夹g(shù)的基本概念,掌握面向?qū)ο蟮姆治龊驮O(shè)計(jì)方法,以及與面向?qū)ο蠹夹g(shù)相關(guān)的一些軟件開(kāi)發(fā)技術(shù),同時(shí)掌握在Rational Rose環(huán)境下用UML進(jìn)行分析和設(shè)計(jì)的技術(shù)。本課程在教學(xué)內(nèi)容方面著重基本理論、基本知識(shí)和基本方法,在培養(yǎng)實(shí)踐能力方面著重設(shè)計(jì)構(gòu)思和設(shè)計(jì)技能的基本訓(xùn)練,熟練的上機(jī)操作能力和分析能力。
實(shí)驗(yàn)實(shí)踐訓(xùn)練是UML與面向?qū)ο蠓治雠c設(shè)計(jì)教學(xué)的重要技能環(huán)節(jié)。通過(guò)實(shí)驗(yàn),使學(xué)生加深理解、驗(yàn)證、鞏固課堂教學(xué)內(nèi)容,特別是通過(guò)設(shè)計(jì)和綜合實(shí)驗(yàn),發(fā)揮學(xué)生的想象力和創(chuàng)新能力。
二.課程實(shí)驗(yàn)?zāi)康囊螅?/p>
通過(guò)UML的實(shí)驗(yàn),學(xué)生應(yīng)該: 1.學(xué)會(huì)用面向?qū)ο蟮乃枷肴シ治龊驮O(shè)計(jì)相關(guān)系統(tǒng);2.學(xué)會(huì)用Rose建模工具進(jìn)行軟件建模。三.課程實(shí)驗(yàn)參考資料
1.(美)Joseph Schmuller著.UML基礎(chǔ)、案例與應(yīng)用.人民郵電出版社,2004 2.(美)Hans-Erik Eriksson.UML 2工具箱.電子工業(yè)出版社,2004 3.吳際,金茂忠.UML面向?qū)ο蠓治?北京航空航天大學(xué)出版社,2002 4.趙從軍.UML設(shè)計(jì)及應(yīng)用.機(jī)械工業(yè)出版社,2004 5.Grady Booch,James Rumbaugh,Ivar Jacobson.UML用戶(hù)指南.機(jī)械工業(yè)出版社,2001 6.吳建,鄭潮,汪杰.UML基礎(chǔ)與Rose建模案例.人民郵電出版社,2004 第二部分 實(shí)驗(yàn)實(shí)踐指導(dǎo)
實(shí)驗(yàn)一
用例圖
一、實(shí)驗(yàn)?zāi)康?/p>
1.學(xué)會(huì)分析系統(tǒng)中的參與者和用例 2.掌握用例圖的繪制方法
二、實(shí)驗(yàn)器材
1.計(jì)算機(jī)一臺(tái);
2.Rational Rose 工具軟件;
三、實(shí)驗(yàn)內(nèi)容
畫(huà)出ATM系統(tǒng)的用例圖
四、實(shí)驗(yàn)步驟
1.分析
ATM自動(dòng)取款機(jī):客戶(hù)可以取錢(qián),存錢(qián),查詢(xún)余額,轉(zhuǎn)帳,修改密碼。通過(guò)分析可找出如下幾個(gè)參與者: 1.ATM 2.客戶(hù)
通過(guò)分析得到如下用例:
(1)存款(2)取款(3)查詢(xún)余額(4)轉(zhuǎn)帳(5)修改密碼(6)打印收據(jù) 2.繪圖步驟:
下面介紹在Rose2003中創(chuàng)建用例圖的過(guò)程:
(1)在“Use Case View“中雙擊Main圖,或者右擊“Use Case View“,彈出在快捷菜單中選擇“New”->“UseCase Diagram”,雙擊圖標(biāo),出現(xiàn)圖1,為編輯用例圖做好準(zhǔn)備。
(2)在用例視圖中,從工具欄中選擇Actor圖標(biāo),在右邊的繪圖區(qū)中添加一個(gè)新元素,并取名客戶(hù)表明新增一個(gè)參與者,如圖2所示。
圖2(3)同樣的方法添加參與者“ATM”,如圖3所示。
圖3(4)在工具欄上選擇用例的圖標(biāo),依次添加存款、取款、查詢(xún)余額、轉(zhuǎn)帳、修改密碼、打印收據(jù),如圖4所示。
圖4(5)添加參與者和用例間的關(guān)聯(lián)關(guān)系,如圖5所示。
圖5
五、實(shí)驗(yàn)報(bào)告要求
1. 整理實(shí)驗(yàn)結(jié)果。2. 小結(jié)實(shí)驗(yàn)心得體會(huì)。
實(shí)驗(yàn)二
交互圖
一、實(shí)驗(yàn)?zāi)康?/p>
1.學(xué)會(huì)用協(xié)作圖實(shí)現(xiàn)用例
2.掌握順序圖的繪制方法以及順序圖和協(xié)作圖的相互轉(zhuǎn)換。
二、實(shí)驗(yàn)器材
1.計(jì)算機(jī)一臺(tái);
2.Rational Rose 工具軟件;
三、實(shí)驗(yàn)內(nèi)容
畫(huà)出ATM取款的順序圖,并轉(zhuǎn)換為協(xié)作圖。
四、實(shí)驗(yàn)步驟
1.分析
ATM取款的場(chǎng)景:
(1)通過(guò)讀卡機(jī),用戶(hù)插入ATM卡;
(2)ATM系統(tǒng)從卡上讀取銀行ID、帳號(hào)、加密密碼、并用主銀行系統(tǒng)驗(yàn)證銀行ID和帳號(hào);
(3)用戶(hù)輸入密碼,ATM系統(tǒng)根據(jù)上面讀出的卡上加密密碼,對(duì)密碼進(jìn)行驗(yàn)證;(4)用戶(hù)輸入取款數(shù)量;
(5)ATM系統(tǒng)通知主銀行系統(tǒng),傳遞儲(chǔ)戶(hù)帳號(hào)和取款數(shù)量,并接收返回的確認(rèn)信息;(6)ATM系統(tǒng)輸出先進(jìn)、ATM卡和顯示帳戶(hù)余額的收據(jù);(7)ATM系統(tǒng)記錄事務(wù)到日志文件。尋找場(chǎng)景中的對(duì)象:ATM、客戶(hù)和帳戶(hù)。2.繪圖步驟:
下面介紹在Rose2003中創(chuàng)建順序圖的過(guò)程:
(1)在“Logical View”中新建“Sequence Diagram“,雙擊圖標(biāo),出現(xiàn)圖1,為編輯順序圖做好準(zhǔn)備。
(2)在順序圖編輯窗口中,從工具欄中選擇Object圖標(biāo),在右邊的繪圖區(qū)中添加一個(gè)新元素,并取名Customer表明新增一個(gè)對(duì)象,如圖2所示。
圖2
(3)同樣的方法,添加ATM對(duì)象和Account對(duì)象,如圖3所示。
圖3(4)根據(jù)ATM取款的場(chǎng)景,獲得第一條消息為“客戶(hù)向ATM機(jī)提交取款需求”,向圖中添加消息,如圖4所示。
圖4
(5)同樣的方法添加其它消息,如圖5所示。
圖5(6)根據(jù)順序圖生成協(xié)作圖,步驟如下:“Browse”->“Create Collaboration Diagram”,生成的協(xié)作圖,如圖6所示。
圖6
五、實(shí)驗(yàn)報(bào)告要求
1. 整理實(shí)驗(yàn)結(jié)果。2. 小結(jié)實(shí)驗(yàn)心得體會(huì)。
實(shí)驗(yàn)三 類(lèi)圖
一、實(shí)驗(yàn)?zāi)康?/p>
1.理解類(lèi)的基本概念 2.理解類(lèi)間的關(guān)系 3.掌握類(lèi)圖的繪制方法
二、實(shí)驗(yàn)器材
1.計(jì)算機(jī)一臺(tái);
2.Rational Rose 工具軟件;
三、實(shí)驗(yàn)內(nèi)容
分析選課系統(tǒng)中的類(lèi)及關(guān)系,然后畫(huà)出它們的類(lèi)圖。
四、實(shí)驗(yàn)步驟
1.分析
在選課系統(tǒng)中,通過(guò)分析可抽象出如下幾個(gè)類(lèi): 1.學(xué)生類(lèi) 2.管理員類(lèi) 3.課程類(lèi)
學(xué)生類(lèi)和管理員類(lèi)的屬性較容易分析,這里只列出課程類(lèi)的屬性和方法:(1)課程名稱(chēng)(2)開(kāi)課教室(3)課程號(hào)(4)授課教師(5)選課的學(xué)生(6)開(kāi)課起始時(shí)間(7)允許選課的學(xué)生人數(shù)(8)設(shè)置課程號(hào)(9)設(shè)置課程名稱(chēng)(10)查詢(xún)課程號(hào)
(11)查詢(xún)?cè)试S選課的學(xué)生人數(shù) 2.繪圖步驟:
下面介紹在Rose2003中創(chuàng)建類(lèi)和它們之間關(guān)系的過(guò)程:
(1)在“Logical View“中雙擊Main圖,或者右擊“Logical View“,彈出在快捷菜單中選擇“New”->“Class Diagram”,雙擊圖標(biāo),出現(xiàn)圖1,為編輯類(lèi)圖做好準(zhǔn)備。
圖1
(2)在邏輯視圖中,從工具欄中選擇class圖標(biāo),在右邊的繪圖區(qū)中添加一個(gè)新元素,并取名Student表明新增一個(gè)類(lèi)。
圖2
(3)選擇新創(chuàng)建的元素,點(diǎn)擊鼠標(biāo)右鍵,在彈出的菜單中選擇“Open Sepcification”,彈出圖3對(duì)話(huà)框。
(4)在對(duì)話(huà)框中,可以修改元素的名稱(chēng),這里新元素的名稱(chēng)定為“Student”,如圖4所示。
圖3
圖4(5)點(diǎn)擊“Attributes”選項(xiàng)卡,添加屬性,如圖5所示。
圖5(6)點(diǎn)擊“operations”選項(xiàng)卡,添加方法如圖6所示。
圖6(7)同樣的方法添加Course類(lèi),如圖7所示。
圖7(8)創(chuàng)建兩個(gè)類(lèi)之間的關(guān)系,通過(guò)分析得出:學(xué)生類(lèi)和課程類(lèi)之間為單向關(guān)聯(lián)。選擇圖標(biāo)欄的“關(guān)聯(lián)”,由學(xué)生類(lèi)指向課程類(lèi)。如圖8所示。
圖8(9)創(chuàng)建關(guān)聯(lián)名。右擊關(guān)聯(lián),選擇“open specification“,鍵入關(guān)聯(lián)名,如圖9所示。
圖9(10)分別在“Role A Detail“和“Role B Detail“選項(xiàng)卡中鍵入名稱(chēng)和多重性,如圖10所示。
圖10(11)重復(fù)(2)-(10)中的步驟完成選課系統(tǒng)整個(gè)類(lèi)圖的創(chuàng)建。
五、實(shí)驗(yàn)報(bào)告要求
1. 整理實(shí)驗(yàn)結(jié)果。2. 小結(jié)實(shí)驗(yàn)心得體會(huì)。實(shí)驗(yàn)四 狀態(tài)圖和活動(dòng)圖
一、實(shí)驗(yàn)?zāi)康?/p>
1. 熟悉狀態(tài)圖和活動(dòng)圖的基本功能和使用方法。2. 掌握如何使用建模工具繪制狀態(tài)圖和活動(dòng)圖方法。
二、實(shí)驗(yàn)器材
1.計(jì)算機(jī)一臺(tái);
2.Rational Rose 工具軟件;
三、實(shí)驗(yàn)內(nèi)容
(1)分析圖書(shū)管理系統(tǒng)中的書(shū)和借書(shū)證的狀態(tài),畫(huà)出它們的狀態(tài)圖;(2)分析管理員的活動(dòng)狀態(tài),畫(huà)出管理員的活動(dòng)圖。
四、實(shí)驗(yàn)步驟
1.分析
在圖書(shū)管理系統(tǒng)中,分析書(shū)的狀態(tài)如下: 1.可借 2.被借 3.被預(yù)約 4.刪除
借書(shū)證的狀態(tài)如下: 1.可用 2.不可用 3.刪除
管理員的活動(dòng)如下: 1. 處理還書(shū) 2. 處理借書(shū) 3. 處理罰款 讀者的活動(dòng)如下: 1.登錄 2.找書(shū) 3.預(yù)約 4.瀏覽 2.繪圖步驟:
下面介紹在Rose2003中創(chuàng)建類(lèi)和它們之間關(guān)系的過(guò)程:
(1)在“Logical View“中信件“StateChart Diagram”,雙擊圖標(biāo),出現(xiàn)圖1,為編輯狀態(tài)圖做好準(zhǔn)備。
圖1(2)在工具欄中選擇“Start State”圖標(biāo)添加到編輯窗口中,如圖2所示。
圖2(3)在工具欄中選擇“State”圖標(biāo),添加一個(gè)元素,命名為“New book”,如圖3所示。
圖3
(4)同樣的方法添加其它狀態(tài),如圖4所示。
圖4
(5)書(shū)的各個(gè)狀態(tài)之間添加轉(zhuǎn)移及相應(yīng)的事件,如圖5所示。
圖5
(6)同樣的方法得借書(shū)證的狀態(tài)圖,如圖6所示。
圖6
(7)在Rose2003中,繪制圖書(shū)管理員的活動(dòng)圖,新建“Activity Diagram”,如圖7所示:
圖7
(8)讀者的活動(dòng)圖如圖8所示:
圖8
五、實(shí)驗(yàn)報(bào)告要求
1. 整理實(shí)驗(yàn)結(jié)果。2. 小結(jié)實(shí)驗(yàn)心得體會(huì)。
第四篇:UML實(shí)驗(yàn)報(bào)告
一:需求分析
在我國(guó)十年前ATM(自動(dòng)取款機(jī))還是一個(gè)很新鮮的事物,現(xiàn)在在城市的大街小巷隨處可見(jiàn)。我們?cè)谌粘I钪幸步?jīng)常和ATM打交道。本章我們將以簡(jiǎn)化的ATM系統(tǒng)為例將前面幾章中學(xué)到的用例圖、類(lèi)圖、順序圖、狀態(tài)圖、活動(dòng)圖及協(xié)作圖知識(shí)運(yùn)用到此例中。二:銀行ATM機(jī)系統(tǒng)UML建模設(shè)計(jì) 1.用例圖
參與者“銀行儲(chǔ)戶(hù)”和ATM機(jī)。簡(jiǎn)化后的ATM機(jī)僅有取款、存款及其余功能。其余功能不做詳細(xì)說(shuō)明。
銀行儲(chǔ)戶(hù)在ATM機(jī)上完成取款、存款及其他業(yè)務(wù)。2.類(lèi)圖
整個(gè)銀行系統(tǒng)包括了帳戶(hù)庫(kù)、銀行儲(chǔ)戶(hù)庫(kù)及ATM系統(tǒng)。
許多單個(gè)的帳戶(hù)組成了帳戶(hù)庫(kù)。帳戶(hù)具有帳戶(hù)類(lèi)型、帳戶(hù)號(hào)、余額三個(gè)屬性,均為private,其類(lèi)型分別為char,int,double。六個(gè)操作分別為setType、getType、getAccountNumbe、setAccountNumbe、caculateBalance、getBalance,除caculateBalance為protected其余均為public。
setType設(shè)置帳戶(hù)類(lèi)型,返回類(lèi)型為void,參數(shù)類(lèi)型為char,輸入帳戶(hù)類(lèi)型。getType獲取帳戶(hù)類(lèi)型,返回類(lèi)型為char,無(wú)參數(shù)。
setAccountNumbe設(shè)置帳戶(hù)號(hào),返回類(lèi)型為void,參數(shù)類(lèi)型為int,輸入帳戶(hù)號(hào)。getAccountNumbe獲取帳戶(hù)號(hào),返回類(lèi)型為int,無(wú)參數(shù)。
caculateBalance計(jì)算余額,返回類(lèi)型為void,參數(shù)為double,第一個(gè)參數(shù)為輸入存取款數(shù)額,第二個(gè)參數(shù)為存款余額,既為輸入也為輸出。getBalance獲取帳戶(hù)余額,返回類(lèi)型為double,無(wú)參數(shù)。
許多銀行儲(chǔ)戶(hù)組成了儲(chǔ)戶(hù)庫(kù)。ATM系統(tǒng)包含了許多ATM機(jī)。銀行儲(chǔ)戶(hù)及ATM機(jī)兩個(gè)類(lèi)包含哪些屬性,哪些操作,它們的可見(jiàn)性及操作的返回類(lèi)型、參數(shù)個(gè)數(shù)、參數(shù)類(lèi)型從類(lèi)圖上都一目了然。更多的屬性及操作都可以一一加上,使這個(gè)類(lèi)圖更詳細(xì)更完整,從而使參與項(xiàng)目的每個(gè)成員都能無(wú)歧義的明了整個(gè)設(shè)計(jì)的類(lèi)的結(jié)構(gòu)。同樣對(duì)于一個(gè)真正的銀行系統(tǒng),這個(gè)類(lèi)圖過(guò)于簡(jiǎn)單。比如帳戶(hù)類(lèi)型我們可以先定義一個(gè)abstract class,它包含一個(gè)帳戶(hù)最基本的屬性及操作。而有些操作先定義為abstract,如余額的計(jì)算。然后再繼承這個(gè)abstract class,我們可以有saving account 和checking account等等。不同的帳戶(hù)有不同的余額計(jì)算方法,我們可以加上具體的算法。對(duì)于不同的帳戶(hù)可能還有一些它特有的操作,我們也可以加上,比如saving account在存款達(dá)到多少時(shí)可以享受機(jī)票打折的優(yōu)惠。通過(guò)類(lèi)圖不僅可以使設(shè)計(jì)者明確的表達(dá)自己的設(shè)計(jì)意圖,也能幫組自己整理思路,充實(shí)及優(yōu)化自己的設(shè)計(jì)。
3.順序圖
描述顧客在ATM機(jī)上取款時(shí)信息的流動(dòng)情況。以時(shí)間為順序。因?yàn)槭鞘纠龍D,所以整個(gè)過(guò)程是沒(méi)有出現(xiàn)任何故障時(shí)的流程,并且只畫(huà)到了取款結(jié)束。通過(guò)這個(gè)圖,我們可以看出消息是如何在系統(tǒng)中不同對(duì)象之間進(jìn)行交互。
通過(guò)流程圖我們可以很清楚地看到系統(tǒng)是如何工作的,系統(tǒng)各部分之間的信息及控制是如何發(fā)送的,整個(gè)流程是否合理。流程圖對(duì)我們的設(shè)計(jì)起到了很好的幫助作用。注意在本圖沒(méi)有一個(gè)生命線終端有一個(gè)“X”,這是因?yàn)檫@個(gè)流程中還未遇到有對(duì)象生命結(jié)束。當(dāng)有對(duì)象生命結(jié)束時(shí)需在對(duì)應(yīng)的生命線終端畫(huà)“X”,表明這個(gè)對(duì)象在這時(shí)被銷(xiāo)毀。
首先銀行儲(chǔ)戶(hù)將ATM卡插入讀卡機(jī),讀卡機(jī)將信息傳給客戶(hù)管理,客戶(hù)管理提出查詢(xún)密碼,顯示部分將輸入密碼請(qǐng)求顯示出來(lái)….銀行儲(chǔ)戶(hù)讀卡機(jī)顯示輸入設(shè)備客戶(hù)管理點(diǎn)鈔機(jī)事務(wù)管理1: 插入ATM卡2: 接受ATM卡3: 查詢(xún)密碼4: 顯示輸入密碼請(qǐng)求5: 輸入密碼6: 密碼傳遞7: 請(qǐng)求確認(rèn)密碼的合法性8: 確認(rèn)密碼的合法性9: 詢(xún)問(wèn)服務(wù)類(lèi)別10: 顯示輸入服務(wù)類(lèi)別請(qǐng)求11: 輸入取款請(qǐng)求12: 取消請(qǐng)求13: 詢(xún)問(wèn)取款數(shù)額14: 顯示輸入數(shù)額請(qǐng)求15: 輸入取款數(shù)額16: 傳遞取款數(shù)額17: 詢(xún)問(wèn)取款數(shù)額確認(rèn)18: 顯示確認(rèn)數(shù)額請(qǐng)求19: 輸入確認(rèn)20: 傳遞確認(rèn)信息21: 數(shù)額合法性確認(rèn)請(qǐng)求22: 確認(rèn)數(shù)額的合法性23: 計(jì)算儲(chǔ)戶(hù)余額24: 出鈔請(qǐng)求25: 出鈔26: 取鈔27: 傳遞余額并詢(xún)問(wèn)是否需要其它服務(wù)28: 顯示儲(chǔ)戶(hù)余額并顯示其它服務(wù)
第五篇:UML實(shí)驗(yàn)報(bào)告[推薦]
UML實(shí)驗(yàn)報(bào)告
班 級(jí):軟件0841
姓 名:張文成 學(xué) 號(hào):081842173
實(shí)驗(yàn)內(nèi)容:
用例建模、分析建模、設(shè)計(jì)建模(1)、設(shè)計(jì)建模(2)
實(shí)驗(yàn)一:用例建模
[實(shí)驗(yàn)?zāi)康腯 〃掌握客戶(hù)需求分析的方法和步驟
〃了解以用例驅(qū)動(dòng)的軟件開(kāi)發(fā)方法 〃識(shí)別并編寫(xiě)用例
〃掌握用Rose 進(jìn)行用例建模的具體方法和步驟
[實(shí)驗(yàn)內(nèi)容] 要求學(xué)生根據(jù)周?chē)膶?shí)際情況,自選一個(gè)小型應(yīng)用項(xiàng)目,分析業(yè)務(wù)需求,識(shí)別并編寫(xiě)用例、繪制用例圖以理解系統(tǒng)需求。亦可采用教師指定的“企業(yè)綜合信息管理系統(tǒng)”中的“進(jìn)銷(xiāo)存管理子系統(tǒng)”
[實(shí)驗(yàn)原理和步驟] 建模原理:
(1)需求獲取。以任務(wù)和客戶(hù)為中心,通過(guò)會(huì)議、面談等手段對(duì)客戶(hù)需求進(jìn)行調(diào)研,獲得系統(tǒng)目標(biāo)、范圍和功能要求的初步說(shuō)明。(2)用例分析。確定用例,同時(shí)采用分層思想,對(duì)用例的層次級(jí)別進(jìn)行劃分(高層用例、子系統(tǒng)級(jí)、用戶(hù)目標(biāo)級(jí))
(3)用例描述。分層繪制用例圖,撰寫(xiě)用例的文字描述(采用單欄格式)。
步驟:
(1)需求獲取。自選題目,與相關(guān)客戶(hù)、領(lǐng)域?qū)<业确磸?fù)商討,獲得系統(tǒng)目標(biāo)、范圍和功能要求的初步說(shuō)明。(也可采用教師指定的題目:“企業(yè)綜合信息管理系統(tǒng)”中的“進(jìn)銷(xiāo)存管理子系統(tǒng)”,但要仔細(xì)研讀“企業(yè)現(xiàn)狀”、“系統(tǒng)目標(biāo)、范圍和功能要求”等文字說(shuō)明)。(2)用例分析。確定系統(tǒng)范圍和邊界、確定參與者、確定用例。(3)用例描述。分層繪制用例圖、描述用例。
畫(huà)圖原理:
采用Rose 軟件進(jìn)行用例建模必須建立在完好的系統(tǒng)用例分析基礎(chǔ)之上.只有做好系統(tǒng)用例分析,系統(tǒng)用例建模才能這到預(yù)期的效果。步驟:
(1)分層繪制用例圖,每層采用“包”進(jìn)行管理。
(2)以“企業(yè)綜合信息管理系統(tǒng)”-> “進(jìn)銷(xiāo)存管理”子系統(tǒng)-> “銷(xiāo)售管理”-> “合同管理”->“收款單處理”為主線,完成附錄2 中的操作過(guò)程(亦可選擇“企業(yè)綜合信息管理系統(tǒng)”-> “進(jìn)銷(xiāo)存管理”子系統(tǒng)-> “庫(kù)存管理”-> “原材料出庫(kù)”->“領(lǐng)料單處理”主線)
[ 實(shí)驗(yàn)結(jié)果]
實(shí)驗(yàn)2 分析建模
[ 實(shí)驗(yàn)?zāi)康腯(1)理解面向?qū)ο笙到y(tǒng)分析和對(duì)象類(lèi)建模(概念建模)的概念(2)了解和掌握面向?qū)ο笙到y(tǒng)分析的方法和步驟(3)了解和掌握尋找待開(kāi)發(fā)系統(tǒng)中類(lèi)(概念)的方法和技巧(4)掌握使用ROSE 繪制概念模型的方法
[ 實(shí)驗(yàn)內(nèi)容] 在用例分析的基礎(chǔ)上,選擇第一個(gè)迭代周期打算開(kāi)發(fā)的用例,建立相關(guān)的概念模型。
[ 實(shí)驗(yàn)原理和步驟] 建模原理:
(1)使用概念目錄列表(見(jiàn)下圖)和非正式分析法(識(shí)別出問(wèn)題域的文本描述中的名詞短語(yǔ),然后將其作為概念或?qū)傩缘暮蜻x對(duì)象。)相結(jié)合的方法識(shí)別概念。因此,待開(kāi)發(fā)用例的文字描述中,名詞可能成為概念或?qū)傩缘暮蜻x對(duì)象;表示行為的動(dòng)詞詞組有可能成為事務(wù)型或過(guò)程型對(duì)象;形容詞詞組有可能對(duì)應(yīng)抽象的名詞型概念。
采用的技術(shù)基本上就是:ER 圖+純行為+OO 的聚合、泛化。(2)最終關(guān)聯(lián)的數(shù)量介于“需要知道”型關(guān)聯(lián)與【“需要知道”型關(guān)聯(lián)+“需要理解”型(從通用關(guān)聯(lián)列表中派生出 的,見(jiàn)下圖)】之間。
步驟:
(1)識(shí)別關(guān)鍵用例作為第一個(gè)迭代周期的開(kāi)發(fā)目標(biāo)(一般是在用例圖中被依賴(lài)得比較多的用例)??梢赃x“企業(yè)綜合信息管理系統(tǒng)”-> “進(jìn)銷(xiāo)存管理”子系統(tǒng)-> “庫(kù)存管理”-> “原材料出庫(kù)”->“領(lǐng)料單處理”主線中的“領(lǐng)料單處理”用例;也可以選“企業(yè)綜合信息管理系統(tǒng)”-> “進(jìn)銷(xiāo)存管理”子系統(tǒng)-> “銷(xiāo)售管理”-> “合同管理”->“收款單處理”主線中的“增加銷(xiāo)售合同”或“收款單處理”用例。(其實(shí),選“庫(kù)存管理”主線更合適;當(dāng)然,如果要實(shí)現(xiàn)產(chǎn)銷(xiāo)一體化,以銷(xiāo)售訂單指導(dǎo)生產(chǎn)和采購(gòu),并實(shí)現(xiàn)零庫(kù)存目標(biāo),那么一切工作就以銷(xiāo)售管理為中心。即便如此,首選“增加合同”用例也更為合適。)
(2)識(shí)別概念和重要屬性。
(3)建立概念間的關(guān)聯(lián)。
畫(huà)圖原理:
(1)可以采用“邏輯視圖”下的類(lèi)圖描述概念模型,只不過(guò)每個(gè)類(lèi)中只有類(lèi)名和屬性,沒(méi)有方法。在概念建模 階段也沒(méi)有必要確定屬性的類(lèi)型和訪問(wèn)屬性。
(2)概念間的關(guān)聯(lián)可以采用一般關(guān)聯(lián)(無(wú)方向?qū)嵕€),當(dāng)然,對(duì)于聚合和泛化,應(yīng)采用相應(yīng)的連線(組合:實(shí)心菱形+實(shí)線;聚合:空心菱形+實(shí)線;泛化:空三角形+實(shí)線)
步驟:
(0)前提條件:第一個(gè)迭代周期可以選“企業(yè)綜合信息管理系統(tǒng)”
-> “進(jìn)銷(xiāo)存管理”子系統(tǒng)-> “庫(kù)存管理”->“原材料出庫(kù)”->“領(lǐng)料單處理”主線中的“領(lǐng)料單處理”用例;也可以選“企業(yè)綜合信息管理系統(tǒng)”->“進(jìn)銷(xiāo)存管理”子系統(tǒng)-> “銷(xiāo)售管理”-> “合同管理”->“收款單處理”主線中的“增加銷(xiāo)售合同”或“收款單處理”用例。做好與此用例相關(guān)的概念模型
(1)建立相關(guān)的概念模型的基礎(chǔ)上,在“邏輯視圖”下的類(lèi)圖中描述概念模型,可以直接在類(lèi)圖main 中繪制,也可采用類(lèi)似用例圖中用過(guò)的分包機(jī)制
(2)繪制概念和重要屬性。(3)繪制概念間的關(guān)聯(lián)。
[ 實(shí)驗(yàn)結(jié)果]
[ 實(shí)驗(yàn)總結(jié)] ① 對(duì)重點(diǎn)實(shí)驗(yàn)結(jié)果進(jìn)行分析;
② 實(shí)驗(yàn)中的問(wèn)題和提高:對(duì)自己的分析或設(shè)計(jì)進(jìn)行評(píng)價(jià),指出合理和不足之處,提出改進(jìn)的方案。
③ 收獲與體會(huì):篩選概念的要點(diǎn);區(qū)分概念與屬性的要點(diǎn);關(guān)聯(lián)取舍的要點(diǎn);畫(huà)圖時(shí)如何防止關(guān)聯(lián)重名。
實(shí)驗(yàn)3 設(shè)計(jì)建模(1)
[ 實(shí)驗(yàn)日期]2011年5月20日 [ 實(shí)驗(yàn)?zāi)康腯(1)理解順序圖的基本概念
(2)了解和掌握軟件工程中用例邏輯時(shí)序的分析方法(3)掌握使用ROSE 創(chuàng)建順序圖的方法
[ 實(shí)驗(yàn)內(nèi)容] 在用例模型和概念模型的基礎(chǔ)上,對(duì)首選的用例進(jìn)行事件分解,識(shí)別出系統(tǒng)事件(系統(tǒng)操作),(并寫(xiě)出契約的后置條件);為每個(gè)系統(tǒng)事件畫(huà)順序圖,為對(duì)象分配職責(zé)。
[ 實(shí)驗(yàn)原理和步驟] 原理:
(1)在系統(tǒng)順序圖中,所有的系統(tǒng)都被當(dāng)成黑盒子看待,順序圖的重點(diǎn)是參與者發(fā)起的跨越系統(tǒng)邊界的事件。
(2)系統(tǒng)事件是由某參與者發(fā)起的指向系統(tǒng)的輸入事件。一個(gè)事件的發(fā)生能夠觸發(fā)一個(gè)響應(yīng)操作的執(zhí)行。
(3)請(qǐng)仔細(xì)研究下圖,考察它是如何從左邊的“購(gòu)買(mǎi)商品”用例的文字描述中分解出3 個(gè)系統(tǒng)事件的。
(4)參照用例模型和概念模型,為每個(gè)系統(tǒng)操作估計(jì)后置條件。(實(shí)例創(chuàng)建、形成關(guān)聯(lián)、屬性修改)(5)按照設(shè)計(jì)模式為對(duì)象分配職責(zé)。
步驟:
(1)分析首選用例的文字描述,按事件進(jìn)行分解,識(shí)別出系統(tǒng)事件。(下面以“企業(yè)綜合信息管理系統(tǒng)”-> “進(jìn)銷(xiāo)存管理”子系統(tǒng)-> “銷(xiāo)售管理”-> “合同管理”->“收款單處理”主線中的“收款單處理”用例為例)。
我們暫不考慮批處理。第一個(gè)核對(duì),因?yàn)橐獙ⅰ柏浛罱痤~填寫(xiě)到合同中”。后置條件顯然有“銷(xiāo)售合同”的屬性修改。此合同顯然已經(jīng)存在,不需要?jiǎng)?chuàng)建,但需要根據(jù)合同編號(hào)find,然后形成關(guān)聯(lián)。第二個(gè)核對(duì)需要根據(jù)合同明細(xì)到倉(cāng)庫(kù)的“存貨明細(xì)”(概念模型中還沒(méi)有)中去查。此核對(duì)發(fā)生前雖然敲了一下鍵盤(pán),但隨后并沒(méi)有新的消息穿越系統(tǒng)邊界,因此這仍然是同一個(gè)系統(tǒng)事件。先考慮成功場(chǎng)景,應(yīng)該向庫(kù)存系統(tǒng)發(fā)提貨單(概念模型中還沒(méi)有)就結(jié)束了。后續(xù)的削減庫(kù)存(核銷(xiāo))、預(yù)警顯然不是銷(xiāo)售管理員的職權(quán),并且真正的核銷(xiāo)必須由倉(cāng)庫(kù)的發(fā)貨人執(zhí)行,才能保證貨帳一致。并且“生產(chǎn)廠家”與“郵購(gòu)公司”的運(yùn)作方式不同,后者是自己的員工取貨并郵寄,而前者還有可能是來(lái)人來(lái)車(chē)取貨,這時(shí)倉(cāng)庫(kù)收到取貨單后并不能立即自動(dòng)處理(開(kāi)發(fā)貨單),必須等取貨人到達(dá)才能處理。
根據(jù)題意,本項(xiàng)目應(yīng)該是“生產(chǎn)廠家”模式。這又存在一個(gè)問(wèn)題,如
果在開(kāi)出提貨單后不修改庫(kù)存,可能影響并發(fā)用戶(hù)和后續(xù)付款單的處理。所以有必要設(shè)計(jì)一個(gè)“臨時(shí)存貨明細(xì)”(概念模型中還沒(méi)有)(不是真實(shí)的“存貨明細(xì)”)供修改,何時(shí)按存貨明細(xì)”進(jìn)行刷新應(yīng)該是庫(kù)存管理系統(tǒng)的事(比如每天夜里刷新,但因?yàn)橛暄┨鞖?,取?人遲遲不提貨,是提貨單作廢(相當(dāng)于退回銷(xiāo)售系統(tǒng),付款單變?yōu)槲刺幚恚┻€是就強(qiáng)行刷新(此時(shí)有沖突危險(xiǎn))?)失敗場(chǎng)景。向“生產(chǎn)調(diào)度部門(mén)”發(fā)送“產(chǎn)品生產(chǎn)申請(qǐng)單”。如果是專(zhuān)門(mén)為此單進(jìn)行生產(chǎn),那么還應(yīng)該有庫(kù)存系統(tǒng)發(fā)來(lái)的“產(chǎn)品入庫(kù)通知處理”用例來(lái)調(diào)用本用例進(jìn)行發(fā)貨。本題顯然一概根據(jù)付款單運(yùn)作,因此如果失敗,就不處 理付款單,但按日期把它排在待處理付款單的前面。從前面的分析來(lái)看,就一個(gè)系統(tǒng)事件,我們就命名為“付款單處理(pb:付款單)”(2)為每個(gè)系統(tǒng)事件估計(jì)后置條件。(以上已做了部分分析)(3)按設(shè)計(jì)模式進(jìn)行設(shè)計(jì)。
首先考慮控制者,領(lǐng)域控制者選參與者角色,即“銷(xiāo)售人員”。為了避免使用FORM,窗口等表示層對(duì)象,我們?nèi)嗽煲?個(gè)類(lèi)”應(yīng)用協(xié)調(diào)者”向控制者發(fā)送消息。
[ 實(shí)驗(yàn)結(jié)果]
① 對(duì)重點(diǎn)實(shí)驗(yàn)結(jié)果進(jìn)行分析;
② 實(shí)驗(yàn)中的問(wèn)題和提高:對(duì)自己的分析或設(shè)計(jì)進(jìn)行評(píng)價(jià),指出合理和不足之處,提出改進(jìn)的方案。
③ 收獲與體會(huì):事件分解的要點(diǎn);控制者選擇的要點(diǎn);繪制順序圖的要點(diǎn)。
[ 實(shí)驗(yàn)總結(jié)] ① 對(duì)重點(diǎn)實(shí)驗(yàn)結(jié)果進(jìn)行分析;
② 實(shí)驗(yàn)中的問(wèn)題和提高:對(duì)自己的分析或設(shè)計(jì)進(jìn)行評(píng)價(jià),指出合理和不足之處,提出改進(jìn)的方案。
③ 收獲與體會(huì):事件分解的要點(diǎn);控制者選擇的要點(diǎn);繪制順序圖的要點(diǎn)。
實(shí)驗(yàn)4 設(shè)計(jì)建模(2)
[ 實(shí)驗(yàn)日期] 2011年5月27日 [ 實(shí)驗(yàn)?zāi)康腯(1)理解面向?qū)ο箢?lèi)之間關(guān)聯(lián)關(guān)系的概念(2)了解和掌握分析類(lèi)之間的關(guān)聯(lián)關(guān)系的方法
(3)了解和掌握待開(kāi)發(fā)系統(tǒng)中類(lèi)之間關(guān)聯(lián)關(guān)系的分析方法(4)完善設(shè)計(jì)類(lèi)圖,掌握使用ROSE 對(duì)關(guān)聯(lián)進(jìn)行建模的過(guò)程
[ 實(shí)驗(yàn)內(nèi)容] 根據(jù)設(shè)計(jì)建模(1)中的交互分析,進(jìn)一步設(shè)計(jì)關(guān)聯(lián)和對(duì)象可見(jiàn)性(補(bǔ)
上遺漏的關(guān)聯(lián)),完善設(shè)計(jì)類(lèi)圖。
[ 實(shí)驗(yàn)原理和步驟] 建模原理:
(1)關(guān)聯(lián)關(guān)系描繪了給定類(lèi)的對(duì)象個(gè)體之間的語(yǔ)義連接,是類(lèi)與類(lèi)之間的連接。關(guān)聯(lián)可以分為一般關(guān)聯(lián)、聚合關(guān) 聯(lián)、組合關(guān)聯(lián)和依賴(lài)關(guān)聯(lián)等。
(2)一般關(guān)聯(lián)包括一對(duì)類(lèi)的二元關(guān)聯(lián)及多個(gè)類(lèi)之間的多元關(guān)聯(lián)。
(3)聚合(Aggregation)表示整體和部分之間較強(qiáng)的關(guān)聯(lián)關(guān)系,聚合關(guān)系的多重性大于1,則稱(chēng)為共享聚合。
(4)組合(Composition)關(guān)系表示整體和部分之間有比聚合關(guān)系更強(qiáng)的關(guān)系,它們之間是一對(duì)一的關(guān)系,即同生死共存亡,組合關(guān)系不能共享。
(5)依賴(lài)關(guān)系是一種使用關(guān)系,表現(xiàn)為一個(gè)對(duì)象僅僅調(diào)用了另一個(gè)對(duì)象的服務(wù)。可以使用下列的指導(dǎo)方針列出暫時(shí)性的關(guān)系:
(1)存在兩個(gè)或兩個(gè)以上的類(lèi)相互之間就可能有關(guān)聯(lián)。(2)類(lèi)的操怍(成員函數(shù))的參數(shù)列表里出現(xiàn)其他類(lèi)的對(duì)象。(3)一個(gè)類(lèi)包含另一個(gè)類(lèi)的對(duì)象(對(duì)象成員)。(4)根據(jù)一般常識(shí)可能會(huì)出現(xiàn)的關(guān)聯(lián)。步驟:
(1)分析已建立的設(shè)計(jì)類(lèi)圖和交互圖,進(jìn)一步設(shè)計(jì)關(guān)聯(lián)和
對(duì)象可見(jiàn)性(補(bǔ)上遺漏的關(guān)聯(lián))。(下面以“企業(yè)綜合 信息管理系統(tǒng)”-> “進(jìn)銷(xiāo)存管理”子系統(tǒng)-> “銷(xiāo)售管理”-> “合同管理”->“收款單處理”主線中 的“收款單處理”用例為例)。
在銷(xiāo)售管理子系統(tǒng)中,定義的各個(gè)類(lèi)之間一般都有關(guān)系發(fā)生。銷(xiāo)售人員和客戶(hù)(大客戶(hù))共同簽署銷(xiāo)售合同,銷(xiāo)售合同中涉及到多種可以銷(xiāo)售的產(chǎn)品,合同經(jīng)公司經(jīng)理審查并簽字后該合同才能生效,付款單需要客戶(hù)付款,銷(xiāo)售人員簽發(fā)催款單向客戶(hù)催繳欠款,銷(xiāo)售人員制定銷(xiāo)售計(jì)劃,銷(xiāo)售人員要檢查督促執(zhí)行期合同按合同執(zhí)行、履 約,履約后的合同轉(zhuǎn)到履約合同數(shù)據(jù)庫(kù)存檔備查等等。例如:
(a)銷(xiāo)售人員與客戶(hù):一般關(guān)聯(lián),多對(duì)多
(b)銷(xiāo)售合同與合同明細(xì),銷(xiāo)售計(jì)劃與計(jì)劃明細(xì):組合。(c)付款單與客戶(hù):依賴(lài)關(guān)系?!度绻犊顔晤?lèi)中有“統(tǒng)計(jì)付款金額(客戶(hù)類(lèi)客戶(hù)對(duì)象)”操作的話(huà),付款 單類(lèi)就依賴(lài)客戶(hù)類(lèi)》(2)完善設(shè)計(jì)類(lèi)圖 畫(huà)圖原理:
(1)關(guān)聯(lián)關(guān)系描繪了給定類(lèi)的對(duì)象個(gè)體之間的語(yǔ)義連接,是類(lèi)與類(lèi)之間的連接。關(guān)聯(lián)可以分為一般關(guān)聯(lián)、聚合關(guān) 聯(lián)、組合關(guān)聯(lián)和依賴(lài)關(guān)聯(lián)等。
(2)一般關(guān)聯(lián)包括一對(duì)類(lèi)的二元關(guān)聯(lián)及多個(gè)類(lèi)之間的多元關(guān)聯(lián)。
(3)聚合(Aggregation)表示整體和部分之間較強(qiáng)的關(guān)聯(lián)關(guān)系,聚合關(guān)系的多重性大于1,則稱(chēng)為共享聚合。
(4)組合(Composition)關(guān)系表示整體和部分之間有比聚合關(guān)系更強(qiáng)的關(guān)系,它們之間是一對(duì)一的關(guān)系,即同生死共存亡,組合關(guān)系不能共享。
(5)依賴(lài)關(guān)系是一種使用關(guān)系,表現(xiàn)為一個(gè)對(duì)象僅僅調(diào)用了另一個(gè)對(duì)象的服務(wù)。步驟:
(1)在關(guān)聯(lián)和對(duì)象可見(jiàn)性分析的基礎(chǔ)上,補(bǔ)充一般關(guān)聯(lián)、組合,泛化、依賴(lài)
(a)一般關(guān)聯(lián)關(guān)系要注意關(guān)聯(lián)的命名以及哪個(gè)是role A 哪個(gè)是role B。
(b)一般關(guān)聯(lián)選中role B detail 中的aggregate,就變成聚合;再選中by value 就變成組合。(c)依賴(lài)畫(huà)虛線箭頭。(2)完善設(shè)計(jì)類(lèi)圖
[實(shí)驗(yàn)結(jié)果] ① 對(duì)重點(diǎn)實(shí)驗(yàn)結(jié)果進(jìn)行分析;
② 實(shí)驗(yàn)中的問(wèn)題和提高:對(duì)自己的分析或設(shè)計(jì)進(jìn)行評(píng)價(jià),指出合理和不足之處,提出改進(jìn)的方案。
③ 收獲與體會(huì):分析依賴(lài)關(guān)系的要點(diǎn),繪制關(guān)聯(lián)的要點(diǎn)。通過(guò)實(shí)驗(yàn)了解UML的建模的步驟和方法,了解用例圖和類(lèi)圖等的畫(huà)法,了解系統(tǒng)的分析和建模方法。增加動(dòng)手和思維能力,使自己更加的了解軟件系統(tǒng)前期開(kāi)發(fā)的軟件定義和分析方法。