UML統一建模語言PPTchapter06_第1頁
UML統一建模語言PPTchapter06_第2頁
UML統一建模語言PPTchapter06_第3頁
UML統一建模語言PPTchapter06_第4頁
UML統一建模語言PPTchapter06_第5頁
已閱讀5頁,還剩40頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

重點內容:什么叫用例圖用例圖的構成要素用例的重要元素用例之間的各種重要關系使用Rose創建用例圖的步驟說明使用Rose創建用例圖的步驟說明

第6章用例圖一、什么叫用例圖由參與者(Actor)、用例(UseCase)以及它們之間的關系構成的用于描述系統功能的動態視圖稱為用例圖。1、用例圖的含義用例圖的符號參與者系統用例關聯<<extend>><<include>>泛化包含擴展一、什么叫用例圖在用例建模中,為了更加清楚的描述用例或者參與者,會使用到注釋。1、用例圖的含義一、什么叫用例圖用例圖是需求分析中的產物,主要作用是描述參與者和用例之間的關系,幫助開發人員可視化的了解系統的功能。用例圖可視化地表達了系統的需求,具有直觀、規范等優點,克服了純文字性說明的不足。用例方法是完全從外部來定義系統功能,它把需求和設計完全的分離開來。2、用例圖的作用二、用例圖的構成要素參與者(Actor)是指存在于系統外部并直接與系統進行交互的人、系統、子系統或類的外部實體的抽象。每個參與者可以參與一個或多個用例,每個用例也可以有一個或多個參與者。在用例圖中使用一個人形圖標來表示參與者,參與者的名字寫在人形圖標下面。1、參與者參與者不僅可以由人承擔,還可以是其它系統、硬件設備、甚至是時鐘

1)其它系統:當系統需要與其它系統交互時,如ATM柜員機系統中,銀行后臺系統就是一個參與者;

2)硬件設備:如果系統需要與硬件設備交互時,如在開發IC卡門禁系統時,IC卡讀寫器就是一個參與者;

3)時鐘:當系統需要定時觸發時,時鐘就是參與者二、用例圖的構成要素

由于參與者實質上也是類,所以它擁有與類相同的關系描述,即參與者與參與者之間主要是泛化關系(或稱為“繼承”關系)。泛化關系的含義是把某些參與者的共同行為提取出來表示成通用行為,并描述成超類。泛化關系表示的是參與者之間的一般/特殊關系,在UML圖中,使用帶空心三角箭頭的實線表示泛化關系。2、參與者間的關系二、用例圖的構成要素在項目開發過程中,邊界是一個非常重要的概念。這里說的系統邊界是指系統與系統之間的界限。通常我們所說的系統可以認為是由一系列的相互作用的元素形成的具有特定功能的有機整體。系統同時又是相對的,一個系統本身又可以是另一個更大系統的組成部分,因此,系統與系統之間需要使用系統邊界進行區分開來。我們把系統邊界以外的同系統相關聯的其他部分,稱之為系統環境。3、系統邊界二、用例圖的構成要素用例實例是在系統中執行的一系列動作,這些動作將生成特定參與者可見的價值結果。一個用例定義一組用例實例用例是由一組用例實例組成的,用例實例也就是常說的“使用場景”,就是用戶使用系統的一個實際的、特定的場景用例應該給參與者帶來可見的價值,這點十分關鍵4、用例三、用例的重要元素任何用例都不能在缺少參與者的情況下獨立存在。同樣,任何參與者也必須要有與之關聯的用例。所以識別用例的最好方法就是從分析系統參與者開始,在這個過程中往往會發現新的參與者。可以通過以下問題來尋找用例:

1參與者希望系統提供什么功能?

2參與者是否會讀取、創建、修改、刪除、存儲系統的某種信息?如果是的話,參與者又是如何完成這些操作的?

3參與者是否會將外部的某些事件通知給系統?

4系統中發生的事件是否通知參與者?

5是否存在影響系統的外部事件。1、識別用例三、用例的重要元素

