軟件工程用例圖_第1頁
軟件工程用例圖_第2頁
軟件工程用例圖_第3頁
軟件工程用例圖_第4頁
軟件工程用例圖_第5頁
已閱讀5頁,還剩22頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、 第五章 用例圖學習內(nèi)容n什么叫用例圖n用例圖的構(gòu)成要素n用例的重要元素n用例之間的關(guān)系n使用Rose創(chuàng)建用例的步驟說明什么叫用例圖 由參與者(Actor)、用例(Use Case)以及它們之間的關(guān)系構(gòu)成的用于描述系統(tǒng)功能的動態(tài)視圖稱為用例圖。要在用例圖上顯示某個用例,可繪制一個橢圓,然后將用例的名稱放在橢圓的中心或橢圓下面的中間位置。 要在用例圖上繪制一個參與者(表示一個系統(tǒng)用戶),可繪制一個人形符號。參與者和用例之間的關(guān)系使用帶箭頭或者不帶箭頭的線段來描述,箭頭表示在這一關(guān)系中哪一方是對話的主動發(fā)起者,箭頭所指方是對話的被動接受者。什么叫用例圖n在用例建模中,為了更加清楚的描述用例或者參與

2、者,會使用到注釋。什么叫用例圖n用例圖是需求分析中的產(chǎn)物,主要作用是描述參與者和用例之間的關(guān)系,幫助開發(fā)人員可視化的了解系統(tǒng)的功能。借助于用例圖,系統(tǒng)用戶、系統(tǒng)分析人員、系統(tǒng)設(shè)計人員、領(lǐng)域?qū)<夷軌蛞钥梢暬姆绞綄栴}進行探討,減少了大量交流上的障礙,便于對問題達成共識。n用例圖可視化地表達了系統(tǒng)的需求,具有直觀、規(guī)范等優(yōu)點,克服了純文字性說明的不足。n用例方法是完全從外部來定義系統(tǒng)功能,它把需求和設(shè)計完全的分離開來。我們不用關(guān)心系統(tǒng)內(nèi)部是如何完成各種功能的,系統(tǒng)對于我們來說就是一個黑箱子。用例圖的構(gòu)成要素n參與者(Actor)是指存在于系統(tǒng)外部并直接與系統(tǒng)進行交互的人、系統(tǒng)、子系統(tǒng)或類的外部實

3、體的抽象。n每個參與者可以參與一個或多個用例,每個用例也可以有一個或多個參與者。n在用例圖中使用一個人形圖標來表示參與者,參與者的名字寫在人形圖標下面。用例圖的構(gòu)成要素n由于參與者實質(zhì)上也是類,所以它擁有與類相同的關(guān)系描述,即參與者與參與者之間主要是泛化關(guān)系(或稱為“繼承”關(guān)系)。n泛化關(guān)系的含義是把某些參與者的共同行為提取出來表示成通用行為,并描述成超類。泛化關(guān)系表示的是參與者之間的一般/特殊關(guān)系,在UML圖中,使用帶空心三角箭頭的實線表示泛化關(guān)系。用例圖的構(gòu)成要素n在項目開發(fā)過程中,邊界是一個非常重要的概念。這里說的系統(tǒng)邊界是指系統(tǒng)與系統(tǒng)之間的界限。通常我們所說的系統(tǒng)可以認為是由一系列的相

4、互作用的元素形成的具有特定功能的有機整體。n系統(tǒng)同時又是相對的,一個系統(tǒng)本身又可以是另一個更大系統(tǒng)的組成部分,因此,系統(tǒng)與系統(tǒng)之間需要使用系統(tǒng)邊界進行區(qū)分開來。我們把系統(tǒng)邊界以外的同系統(tǒng)相關(guān)聯(lián)的其他部分,稱之為系統(tǒng)環(huán)境。用例的重要元素n任何用例都不能在缺少參與者的情況下獨立存在。同樣,任何參與者也必須要有與之關(guān)聯(lián)的用例。所以識別用例的最好方法就是從分析系統(tǒng)參與者開始,在這個過程中往往會發(fā)現(xiàn)新的參與者。n可以通過以下問題來尋找用例: (1)參與者希望系統(tǒng)提供什么功能? (2)參與者是否會讀取、創(chuàng)建、修改、刪除、存儲系統(tǒng)的某種信息?如果是的話,參與者又是如何完成這些操作的? (3)參與者是否會將外

