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

下載本文檔

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

文檔簡介

1、第4章用例和用例圖4.1 4.1 概述概述用例模型是表達系統(tǒng)外部事物與系統(tǒng)之間交互的可視化工具。當用例模型在外部事物面前出現(xiàn)時,它捕獲到系統(tǒng)、子系統(tǒng)或類的行為,將系統(tǒng)功能劃分成對系統(tǒng)用戶有用的需求。交互部分或功能被表示成用例。 用例圖展示了系統(tǒng)邊界、參與者(系統(tǒng)外部事物)、用例以及它們之間的關(guān)系,描述了參與者與系統(tǒng)交互的情況以及系統(tǒng)的功能。參與者(actor):在系統(tǒng)外部與系統(tǒng)交互的人或事物,它以某種方式參與系統(tǒng)內(nèi)用例的執(zhí)行。位于系統(tǒng)(邊界)之外表示的是人或事物與系統(tǒng)交互時所擔任扮演的角色參與者不僅可以由人承擔,還可以是其他的外部系統(tǒng),甚至是時間等。系統(tǒng)實際運作中,一個實際用戶可能對應(yīng)系統(tǒng)的多

2、個參與者。如,一個人可以既是一個商店的售貨員又是顧客actor1actor2actor3Icon形式Label 形式Decoration形式尋找和確定參與者尋找和確定參與者 獲取用例前,首先要確定系統(tǒng)的參與者。詢問以下問題幫助確定參與者:誰使用系統(tǒng)的主要功能?誰改變系統(tǒng)的數(shù)據(jù)?誰從系統(tǒng)獲取數(shù)據(jù)?誰需要系統(tǒng)的支持以完成日程工作任務(wù)?誰負責支持和維護系統(tǒng)?系統(tǒng)需要控制哪些外部資源或硬件設(shè)備?系統(tǒng)需要和哪些外部系統(tǒng)交互?誰對系統(tǒng)運行結(jié)果感興趣?參與者之間的關(guān)系參與者之間的關(guān)系 參與者實際上是版型化的類,因此多個參與者之間可以具有與類之間相同的關(guān)系。用例圖中,使用泛化關(guān)系來描述多個參與者之間的公共行為

3、。參與者的泛化訂餐系統(tǒng)參與者泛化定義定義 用例定義了一組用例實例,其中每個實例都是系用例定義了一組用例實例,其中每個實例都是系統(tǒng)執(zhí)行的一系列動作,這些動作可以對參與者產(chǎn)生有一統(tǒng)執(zhí)行的一系列動作,這些動作可以對參與者產(chǎn)生有一定價值的可觀察到的結(jié)果。定價值的可觀察到的結(jié)果。采用用例用例進行需求分析的特點特點:1、用例由一組用例實例組成。用例實例也稱為場景,是參與者和系統(tǒng)之間一系列特定的活動和交互。場景是使用系統(tǒng)的一個特定情節(jié)或用例的一條執(zhí)行路徑。 例 商場購物“付款”的用例場景一:使用現(xiàn)金成功付款場景二:銀行卡付款被拒絕,付款失敗。采用用例用例進行需求分析的特點特點:2、用例站在系統(tǒng)外部察看系統(tǒng)功

4、能,而不考慮系統(tǒng)內(nèi)部對該功能的具體實現(xiàn)。3、用例描述了用戶提出的一些可見需求,對應(yīng)一個具體的用戶目標,即用例的執(zhí)行結(jié)果對參與者有意義。4、用例是對系統(tǒng)行為的動態(tài)描述,屬于動態(tài)建模部分此外,用例不是全部的系統(tǒng)需求,只是功能性的需求。發(fā)現(xiàn)用例發(fā)現(xiàn)用例 用例的來源是參與者對系統(tǒng)的期望,所以識別用例最好的方法是從客戶的需求入手。識別用例過程中,以下的問題可以幫助發(fā)現(xiàn)用例:參與者為什么要使用該系統(tǒng)?參與者打算在這個系統(tǒng)里做些什么事情?參與者是否會在系統(tǒng)中創(chuàng)建、修改、刪除、訪問、存儲數(shù)據(jù)?如果是,如何來完成這些操作的? 參與者是否會將外部的某些事件通知給該系統(tǒng)? 系統(tǒng)是否會將內(nèi)部的某些事件通知該參與者?泛

5、化關(guān)系包含關(guān)系包含關(guān)系(Include)一個用例(基用例,基本用例)可以包含其他用例(包含用例)具有的行為,并把它所包含的用例行為作為自身用例的一部分,這被稱為包含關(guān)系。用例是一個事件流的集合,當某個事件流片段在多個用例中出現(xiàn)時,可以將這個事件流片段抽取出來,放在一個單獨的包含用例中,簡化基用例的描述。擴展關(guān)系擴展關(guān)系(Extend)擴展關(guān)系表示基本用例在由擴展用例間接說明的一個位置上隱式的合并了另一個用例(擴展用例)的行為?;居美恢罃U展用例的任何細節(jié),沒有擴展用例,基本用例是完整的。只有在特定條件下,它的行為可以被擴展用例的行為擴展,因此擴展關(guān)系處理事件流的異?;蛘呖蛇x事件。關(guān)聯(lián)關(guān)系:

6、參與者與用例之間的關(guān)系用例圖中,關(guān)聯(lián)關(guān)系描述參與者與用例之間的關(guān)系,表示參與者和用例之間的通信。如果參與者啟動了用例,箭頭指向用例;如果參與者利用了用例提供的服務(wù),箭頭指向參與者;如果二者是互動的,則是直線?!跋到y(tǒng)邊界” 用來定義系統(tǒng)的界限,系統(tǒng)用例都置于其中,參與者置于邊界外。邊界決定了抽象的層次。 用例描述的是一個系統(tǒng)做什么的信息,并不說明怎么做。用例是對使用場景進行抽象的總結(jié),形成一組事件流。1、事件流前置條件:用例執(zhí)行前系統(tǒng)和參與者應(yīng)處于做什么狀態(tài)。后置條件:用例結(jié)束后系統(tǒng)處于什么狀態(tài)。基本事件流:對用例中常規(guī)、預(yù)期路徑的描述,是大部分的時間所遇到的場景。擴展事件流:對一些異常情況、選

7、擇分支進行描述。2、用例描述用例編號用例唯一標識符,通常格式為UCxx,在文檔別處可以用標識符來引用該用例用例名稱表明用戶意圖或用例的目標,一般是動詞短語用例描述對用例目標的一個概要性的描述參與者列出該用例的參與者,尤其是主要參與者前置條件即啟動該用例所應(yīng)該滿足的條件。后置條件即該用例完成之后,將執(zhí)行什么動作。主要流程(基本事件流)步驟活動1在這里寫出觸發(fā)事件到目標完成以及清除的步驟。2(其中可以包含子事件流,以子事件流編號來表示)替代流程(擴展事件流)表示是對1的擴展,其中應(yīng)說明條件和活動1b(其中可以包含子事件流,以子事件流編號來表示)子事件流對多次重復(fù)的事件流可以定義為子事件流,這也是抽

8、取被包含用例的地方。規(guī)則與約束對該用例實現(xiàn)時需要考慮的業(yè)務(wù)規(guī)則、非功能需求、設(shè)計約束等用例描述模板2、用例描述常見用例描述錯誤:只描述系統(tǒng)的行為,沒有描述參與者的行為只描述參與者的行為,沒有描述系統(tǒng)的行為在用例描述中就設(shè)定對用戶界面的設(shè)計要求描述過于冗長編寫用例描述應(yīng)遵循以下幾點:使用簡單的語法,主語明確,語義易于理解;在事件流描述中讓讀者直觀地了解是參與者在控制還是系統(tǒng)在控制;從第三者觀察的角度指出參與者的動作,以及系統(tǒng)的響應(yīng);顯示參與者的意圖而非動作顯示過程向前推移,每一步都有前進感;構(gòu)建結(jié)構(gòu)良好的用例為系統(tǒng)和部分系統(tǒng)中單個的、可標識的、合理的原子行為命名。將多個用例的公共的行為抽取出來放

9、到一個被包含用例中。對于變化部分,將其抽取出來,放到擴展用例中。清晰的描述事件流。構(gòu)建結(jié)構(gòu)良好的用例圖:擺放元素時應(yīng)避免交叉線根據(jù)系統(tǒng)實際情況控制用例的粒度用例定義2 用例是系統(tǒng)、子系統(tǒng)或類和外部參與者交互的動作序列的說明,包括可變的動作序列和會出現(xiàn)異常的動作序列。層次化用例圖考慮在項目過程中根據(jù)不同的階段,使用不同粒度和級別的用例。訪客用例圖1、識別參與者會員、訪客(非會員)管理員:分為商品管理員、訂單管理員和系統(tǒng)管理員2、識別用例并繪制用例圖會員和訪客屬于顧客購書子系統(tǒng)管理員屬于書店內(nèi)部管理子系統(tǒng)會員用例圖書店管理員用例圖3、用例描述(1)細化用例描述-搭框架用例名稱:搜索圖書概述:用戶根

10、據(jù)關(guān)鍵字搜索圖書前置條件:無事件流:l 基本事件流l 擴展事件流后置條件: 無3、用例描述(2)細化用例描述-填血肉事件流: 基本事件流 1 用戶點擊“搜索圖書”,用例開始。 2 系統(tǒng)顯示搜索圖書商品界面,提示用戶輸入商品關(guān)鍵字。 3 用戶輸入圖書關(guān)鍵字,選擇提交。 4 系統(tǒng)訪問數(shù)據(jù)庫,根據(jù)關(guān)鍵字查詢相關(guān)的圖書商品信息, 并把查詢出的圖書信息顯示搜索圖書頁面。 5 用例結(jié)束。 擴展事件流 4a) 系統(tǒng)未查出所要商品相關(guān)信息,顯示提示信息,用例 結(jié)束。 4b) 系統(tǒng)查出用戶輸入的關(guān)鍵字為空,顯示提示信息并返 回基本事件流2。創(chuàng)建用例圖工具欄介紹添加參與者與用例添加用例和參與者之間的關(guān)系添加用例之間的關(guān)系復(fù)習思考題復(fù)習思考題1.用例圖中的參與者是什么,它屬于系統(tǒng)范圍嗎?2.用例是什么,它有哪些特點?3.用例之間的包含和擴展關(guān)系是什么,二者有何區(qū)別?請舉例說明4.下列是一個ATM系統(tǒng)中可能的術(shù)語,哪些是有效用例,哪些不是?為什么? 支持跨行業(yè)務(wù) 插入卡片 輸入密碼 選擇服務(wù) 取錢 存錢

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論