用例和用例圖_第1頁(yè)
用例和用例圖_第2頁(yè)
用例和用例圖_第3頁(yè)
用例和用例圖_第4頁(yè)
用例和用例圖_第5頁(yè)
已閱讀5頁(yè),還剩59頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

第三章用例和用例圖1/27/20241航空兵某師副師長(zhǎng)、空軍特級(jí)飛行員嚴(yán)鋒“把飛行當(dāng)職業(yè)只能會(huì)飛,把飛行當(dāng)事業(yè)可以飛好,把飛行當(dāng)藝術(shù)才能飛精?!?/p>

1/27/20242用例定義用例是系統(tǒng)、子系統(tǒng)或類和外部的參與者(actor)交互的動(dòng)作序列的說(shuō)明,包括可選的動(dòng)作序列和會(huì)出現(xiàn)異常的動(dòng)作序列。用例(usecase)是對(duì)一個(gè)活動(dòng)者(actor)使用系統(tǒng)的一項(xiàng)功能時(shí)所進(jìn)行的交互過(guò)程的一個(gè)文字描述序列用例是系統(tǒng)提供的外部可感知的功能單元,用例的目的是定義清晰的系統(tǒng)行為,但不解釋系統(tǒng)的內(nèi)部結(jié)構(gòu)1/27/20243在UML中,用例用一個(gè)橢圓表示,用例名往往用動(dòng)賓結(jié)構(gòu)或主謂結(jié)構(gòu)命名(英文命名,往往采用動(dòng)賓結(jié)構(gòu))WithdrawMoney置正文為黑體創(chuàng)建索引購(gòu)買商品1/27/20244怎么獲取用例?活動(dòng)者希望用戶執(zhí)行什么任務(wù)?活動(dòng)者在系統(tǒng)中訪問(wèn)哪些信息(創(chuàng)建、存儲(chǔ)、修改、刪除等)?需要將哪些外界信息提供給系統(tǒng)需要將系統(tǒng)的什么事情告訴活動(dòng)者如何維護(hù)系統(tǒng)1/27/20245系統(tǒng)和關(guān)聯(lián)系統(tǒng):用于界定系統(tǒng)功能范圍,描述該系統(tǒng)功能的用例都置于其中,而描述外部實(shí)體的執(zhí)行者都置于其外。關(guān)聯(lián):連接執(zhí)行者和用例,表示執(zhí)行者所代表的系統(tǒng)外部實(shí)體與該用例所描述的系統(tǒng)需求有關(guān)。1/27/20246用例作需求分析的特點(diǎn)用例從使用系統(tǒng)的角度描述系統(tǒng)中的信息,即站在系統(tǒng)外部察看系統(tǒng)功能,而不考慮系統(tǒng)內(nèi)部對(duì)該功能的具體實(shí)現(xiàn)方式。用例描述了用戶提出的一些可見(jiàn)需求,對(duì)應(yīng)一個(gè)具體的用戶目標(biāo)。用例是對(duì)系統(tǒng)行為的動(dòng)態(tài)描述,屬于UML的動(dòng)態(tài)建模部分。1/27/20247

考慮人和飲料販賣機(jī)的交互,包括購(gòu)買飲料,首先,放置貨物(飲料)等,下面考慮購(gòu)買飲料。我們?cè)O(shè)計(jì)一個(gè)飲料販賣機(jī),從用戶的角度來(lái)考察它的功能:?jiǎn)?“自動(dòng)飲料販賣機(jī)將為您做什么?”答:

