UML系統(tǒng)用例及用例關(guān)系_第1頁(yè)
UML系統(tǒng)用例及用例關(guān)系_第2頁(yè)
UML系統(tǒng)用例及用例關(guān)系_第3頁(yè)
UML系統(tǒng)用例及用例關(guān)系_第4頁(yè)
UML系統(tǒng)用例及用例關(guān)系_第5頁(yè)
已閱讀5頁(yè),還剩50頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

CH4用例圖系統(tǒng)用例及用例關(guān)系統(tǒng)一建模語(yǔ)言11軟件工程知識(shí)回顧—需求獲取

需求工程需求管理需求開(kāi)發(fā)問(wèn)題獲取分析編寫(xiě)規(guī)格說(shuō)明驗(yàn)證難點(diǎn)重點(diǎn)掌握用例圖模型元素

能夠根據(jù)需求分析使用用例圖建模掌握用例圖的地位作用及定義確定用例及用例間的關(guān)系教學(xué)目標(biāo)教學(xué)內(nèi)容用例圖什么叫用例圖用例圖的構(gòu)成要素用例的重要元素用例之間的各種重要關(guān)系用例圖建模應(yīng)用識(shí)別參與者確定用例用例建模需求獲取需求獲取及分析需求的基本方法需求是客戶(hù)在項(xiàng)目立項(xiàng)時(shí)就有的一個(gè)遠(yuǎn)景,客戶(hù)需求將決定在整個(gè)項(xiàng)目中需求承辦方具體做些什么,即承辦方的任務(wù)。承辦方在明確了需求后,就會(huì)開(kāi)始后期的設(shè)計(jì)、開(kāi)發(fā)、測(cè)試、部署等工作。一需求獲取

Clicktoaddtitleinhere4問(wèn)題引入1在需求獲取過(guò)程中,主要需要弄清楚三個(gè)問(wèn)題一需求獲取解答問(wèn)題2明確需要獲取的信息明確所獲取信息的來(lái)源和渠道怎樣獲取需求

