版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、會計學(xué)1第第 用例和用例圖用例和用例圖第一頁,共42頁。 在實際軟件項目開發(fā)過程中,軟件用戶開始計劃某個軟在實際軟件項目開發(fā)過程中,軟件用戶開始計劃某個軟件項目時,最先考慮的一定是軟件產(chǎn)品功能的合理性件項目時,最先考慮的一定是軟件產(chǎn)品功能的合理性,系統(tǒng)使用的方便性,軟件界面的友好度等問題。至,系統(tǒng)使用的方便性,軟件界面的友好度等問題。至于整個軟件系統(tǒng)是如何實現(xiàn)的,系統(tǒng)內(nèi)部使用了哪些于整個軟件系統(tǒng)是如何實現(xiàn)的,系統(tǒng)內(nèi)部使用了哪些結(jié)構(gòu),應(yīng)用了哪些技術(shù),這些都不是結(jié)構(gòu),應(yīng)用了哪些技術(shù),這些都不是(b shi)用戶所關(guān)用戶所關(guān)心的內(nèi)容。心的內(nèi)容。 UML用例圖是軟件產(chǎn)品外部特性用例圖是軟件產(chǎn)品外部特性
2、(txng)描述的視圖描述的視圖,它從用戶的角度而不是開發(fā)者的角度來描述軟件,它從用戶的角度而不是開發(fā)者的角度來描述軟件產(chǎn)品的需求,分析軟件產(chǎn)品所需的功能和行為。用產(chǎn)品的需求,分析軟件產(chǎn)品所需的功能和行為。用例圖主要描述了系統(tǒng)需要實現(xiàn)的功能,而忽略系統(tǒng)例圖主要描述了系統(tǒng)需要實現(xiàn)的功能,而忽略系統(tǒng)是如何實現(xiàn)這些功能的。是如何實現(xiàn)這些功能的。 第1頁/共42頁第二頁,共42頁。 下圖是一個簡單的在線購物系統(tǒng),通過該用例圖可以使下圖是一個簡單的在線購物系統(tǒng),通過該用例圖可以使系統(tǒng)的使用者和系統(tǒng)的開發(fā)者都對該在線購物系統(tǒng)有系統(tǒng)的使用者和系統(tǒng)的開發(fā)者都對該在線購物系統(tǒng)有一個基本一個基本(jbn)的了解。
3、的了解。 管理員商品結(jié)算顧客商品瀏覽第2頁/共42頁第三頁,共42頁。 UML用例模型并不是用例模型并不是(b shi)單純的只包括上圖所示的用例圖,還包括內(nèi)容更加詳細的用例描述。單純的只包括上圖所示的用例圖,還包括內(nèi)容更加詳細的用例描述。 用例描述一般為單獨的文檔,用于詳細說明一個用例。用例圖一般用來從宏觀上給出用例模型的基本輪廓,而用例的真正實現(xiàn)細節(jié)則由用例描述來詳細說明。用例描述一般為單獨的文檔,用于詳細說明一個用例。用例圖一般用來從宏觀上給出用例模型的基本輪廓,而用例的真正實現(xiàn)細節(jié)則由用例描述來詳細說明。 第3頁/共42頁第四頁,共42頁。 用例模型由用例圖組成,它是系統(tǒng)用例圖的集合,
4、是對用例模型由用例圖組成,它是系統(tǒng)用例圖的集合,是對系統(tǒng)從宏觀角度的確定描述。用例模型主要用于需求分系統(tǒng)從宏觀角度的確定描述。用例模型主要用于需求分析階段,該模型是系統(tǒng)開發(fā)者和系統(tǒng)使用者反復(fù)討論的析階段,該模型是系統(tǒng)開發(fā)者和系統(tǒng)使用者反復(fù)討論的結(jié)果,表明了系統(tǒng)開發(fā)者和系統(tǒng)使用者對需求規(guī)格結(jié)果,表明了系統(tǒng)開發(fā)者和系統(tǒng)使用者對需求規(guī)格(gug)達成的共識。達成的共識。 首先,用例模型描述了待開發(fā)系統(tǒng)的功能需求;其次,首先,用例模型描述了待開發(fā)系統(tǒng)的功能需求;其次,用例模型將系統(tǒng)看作黑盒,僅從外部執(zhí)行者的角度來理用例模型將系統(tǒng)看作黑盒,僅從外部執(zhí)行者的角度來理解系統(tǒng);再次,用例模型驅(qū)動了需求分析之后
5、各階段的解系統(tǒng);再次,用例模型驅(qū)動了需求分析之后各階段的開發(fā)工作,影響開發(fā)工作,影響(yngxing)到開發(fā)工作的各個階段和到開發(fā)工作的各個階段和UML的各個模型。的各個模型。 第4頁/共42頁第五頁,共42頁。使用使用(shyng)用例圖的主要原因主要有:用例圖的主要原因主要有:明確系統(tǒng)已經(jīng)具有的基本功能。明確系統(tǒng)已經(jīng)具有的基本功能。明確了系統(tǒng)驗收的基本要求,保證了用戶最終得到的明確了系統(tǒng)驗收的基本要求,保證了用戶最終得到的系統(tǒng)與當(dāng)初系統(tǒng)與當(dāng)初(dngch)需求的系統(tǒng)的一致性。需求的系統(tǒng)的一致性。通過對用例圖建立詳細的需求文檔,明確系統(tǒng)各個功通過對用例圖建立詳細的需求文檔,明確系統(tǒng)各個功能的
6、具體內(nèi)容,明確各用例的前置條件和后置條件,能的具體內(nèi)容,明確各用例的前置條件和后置條件,明確用例的特殊要求等。為系統(tǒng)的后續(xù)開發(fā)提供一個明確用例的特殊要求等。為系統(tǒng)的后續(xù)開發(fā)提供一個統(tǒng)一的標(biāo)準(zhǔn)。統(tǒng)一的標(biāo)準(zhǔn)。 第5頁/共42頁第六頁,共42頁。 用例圖主要用例圖主要(zhyo)用于定義系統(tǒng)的功能需求,它描述用于定義系統(tǒng)的功能需求,它描述了系統(tǒng)的參與者與系統(tǒng)提供的用例之間的關(guān)系,用例了系統(tǒng)的參與者與系統(tǒng)提供的用例之間的關(guān)系,用例圖僅從參與者使用系統(tǒng)的角度描述系統(tǒng)中的信息。圖僅從參與者使用系統(tǒng)的角度描述系統(tǒng)中的信息。 用例圖在用例圖在UML中是一種比較簡單的圖,它沒有包含過多的中是一種比較簡單的圖,它
7、沒有包含過多的內(nèi)容內(nèi)容(nirng),只由幾種簡單的圖符組成,一般情況,用,只由幾種簡單的圖符組成,一般情況,用例圖由以下幾種元素組成:例圖由以下幾種元素組成: 執(zhí)行者、用例、系統(tǒng)、關(guān)系、用例描述執(zhí)行者、用例、系統(tǒng)、關(guān)系、用例描述第6頁/共42頁第七頁,共42頁。 5.3.1 執(zhí)行者執(zhí)行者 執(zhí)行者(執(zhí)行者(Actor)是系統(tǒng)的外部)是系統(tǒng)的外部(wib)用戶,它用戶,它是與系統(tǒng)相關(guān)聯(lián)的人或其它系統(tǒng),可以是普通是與系統(tǒng)相關(guān)聯(lián)的人或其它系統(tǒng),可以是普通用戶、外部用戶、外部(wib)硬件、其他系統(tǒng)。硬件、其他系統(tǒng)。 執(zhí)行者使用一個小人符號執(zhí)行者使用一個小人符號(fho)來表示,在來表示,在符號符號(
8、fho)下面標(biāo)上這個執(zhí)行者的名稱,下面標(biāo)上這個執(zhí)行者的名稱,具體表示如圖所示。具體表示如圖所示。 執(zhí)行者第7頁/共42頁第八頁,共42頁。 有些時候由于系統(tǒng)的外部執(zhí)行者可能是其有些時候由于系統(tǒng)的外部執(zhí)行者可能是其他的系統(tǒng),因此有些時候也可以不使用他的系統(tǒng),因此有些時候也可以不使用小人小人(xiorn)的圖符,而使用如圖所示的的圖符,而使用如圖所示的執(zhí)行者圖符表示。該圖符采用矩形表示執(zhí)行者圖符表示。該圖符采用矩形表示,在上部寫明,在上部寫明actor標(biāo)明該系統(tǒng)是個標(biāo)明該系統(tǒng)是個執(zhí)行者。執(zhí)行者。 每個執(zhí)行者都需要一個簡要每個執(zhí)行者都需要一個簡要(jinyo)的描述,用一句話的描述,用一句話或幾句話
9、對這個執(zhí)行者進行說明。或幾句話對這個執(zhí)行者進行說明。 第8頁/共42頁第九頁,共42頁。誰使用系統(tǒng)的功能。誰使用系統(tǒng)的功能。誰向系統(tǒng)提供必要的信息。誰向系統(tǒng)提供必要的信息。誰從系統(tǒng)獲取信息。誰從系統(tǒng)獲取信息。誰維護、管理系統(tǒng)工作。誰維護、管理系統(tǒng)工作。系統(tǒng)需要使用哪些外部系統(tǒng)需要使用哪些外部(wib)資源。資源。需要與系統(tǒng)交互的其它系統(tǒng)有哪些。需要與系統(tǒng)交互的其它系統(tǒng)有哪些。其他對系統(tǒng)產(chǎn)生的結(jié)果感興趣的人或事物。其他對系統(tǒng)產(chǎn)生的結(jié)果感興趣的人或事物。 在進行用例圖繪制時,首先要找出系統(tǒng)的執(zhí)行者。一在進行用例圖繪制時,首先要找出系統(tǒng)的執(zhí)行者。一般可以從以下般可以從以下(yxi)幾個方面來考慮怎樣
10、找到系統(tǒng)的幾個方面來考慮怎樣找到系統(tǒng)的執(zhí)行者:執(zhí)行者: 第9頁/共42頁第十頁,共42頁。5.3.2 用例用例 用例是指系統(tǒng)、子系統(tǒng)或類與外部執(zhí)行者之間交用例是指系統(tǒng)、子系統(tǒng)或類與外部執(zhí)行者之間交互的動作序列說明互的動作序列說明(shumng),包括各種序列及,包括各種序列及出錯序列。出錯序列。 用例用一個用例用一個(y )橢圓表示。用例的名稱有兩種標(biāo)法:一橢圓表示。用例的名稱有兩種標(biāo)法:一種是把用例的名字寫在橢圓的下面,另一種是把名字寫種是把用例的名字寫在橢圓的下面,另一種是把名字寫在橢圓中。在橢圓中。 用例名稱 用例名稱第10頁/共42頁第十一頁,共42頁。 用例描述的是用戶可見的需求,一
11、個具體的用戶目標(biāo),用例描述的是用戶可見的需求,一個具體的用戶目標(biāo),也可以將用例理解為系統(tǒng)功能的分解也可以將用例理解為系統(tǒng)功能的分解(fnji)。用例由執(zhí)。用例由執(zhí)行者來執(zhí)行,用例執(zhí)行完成后將產(chǎn)生一個對執(zhí)行者有價行者來執(zhí)行,用例執(zhí)行完成后將產(chǎn)生一個對執(zhí)行者有價值的結(jié)果。用例可大可小,但必須是對具體的用戶目標(biāo)值的結(jié)果。用例可大可小,但必須是對具體的用戶目標(biāo)的描述。的描述。 同執(zhí)行者一樣,每個用例也可以增加一個簡要的描述,用同執(zhí)行者一樣,每個用例也可以增加一個簡要的描述,用一句話或幾句話對這個用例進行說明。一句話或幾句話對這個用例進行說明。 在最初的用例分析在最初的用例分析(fnx)中,使用這樣簡短
12、的描述來說明中,使用這樣簡短的描述來說明一個用例。但隨著分析一個用例。但隨著分析(fnx)的不斷深入,用例的描述的不斷深入,用例的描述也變得更加詳細。也變得更加詳細。 第11頁/共42頁第十二頁,共42頁。執(zhí)行者要求系統(tǒng)提供哪些功能。執(zhí)行者要求系統(tǒng)提供哪些功能。執(zhí)行者需要增加、查詢、刪除、修改或存儲的信息有哪些。執(zhí)行者需要增加、查詢、刪除、修改或存儲的信息有哪些。系統(tǒng)是否需要把自身的狀態(tài)變化告訴執(zhí)行者。系統(tǒng)是否需要把自身的狀態(tài)變化告訴執(zhí)行者。系統(tǒng)是否需要知道哪些外部事件,執(zhí)行者怎樣把這些事件告訴系統(tǒng)。系統(tǒng)是否需要知道哪些外部事件,執(zhí)行者怎樣把這些事件告訴系統(tǒng)。為了完整地描述用例,還需要知道執(zhí)行
13、者的某些典型功能是否能被系統(tǒng)自動實現(xiàn)。為了完整地描述用例,還需要知道執(zhí)行者的某些典型功能是否能被系統(tǒng)自動實現(xiàn)。系統(tǒng)需要何種輸入和輸出,輸入從何處來,輸出到何處。系統(tǒng)需要何種輸入和輸出,輸入從何處來,輸出到何處。如何對當(dāng)前系統(tǒng)進行必要如何對當(dāng)前系統(tǒng)進行必要(byo)的維護。的維護??梢詮囊韵聨讉€可以從以下幾個(j )方面來考慮怎樣獲取用例:方面來考慮怎樣獲取用例:第12頁/共42頁第十三頁,共42頁。5.3.3 系統(tǒng)系統(tǒng)(xtng) 在用例圖中,為了清晰地表示出系統(tǒng)的邊界可以使用系統(tǒng)在用例圖中,為了清晰地表示出系統(tǒng)的邊界可以使用系統(tǒng)圖符,圖符如圖所示。圖符把該系統(tǒng)的所有圖符,圖符如圖所示。圖符把
14、該系統(tǒng)的所有(suyu)用用例放在系統(tǒng)之中,外部執(zhí)行者放在系統(tǒng)之外。使用系統(tǒng)例放在系統(tǒng)之中,外部執(zhí)行者放在系統(tǒng)之外。使用系統(tǒng)圖符將系統(tǒng)全部的用例包括在圖符中,并在系統(tǒng)圖符的圖符將系統(tǒng)全部的用例包括在圖符中,并在系統(tǒng)圖符的上邊標(biāo)明系統(tǒng)名稱。上邊標(biāo)明系統(tǒng)名稱。 網(wǎng)絡(luò)購物系統(tǒng)第13頁/共42頁第十四頁,共42頁。 使用系統(tǒng)圖符是為了使用系統(tǒng)圖符是為了(wi le)強調(diào)用例包含在系統(tǒng)強調(diào)用例包含在系統(tǒng)內(nèi)部,而執(zhí)行者則不包含在系統(tǒng)之中。這樣有利內(nèi)部,而執(zhí)行者則不包含在系統(tǒng)之中。這樣有利于分析系統(tǒng)的交互過程,有利于分析系統(tǒng)的接口于分析系統(tǒng)的交互過程,有利于分析系統(tǒng)的接口和界面。和界面。 系統(tǒng)圖符不是用例圖
15、必須系統(tǒng)圖符不是用例圖必須(bx)的部分,在用例圖中可以的部分,在用例圖中可以不使用該圖符,但建議讀者在自己畫用例圖時最好使用不使用該圖符,但建議讀者在自己畫用例圖時最好使用系統(tǒng)圖符,這樣有利于明確系統(tǒng)的范圍。系統(tǒng)圖符,這樣有利于明確系統(tǒng)的范圍。 第14頁/共42頁第十五頁,共42頁。5.3.4 關(guān)系關(guān)系(gun x) (1)關(guān)聯(lián))關(guān)聯(lián) 在用例圖中,用例和執(zhí)行者之間的關(guān)系用一條連接二在用例圖中,用例和執(zhí)行者之間的關(guān)系用一條連接二者帶箭頭者帶箭頭(jintu)的連線表示,如圖所示,該連線稱的連線表示,如圖所示,該連線稱為關(guān)聯(lián)。它表示了一個執(zhí)行者和一個用例之間的關(guān)為關(guān)聯(lián)。它表示了一個執(zhí)行者和一個用
16、例之間的關(guān)系。系。 一個用例和一個執(zhí)行者之間最多只有一個關(guān)聯(lián)關(guān)系。一個用例和一個執(zhí)行者之間最多只有一個關(guān)聯(lián)關(guān)系。但一個執(zhí)行者可以和多個用例關(guān)聯(lián),同樣一個用例但一個執(zhí)行者可以和多個用例關(guān)聯(lián),同樣一個用例也可以和多個執(zhí)行者關(guān)聯(lián),正是由這種關(guān)聯(lián)組成了也可以和多個執(zhí)行者關(guān)聯(lián),正是由這種關(guān)聯(lián)組成了系統(tǒng)的用例圖。系統(tǒng)的用例圖。 第15頁/共42頁第十六頁,共42頁。 在用例圖中,關(guān)聯(lián)關(guān)系只用在執(zhí)行者和用例之間,用例和用例之間不會在用例圖中,關(guān)聯(lián)關(guān)系只用在執(zhí)行者和用例之間,用例和用例之間不會(b hu)存在關(guān)聯(lián)關(guān)系。關(guān)聯(lián)關(guān)系采用的是單箭頭的連線,表示在該關(guān)聯(lián)中執(zhí)行者是主動的,是執(zhí)行者啟動的用例。如下圖所示。
17、存在關(guān)聯(lián)關(guān)系。關(guān)聯(lián)關(guān)系采用的是單箭頭的連線,表示在該關(guān)聯(lián)中執(zhí)行者是主動的,是執(zhí)行者啟動的用例。如下圖所示。 顧客 商品瀏覽 在用例圖中,一般情況下關(guān)聯(lián)關(guān)系在用例圖中,一般情況下關(guān)聯(lián)關(guān)系(gun x)的箭頭都的箭頭都是由執(zhí)行者指向用例的,但在有些書籍中也有由用是由執(zhí)行者指向用例的,但在有些書籍中也有由用例指向執(zhí)行者的情況,強調(diào)在關(guān)聯(lián)中起主要作用的例指向執(zhí)行者的情況,強調(diào)在關(guān)聯(lián)中起主要作用的是用例。但這種方式并不值得推薦。是用例。但這種方式并不值得推薦。 第16頁/共42頁第十七頁,共42頁。 (2)包含)包含 包含是指一個用例作為另一個用例必需的部分被使用,包含是指一個用例作為另一個用例必需的部
18、分被使用,包含關(guān)系是依賴關(guān)系的一種。包含關(guān)系用一條連接二者包含關(guān)系是依賴關(guān)系的一種。包含關(guān)系用一條連接二者帶箭頭的虛線表示,并在虛線的上面帶箭頭的虛線表示,并在虛線的上面(shng min)標(biāo)注標(biāo)注include,箭頭方向由基本用例指向包含用例,如下,箭頭方向由基本用例指向包含用例,如下圖所示。圖所示。第17頁/共42頁第十八頁,共42頁。 例如顧客通過網(wǎng)絡(luò)購物系統(tǒng)看中了一件自己喜歡例如顧客通過網(wǎng)絡(luò)購物系統(tǒng)看中了一件自己喜歡的商品,但現(xiàn)在又不想購買,只是想將該商品的商品,但現(xiàn)在又不想購買,只是想將該商品放在自己的收藏夾里,要想實現(xiàn)這個放在自己的收藏夾里,要想實現(xiàn)這個(zh ge)用用例,首先顧
19、客必須使用身份驗證用例,輸入用例,首先顧客必須使用身份驗證用例,輸入用戶名和密碼登陸系統(tǒng)戶名和密碼登陸系統(tǒng) 。 收藏夾 顧客身份驗證第18頁/共42頁第十九頁,共42頁。 在實際應(yīng)用時,包含關(guān)系的例子還是很多的。在在實際應(yīng)用時,包含關(guān)系的例子還是很多的。在進行系統(tǒng)設(shè)計時,當(dāng)有兩個或兩個以上的用例中進行系統(tǒng)設(shè)計時,當(dāng)有兩個或兩個以上的用例中都含有都含有(hn yu)相同功能時,就可以考慮將這相同功能時,就可以考慮將這些相同的功能抽取出來,形成一個單獨的用例,些相同的功能抽取出來,形成一個單獨的用例,然后在用例之間建立包含關(guān)系。然后在用例之間建立包含關(guān)系。 當(dāng)用例之間存在包含關(guān)系時,執(zhí)行者每次調(diào)用
20、基本當(dāng)用例之間存在包含關(guān)系時,執(zhí)行者每次調(diào)用基本用例時,都必須同時執(zhí)行包含用例,這樣才能實用例時,都必須同時執(zhí)行包含用例,這樣才能實現(xiàn)執(zhí)行者需要的功能。另外,執(zhí)行者也可以獨立現(xiàn)執(zhí)行者需要的功能。另外,執(zhí)行者也可以獨立(dl)的訪問包含用例,不必通過基本用例,如上的訪問包含用例,不必通過基本用例,如上圖所示。圖所示。第19頁/共42頁第二十頁,共42頁。 (3)擴展)擴展 擴展是指一個用例擴充了另一個用例的功能,但這擴展是指一個用例擴充了另一個用例的功能,但這個擴充功能不是必需的,擴展關(guān)系也是依賴關(guān)系個擴充功能不是必需的,擴展關(guān)系也是依賴關(guān)系的一種。擴展關(guān)系用一條連接二者帶箭頭的虛線的一種。擴展
21、關(guān)系用一條連接二者帶箭頭的虛線表示,但在虛線的上面標(biāo)注的是表示,但在虛線的上面標(biāo)注的是extend,箭頭,箭頭方向由擴展用例指向方向由擴展用例指向(zh xin)基本用例,如下圖基本用例,如下圖所示。所示。 某個用例是一個某個用例是一個(y )完整的用例,它有自己獨立的功能,但通過調(diào)用另一個完整的用例,它有自己獨立的功能,但通過調(diào)用另一個(y )用例對該用例的功能進行擴充,使該用例能夠完成新的功能,這樣兩個用例之間就是擴展關(guān)系。用例對該用例的功能進行擴充,使該用例能夠完成新的功能,這樣兩個用例之間就是擴展關(guān)系。 第20頁/共42頁第二十一頁,共42頁。 例如,在網(wǎng)絡(luò)系統(tǒng)購物系統(tǒng)中,擁有一個商品
22、結(jié)算用例,但系統(tǒng)中對不同的商品或顧客購買一定例如,在網(wǎng)絡(luò)系統(tǒng)購物系統(tǒng)中,擁有一個商品結(jié)算用例,但系統(tǒng)中對不同的商品或顧客購買一定(ydng)金額的商品都會給與不同額度的優(yōu)惠,系統(tǒng)中還存在一個商品優(yōu)惠用例。這樣當(dāng)顧客使用商品結(jié)算用例時,根據(jù)顧客購買的商品金額和具體商品,就有可能會調(diào)用商品優(yōu)惠用例來擴展商品結(jié)算用例的功能,從而實現(xiàn)優(yōu)惠結(jié)算的功能。金額的商品都會給與不同額度的優(yōu)惠,系統(tǒng)中還存在一個商品優(yōu)惠用例。這樣當(dāng)顧客使用商品結(jié)算用例時,根據(jù)顧客購買的商品金額和具體商品,就有可能會調(diào)用商品優(yōu)惠用例來擴展商品結(jié)算用例的功能,從而實現(xiàn)優(yōu)惠結(jié)算的功能。 顧客 商品結(jié)算 商品優(yōu)惠第21頁/共42頁第二十二
23、頁,共42頁。 擴展關(guān)系和包含關(guān)系看上去很相似,但它們之間還擴展關(guān)系和包含關(guān)系看上去很相似,但它們之間還是存在很大區(qū)別的。與包含用例不同的是,包含用是存在很大區(qū)別的。與包含用例不同的是,包含用例是一個完整的用例,它可以獨立的存在,也可以例是一個完整的用例,它可以獨立的存在,也可以單獨被執(zhí)行者所調(diào)用。但擴展用例并不是一個完整單獨被執(zhí)行者所調(diào)用。但擴展用例并不是一個完整的用例,它只是由部分?jǐn)U展功能組成的用例,它只是由部分?jǐn)U展功能組成(z chn)的的,它不能獨立的存在,必須依賴于基本用例。,它不能獨立的存在,必須依賴于基本用例。 更重要的是擴展用例是不能夠單獨被執(zhí)行者所調(diào)更重要的是擴展用例是不能夠
24、單獨被執(zhí)行者所調(diào)用的。也就是說上圖中的擴展用例商品優(yōu)惠用的。也就是說上圖中的擴展用例商品優(yōu)惠(yuhu)用例不可被顧客這個執(zhí)行者直接調(diào)用。用例不可被顧客這個執(zhí)行者直接調(diào)用。 第22頁/共42頁第二十三頁,共42頁。 (4)泛化)泛化 用例間的泛化關(guān)系是指一個概念較為抽象的用例可以用例間的泛化關(guān)系是指一個概念較為抽象的用例可以(ky)被一般化為一個或多個概念更為具體的用例。被一般化為一個或多個概念更為具體的用例。其中概念較為抽象的用例被稱為父用例,概念更為其中概念較為抽象的用例被稱為父用例,概念更為具體的用例稱為子用例。子用例是父用例的特殊形具體的用例稱為子用例。子用例是父用例的特殊形式,子用例
25、從父用例處繼承屬性和行為,還可以式,子用例從父用例處繼承屬性和行為,還可以(ky)添加、覆蓋或改變繼承的行為。泛化關(guān)系使用添加、覆蓋或改變繼承的行為。泛化關(guān)系使用一條帶一個三角箭頭的實線表示,箭頭方向子用例一條帶一個三角箭頭的實線表示,箭頭方向子用例指向父用例,如下圖所示。指向父用例,如下圖所示。 第23頁/共42頁第二十四頁,共42頁。 如果系統(tǒng)中一個或多個用例是某個一般用例的一般化時,如果系統(tǒng)中一個或多個用例是某個一般用例的一般化時,就需要使用用例的泛化關(guān)系。當(dāng)系統(tǒng)中存在泛化關(guān)系時就需要使用用例的泛化關(guān)系。當(dāng)系統(tǒng)中存在泛化關(guān)系時,如果父用例被使用,其任何,如果父用例被使用,其任何(rnh)
26、子用例也可以被使子用例也可以被使用。用。 例如,網(wǎng)絡(luò)購物系統(tǒng)中包含一個商品結(jié)算用例,但在實際例如,網(wǎng)絡(luò)購物系統(tǒng)中包含一個商品結(jié)算用例,但在實際進行商品結(jié)算時,可以進一步分解成網(wǎng)上結(jié)算和匯款結(jié)進行商品結(jié)算時,可以進一步分解成網(wǎng)上結(jié)算和匯款結(jié)算這兩種結(jié)算功能,這種情況就可以使用泛化功能。其算這兩種結(jié)算功能,這種情況就可以使用泛化功能。其中父用例為商品結(jié)算用例,兩個子用例分別為網(wǎng)上結(jié)算中父用例為商品結(jié)算用例,兩個子用例分別為網(wǎng)上結(jié)算用例和匯款結(jié)算用例,這兩個子用例都從父用例商品結(jié)用例和匯款結(jié)算用例,這兩個子用例都從父用例商品結(jié)算用例處繼承了商品結(jié)算的功能,但根據(jù)自己不同的特算用例處繼承了商品結(jié)算的功
27、能,但根據(jù)自己不同的特點從而實現(xiàn)了兩種不同方式的結(jié)算。點從而實現(xiàn)了兩種不同方式的結(jié)算。 第24頁/共42頁第二十五頁,共42頁。顧客商品結(jié)算匯款結(jié)算網(wǎng)上結(jié)算第25頁/共42頁第二十六頁,共42頁。5.3.5 用例描述用例描述(mio sh) 為了進一步說明用例是如何完成功能的,就需要對用例進行更加詳細的描述。用例描述主要用來說明執(zhí)行者為了實現(xiàn)自己的目標(biāo)與系統(tǒng)進行交互的過程。這個交互的過程由執(zhí)行者開始,執(zhí)行者向系統(tǒng)發(fā)出一個請求。系統(tǒng)響應(yīng)執(zhí)行者發(fā)出的請求并給出一個結(jié)果。執(zhí)行者再根據(jù)這個結(jié)果,再次給出下一個請求,這樣為了進一步說明用例是如何完成功能的,就需要對用例進行更加詳細的描述。用例描述主要用來
28、說明執(zhí)行者為了實現(xiàn)自己的目標(biāo)與系統(tǒng)進行交互的過程。這個交互的過程由執(zhí)行者開始,執(zhí)行者向系統(tǒng)發(fā)出一個請求。系統(tǒng)響應(yīng)執(zhí)行者發(fā)出的請求并給出一個結(jié)果。執(zhí)行者再根據(jù)這個結(jié)果,再次給出下一個請求,這樣(zhyng)一直到執(zhí)行者得到一個有價值的結(jié)果為止,整個用例交互過程結(jié)束。一直到執(zhí)行者得到一個有價值的結(jié)果為止,整個用例交互過程結(jié)束。第26頁/共42頁第二十七頁,共42頁。 在用例描述中,需要對用例的主要屬性進行說明在用例描述中,需要對用例的主要屬性進行說明(shumng)。這些屬性主要包括:。這些屬性主要包括:事件流事件流前置條件前置條件后置條件后置條件特殊要求特殊要求擴展擴展(kuzhn)點點用例場景
29、用例場景問題說明問題說明第27頁/共42頁第二十八頁,共42頁。 (1)事件流)事件流 事件流描述了在執(zhí)行一個用例時,執(zhí)行者與系統(tǒng)之間的事件流描述了在執(zhí)行一個用例時,執(zhí)行者與系統(tǒng)之間的一次交互一次交互(jioh)過程。這個過程可以包括多個分支,過程。這個過程可以包括多個分支,也就是說執(zhí)行者在執(zhí)行這個過程時可以有多個路線。其也就是說執(zhí)行者在執(zhí)行這個過程時可以有多個路線。其中按照系統(tǒng)設(shè)計者的預(yù)期會成功的路線被稱為基本流,中按照系統(tǒng)設(shè)計者的預(yù)期會成功的路線被稱為基本流,剩下的其它路線被稱為備選流。剩下的其它路線被稱為備選流。 基本流基本流備選備選(bi xun)流流事件流的循環(huán)與分支事件流的循環(huán)與分
30、支第28頁/共42頁第二十九頁,共42頁。 (2)前置條件)前置條件 前置條件是指在用例啟動前,執(zhí)行者與系統(tǒng)應(yīng)置于什前置條件是指在用例啟動前,執(zhí)行者與系統(tǒng)應(yīng)置于什么樣的狀態(tài),這個么樣的狀態(tài),這個(zh ge)狀態(tài)應(yīng)該是系統(tǒng)能夠檢測狀態(tài)應(yīng)該是系統(tǒng)能夠檢測到的、可觀測的,它用來描述在什么條件下可以開到的、可觀測的,它用來描述在什么條件下可以開始執(zhí)行一個事件流。這個始執(zhí)行一個事件流。這個(zh ge)條件是正確執(zhí)行一條件是正確執(zhí)行一個事件流的起點,一般用執(zhí)行者或系統(tǒng)的狀態(tài)來表個事件流的起點,一般用執(zhí)行者或系統(tǒng)的狀態(tài)來表示。示。 例如,例如,“ATM取款取款”用例的前置條件為:用例的前置條件為: 執(zhí)行
31、執(zhí)行“ATM自檢自檢”用例用例 第29頁/共42頁第三十頁,共42頁。 (3)后置條件)后置條件 后置條件用來說明當(dāng)用例結(jié)束時系統(tǒng)的狀態(tài),這個后置條件用來說明當(dāng)用例結(jié)束時系統(tǒng)的狀態(tài),這個狀態(tài)也應(yīng)該是系統(tǒng)能夠檢測得到的、可觀測的。狀態(tài)也應(yīng)該是系統(tǒng)能夠檢測得到的、可觀測的。在用例描述中增加用例后置條件,可以在用例描述中增加用例后置條件,可以(ky)明確明確表明用例結(jié)束時系統(tǒng)的狀態(tài),避免使系統(tǒng)出現(xiàn)處表明用例結(jié)束時系統(tǒng)的狀態(tài),避免使系統(tǒng)出現(xiàn)處于不確定狀態(tài)的情況。于不確定狀態(tài)的情況。 一般在開始定義并劃定用例的范圍時,可以一般在開始定義并劃定用例的范圍時,可以(ky)使用前置條件來定義用例的起點,使用后
32、置條件使用前置條件來定義用例的起點,使用后置條件定義用例完成的目標(biāo)。前置條件和后置條件可以定義用例完成的目標(biāo)。前置條件和后置條件可以(ky)方便用例的驗證和評審。方便用例的驗證和評審。第30頁/共42頁第三十一頁,共42頁。 (4)其他)其他 除了上面所說的主要屬性外,用例描述中還包括一些除了上面所說的主要屬性外,用例描述中還包括一些其它的主要屬性。如:用例場景、特殊要求、擴展其它的主要屬性。如:用例場景、特殊要求、擴展點、問題說明等。點、問題說明等。 其中用例場景包括成功場景和失敗場景,場景主要是其中用例場景包括成功場景和失敗場景,場景主要是由基本流和備選由基本流和備選(bi xun)流組合
33、而成的。特殊要求流組合而成的。特殊要求是指在用例中涉及到的非功能性需求。擴展點用來是指在用例中涉及到的非功能性需求。擴展點用來描述該用例的擴展。問題說明中主要列出本用例在描述該用例的擴展。問題說明中主要列出本用例在分析和描述過程中還存在哪些問題。分析和描述過程中還存在哪些問題。 第31頁/共42頁第三十二頁,共42頁。 粒度的概念主要用來粒度的概念主要用來(yn li)表示顆粒的大小。用表示顆粒的大小。用例粒度表示的用例的大小。例粒度表示的用例的大小。 在進行需求分析時,用戶表述的功能目標(biāo)可能有大在進行需求分析時,用戶表述的功能目標(biāo)可能有大有小,而且有些功能可能還會有重復(fù)或重疊,有的有小,而且
34、有些功能可能還會有重復(fù)或重疊,有的是商業(yè)目標(biāo),有的是要構(gòu)建系統(tǒng)的目標(biāo)。為了能夠是商業(yè)目標(biāo),有的是要構(gòu)建系統(tǒng)的目標(biāo)。為了能夠更好更準(zhǔn)確的獲取用例,在進行用例建模時需要考更好更準(zhǔn)確的獲取用例,在進行用例建模時需要考慮用例粒度的問題。慮用例粒度的問題。 用例的粒度從大到小分成以下三個層次用例的粒度從大到小分成以下三個層次(cngc):概:概述級、用戶目標(biāo)級、子功能級。述級、用戶目標(biāo)級、子功能級。 第32頁/共42頁第三十三頁,共42頁。 (1)概述級)概述級 概述級用例用來描述商業(yè)概述級用例用來描述商業(yè)(shngy)目標(biāo),它可以包括目標(biāo),它可以包括多個用戶目標(biāo)級的用例。一般用于初期的需求討論。多個用
35、戶目標(biāo)級的用例。一般用于初期的需求討論。也可以用做用戶目標(biāo)級用例的劃分目錄。也可以用做用戶目標(biāo)級用例的劃分目錄。 例如用戶可以通過例如用戶可以通過ATM來完成取錢的工作。來完成取錢的工作。 這就是一個概述級用例,其用例圖如圖所示。這就是一個概述級用例,其用例圖如圖所示。 用戶ATM取錢第33頁/共42頁第三十四頁,共42頁。 (2)用戶級目標(biāo)級)用戶級目標(biāo)級 用戶目標(biāo)級用例用來描述執(zhí)行者或用戶完成工作或使用戶目標(biāo)級用例用來描述執(zhí)行者或用戶完成工作或使用系統(tǒng)的目的。這一類用例一般用來描述某個用系統(tǒng)的目的。這一類用例一般用來描述某個(mu )人在某個人在某個(mu )時間地點完成某項工作。時間地點
36、完成某項工作。 自由金額取款固定金額取款 例如上面的例子,用戶可例如上面的例子,用戶可以通過以通過(tnggu)ATM來來完成取錢的工作。該用完成取錢的工作。該用例在用戶目標(biāo)級被描述例在用戶目標(biāo)級被描述成成“固定金額取款固定金額取款”和和“自由金額取款自由金額取款”兩個兩個用例。用例。 第34頁/共42頁第三十五頁,共42頁。 (2)子功能級)子功能級 子功能級用例是比用戶目標(biāo)級用例再低一級的用例子功能級用例是比用戶目標(biāo)級用例再低一級的用例,除非是為了重用或其它,除非是為了重用或其它(qt)特殊要求,一般建特殊要求,一般建議在獲取用例時不要深入到這一層,否則容易出議在獲取用例時不要深入到這一層
37、,否則容易出現(xiàn)可能取得的用例無窮無盡的現(xiàn)象。現(xiàn)可能取得的用例無窮無盡的現(xiàn)象。 在在ATM取款系統(tǒng)中,固定取款系統(tǒng)中,固定(gdng)金額取款用例金額取款用例和自由金額取款用例中都涉及到用戶身份驗證和自由金額取款用例中都涉及到用戶身份驗證的功能,這個功能可以設(shè)計成一個子功能用例的功能,這個功能可以設(shè)計成一個子功能用例。 第35頁/共42頁第三十六頁,共42頁。 用例圖是用來描述用戶需求的,是表達用戶需求的一種方用例圖是用來描述用戶需求的,是表達用戶需求的一種方式。系統(tǒng)的需求包括四個不同的層次式。系統(tǒng)的需求包括四個不同的層次(cngc):業(yè)務(wù)需求:業(yè)務(wù)需求、用戶需求、功能性需求、非功能性需求。業(yè)務(wù)
38、需求說、用戶需求、功能性需求、非功能性需求。業(yè)務(wù)需求說明了提供給用戶的系統(tǒng)的最初利益,反映了用戶對系統(tǒng)明了提供給用戶的系統(tǒng)的最初利益,反映了用戶對系統(tǒng)高層次高層次(cngc)的目標(biāo)要求。用戶需求主要描述了用戶使的目標(biāo)要求。用戶需求主要描述了用戶使用產(chǎn)品必須要完成的任務(wù)。功能性需求主要定義了開發(fā)用產(chǎn)品必須要完成的任務(wù)。功能性需求主要定義了開發(fā)人員必須實現(xiàn)的軟件功能,使得用戶能完成他們的任務(wù)人員必須實現(xiàn)的軟件功能,使得用戶能完成他們的任務(wù),從而滿足業(yè)務(wù)需求。非功能性需求主要是用戶對系統(tǒng),從而滿足業(yè)務(wù)需求。非功能性需求主要是用戶對系統(tǒng)良好運作提出的期望,包括了易用性、反應(yīng)速度、容錯良好運作提出的期望
39、,包括了易用性、反應(yīng)速度、容錯性、健壯性等等。性、健壯性等等。 第36頁/共42頁第三十七頁,共42頁。 用例圖是系統(tǒng)建模的起點,可以使用用例圖對將用例圖是系統(tǒng)建模的起點,可以使用用例圖對將要開發(fā)系統(tǒng)的實際工作流程進行業(yè)務(wù)建模,從業(yè)要開發(fā)系統(tǒng)的實際工作流程進行業(yè)務(wù)建模,從業(yè)務(wù)模型的基礎(chǔ)上過度到系統(tǒng)建模的開始,可以通務(wù)模型的基礎(chǔ)上過度到系統(tǒng)建模的開始,可以通過過(tnggu)用例圖來搜集用戶的需求,明確和用例圖來搜集用戶的需求,明確和系統(tǒng)相關(guān)的用戶和其他系統(tǒng),同時確定系統(tǒng)將會系統(tǒng)相關(guān)的用戶和其他系統(tǒng),同時確定系統(tǒng)將會提供什么功能,以及各個功能間的關(guān)系。提供什么功能,以及各個功能間的關(guān)系。 用例圖
40、是用來描述系統(tǒng)的概要功能和行為,實現(xiàn)這用例圖是用來描述系統(tǒng)的概要功能和行為,實現(xiàn)這些功能和行為的細節(jié)則由用例描述文檔進行詳細說些功能和行為的細節(jié)則由用例描述文檔進行詳細說明。進行系統(tǒng)用例圖繪制主要明。進行系統(tǒng)用例圖繪制主要(zhyo)需要經(jīng)過以需要經(jīng)過以下幾個步驟:用戶需求、需求分析、需求描述。下幾個步驟:用戶需求、需求分析、需求描述。第37頁/共42頁第三十八頁,共42頁。5.6.1 用戶用戶(yngh)需求需求 用戶需求指的是用戶對系統(tǒng)的功能要求,是系統(tǒng)開發(fā)的用戶需求指的是用戶對系統(tǒng)的功能要求,是系統(tǒng)開發(fā)的原動力。原動力。 對于獲取用戶需求的方式還是很多的,目前普遍認(rèn)為比對于獲取用戶需求的方式還是很多的,目前普遍認(rèn)為比較有效的方式是通過座談會、調(diào)查、訪談等形式。通過較有效的方式是通過
溫馨提示
- 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)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五版對講門品牌授權(quán)與市場推廣合同2篇
- 教培機構(gòu)2025年度27份合同協(xié)議(教育版權(quán)保護)2篇
- 二零二五版住宅小區(qū)配套設(shè)施使用權(quán)轉(zhuǎn)讓合同3篇
- 二零二五年度采砂廠承包生態(tài)補償金支付合同范本3篇
- 2024蔬菜種植項目承包合同協(xié)議2篇
- 二零二五版工程招投標(biāo)與合同管理專家指導(dǎo)與案例分析3篇
- 工業(yè)廠房結(jié)構(gòu)檢測與2025年度注漿加固合同3篇
- 展會安全保障合同(2篇)
- 二零二五年度餐飲業(yè)食品安全標(biāo)準(zhǔn)制定合同3篇
- 二零二五版鋼結(jié)構(gòu)工程專用材料采購合同范本5篇
- 小學(xué)四年級數(shù)學(xué)知識點總結(jié)(必備8篇)
- GB/T 893-2017孔用彈性擋圈
- GB/T 11072-1989銻化銦多晶、單晶及切割片
- GB 15831-2006鋼管腳手架扣件
- 醫(yī)學(xué)會自律規(guī)范
- 商務(wù)溝通第二版第4章書面溝通
- 950項機電安裝施工工藝標(biāo)準(zhǔn)合集(含管線套管、支吊架、風(fēng)口安裝)
- 微生物學(xué)與免疫學(xué)-11免疫分子課件
- 《動物遺傳育種學(xué)》動物醫(yī)學(xué)全套教學(xué)課件
- 弱電工程自檢報告
- 民法案例分析教程(第五版)完整版課件全套ppt教學(xué)教程最全電子教案
評論
0/150
提交評論