用例的粒度指的是用例所包含的系統服務或功能單元的多少。用例的粒度越大,用例包含的功能越多,反之則包含的功能越少。如果用例數目過多會造成用例模型過大和引入設計困難大大提高。如果用例數目過少會造成用例的粒度太大,不便于進一步的充分分析。2、用例的粒度三、用例的重要元素比如:網站后臺管理系統中的會員信息維護用例,管理員需要進行添加會員信息、修改會員信息、刪除會員信息等操作。2、用例的粒度我們還可以根據具體的操作把它抽象成3個用例,它展示的系統需求和單個用例是完全一樣的。三、用例的重要元素對于每一個用例,我們還需要有詳細的描述信息,以便讓別人對于整個系統有一個更加詳細的了解,這些信息包含在用例規約之中。

3、用例規約用例描述模板(1/2)用例編號[為用例制定一個唯一的編號,通常格式為UCxx]用例名稱[應為一個動詞短語,讓讀者一目了然地知道用例的目標]用例概述[用例的目標,一個概要性的描述]范圍[用例的設計范圍]主參與者[該用例的主Actor,在此列出名稱,并簡要的描述它]次要參與者[該用例的次要Actor,在此列出名稱,并簡要的描述它]項目相關人利益說明項目相關人利益[項目相關人員名稱][從該用例獲取的利益]…………前置條件[即啟動該用例所應該滿足的條件。]后置條件[即該用例完成之后,將執行什么動作。]成功保證[描述當前目標完成后,環境變化情況。]用例描述模板(2/2)基本事件流步驟活動1[在這里寫出觸發事件到目標完成以及清除的步驟。]2……(其中可以包含子事件流,以子事件流編號來表示)擴展事件流1a[1a表示是對1的擴展,其中應說明條件和活動]1b……(其中可以包含子事件流,以子事件流編號來表示)子事件流[對多次重復的事件流可以定義為子事件流,這也是抽取被包含用例的地方。]規則與約束[對該用例實現時需要考慮的業務規則、非功能需求、設計約束等]用例:購買商品基本事件流顧客瀏覽貨單并選擇要買的商品顧客選擇付款顧客填寫采購信息(地址、隔天或3天送貨)系統顯示價目信息顧客填寫信用卡信息系統檢查信用卡的合法性系統確認銷售系統給客戶發出確認電子郵件擴展事件流:固定客戶3a.系統顯示當前購物信息、價格信息、信用卡的最后四位數字3b.顧客接受或修改這些隱含值。轉至主場景的第6步擴展事件流:信用卡失效6a.系統檢查信用卡失敗。允許客戶重新執行第5步四、用例之間的各種重要關系用例圖中可以出現以下幾種關系:①.關聯關系②.包含關系③.擴展關系

④.泛化關系

參與者與用例之間是關聯關系,表示參與者與用例之間具有使用、交互信息的關聯。用單向箭頭表示,只表示誰啟動用例,不考慮信息的雙向流動每個用例都有參與者啟動,除包含和擴展用例習慣上,無論用例和參與者之間是否存在雙向數據交流,關聯總是由參與者指向用例四、用例之間的各種重要關系1、關聯四、用例之間的各種重要關系包含關系指用例可以簡單地包含其他用例具有的行為,并把它所包含的用例行為作為自身行為的一部分。2、包含四、用例之間的各種重要關系兩個用例之間,一個用例(基本用例)的行為包含了另外一個用例(被包含用例)的行為。兩個以上用例有共同功能,可分解到單獨用例,形成包含依賴。(執行基本用例時,每次都必須調用被包含用例)一個用例功能過多需分解成小用例,構成包含依賴四、用例之間的各種重要關系

在處理包含關系時,具體的做法就是把幾個用例的公共部分單獨的抽象出來成為一個新的用例。主要有兩種情況需要用到包含關系:第一,多個用例用到同一段的行為,則可以把這段共同的行為單獨抽象成為一個用例,然后讓其他用例來包含這一用例。第二,某一個用例的功能過多、事件流過于復雜時,我們也可以把某一段事件流抽象成為一個被包含的用例,以達到簡化描述的目的。四、用例之間的各種重要關系在一定條件下,把新的行為加入到已有的用例中,獲得的新用例叫做擴展用例(Extension),原有的用例叫做基礎用例(Base),從擴展用例到基礎用例的關系就是擴展關系。一個基礎用例可以擁有一個或者多個擴展用例,這些擴展用例可以一起使用。