WhatWhereHow二用例圖相關(guān)概念介紹1.什么是用例圖由參與者(Actor)、用例(UseCase)以及它們之間的關(guān)系構(gòu)成的用于描述系統(tǒng)功能的動(dòng)態(tài)視圖稱(chēng)為用例圖。2.用例圖的作用用例圖是需求分析中的產(chǎn)物,主要作用是描述參與者和用例之間的關(guān)系,幫助開(kāi)發(fā)人員可視化的了解系統(tǒng)的功能。用例圖可視化地表達(dá)了系統(tǒng)的需求,具有直觀、規(guī)范等優(yōu)點(diǎn),克服了純文字性說(shuō)明的不足。用例方法是完全從外部來(lái)定義系統(tǒng)功能,它把需求和設(shè)計(jì)完全的分離開(kāi)來(lái)。參與者,Actor關(guān)鍵詞:邊界參與者:在系統(tǒng)之外,透過(guò)系統(tǒng)邊界與系統(tǒng)進(jìn)行有意義交互的任何事物識(shí)別參與者1要點(diǎn)系統(tǒng)外參與者代表在系統(tǒng)邊界之外的真實(shí)事物,并不是系統(tǒng)的成分系統(tǒng)邊界參與者透過(guò)系統(tǒng)邊界直接與系統(tǒng)交互,參與者的確定代表系統(tǒng)邊界的確定有意義交互的任何事物人、外系統(tǒng)、外部因素、時(shí)間識(shí)別參與者2識(shí)別參與者思路誰(shuí)使用系統(tǒng)的主要功能誰(shuí)改變系統(tǒng)的數(shù)據(jù)誰(shuí)從系統(tǒng)獲取信息誰(shuí)需要系統(tǒng)的支持以完成日常工作任務(wù)誰(shuí)負(fù)責(zé)日常維護(hù)、管理并保證系統(tǒng)正常運(yùn)行誰(shuí)使用或刪除系統(tǒng)中的信息誰(shuí)(或什么)對(duì)系統(tǒng)運(yùn)行產(chǎn)生的結(jié)果(值)感興趣系統(tǒng)需要應(yīng)付(處理)那些硬設(shè)備系統(tǒng)需要和那些外部系統(tǒng)交互在預(yù)定時(shí)間,是否有事件自動(dòng)發(fā)生時(shí)間、氣溫等內(nèi)部外部條件……參與者的類(lèi)型和職責(zé)主要參與者直接與系統(tǒng)交互的人,或執(zhí)行系統(tǒng)主要功能的執(zhí)行者次要參與者使用系統(tǒng)次要功能的執(zhí)行者,或維護(hù)系統(tǒng)一般功能的執(zhí)行者外部硬件作為系統(tǒng)一部分的、運(yùn)行應(yīng)用的非計(jì)算機(jī)的硬件其他系統(tǒng)為其工作需要與系統(tǒng)交互的外部系統(tǒng)參與者之間的關(guān)系獨(dú)立關(guān)系泛化關(guān)系一個(gè)參與者的抽象描述可以被一個(gè)或多個(gè)具體的參與者所共享客戶(hù)個(gè)體客戶(hù)商業(yè)客戶(hù)用例1定義:UseCase用例表示系統(tǒng)的一項(xiàng)外部功能,它從用戶(hù)的角度分析所得的需求。為完成一個(gè)相對(duì)完整的一種功能,系統(tǒng)執(zhí)行的一系列動(dòng)作的集合是外部可見(jiàn)的一種系統(tǒng)功能代表的是一個(gè)完整的功能有一系列動(dòng)作用例用例2用例捕獲某些角色可見(jiàn)的需求,實(shí)現(xiàn)一個(gè)具體的角色需求用例由其用戶(hù)角色使用,并提供確切的輸出給角色用例可大可小,但它必須是對(duì)一個(gè)具體的角色目標(biāo)實(shí)現(xiàn)的完整描述用例的動(dòng)態(tài)執(zhí)行過(guò)程可以用UML的交互作用來(lái)說(shuō)明,可以用狀態(tài)圖、順序圖、協(xié)作圖或非正式的文字描述來(lái)表示識(shí)別用例識(shí)別用例關(guān)鍵詞:價(jià)值定義用例實(shí)例是系統(tǒng)執(zhí)行的一系列動(dòng)作,這些動(dòng)作將生成特定參與者可觀測(cè)的結(jié)果值一個(gè)用例定義一組用例實(shí)例(場(chǎng)景)簡(jiǎn)潔:參與者使用系統(tǒng)達(dá)到目標(biāo)識(shí)別用例要點(diǎn)可觀測(cè)→用例止于系統(tǒng)邊界結(jié)果值→用例是有意義的目標(biāo)系統(tǒng)執(zhí)行→結(jié)果值由系統(tǒng)生成由參與者觀測(cè)→業(yè)務(wù)語(yǔ)言、用戶(hù)觀點(diǎn)一組用例實(shí)例→用例的粒度用例命名可觀測(cè):用例止于系統(tǒng)邊界系統(tǒng)描述交互,而不是內(nèi)在的系統(tǒng)活動(dòng)邊界---Boundary也叫系統(tǒng)邊界,用于界定系統(tǒng)功能范圍用一個(gè)帶名稱(chēng)的矩形框,把描述系統(tǒng)功能的用例都置于其中,而描述的與系統(tǒng)交互的角色都置于其外系統(tǒng)----完整系統(tǒng)或子系統(tǒng)一個(gè)系統(tǒng)包括一個(gè)或多個(gè)用例準(zhǔn)確的定義系統(tǒng)的邊界(功能)不是一件很容易的事先識(shí)別出系統(tǒng)的基本功能集,以此為基礎(chǔ)定義一個(gè)穩(wěn)定的、精確定義的系統(tǒng)體系結(jié)構(gòu),再不斷地?cái)U(kuò)充系統(tǒng)功能,以逐步完善結(jié)果值:有意義的目標(biāo)√業(yè)務(wù)功能,而非系統(tǒng)處理×系統(tǒng)執(zhí)行:結(jié)果值由系統(tǒng)生成系統(tǒng)需要處理的,由系統(tǒng)生成×參與者觀測(cè):用戶(hù)觀點(diǎn)而非系統(tǒng)觀點(diǎn)用戶(hù)觀點(diǎn)系統(tǒng)觀點(diǎn)×要點(diǎn):用例粒度用例要有路徑,路徑要有步驟;而這一切都是可觀測(cè)的最常犯錯(cuò)誤:粒度過(guò)細(xì),陷入功能分解過(guò)細(xì)的粒度,一般都會(huì)導(dǎo)致技術(shù)語(yǔ)言的描述,而不再是業(yè)務(wù)語(yǔ)言用例粒度-1把步驟當(dāng)用例把系統(tǒng)活動(dòng)當(dāng)用例×√×用例粒度-2ד四輪馬車(chē)”C(Create)R(Read)U(Update)D(Delete)所有業(yè)務(wù)最終會(huì)成為CRUD?CRUD能為Actor提供價(jià)值?CRUD掩蓋業(yè)務(wù),銳變成關(guān)系數(shù)據(jù)庫(kù)的建模:“系統(tǒng)就是數(shù)據(jù)的增刪改查”關(guān)心數(shù)據(jù)的存儲(chǔ)和維護(hù),反而忽略了用戶(hù)的目的用例粒度-3用例粒度-4如果確實(shí)是CRUD?如果CRUD不涉及復(fù)雜的交互,一個(gè)用例“管理××”即可不管是C、R、U、D,都是為了完成“管理”目標(biāo)甚至很多種的基本數(shù)據(jù)管理都可以用一個(gè)用例表示用例粒度-5靈活處理CRUD可以把包含復(fù)雜交互的路徑獨(dú)立出去形成用例用例的命名執(zhí)行者視角:(狀語(yǔ))動(dòng)詞+(定語(yǔ)+)賓語(yǔ)用例關(guān)系Include提取公共步驟,便于復(fù)用Extend分離擴(kuò)展路徑Generalization同一業(yè)務(wù)目的的不同技術(shù)實(shí)現(xiàn)<<extend>>Extend<<include>>IncludeGeneralization包含關(guān)系1包含關(guān)系2包含關(guān)系某些步驟在多個(gè)用例重復(fù)出現(xiàn),且單獨(dú)形成價(jià)值用例步驟較多時(shí),可用Include簡(jiǎn)化當(dāng)完全知道什么時(shí)間要調(diào)用用例時(shí),基用例需要包含用例所封裝的邏輯可以簡(jiǎn)單認(rèn)為源代碼中的函數(shù)調(diào)用或操作調(diào)用包含舉例1包含舉例2擴(kuò)展關(guān)系1擴(kuò)展關(guān)系2將擴(kuò)展用例的事件流在一定的條件下按照相應(yīng)的擴(kuò)展點(diǎn)插入到基礎(chǔ)用例中?;A(chǔ)用例不必知道擴(kuò)展用例的任何細(xì)節(jié),它僅為其提供擴(kuò)展點(diǎn)擴(kuò)展用例的行為是否被執(zhí)行要取決于主事件流中的判定點(diǎn)。擴(kuò)展關(guān)系2基用例路徑本身是完整的可能是一條擴(kuò)展路徑擴(kuò)展路徑步驟多擴(kuò)展路徑內(nèi)部還可以有擴(kuò)展點(diǎn)-擴(kuò)展之?dāng)U展擴(kuò)展路徑未定或容易變化-分離以“凍結(jié)”基用例基礎(chǔ)用例可以單獨(dú)存在,但在一定條件下,他的行為可以被另一個(gè)用例作為擴(kuò)展擴(kuò)展關(guān)系擴(kuò)展舉例泛化關(guān)系同一業(yè)務(wù)目的不同技術(shù)實(shí)現(xiàn):一個(gè)用例可以泛化為另一個(gè)更普通用例(更普通用例特化為特殊用例)UML1.5:用例間的泛化關(guān)系表明子用例包含父用例中定義的所有屬性、行為序列和擴(kuò)展點(diǎn),并且參與父用例中所有的關(guān)系泛化一個(gè)售貨員可以終止任何交易,除了那些需要特殊的售貨員(高級(jí)代理)終止的超過(guò)了一定限制的交易包含用例與擴(kuò)展用例的區(qū)別①相對(duì)于基礎(chǔ)用例,擴(kuò)展用例是可選的,而包含用例則不是。②如果缺少擴(kuò)展用例,基礎(chǔ)用例還是完整的,而缺少包含用例,則基礎(chǔ)用例就不完整了。③擴(kuò)展用例的執(zhí)行需要滿(mǎn)足某種條件,而包含用例不需要。④擴(kuò)展用例的執(zhí)行會(huì)改變基礎(chǔ)用例的行為,而包含用例不會(huì)。用例關(guān)系:擴(kuò)展VS.泛化采用不同關(guān)系,文檔結(jié)構(gòu)不同小結(jié)理解需求以用例為中心組織需求基于用例的需求分析過(guò)程獲取原始需求開(kāi)發(fā)一個(gè)可以理解的需求識(shí)別參與者識(shí)別用例確定關(guān)系思考基于用例的需求分析過(guò)程可大致分幾步?什么是系統(tǒng)邊界用例的概念用例的關(guān)系參與者的定義與關(guān)系思考1:識(shí)別參與者?尋呼臺(tái)系統(tǒng):用戶(hù)如果預(yù)定了天氣預(yù)報(bào),系統(tǒng)每天定時(shí)給他發(fā)天氣消息;如果當(dāng)天氣溫高于35度,還要提醒用戶(hù)注意防暑;在這個(gè)敘述里,誰(shuí)是尋呼臺(tái)系統(tǒng)的Actor?用戶(hù)?氣溫?時(shí)間?思考2:獲取需求-考勤卡應(yīng)用程序初次訪談?dòng)涗?/p>

