(七)第五章 用例建模_第1頁
(七)第五章 用例建模_第2頁
(七)第五章 用例建模_第3頁
(七)第五章 用例建模_第4頁
(七)第五章 用例建模_第5頁
已閱讀5頁,還剩14頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、第五章 用例建模5.1 用例的基本概念 什么是用例用例(use case)是一種建模技術(shù),用于描述新系統(tǒng)應(yīng)該具備的功能,或者描述一個已有系統(tǒng)已經(jīng)具備的功能。用例規(guī)定了一個動作序列(可以有多種實現(xiàn)),系統(tǒng)可以執(zhí)行這些動作并產(chǎn)生出一個對于特定活動者有價值的可見結(jié)果。 為什么使用用例 用例提供了一種捕獲功能需求的系統(tǒng)而且直覺的方法。 用例驅(qū)動整個開發(fā)過程。5.2 用例中的有關(guān)概念用例模型的主要組件:用例、參與者以及被建模的系統(tǒng)。創(chuàng)建用例模型的過程: 定義系統(tǒng); 發(fā)現(xiàn)參與者和用例; 描述用例; 定義用例之間的關(guān)系; 對模型進行確認操作。5.2.1 系統(tǒng)與系統(tǒng)邊界系統(tǒng)邊界是一個系統(tǒng)所包含的所有成分與系統(tǒng)

2、以外的各種事物的分界線。這里所說的系統(tǒng)是指被開發(fā)的計算機軟硬件系統(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):該參與者負責初始啟動用例。被動參與者(Passive actor):該參與者永遠不會初始啟動用例,而只是參與系統(tǒng)中的一個或多個用例而已。 發(fā)現(xiàn)參與者· 誰將使用該系統(tǒng)的主要功

3、能(主要參與者)?· 誰將需要該系統(tǒng)的支持以完成他們的日常工作?· 誰將需要維護、管理該系統(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)生一個特定參與者可觀察的數(shù)值結(jié)果。 用例的特征 用例總是由參與者啟動的; 用例為參與者提供數(shù)值; 用例是完整的。用例通過關(guān)聯(lián)與參與者相連,這種關(guān)聯(lián)也稱為通信關(guān)聯(lián)(Communication Association)。用例是一個類,而不是一個實例。 發(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)當前實現(xiàn)版本的主要問題是什么? UML中的用例用例A用例B用例C用例名稱通信關(guān)聯(lián)系統(tǒng)名稱參與者名稱圖5.4 用例的表示方法 用例之間的關(guān)系· 泛化關(guān)系(Generalization Relationship):子用例可以從父用例繼承行為和含義。· 擴展關(guān)系(Extension Relationship):一個用例是通過向另一個用例添加一些行為,擴展而成的。· 包含

6、關(guān)系(Inclusion Relationship):一個用例包含另一個用例中定義的行為。· 分組關(guān)系(Grouping Relationship):當多個用例都處理類似的功能,或以某種方式相互關(guān)聯(lián)時,就可以將它們捆綁到一個UML包內(nèi)。 擴展關(guān)系RestockRestock according to salesextends圖5.5 一個擴展關(guān)系BorrowBookFindBookextendIssueFineLiabrarianReturnBookExtension pointOverdueBook圖5.6 一個擴展關(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)部是如何實現(xiàn)的。用例的文本描述:· 用例的目標;· 用例如何被啟動;· 參與者和用例之間的消息流;·

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)機構(gòu)(credit authorization agencies);· 產(chǎn)品倉庫系統(tǒng)(a product warehouse system);· 貨運系統(tǒng)(a shipping system)。用例可以通過考慮參與者與系統(tǒng)之間的交互來獲取。系統(tǒng)與電話代理的交互:· 輸入訂單

10、;· 取消訂單;· 取消訂單明細;· 查詢。系統(tǒng)與信用授權(quán)機構(gòu)的交互:· 確認購買;· 貸款賬戶。系統(tǒng)與產(chǎn)品倉庫系統(tǒng)的交互:· 請求發(fā)貨;· 取消發(fā)貨請求;· 退貨處理;· 查詢庫存;· 接受訂貨;系統(tǒng)與貨運系統(tǒng)的交互:· 運送貨物;· 退回訂單物品。Buy SodaRestockCollectCustomerSuppliers RepresentativeCollectorSoda Machine圖5.11 飲料銷售機的用例圖用例也可以用活動圖描述。將硬幣投入機器檢查是否已

11、經(jīng)投入足夠的硬幣顯示可以選擇飲料挑選飲料交付飲料顯示不能得到飲料不能得到飲料可得到飲料飲料消費者圖5.12 用于描述參與者和用例之間交互的活動圖客戶將卡插入ATM機,開始用例。 ATM顯示歡迎消息并提示客戶輸入密碼??蛻糨斎朊艽a。 ATM確認密碼有效。如果無效則執(zhí)行其他事件流A1。如果與主機聯(lián)接有問題,則執(zhí)行異常事件流E1。 ATM提供以下選項:存錢,取錢,查詢 。 用戶選擇取錢選項。 ATM提示輸入所取金額。 用戶輸入所取金額。 ATM確定該帳戶是否有足夠的金額。如果余額不夠,則執(zhí)行A2,如果與主機聯(lián)接有問題,則執(zhí)行異常事件流E1。 ATM從客戶帳戶中減去所取金額。 ATM向客戶提供要取的錢

12、。 ATM打印清單。 ATM退出客戶的卡,用例結(jié)束其他事件流A1:輸入無效密碼 ATM告訴客戶該密碼錯誤。 ATM退出客戶的卡,用例結(jié)束。其他事件流A2:余額不足 ATM告訴客戶該帳戶余額不足。 ATM退出客戶的卡,用例結(jié)束。 異常事件流E1:聯(lián)接主機出現(xiàn)錯誤 ATM告訴客戶聯(lián)接主機出現(xiàn)錯誤。 ATM在錯誤日志記下錯誤。 ATM退出客戶的卡,用例結(jié)束。 事后條件:無5.4 測試用例兩種類型的測試:驗證(Verification)和確認(Validation)。5.5 實現(xiàn)用例實現(xiàn)一個用例:將該用例描述中那些不同步驟和動作轉(zhuǎn)換為各個類、類的操作以及這些類之間的關(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)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論