3、擴展基本用例提供了一組擴展點(extensionpoints),在這些擴展點中可以添加新的行為,而擴展用例提供了一組插入片段,這些片段能夠被插入到基本用例的擴展點一般情況下,基本用例的執行不會涉及擴展用例的行為;

如果特定條件發生,擴展用例的行為才被執行擴展用例依賴于基本用例,只是部分片段組成,不是完整的獨立用例,無法單獨執行四、用例之間的各種重要關系用例的泛化指的是一個父用例可以被特化形成多個子用例,而父用例和子用例之間的關系就是泛化關系。在用例的泛化關系中,子用例繼承了父用例所有的結構、行為和關系,子用例是父用例的一種特殊形式。子用例還可以添加、覆蓋、改變繼承的行為。在UML中,用例的泛化關系通過一個三角箭頭從子用例指向父用例來表示。

4、泛化四、用例之間的各種重要關系泛化的示例:銀行存款有兩種方式,一種是銀行柜臺存款,一種是ATM機存款。在這里,銀行柜臺存款和ATM機存款都是存款的一種特殊方式,因此“存款”為父用例,“銀行柜臺存款”和“ATM機存款”為子用例。4、泛化五、使用Rose創建用例圖的步驟說明“企業進、存、銷管理系統”功能性需求包括以下內容:(1)采購員根據生產原料的使用情況判斷采購用品,對需要訂購產品信息統計訂貨的,并制作產品訂單。最后根據訂單進行采購活動。(2)倉庫管理員負責產品的庫存管理。包括產品入庫管理、處理盤點信息、處理報損產品信息和一些信息的設置。這些設置信息,包括:供應商信息、產品信息。倉庫管理員每天對產品進行一次盤點,當發現庫存產品有損壞時,及時處理報損信息。當產品生產后,將產品進行入庫。當產品銷售后時,產品進行出庫處理。(3)統計人員負責統計分析管理,包括:查詢產品信息、查詢銷售信息、查詢供應商信息、查詢缺貨信息、查詢報表信息,并制作報表。統計分析員使用系統的統計分析功能,了解產品信息、銷售信息、供應商信息、庫存信息。(4)在銷售員為客戶提供售貨服務時,接受客戶購買產品,根據系統的定價計算出產品的總價,客戶付款,系統自動保存客戶購買記錄。(5)系統管理員負責本系統的系統維護。系統管理員負責員工信息管理、供貨商信息管理以及系統維護等。每種管理者都通過自己的用戶名稱和密碼登錄到各自的管理系統中。1、需求分析五、使用Rose創建用例圖的步驟說明

(1)銷售員:為客戶客提供銷售產品的服務。(2)倉庫管理員:負責庫存產品的管理活動。(3)采購員:負責企業生產原料的訂購。(4)會計:負責企業經營狀況的統計。(5)系統管理員:負責企業員工信息管理、供應商信息管理以及系統維護等。2、識別參與者五、使用Rose創建用例圖的步驟說明銷售員能夠通過該系統進行銷售商品活動。首先登錄系統,驗證身份成功后,獲取商品信息,然后將銷售信息更新,最后對客戶進行商品銷售。3、構建用例模型銷售員用例圖

五、使用Rose創建用例圖的步驟說明倉庫管理員能夠通過該系統進行如下活動:(1)處理盤點,每天需要對庫存產品信息進行盤點。(3)產品入庫。當產品生產后,將產品進行入庫。(4)產品出庫。當產品銷售發貨后,進行出庫處理。(5)管理設置。倉庫管理員負責供應商信息、產品基本信息的管理設置。3、構建用例模型倉庫管理員用例圖

五、使用Rose創建用例圖的步驟說明采購員能夠通過該系統進行訂貨管理活動。采購員首先根據經營情況統計所缺的生產資料,根據需要制定出訂單。3、構建用例模型采購員用例圖

五、使用Rose創建用例圖的步驟說明會計負責產品的統計分析管理,它能夠通過該系統進行如下活動:(1)查詢基本信息。會計能夠查詢產品的基本信息,根據產品的基本信息,制定出相應的方案。(2)查詢銷售信息。會計根據銷售情況匯總后交銷售部制定合理的銷售方案。(3)查詢供應商信息。會計能夠查詢供應商信息。(4)查詢缺貨信息。會計能夠查詢缺貨信息。(5)查詢報損信息。會計能夠查詢報損信息。