“我通過(guò)自動(dòng)飲料販賣機(jī)購(gòu)買一聽(tīng)飲料.”飲料販賣機(jī)的主要功能是使得用戶可以購(gòu)買飲料,我們?yōu)檫@種機(jī)器標(biāo)記一個(gè)叫“買飲料”的usecase.1/27/20248UML中的UseCase表示BuySodaUseCaseActorCommunicationCustomer1/27/20249UML中的UseCase表示購(gòu)買商品登錄退還商品post出納員顧客1/27/202410常見(jiàn)錯(cuò)誤識(shí)別用例時(shí)一個(gè)常見(jiàn)的錯(cuò)誤是把用例當(dāng)成是單獨(dú)的步驟、操作或事務(wù)的處理。1/27/202411參與者參與者(actor)是指系統(tǒng)以外的、需要使用系統(tǒng)或與系統(tǒng)交互的東西,包括人、設(shè)備、外部系統(tǒng)等。ActorNameTelephoneSystem(電話系統(tǒng))使用電話卡對(duì)方付款PhoneUser(電話用戶)BillingSystem1/27/202412參與者的三種表示形式Actor1Icon形式《Actor》Actor1Actor1Label形式Decoration形式1/27/202413在飲料自動(dòng)販賣機(jī)中,除了買飲料的顧客,還有以下的參與者。RestockSodaCollectMoneyCustomerSupplierCollector每一種參與者具有自己的usecase飲料販賣機(jī)中的參與者供應(yīng)商向自動(dòng)販賣機(jī)添加飲料。收銀員從自動(dòng)販賣機(jī)收錢。BuySoda1/27/202414系統(tǒng)及其邊界典型的系統(tǒng)邊界包括硬件設(shè)備或者計(jì)算機(jī)系統(tǒng)的硬件/軟件邊界一個(gè)組織中的部門整個(gè)組織系統(tǒng)邊界識(shí)別的目的:為了識(shí)別出什么是系統(tǒng)內(nèi)以及什么在系統(tǒng)之外,進(jìn)而識(shí)別出什么是系統(tǒng)的職責(zé)。1/27/202415以銷售點(diǎn)終端系統(tǒng)為例選擇整個(gè)商店或者企業(yè)作為“系統(tǒng)”選擇銷售點(diǎn)終端的軟硬件系統(tǒng)作為系統(tǒng)邊界誰(shuí)是參與者?1/27/202416購(gòu)買商品登錄退還商品post出納員顧客購(gòu)買商品退還商品商店顧客1/27/202417如果開(kāi)發(fā)的是一個(gè)應(yīng)用軟件或者硬件設(shè)備,那么用這個(gè)軟件或硬件的邊界作為系統(tǒng)邊界通常是合理的選擇如果從事的是企業(yè)過(guò)程重組或業(yè)務(wù)過(guò)程重組,那么選擇整個(gè)企業(yè)或者商店作為系統(tǒng)是可取的1/27/202418用例間的關(guān)系關(guān)聯(lián)(association)是指參與者與其參與執(zhí)行的用例之間的通信途徑泛化(generalization)是代表一般和特殊的關(guān)系在泛化關(guān)系中,子用例繼承父用例的行為和含義,子用例也可以增加新的行為和含義或覆蓋父用例的行為和含義1/27/202419ValidateuserCheckpasswordRetinalscanBuyTicketGroupBuyIndividualBuy1/27/202420包含(include)關(guān)系指的是兩個(gè)用例之間的關(guān)系,其中一個(gè)用例(稱為基本用例,baseusecase)的行為包含另一個(gè)用例(稱為包含用例,inclusionusecase)的行為箭頭方向由基本用例指向被包含用例。執(zhí)行基本用例的時(shí)候,每次都應(yīng)該調(diào)用被包含用例(或其中一個(gè)),被包含用例也可單獨(dú)執(zhí)行。1/27/202421什么時(shí)候使用包含用例第一如果兩個(gè)以上的用例有共同的功能,則可以將這個(gè)功能分解到另一個(gè)用例中.第二一個(gè)用例的功能太多時(shí),可以用包含關(guān)系建模兩個(gè)小用例。1/27/202422ATMSessionIdentifyCustomerValidateAccount<<include>><<include>>1/27/202423擴(kuò)展關(guān)系(extend)的基本含義與泛化關(guān)系類似,但在擴(kuò)展關(guān)系中,對(duì)擴(kuò)展用例有更多的規(guī)則限制,即基本用例必須聲明若干“擴(kuò)展點(diǎn)”,而擴(kuò)展用例只能在這些擴(kuò)展點(diǎn)上增加新的行為和含義箭頭方向由擴(kuò)展用例指向基本用例。擴(kuò)展用例依賴于被擴(kuò)展用例,不是完整的獨(dú)立用例,無(wú)法單獨(dú)執(zhí)行。1/27/2024241/27/202425用例的泛化、包含和擴(kuò)展關(guān)系的比較在擴(kuò)展關(guān)系中,一個(gè)基本用例執(zhí)行時(shí),可以執(zhí)行、也可以不執(zhí)行擴(kuò)展部分在包含關(guān)系中,在執(zhí)行基本用例時(shí),一定會(huì)包含用例部分1/27/202426<<extend>><<include>>1/27/2024271/27/202428用例圖用例圖(usecasediagram)是顯示一組用例、參與者以及它們之間關(guān)系的圖。在UML中,一個(gè)用例模型由若干個(gè)用例圖描述。1/27/202429用例的描述更詳細(xì)地描述用例的功能用例的描述內(nèi)容用例的目標(biāo)用例是怎么啟動(dòng)的參與者和用例之間的消息是如何傳送的用例中除了主路徑外,其他路徑是什么用例結(jié)束后的系統(tǒng)狀態(tài)其他需要描述的內(nèi)容1/27/202430用例描述的主要組成用例名稱簡(jiǎn)要說(shuō)明/描述優(yōu)先級(jí)參與者前提條件主事件流其他事件流擴(kuò)展點(diǎn)后置條件1/27/202431用例描述的主要組成用例名稱應(yīng)該與用例圖相符合,可以寫上編號(hào)(標(biāo)識(shí))簡(jiǎn)要說(shuō)明對(duì)用例的價(jià)值結(jié)果進(jìn)行描述,語(yǔ)言應(yīng)簡(jiǎn)潔易懂前置條件用例執(zhí)行之前應(yīng)該滿足的條件后置條件用例執(zhí)行完畢系統(tǒng)可能處于的一組狀態(tài)1/27/202432用例描述的主要組成擴(kuò)展點(diǎn)(泛化、包含、擴(kuò)展)如果有被擴(kuò)展、包含或泛化的用例,寫出它們的名稱,并說(shuō)明在什么情況下使用優(yōu)先級(jí)說(shuō)明用戶對(duì)該用例的期望值,可以為今后開(kāi)發(fā)時(shí)制定先后順序主事件流主事件流是正常情形,是用例中的最常用路徑其他事件流從主事件流中分支出來(lái)的非常用路徑1/27/202433用例描述易犯錯(cuò)誤只描述系統(tǒng)的行為,沒(méi)有描述參與者的行為只描述參與者的行為,沒(méi)有描述系統(tǒng)的行為在用例描述中就設(shè)定對(duì)用戶界面的設(shè)計(jì)的要求描述過(guò)于冗長(zhǎng)1/27/202434事件流分為三大類

