




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、第五章 用例建模5.1 用例的基本概念 什么是用例用例(use case)是一種建模技術(shù),用于描述新系統(tǒng)應(yīng)該具備的功能,或者描述一個(gè)已有系統(tǒng)已經(jīng)具備的功能。用例規(guī)定了一個(gè)動作序列(可以有多種實(shí)現(xiàn)),系統(tǒng)可以執(zhí)行這些動作并產(chǎn)生出一個(gè)對于特定活動者有價(jià)值的可見結(jié)果。 為什么使用用例 用例提供了一種捕獲功能需求的系統(tǒng)而且直覺的方法。 用例驅(qū)動整個(gè)開發(fā)過程。5.2 用例中的有關(guān)概念用例模型的主要組件:用例、參與者以及被建模的系統(tǒng)。創(chuàng)建用例模型的過程: 定義系統(tǒng); 發(fā)現(xiàn)參與者和用例; 描述用例; 定義用例之間的關(guān)系; 對模型進(jìn)行確認(rèn)操作。5.2.1 系統(tǒng)與系統(tǒng)邊界系統(tǒng)邊界是一個(gè)系統(tǒng)所包含的所有成分與系統(tǒng)
2、以外的各種事物的分界線。這里所說的系統(tǒng)是指被開發(fā)的計(jì)算機(jī)軟硬件系統(tǒng)。Insurance Business圖5.1 在用例模型中的系統(tǒng)5.2.2 參與者 參與者的概念參與者(Actor)是與該系統(tǒng)打交道的人或者其他系統(tǒng)。 參與者的分類主要參與者(Primary actor):使用該系統(tǒng)基本功能的參與者。次要參與者(Secondary actor):使用該系統(tǒng)次要功能的參與者。主動參與者(Active actor):該參與者負(fù)責(zé)初始啟動用例。被動參與者(Passive actor):該參與者永遠(yuǎn)不會初始啟動用例,而只是參與系統(tǒng)中的一個(gè)或多個(gè)用例而已。 發(fā)現(xiàn)參與者· 誰將使用該系統(tǒng)的主要功
3、能(主要參與者)?· 誰將需要該系統(tǒng)的支持以完成他們的日常工作?· 誰將需要維護(hù)、管理該系統(tǒng),以及保持系統(tǒng)處于工作狀態(tài)(次要參與者)?· 系統(tǒng)需要處理哪些硬件設(shè)備?· 系統(tǒng)需要與哪些其他系統(tǒng)打交道?· 誰或什么系統(tǒng)對本系統(tǒng)產(chǎn)生的結(jié)果感興趣? UML中的參與者ActorInsurance AgentInsurance Agent圖5.2 參與者的表示方法 參與者之間的關(guān)系泛化關(guān)系CustomerPersonal Visit CustomerTelephone Customer(a)Suppliers AgentRestockerCollector
4、(b)圖5.3 參與者之間的泛化關(guān)系5.2.3 用例 用例的定義UML中的用例定義是:系統(tǒng)執(zhí)行的一組動作序列,這些動作可以產(chǎn)生一個(gè)特定參與者可觀察的數(shù)值結(jié)果。 用例的特征 用例總是由參與者啟動的; 用例為參與者提供數(shù)值; 用例是完整的。用例通過關(guān)聯(lián)與參與者相連,這種關(guān)聯(lián)也稱為通信關(guān)聯(lián)(Communication Association)。用例是一個(gè)類,而不是一個(gè)實(shí)例。 發(fā)現(xiàn)用例· 參與者要求系統(tǒng)提供哪些功能?參與者需要做什么?· 參與者需要讀取、創(chuàng)建、銷毀、修改或存儲系統(tǒng)中的某種信息嗎?· 需要通知參與者系統(tǒng)中發(fā)生的事件嗎?或者參與者需要向系統(tǒng)通知某種事情嗎?這些
5、事情在功能上代表什么內(nèi)容?· 利用系統(tǒng)的新功能,參與者的日常工作是否可以被簡化或者提高效率?· 系統(tǒng)需要的輸入/輸出是什么?從哪里獲取這些輸入,系統(tǒng)的結(jié)果輸出到哪里?· 系統(tǒng)當(dāng)前實(shí)現(xiàn)版本的主要問題是什么? UML中的用例用例A用例B用例C用例名稱通信關(guān)聯(lián)系統(tǒng)名稱參與者名稱圖5.4 用例的表示方法 用例之間的關(guān)系· 泛化關(guān)系(Generalization Relationship):子用例可以從父用例繼承行為和含義。· 擴(kuò)展關(guān)系(Extension Relationship):一個(gè)用例是通過向另一個(gè)用例添加一些行為,擴(kuò)展而成的。· 包含
6、關(guān)系(Inclusion Relationship):一個(gè)用例包含另一個(gè)用例中定義的行為。· 分組關(guān)系(Grouping Relationship):當(dāng)多個(gè)用例都處理類似的功能,或以某種方式相互關(guān)聯(lián)時(shí),就可以將它們捆綁到一個(gè)UML包內(nèi)。 擴(kuò)展關(guān)系RestockRestock according to salesextends圖5.5 一個(gè)擴(kuò)展關(guān)系BorrowBookFindBookextendIssueFineLiabrarianReturnBookExtension pointOverdueBook圖5.6 一個(gè)擴(kuò)展關(guān)系 包含關(guān)系Identify customerWithdrawa
7、lUpdate passwordincludeinclude圖5.7 包含關(guān)系示例ChangePersonDetailsSearchPersonViewPersonDetailsincludeincludeDeletePersonDetailsUserinclude圖5.8 包含關(guān)系示例 泛化關(guān)系Search PersonSearch TeacherSearch Student圖5.9 泛化關(guān)系示例5.3 描述用例用例的描述專注于系統(tǒng)的外在行為,而忽略系統(tǒng)內(nèi)部是如何實(shí)現(xiàn)的。用例的文本描述:· 用例的目標(biāo);· 用例如何被啟動;· 參與者和用例之間的消息流;·
8、; 用例的其他流程;· 用例如何結(jié)束并向參與者傳遞數(shù)值。例:訂單處理系統(tǒng)RequestConsignmentCancel ConsignmentRequestReturn GoodProcessingValidatePurchasingReturn OrderItemsCancel OrderAccept OrderQuery InventoryShippingCancel Order DetailQueryInput OrderLoan AccountOrder Processing SystemTelephone AgentsCredit AuthorizationAgencie
9、sA productWarehousesystemA shippingsystemTelephoneAgentsA productWarehousesystem圖5.10 訂單處理系統(tǒng)的用例圖該系統(tǒng)包含如下參與者:· 電話代理(telephone agents);· 信用授權(quán)機(jī)構(gòu)(credit authorization agencies);· 產(chǎn)品倉庫系統(tǒng)(a product warehouse system);· 貨運(yùn)系統(tǒng)(a shipping system)。用例可以通過考慮參與者與系統(tǒng)之間的交互來獲取。系統(tǒng)與電話代理的交互:· 輸入訂單
10、;· 取消訂單;· 取消訂單明細(xì);· 查詢。系統(tǒng)與信用授權(quán)機(jī)構(gòu)的交互:· 確認(rèn)購買;· 貸款賬戶。系統(tǒng)與產(chǎn)品倉庫系統(tǒng)的交互:· 請求發(fā)貨;· 取消發(fā)貨請求;· 退貨處理;· 查詢庫存;· 接受訂貨;系統(tǒng)與貨運(yùn)系統(tǒng)的交互:· 運(yùn)送貨物;· 退回訂單物品。Buy SodaRestockCollectCustomerSuppliers RepresentativeCollectorSoda Machine圖5.11 飲料銷售機(jī)的用例圖用例也可以用活動圖描述。將硬幣投入機(jī)器檢查是否已
11、經(jīng)投入足夠的硬幣顯示可以選擇飲料挑選飲料交付飲料顯示不能得到飲料不能得到飲料可得到飲料飲料消費(fèi)者圖5.12 用于描述參與者和用例之間交互的活動圖客戶將卡插入ATM機(jī),開始用例。 ATM顯示歡迎消息并提示客戶輸入密碼??蛻糨斎朊艽a。 ATM確認(rèn)密碼有效。如果無效則執(zhí)行其他事件流A1。如果與主機(jī)聯(lián)接有問題,則執(zhí)行異常事件流E1。 ATM提供以下選項(xiàng):存錢,取錢,查詢 。 用戶選擇取錢選項(xiàng)。 ATM提示輸入所取金額。 用戶輸入所取金額。 ATM確定該帳戶是否有足夠的金額。如果余額不夠,則執(zhí)行A2,如果與主機(jī)聯(lián)接有問題,則執(zhí)行異常事件流E1。 ATM從客戶帳戶中減去所取金額。 ATM向客戶提供要取的錢
12、。 ATM打印清單。 ATM退出客戶的卡,用例結(jié)束其他事件流A1:輸入無效密碼 ATM告訴客戶該密碼錯(cuò)誤。 ATM退出客戶的卡,用例結(jié)束。其他事件流A2:余額不足 ATM告訴客戶該帳戶余額不足。 ATM退出客戶的卡,用例結(jié)束。 異常事件流E1:聯(lián)接主機(jī)出現(xiàn)錯(cuò)誤 ATM告訴客戶聯(lián)接主機(jī)出現(xiàn)錯(cuò)誤。 ATM在錯(cuò)誤日志記下錯(cuò)誤。 ATM退出客戶的卡,用例結(jié)束。 事后條件:無5.4 測試用例兩種類型的測試:驗(yàn)證(Verification)和確認(rèn)(Validation)。5.5 實(shí)現(xiàn)用例實(shí)現(xiàn)一個(gè)用例:將該用例描述中那些不同步驟和動作轉(zhuǎn)換為各個(gè)類、類的操作以及這些類之間的關(guān)系。Class BOper1()Oper2()Oper3()etcClass AOper1(
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 金融機(jī)構(gòu)財(cái)務(wù)風(fēng)險(xiǎn)評估與風(fēng)險(xiǎn)管理顧問協(xié)議
- 生態(tài)旅游區(qū)場地合作開發(fā)合同
- 境外旅游團(tuán)隊(duì)領(lǐng)隊(duì)服務(wù)合同模板
- 長途運(yùn)輸車輛事故賠償及保險(xiǎn)理賠協(xié)議
- 物流終止合作協(xié)議書范本
- 醫(yī)療授權(quán)協(xié)議書范本
- 外資企業(yè)代理記賬與外匯管理合同
- 地鐵隧道工程安裝施工安全責(zé)任協(xié)議
- 農(nóng)業(yè)生產(chǎn)基地場地租賃保證金及農(nóng)產(chǎn)品質(zhì)量安全合同
- 企業(yè)辦公樓場地租賃及物業(yè)服務(wù)委托協(xié)議
- 2025年 物業(yè)管理師三級考試練習(xí)試題附答案
- 絲織品微生物防治-洞察及研究
- 2025江蘇農(nóng)牧科技職業(yè)學(xué)院工作人員招聘考試真題
- 2025至2030年中國生產(chǎn)工業(yè)控制類軟件行業(yè)市場運(yùn)行格局及戰(zhàn)略咨詢研究報(bào)告
- 九師聯(lián)盟2024-2025學(xué)年高二下學(xué)期6月摸底聯(lián)考語文試題(含答案)
- 廣東省深圳市南山區(qū)2025年小升初數(shù)學(xué)模擬試卷含解析
- 國家開放大學(xué)《Web開發(fā)基礎(chǔ)》形考任務(wù)實(shí)驗(yàn)1-5參考答案
- GB/T 620-2011化學(xué)試劑氫氟酸
- 房屋建筑學(xué)復(fù)習(xí)題最新版本
- 浮選柱對有色金屬礦泥的浮選
- 油藏?cái)?shù)值模擬實(shí)用技能培訓(xùn).ppt
評論
0/150
提交評論