3、構建用例模型會計用例圖

五、使用Rose創建用例圖的步驟說明系統管理員能夠通過該系統進行如下活動:(1)維護員工信息。系統管理員能夠維護企業員工的信息,如添加員工、刪除員工和修改員工信息等。(2)維護供應商信息。系統管理員能夠維護供應商的信息,如添加供應商、刪除供應商和修改供應商信息等。(3)系統設置。系統管理員能夠根據一些需要進行必要的系統設置。3、構建用例模型系統管理員用例圖

用例圖的繪制流程記錄需求—特性表編號說明FEAT01新增書籍信息

FEAT02修改已有的書籍信息

FEAT03書籍信息按計算機類、非計算機類分別建檔

FEAT04錄入新書時能夠自動按規則生成書號FEAT05計算機類與非計算機類書籍采用不同的書號規則FEAT06錄入新書時如果重名將自動提示FEAT07按書名、作者、類別、出版社等關鍵字組合查詢書籍FEAT08列出所有書籍信息FEAT09記錄外借情況FEAT10外借狀態能夠自動反應在書籍信息中FEAT11按人、按書查詢外借情況FEAT12列出所有的外借情況FEAT13按特定時間段統計購買金額、冊數FEAT14所有查詢、列表、統計功能應可以單獨對計算機類或非計算機類進行識別參與者已有的上下文關系圖(表示系統范圍)及其他相關模型:它們描述了系統與外部系統的邊界,從這些圖中可以尋找出與系統有交互關系的外部實體。項目相關人員分析:對項目的相關人員進行分析,就能夠決定出哪些人將會與系統進行交互。書面的規格說明和其它項目文檔(如會談備忘錄等)需求研討會和聯合應用開發會議的記錄:這些會議的參與者通常是很重要的,因為他們在組織中所代表的角色就是可能與系統發生交互的參與者。當前過程和系統的培訓指南及用戶手冊:這些東西中經常會有潛在參與者。合并需求獲得用例特性用例FEAT01.新增書籍信息FEAT03.書籍信息按計算機類、非計算機類分別建檔FEAT04.錄入新書時能夠自動按規則生成書號FEAT05.計算機類與非計算機類書籍采用不同的書號規則FEAT06.錄入新書時如果重名將自動提示UC01.新增書籍信息FEAT02.修改已有的書籍信息UC02.修改書籍信息FEAT07.按書名、作者、類別、出版社等關鍵字組合查詢書籍FEAT08.列出所有書籍信息FEAT14.所有查詢、列表、統計功能應可以單獨對計算機類或非計算機類進行UC03.查詢書籍信息FEAT09.記錄外借情況FEAT10.外借狀態能夠自動反應在書籍信息中UC04.登記外借信息FEAT11.按人、按書查詢外借情況FEAT12.列出所有的外借情況FEAT14.所有查詢、列表、統計功能應可以單獨對計算機類或非計算機類進行UC05.查詢外借信息FEAT13.按特定時間段統計購買金額、冊數FEAT14.所有查詢、列表、統計功能應可以單獨對計算機類或非計算機類進行UC06.統計金額和冊數繪制用例圖細化用例描述—搭框架1.用例名稱:新增書籍信息(UC01)2.簡要說明:錄入新購書籍信息,并自動存儲建檔。3.事件流:3.1基本事件流3.2擴展事件流4.非功能需求5.前置條件:用戶進入圖書管理系統。6.后置條件:完成新書信息的存儲建檔。7.擴展點:無8.優先級:最高(滿意度5,不滿意度5)

細化用例描述—填血肉……3.事件流:3.1基本事件流

1)圖書管理員向系統發出“新增書籍信息”請求;

2)系統要求圖書管理員選擇要新增的書籍是計算機類還

是非計算機類;

3)圖書管理員做出選擇后,顯示相應界面,讓圖書管理員輸入信息,并自動根據書號規則生成書號;

溫馨提示

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

評論

0/150

提交評論