主事件流是正常情形,是用例中的最常用路徑.買票時(shí),主事件流是順利買到票。

其他事件流是從主事件流中分支出來(lái)的,但不是錯(cuò)誤條件.例如,客戶用常客卡買票,客戶信用卡無(wú)效或請(qǐng)求的航班沒(méi)有.這些情形是系統(tǒng)能夠處理的合法情形,而不是系統(tǒng)中發(fā)生的錯(cuò)誤。

錯(cuò)誤流表示錯(cuò)誤條件。例如,系統(tǒng)無(wú)法驗(yàn)證信用卡。錯(cuò)誤流表示系統(tǒng)本身的問(wèn)題。事件流1/27/202435主事件流的步驟如下:1.客戶選擇瀏覽航班信息的選項(xiàng)時(shí),用例開(kāi)始.2.系統(tǒng)提示輸入出發(fā)站和到達(dá)站,出發(fā)時(shí)間和返回時(shí)間.3.用戶輸入出發(fā)站和到達(dá)站,出發(fā)時(shí)間和返回時(shí)間.4.系統(tǒng)顯示航班清單及票價(jià).A1:沒(méi)有這個(gè)航班5.用戶選擇要定的航班6.系統(tǒng)顯示這個(gè)航班的所有票價(jià)選項(xiàng).7.用戶選擇要定的票價(jià)選項(xiàng).A2:用戶用??涂ㄟx擇免費(fèi)機(jī)票.8.系統(tǒng)確認(rèn)票價(jià).事件流1/27/202436主事件流的步驟如下:9.用戶確認(rèn)票價(jià).10.系統(tǒng)提示輸入信用卡類型,號(hào)碼,姓名和有效期.11.用戶輸入信用卡類型,號(hào)碼,姓名和有效期.12.系統(tǒng)提交信用卡購(gòu)買.A6賬號(hào)找不到.A7資金不足.E1無(wú)法訪問(wèn)信用系統(tǒng)13.系統(tǒng)對(duì)該用戶訂機(jī)票.14.系統(tǒng)產(chǎn)生確認(rèn)碼并向用戶顯示.15.用戶確認(rèn)收到代碼.16.用例結(jié)束.事件流1/27/202437其他事件流的步驟如下:A1:沒(méi)有這個(gè)航班1系統(tǒng)顯示信息,沒(méi)有所輸入出發(fā)站和到達(dá)站以及出發(fā)時(shí)間和返回時(shí)間的航班.2用戶確認(rèn)消息.3返回主事件流第二步.A2:用戶用??涂ㄟx擇免費(fèi)機(jī)票1.系統(tǒng)提示輸入??涂ㄌ?hào).2.用戶輸入??涂ㄌ?hào).3.系統(tǒng)確認(rèn)卡號(hào)有效.A3:??涂ㄌ?hào)無(wú)效事件流1/27/2024384.系統(tǒng)確認(rèn)里程數(shù)足夠兌換A4:里程數(shù)不夠兌換免費(fèi)機(jī)票A5:沒(méi)有常客免費(fèi)票5.票價(jià)設(shè)置為0美元6.返回主事件流第8步.A3:??涂ㄌ?hào)無(wú)效1.系統(tǒng)顯示??涂o(wú)效2.用戶重新輸入卡號(hào)或選擇取消免費(fèi)票的要求.3.如果用戶重輸卡號(hào)則流轉(zhuǎn)入其他事件流A2第1步.4.如果選擇取消??兔赓M(fèi)票要求,則流返回事件流第6步.事件流1/27/202439A4:里程數(shù)不夠兌換免費(fèi)機(jī)票.1.系統(tǒng)顯示里程數(shù)不夠兌換免費(fèi)機(jī)票的消息,消息包含所需里程數(shù)和已累積里程數(shù).2.返回主事件流第6步.A5:沒(méi)有??兔赓M(fèi)票1.系統(tǒng)顯示所選航班沒(méi)有常客免費(fèi)票的消息.2.返回主事件流的第6步.A6:賬號(hào)找不到1.系統(tǒng)顯示賬號(hào)找不到的消息.2.返回主事件流的第10步.A7:資金不足1.系統(tǒng)顯示資金不足的消息.2.返回主事件流第10步.事件流1/27/202440錯(cuò)誤流:E1:無(wú)法訪問(wèn)信用系統(tǒng)1.系統(tǒng)顯示無(wú)法訪問(wèn)信用系統(tǒng)的消息.2.返回主事件流第10步.事件流1/27/202441用例與活動(dòng)圖訂購(gòu)貨物用例客戶選擇訂購(gòu)貨物,用例開(kāi)始客戶鍵入他或她的姓名和地址如果客戶只鍵入郵編,系統(tǒng)提供城市和州客戶鍵入想要訂購(gòu)的產(chǎn)品的代碼對(duì)于每一個(gè)鍵入的產(chǎn)品代碼系統(tǒng)提供產(chǎn)品描述和價(jià)格系統(tǒng)把單價(jià)加入總價(jià)中客戶鍵入信用卡支付信息客戶選擇Submit1/27/202442系統(tǒng)確認(rèn)信息,把這次訂購(gòu)未完成交易保存起來(lái),向記賬系統(tǒng)提供支付信息。當(dāng)支付確認(rèn)后,訂單被標(biāo)志為確認(rèn),返回客戶一個(gè)訂單ID,用例結(jié)束1/27/2024431/27/202444用例分析基本步驟:確定系統(tǒng)的邊界范圍,找出系統(tǒng)外部的參與者(包括外部系統(tǒng))確定每一個(gè)參與者所要求的系統(tǒng)行為,命名為用例把一些公共的系統(tǒng)行為分解為新的用例,供其他用例共用把一些可能變更的行為分解為擴(kuò)展用例編制用例腳本繪制用例圖將特殊情況的用例繪制成單獨(dú)的子用例圖細(xì)化用例圖,解決用例間的重復(fù)與沖突問(wèn)題1/27/202445用例識(shí)別的兩種方法基于參與者的方法識(shí)別出與系統(tǒng)或者組織有關(guān)的參與者對(duì)每個(gè)參與者,識(shí)別出他們發(fā)起或參加的執(zhí)行過(guò)程基于事件的方法識(shí)別出系統(tǒng)必須響應(yīng)的外部事件把事件與參與者或用例聯(lián)系起來(lái)1/27/202446出納員顧客登錄用現(xiàn)金結(jié)算購(gòu)買商品退還商品1/27/202447識(shí)別用例要點(diǎn)有意義的目標(biāo)業(yè)務(wù)語(yǔ)言,用戶觀點(diǎn)用戶粒度1/27/202448有意義的目標(biāo)1/27/202449業(yè)務(wù)語(yǔ)言,用戶觀點(diǎn)1/27/2024501/27/202451用戶粒度最常犯的錯(cuò)誤:把步驟當(dāng)作用例把執(zhí)行者動(dòng)作當(dāng)作用例把系統(tǒng)活動(dòng)當(dāng)成用例1/27/202452四輪馬車問(wèn)題(CRUD)1/27/

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論