




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第5章需求建模15.1用例模型概述5.2用例圖組成5.3識(shí)別和描述用例5.4用例間的關(guān)系2本章將向讀者詳細(xì)介紹應(yīng)用用例模型進(jìn)行軟件系統(tǒng)需求建模的基本內(nèi)容。需求建模主要包括:用例模型概述、用例圖的組成、識(shí)別和描述用例、識(shí)別用例之間的關(guān)系、繪制用例圖等。本章的學(xué)習(xí)要點(diǎn)包括:用例圖的組成(參與者和用例);識(shí)別和描述用例;用例間的關(guān)系(泛化、關(guān)聯(lián)和依賴);繪制用例圖。35.1用例模型概述45.1用例模型概述5任務(wù)1了解用例模型的基本功能和基本組成。任務(wù)描述
65.1用例模型概述
1.用例模型的功能用例模型是把應(yīng)滿足用戶需求的基本功能(集)聚合起來表示的強(qiáng)大工具。對(duì)于正在構(gòu)造的新系統(tǒng),用例描述該系統(tǒng)應(yīng)該做什么;對(duì)于已構(gòu)造完畢的系統(tǒng),用例則反映了系統(tǒng)能夠完成什么樣的功能。構(gòu)建用例模型是通過系統(tǒng)開發(fā)者與系統(tǒng)的客戶(或最終使用者)共同協(xié)商完成的,他們要反復(fù)討論需求的規(guī)格說明,達(dá)成共識(shí),明確系統(tǒng)的基本功能,為后階段的工作打下基礎(chǔ)。75.1用例模型概述
2.用例模型的基本組成用例模型的基本組成部件是用例、參與者和系統(tǒng)。
用例用于描述系統(tǒng)的功能,也就是從外部用戶的角度觀察系統(tǒng)應(yīng)具備哪些功能,幫助分析人員理解系統(tǒng)的行為,它是對(duì)系統(tǒng)功能的宏觀描述。一個(gè)完整的系統(tǒng)中通常包含若干個(gè)用例,每個(gè)用例具體說明應(yīng)完成的功能,代表系統(tǒng)的所有基本功能(集)。
參與者是與系統(tǒng)進(jìn)行交互的外部實(shí)體,它可以是系統(tǒng)用戶,也可以是其他系統(tǒng)或硬件設(shè)備,總之,凡是需要與系統(tǒng)交互的任何東西都可以稱做參與者。
系統(tǒng)仿佛是實(shí)現(xiàn)各種用例的“黑盒子”,我們只關(guān)心該系統(tǒng)實(shí)現(xiàn)了哪些功能,并不關(guān)心內(nèi)部的具體實(shí)現(xiàn)細(xì)節(jié)(如系統(tǒng)是如何做的,用例是如何實(shí)現(xiàn)的)。85.1用例模型概述
3.引入用例的目的引入用例的主要目的包括以下幾點(diǎn):(1)確定系統(tǒng)應(yīng)具備哪些功能,這些功能是否滿足系統(tǒng)的需求(開發(fā)者與用戶協(xié)商達(dá)成共識(shí)的東西)。(2)為系統(tǒng)的功能提供清晰一致的描述,以便為后續(xù)的開發(fā)工作打下良好的交流基礎(chǔ),方便開發(fā)人員傳遞需求的功能。(3)為系統(tǒng)驗(yàn)證工作打下基礎(chǔ)。通過驗(yàn)證最終實(shí)現(xiàn)的系統(tǒng)能夠執(zhí)行的功能是否與最初需求的功能相一致,保證系統(tǒng)的實(shí)用性。5.2用例圖組成95.2用例圖組成10任務(wù)2確定WebShop電子商城系統(tǒng)中的參與者、系統(tǒng)邊界。任務(wù)描述
11在UML中,用例模型(也就是用例視圖)是用例圖描述的。用例模型可以由若干個(gè)用例圖組成。用例圖中包含系統(tǒng)、參與者和用例等三種模型元素。繪制用例圖時(shí),既要畫出這三種模型元素,同時(shí)還要畫出元素之間的各種關(guān)系(泛化、關(guān)聯(lián)、依賴)。5.2用例圖組成WebShop用戶管理用例圖12
5.2.1參與者參與者(Actor)是與系統(tǒng)交互的人或事。所謂“與系統(tǒng)交互”指的是參與者向系統(tǒng)發(fā)送消息,從系統(tǒng)中接收消息,或是在系統(tǒng)中交換信息。
UML中用一個(gè)小人形圖形表示角色類,小人的下方書寫角色名字。5.2用例圖組成購物用戶參與者13
5.2.1參與者——參與者的類型5.2用例圖組成從參與者的具體表現(xiàn)形式來看,參與者有三種類型:(1)系統(tǒng)用戶,即系統(tǒng)的用戶(真實(shí)的人),是最常見的參與者。(2)其他系統(tǒng)。(3)一些可以運(yùn)行的進(jìn)程。14
5.2.1參與者——參與者的確定5.2用例圖組成怎樣確定系統(tǒng)的參與者呢?開發(fā)人員可以通過回答以下的問題來確定系統(tǒng)的參與者:(1)使用系統(tǒng)主要功能的人是誰(主要角色)?(2)需要借助于系統(tǒng)完成日常工作的人是誰?(3)誰來維護(hù)和管理系統(tǒng)(次要角色),保證系統(tǒng)正常工作?(4)系統(tǒng)控制的硬件設(shè)備有哪些?(5)系統(tǒng)需要與哪些其他系統(tǒng)交互?(6)對(duì)系統(tǒng)產(chǎn)生的結(jié)果感興趣的人或事是哪些?WebShop電子商城參與者15參與者對(duì)于系統(tǒng)而言總是外部的,它們可以處于人的控制之外;參與者可以直接或間接地同系統(tǒng)交互,或使用系統(tǒng)提供的服務(wù)以完成某件事務(wù);參與者表示人或事物與系統(tǒng)發(fā)生交互時(shí)所扮演的角色,而不是特定的人或者特定的事物;一個(gè)人或事物在與系統(tǒng)發(fā)生交互時(shí),可以扮演多個(gè)角色;每一個(gè)參與者需要一個(gè)具有業(yè)務(wù)一樣的名字,并且必須有簡(jiǎn)短的描述(從業(yè)務(wù)角度描述參與者是什么);參與者可以具有屬性和事件,但使用不能太頻繁。16
5.2.2系統(tǒng)5.2用例圖組成系統(tǒng)是用例模型的一個(gè)組成部分,代表的是一部機(jī)器或一個(gè)商務(wù)活動(dòng)等,而并不是真正實(shí)現(xiàn)的軟件系統(tǒng)。
系統(tǒng)的邊界用來說明構(gòu)建的用例模型的應(yīng)用范圍。
用例圖中的系統(tǒng)用一個(gè)長(zhǎng)方框表示,系統(tǒng)的名字寫在方框上方或方框里面,方框內(nèi)部還可以包含該系統(tǒng)中的用符號(hào)表示的用例。系統(tǒng)17
5.2.3用例——什么是用例5.2用例圖組成用例代表一個(gè)系統(tǒng)或系統(tǒng)的一部分行為,是對(duì)一組動(dòng)作序列的描述,系統(tǒng)執(zhí)行該動(dòng)作序列來為參與者產(chǎn)生一個(gè)可觀察的結(jié)果值。用例代表的是一個(gè)完整的功能。UML中的用例是動(dòng)作步驟的集合。動(dòng)作是系統(tǒng)的一次執(zhí)行(能夠給某個(gè)參與者輸出結(jié)果值)。用例應(yīng)支持多種可能發(fā)生的動(dòng)作。
UML中的用例用橢圓形表示,用例的名字寫在橢圓的內(nèi)部或下方。用例示例18
5.2.3用例——用例的特征5.2用例圖組成用例具有以下的特征:(1)用例總是由參與者初始化。用例所代表的功能必須由參與者激活,而后才能執(zhí)行。(2)用例為參與者提供值。用例必須為參與者提供實(shí)在的值,雖然這個(gè)值并不總是重要的,但是應(yīng)能被參與者識(shí)別。(3)用例具有完全性。用例是一個(gè)完整的描述。不管用例內(nèi)部的小用例是如何通信工作的,只有最終產(chǎn)生了返回給參與者的結(jié)果值,才能說明用例執(zhí)行完畢。19用例表示的也是一個(gè)類(如搜索圖書),而不是某個(gè)具體的實(shí)例(搜索名稱為“Java程序設(shè)計(jì)”的圖書)。用例描述了它代表的功能的各個(gè)方面,也就是包含了用例執(zhí)行期間可能發(fā)生的種種情況。20(1)小組討論用例模型的主要功能有哪些。(2)根據(jù)已往的軟件開發(fā)經(jīng)驗(yàn),討論使用用例模型來描述需求與使用純文字的方式來描述需求有什么不同。(3)結(jié)合實(shí)例說明用例模型由哪幾部分組成。
(4)根據(jù)典型圖書管理系統(tǒng)的需求,確定該系統(tǒng)中的參與者,并說明確定參與者的根據(jù)。(5)確定圖書管理系統(tǒng)的系統(tǒng)邊界。
1.操作要求
2.操作提示
(1)通過學(xué)習(xí)小組討論和上網(wǎng)查詢資料形式完成。(2)使用手繪形式繪制出圖書管理系統(tǒng)的參與者和系統(tǒng)邊界。5.3識(shí)別和描述用例21225.3識(shí)別和描述用例任務(wù)3確定WebShop電子商城中的用例,繪制WebShop電子商城的用例圖,并對(duì)用例進(jìn)行描述。任務(wù)描述
235.3識(shí)別和描述用例
5.3.1識(shí)別用例——針對(duì)參與者(1)某個(gè)參與者要求系統(tǒng)為其提供什么功能?該參與者需要做哪些工作?(2)參與者需要閱讀、創(chuàng)建、銷毀、更新或存儲(chǔ)系統(tǒng)中的某些信息嗎?(3)系統(tǒng)中的事件一定要告知參與者嗎?參與者需要告訴系統(tǒng)一些什么嗎?(4)系統(tǒng)新功能的識(shí)別,參與者的日常工作被簡(jiǎn)化或效率提高了嗎?245.3識(shí)別和描述用例
5.3.1識(shí)別用例——針對(duì)系統(tǒng)(1)系統(tǒng)需要什么樣的輸入和輸出?輸入來自哪里?輸出到哪里去?(2)該系統(tǒng)的當(dāng)前狀況還存在哪些問題?(3)系統(tǒng)的改進(jìn)方向?255.3識(shí)別和描述用例
5.3.1識(shí)別用例【任務(wù)3-1】確定WebShop電子商城中的用例。265.3識(shí)別和描述用例
5.3.2繪制WebShop電子商城用例圖【任務(wù)3-2】繪制WebShop電子商城中的用例圖。詳見教學(xué)視頻《繪制圖書管理系統(tǒng)用例圖》275.3識(shí)別和描述用例
5.3.2繪制WebShop電子商城用例圖按鈕按鈕名稱功能Selection選擇工具Note添加注釋Anchor將圖中的元素與注釋相連Label添加文本標(biāo)簽Box繪制盒子,將某些元素框在一起Actor繪制參與者UseCase繪制用例Association添加雙向關(guān)聯(lián)關(guān)系DirectionalAssociation添加單向關(guān)聯(lián)關(guān)系Dependency添加依賴關(guān)系Generalization添加泛化關(guān)系用例圖繪圖工具欄按鈕285.3識(shí)別和描述用例
5.3.3通過文件夾對(duì)用例進(jìn)行合理規(guī)劃Umbrello的用例視圖可以通過文件夾“Folder”來管理,把各種各樣的模型元素通過內(nèi)在的語義連在一起成為一個(gè)整體。Umbrello中的文件夾通常用于對(duì)模型進(jìn)行組織管理,它是一個(gè)邏輯元素,并不會(huì)出現(xiàn)在用例圖中。【任務(wù)3-3】通過文件夾對(duì)WebShop電子商城中的用例進(jìn)行規(guī)劃。295.3識(shí)別和描述用例
5.3.4WebShop電子商城用例圖(不含關(guān)系)系統(tǒng)的參與者購物用戶管理相關(guān)的用例圖305.3識(shí)別和描述用例
5.3.4WebShop電子商城用例圖(不含關(guān)系)前臺(tái)購物相關(guān)的用例圖后臺(tái)管理相關(guān)的用例圖315.3識(shí)別和描述用例
5.3.4WebShop電子商城用例圖(不含關(guān)系)管理購物用戶相關(guān)的用例圖325.3識(shí)別和描述用例
5.3.5用例描述用例的描述應(yīng)包括以下幾個(gè)方面:(1)用例的目標(biāo)。(2)用例是怎樣被啟動(dòng)的。(3)參與者和用例之間的消息流。(4)用例的多種執(zhí)行方案。(5)用例怎樣才算完成并把值傳給了參與者。用例編號(hào)用例名稱用例描述參與者前置條件后置條件基本路徑1.….XXXX2.….XXXX擴(kuò)展點(diǎn) 2a.….XXXX 2a1.….XXXX變異點(diǎn)補(bǔ)充說明用例描述的模板335.3識(shí)別和描述用例
5.3.5用例描述用例編號(hào):001用例名:購物用戶登錄用例描述:購物用戶根據(jù)所注冊(cè)的用戶名和密碼,登錄到WebShop電子商城系統(tǒng)。參與者:購物用戶前置條件:電子商城正常運(yùn)行時(shí)間。后置條件:如果購物用戶登錄成功,則該購物用戶可搜索商品并購買商品;如果購物用戶登錄未成功,則該用戶不能進(jìn)行商品的購買。基本路徑1.購物用戶進(jìn)入WebShop電子商城系統(tǒng);2.購物用戶輸入用戶名和密碼;
3.購物用戶提交輸入的信息;4.系統(tǒng)對(duì)購物用戶的賬號(hào)和密碼進(jìn)行有效性檢查;5.系統(tǒng)記錄并顯示當(dāng)前登錄用戶;6.購物用戶搜索商品并購買商品;7.系統(tǒng)允許購物用戶的購買操作。擴(kuò)展點(diǎn) 4a.購物用戶的賬號(hào)錯(cuò)誤 4a1.系統(tǒng)彈出賬號(hào)錯(cuò)誤或賬號(hào)已關(guān)閉警告信息; 4a2.購物用戶離開或重新輸入賬號(hào)。 4b.購物用戶的密碼錯(cuò)誤 4b1.系統(tǒng)彈出密碼錯(cuò)誤警告信息; 4b2.購物用戶離開或重新輸入密碼。變異點(diǎn)
無補(bǔ)充說明34在用例描述中不要包含GUI設(shè)計(jì),因?yàn)橛美轻槍?duì)需求的,而界面設(shè)計(jì)是“設(shè)計(jì)”,不要把設(shè)計(jì)的東西放進(jìn)需求中;用例描述的目的是對(duì)用例的具體完成情況進(jìn)行詳細(xì)說明;用例通常描述參與者與系統(tǒng)的交互,如購物用戶怎樣,系統(tǒng)怎樣等。35(1)確定圖書管理系統(tǒng)的用例。(2)繪制圖書管理系統(tǒng)的用例圖。(3)對(duì)圖書管理系統(tǒng)的用例進(jìn)行描述。
1.操作要求
2.操作提示
(1)通過學(xué)習(xí)小組討論和上網(wǎng)查詢資料形式完成。(2)使用Umbrello2.32進(jìn)行圖形的繪制。(3)建議通過包圖對(duì)圖書管理系統(tǒng)中的用例進(jìn)行邏輯分類。5.4用例間的關(guān)系365.4用例間的關(guān)系37任務(wù)4識(shí)別WebShop電子商城中用例間的關(guān)系,并繪制其關(guān)系圖。任務(wù)描述
38用例圖主要用來圖示化系統(tǒng)的主事件流程,它主要用來描述客戶的需求,即客戶希望系統(tǒng)具備的完成一定功能的動(dòng)作。通俗地理解,用例就是軟件的功能模塊,所以用例圖是系統(tǒng)分析階段的起點(diǎn),設(shè)計(jì)人員根據(jù)客戶的需求來創(chuàng)建和解釋用例圖,用來描述軟件應(yīng)具備哪些功能模塊以及這些模塊之間的調(diào)用關(guān)系。用例圖中的用例之間和參與者之間也是具有一定的聯(lián)系的。用例是從系統(tǒng)外部可見的行為,是系統(tǒng)為某一個(gè)或幾個(gè)參與者提供的一段完整的服務(wù)。從原則上來講,用例之間都是獨(dú)立、并列的,它們之間并不存在著包含從屬關(guān)系。但是為了體現(xiàn)一些用例之間的業(yè)務(wù)關(guān)系,提高可維護(hù)性和一致性,用例之間可以抽象出泛化(Generalization)、關(guān)聯(lián)(Asscociation)和依賴(Dependency)幾種關(guān)系。用例間關(guān)系的共性就是從現(xiàn)有的用例中抽取出公共的那部分信息,作為一個(gè)單獨(dú)的用例,然后通后過不同的方法來重用這個(gè)公共的用例,以減少模型維護(hù)的工作量。5.4用例間的關(guān)系395.4用例間的關(guān)系
5.4.1泛化關(guān)系——用例泛化關(guān)系用例泛化關(guān)系(Generalization)是指一種從子用例到父用例的關(guān)系,它指定了子用例如何特化父用例的所有行為和特征。
Umbrello使用“”表示泛化關(guān)系。箭尾方向?yàn)樽佑美ㄗ訁⑴c者),箭頭方向?yàn)楦赣美ǜ竻⑴c者)。用例間的泛化關(guān)系詳見教學(xué)視頻《繪制泛化關(guān)系》405.4用例間的關(guān)系
5.4.1泛化關(guān)系——參與者泛化關(guān)系跟用例一樣,參與者和參與者之間也存在著泛化關(guān)系
右圖所示的參與者的包中包含了五個(gè)參與者。其中用戶被購物用戶和后臺(tái)管理員所特化,后臺(tái)管理員進(jìn)一步由普通管理員和系統(tǒng)管理員所特化。參與者間的泛化關(guān)系415.4用例間的關(guān)系
5.4.2關(guān)聯(lián)關(guān)系
關(guān)聯(lián)關(guān)系(Association)是指表示參與者與用例之間的通信,任何一方都可發(fā)送或接受消息。關(guān)聯(lián)關(guān)系包括普通關(guān)聯(lián)關(guān)系(Association)和定向關(guān)聯(lián)關(guān)系(DirectionalAssociation)。前者表示參與者與用例之間的通信,任何一方都可發(fā)送或接受消息,后者表示只有一方表示可以發(fā)送消息,另一方則接受消息。Umbrello使用“”表示普通關(guān)聯(lián)關(guān)系,使用“”表示定向關(guān)聯(lián)關(guān)系,箭尾方向?yàn)榘l(fā)送消息方,箭頭方向?yàn)榻邮芟⒎剑鐖D5-29所示。參與者與用例之間的關(guān)聯(lián)關(guān)系詳見教學(xué)視頻《繪制關(guān)聯(lián)關(guān)系》425.4用例間的關(guān)系
5.4.3依賴關(guān)系依賴關(guān)系(Dependency)是指一個(gè)用例會(huì)使用到另一個(gè)用例的關(guān)系。Umbrello使用“”表示依賴關(guān)系,箭尾方向?yàn)槭褂谜哂美^方向?yàn)樘峁┱哂美O啾萊ationalRose等UML建模工具,Umbrello簡(jiǎn)化了用例圖中的關(guān)系,不再區(qū)分?jǐn)U展(extend)和包含(include)關(guān)系,統(tǒng)一使用依賴關(guān)系表示。依賴關(guān)系詳見教學(xué)視頻《繪制依賴關(guān)系》435.4用例間的關(guān)系
5.4.4WebShop電子商城用例圖(含關(guān)系)參與者關(guān)系購物用戶管理用例之間的關(guān)系詳見教學(xué)視頻《繪制圖書管理系統(tǒng)用例間的關(guān)系》445.4用例間的關(guān)系
5.4.4WebShop電子商城用例圖(含關(guān)系)前臺(tái)購物用例之間的關(guān)系后
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 行政效能提升的途徑與實(shí)踐試題及答案
- 重要經(jīng)驗(yàn)分享的試題及答案匯編
- 小吃門店招牌管理制度
- 醫(yī)院倉儲(chǔ)消防管理制度
- 婚宴酒席財(cái)產(chǎn)管理制度
- 了解嵌入式設(shè)計(jì)模式試題及答案
- 婦科診室設(shè)備管理制度
- 小區(qū)物業(yè)路政管理制度
- 夜校開堂安全管理制度
- 公司扶貧基金管理制度
- 軟件專業(yè)畢業(yè)設(shè)計(jì)
- 湖北省武漢市江夏區(qū)2025屆九年級(jí)下學(xué)期5月月考語文試卷(含答案)
- 雨棚翻新合同協(xié)議書范文
- 安徽省合肥一中2025屆高三5月回歸教材讀本
- 2024年江蘇省無錫市中考?xì)v史真題(解析版)
- 雙方房屋使用協(xié)議書
- 投資理財(cái)保本協(xié)議書
- 2025年廣東省深圳市中考道德與法治 總復(fù)習(xí)責(zé)任意識(shí)檢測(cè)卷(含答案)
- 閱讀策略在小學(xué)英語教學(xué)中的應(yīng)用
- 地西半球的國家 復(fù)習(xí)課課件-2024-2025學(xué)年七年級(jí)地理下學(xué)期(人教版2024)
- 2025法語DELFA1級(jí)考試試卷
評(píng)論
0/150
提交評(píng)論