5、部的某些事件通知給系統(tǒng)? (4)系統(tǒng)中發(fā)生的事件是否通知參與者? (5)是否存在影響系統(tǒng)的外部事件。用例的重要元素n用例的粒度指的是用例所包含的系統(tǒng)服務(wù)或功能單元的多少。用例的粒度越大,用例包含的功能越多,反之則包含的功能越少。n如果用例的粒度很小,得到的用例數(shù)就會太多。反之,如果用例的粒度很大,那么得到的用例數(shù)就會很少。n如果用例數(shù)目過多會造成用例模型過大和引入設(shè)計困難大大提高。 如果用例數(shù)目過少會造成用例的粒度太大,不便于進一步的充分分析。用例的重要元素比如:網(wǎng)站后臺管理系統(tǒng)中的會員信息維護用例,管理員需要進行添加會員信息、修改會員信息、刪除會員信息等操作。我們還可以根據(jù)具體的操作把它抽象

6、成3個用例,它展示的系統(tǒng)需求和單個用例是完全一樣的。用例的重要元素n對于每一個用例,我們還需要有詳細的描述信息,以便讓別人對于整個系統(tǒng)有一個更加詳細的了解,這些信息包含在用例規(guī)約之中。n每一個用例的用例規(guī)約都應(yīng)該包含以下內(nèi)容: (1)簡要說明:對用例作用和目的的簡要描述。 (2)事件流:事件流包括基本流和備選流?;玖髅枋龅氖怯美幕玖鞒蹋侵赣美罢!边\行時的場景。 (3)用例場景:同一個用例在實際執(zhí)行的時候會有很多不同的情況發(fā)生,稱之為用例場景,也可以說用例場景就是用例的實例。 (4)特殊需求: 特殊需求指的是一個用例的非功能性需求和設(shè)計約束。特殊需求通常是非功能性需求,包括可靠性、性

7、能、可用性和可擴展性等。例如法律或法規(guī)方面的需求、應(yīng)用程序標準和所構(gòu)建系統(tǒng)的質(zhì)量屬性等。 (5)前置條件: 執(zhí)行用例之前系統(tǒng)必須所處的狀態(tài)。例如,前置條件是要求用戶有訪問的權(quán)限或是要求某個用例必須已經(jīng)執(zhí)行完。 (6)后置條件:用例執(zhí)行完畢后系統(tǒng)可能處于的一組狀態(tài)。例如,要求在某個用例執(zhí)行完后,必須執(zhí)行另一個用例。用例之間的關(guān)系n包含關(guān)系指用例可以簡單地包含其他用例具有的行為,并把它所包含的用例行為作為自身行為的一部分。在UML中,包含關(guān)系是通過帶箭頭的虛線段加字樣來表示,箭頭由基礎(chǔ)用例(Base)指向被包含用例(Inclusion)。用例之間的關(guān)系n包含關(guān)系代表著基礎(chǔ)用例會用到被包含用例,具體

8、的講就是將被包含用例的事件流插入到基礎(chǔ)用例的事件流中。需要注意的是,包含關(guān)系是UML1.3中的表述,在UML1.1中,同等語義的關(guān)系被表述為使用(uses)。用例之間的關(guān)系n在處理包含關(guān)系時,具體的做法就是把幾個用例的公共部分單獨的抽象出來成為一個新的用例。主要有兩種情況需要用到包含關(guān)系:n第一,多個用例用到同一段的行為,則可以把這段共同的行為單獨抽 象成為一個用例,然后讓其他用例來包含這一用例。n第二,某一個用例的功能過多、事件流過于復(fù)雜時,我們也可以把某一段事件流抽象成為一個被包含的用例,以達到簡化描述的目的。用例之間的關(guān)系n在一定條件下,把新的行為加入到已有的用例中,獲得的新用例叫做擴展