開(kāi)發(fā)者:誰(shuí)將使用這個(gè)應(yīng)用程序?

客戶(hù):所有用它來(lái)記錄可記帳以及不可記帳的工時(shí)的雇員

……

開(kāi)發(fā)者:現(xiàn)在考勤卡應(yīng)用程序是什么樣的?

客戶(hù):每半個(gè)月就用一個(gè)Excel表格來(lái)記錄。每個(gè)雇員都將通過(guò)他的表格填好,然后用電子郵件發(fā)給我。這個(gè)表格相當(dāng)標(biāo)準(zhǔn):縱向是收費(fèi)項(xiàng)目代碼,橫向是日期。雇員可以在每個(gè)條目上填寫(xiě)說(shuō)明。

開(kāi)發(fā)者:這個(gè)收費(fèi)項(xiàng)目代碼可以從什么地方得到?

……

開(kāi)發(fā)者:誰(shuí)來(lái)管理收費(fèi)項(xiàng)目代碼?

客戶(hù):嗯,必要的時(shí)候由我來(lái)添加這個(gè)代碼。而每個(gè)經(jīng)理總會(huì)告訴他的下屬應(yīng)該填寫(xiě)什么。

……思考2:識(shí)別參與者:考勤卡系統(tǒng)開(kāi)發(fā)者:誰(shuí)將使用這個(gè)應(yīng)用程序?