9、用例(Extension),原有的用例叫做基礎(chǔ)用例(Base),從擴展用例到基礎(chǔ)用例的關(guān)系就是擴展關(guān)系。n一個基礎(chǔ)用例可以擁有一個或者多個擴展用例,這些擴展用例可以一起使用。用例之間的關(guān)系n用例的泛化指的是一個父用例可以被特化形成多個子用例,而父用例和子用例之間的關(guān)系就是泛化關(guān)系。n在用例的泛化關(guān)系中,子用例繼承了父用例所有的結(jié)構(gòu)、行為和關(guān)系,子用例是父用例的一種特殊形式。n子用例還可以添加、覆蓋、改變繼承的行為。在UML中,用例的泛化關(guān)系通過一個三角箭頭從子用例指向父用例來表示。用例之間的關(guān)系n泛化的示例:銀行存款有兩種方式,一種是銀行柜臺存款,一種是ATM機存款。在這里,銀行柜臺存款和AT

10、M機存款都是存款的一種特殊方式,因此“存款”為父用例,“銀行柜臺存款”和“ATM機存款”為子用例。使用Rose創(chuàng)建用例的步驟說明n“學生信息管理系統(tǒng)”部分功能性需求包括以下內(nèi)容: (1)系統(tǒng)管理員登錄后可以對班級的基本信息進行增加、刪除、修改、查詢等操作。學校領(lǐng)導(dǎo)登錄后可以對班級基本信息進行查詢操作。 (2)教師登錄后可以對學生的考試成績進行錄入、刪除、修改、查詢等操作。學生登錄后可以對考試成績進行查詢操作。 (3)學生登錄后可以了解所有選修課程的具體信息,可以根據(jù)自己的需要選擇不同課程。系統(tǒng)管理員登錄后可以增加、修改、查詢、刪除選修課程。 (4)系統(tǒng)管理員可以對賬號進行創(chuàng)建、設(shè)置、查看、刪除

11、等操作。 使用Rose創(chuàng)建用例的步驟說明使用Rose創(chuàng)建用例的步驟說明 使用Rose創(chuàng)建用例的步驟說明n教師參與用例錄入成績、修改成績、保存成績、查詢成績、刪除成績和登錄。學生參與用例登錄和查詢成績。因為修改成績和錄入成績的時候都要保存成績,所以將保存成績抽象出來作為單獨的一個用例。用例錄入成績、修改成績和用例保存成績之間是包含關(guān)系,用例找回密碼和用例登錄之間是擴展關(guān)系。使用Rose創(chuàng)建用例的步驟說明n學生作為參與者直接參與用例查看課程信息、按課程編號查看、按課程名查看、選擇課程、刪除已選課程、登錄和找回密碼。系統(tǒng)管理員參與用例登錄、找回密碼和“維護課程信息”。其中查看課程信息有兩種方式,一種

12、是按照課程名查看,另一種是按照課程編號查看。所以查看課程信息是父用例,而按照課程名查看和按照課程編號查看是子用例,他們之間的關(guān)系是泛化關(guān)系。用例找回密碼和用例登錄之間是擴展關(guān)系。使用Rose創(chuàng)建用例的步驟說明n系統(tǒng)管理員參與用例創(chuàng)建新賬號、設(shè)置賬號、設(shè)置賬號基本信息、設(shè)置賬號權(quán)限、查看賬號和刪除賬號。在設(shè)置帳號時,主要分為設(shè)置賬號的基本信息和設(shè)置賬號的權(quán)限,為了便于修改和維護,將這兩個功能分別抽象為兩個用例。所以用例設(shè)置賬號基本信息、設(shè)置賬號權(quán)限和用例設(shè)置賬號之間是包含關(guān)系。練習題n網(wǎng)絡(luò)的普及帶給了人們更多的學習途徑,隨之用來管理遠程網(wǎng)絡(luò)教學的“遠程網(wǎng)絡(luò)教學系統(tǒng)”也誕生了。n“遠程網(wǎng)絡(luò)教學系統(tǒng)”的功能需求包括:(1)學生登錄網(wǎng)站后,可以瀏覽課件、查找課件、下載課件、觀看教學視頻。(2)教師登錄網(wǎng)站后,可以上傳課件、上傳教學視頻、發(fā)布教學心得、查看教學心得、修改教學心得。(3)系統(tǒng)管理員負責對網(wǎng)站頁面的維護,審核不法課件和不法教學信息,批準

溫馨提示

  • 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

提交評論