客戶(hù):所有用它來(lái)記錄可記帳以及不可記帳的工時(shí)的雇員

……

開(kāi)發(fā)者:現(xiàn)在考勤卡應(yīng)用程序是什么樣的?

客戶(hù):每半個(gè)月就用一個(gè)Excel表格來(lái)記錄。每個(gè)雇員都將通過(guò)他的表格填好,然后用電子郵件發(fā)給我。這個(gè)表格相當(dāng)標(biāo)準(zhǔn):縱向是收費(fèi)項(xiàng)目代碼,橫向是日期。雇員可以在每個(gè)條目上填寫(xiě)說(shuō)明。

開(kāi)發(fā)者:這個(gè)收費(fèi)項(xiàng)目代碼可以從什么地方得到?

……

開(kāi)發(fā)者:誰(shuí)來(lái)管理收費(fèi)項(xiàng)目代碼?

客戶(hù):嗯,必要的時(shí)候由我(業(yè)務(wù)經(jīng)理)來(lái)添加這個(gè)代碼。而每個(gè)經(jīng)理總會(huì)告訴他的下屬應(yīng)該填寫(xiě)什么。

……思考2:識(shí)別用例:考勤卡系統(tǒng)開(kāi)發(fā)者:誰(shuí)將使用這個(gè)應(yīng)用程序?

客戶(hù):所有用它來(lái)記錄可記帳以及不可記帳的工時(shí)的雇員

……

開(kāi)發(fā)者:現(xiàn)在考勤卡應(yīng)用程序是什么樣的?

客戶(hù):每半個(gè)月就用一個(gè)Excel表格來(lái)記錄。每個(gè)雇員都將通過(guò)他的表格填好,然后用電子郵件發(fā)給我。這個(gè)表格相當(dāng)標(biāo)準(zhǔn):縱向是收費(fèi)項(xiàng)目代碼,橫向是日期。雇員可以在每個(gè)條目上填寫(xiě)說(shuō)明。

開(kāi)發(fā)者:這個(gè)收費(fèi)項(xiàng)目代碼可以從什么地方得到?

……

溫馨提示

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

評(píng)論

0/150

提交評(píng)論