|
從任何一個(gè)環(huán)節(jié)我們都會(huì)看到用例,但是僅僅依靠用例本身的圖來(lái)描述用例是不夠的,為什么呢?因?yàn)橛美枋龅氖且粋€(gè)場(chǎng)景,換句話說(shuō),就是用例是描述了某件詳細(xì)的事情。如果作為一個(gè)場(chǎng)景的話必然要考慮這么幾個(gè)問(wèn)題:
- 誰(shuí)在這個(gè)場(chǎng)景中做事?
- 什么時(shí)候進(jìn)入這個(gè)場(chǎng)景?
- 這個(gè)場(chǎng)景在做什么?
- 這個(gè)場(chǎng)景有沒(méi)有特殊規(guī)則?
- 這個(gè)場(chǎng)景結(jié)束后會(huì)有什么情況?
- 這個(gè)場(chǎng)景和別的場(chǎng)景會(huì)有什么聯(lián)系?
考慮這幾個(gè)問(wèn)題的話,那我們就可以開(kāi)始描述我們的用例了,這步工作我們就稱為用例描述。
好了,我們針對(duì)這幾個(gè)問(wèn)題一個(gè)個(gè)來(lái)給出它們的標(biāo)準(zhǔn)定名:
- 誰(shuí)在這個(gè)場(chǎng)景中做事?
我們稱之為參與者
- 怎么會(huì)進(jìn)入這個(gè)場(chǎng)景?
我們稱之為前置條件
- 這個(gè)場(chǎng)景在做什么?
我們稱之為基本操作流程、可選操作流程
- 這個(gè)場(chǎng)景有沒(méi)有特殊規(guī)則?
我們稱之為業(yè)務(wù)規(guī)則
- 這個(gè)場(chǎng)景結(jié)束后會(huì)有什么情況?
我們稱之為后置條件
- 這個(gè)場(chǎng)景和別的場(chǎng)景會(huì)有什么聯(lián)系?
我們稱之為相關(guān)用例
讀過(guò)我之前一篇的朋友一定會(huì)記得用例分為業(yè)務(wù)用例 和系統(tǒng)用例 兩種。針對(duì)這兩種用例,相對(duì)來(lái)說(shuō)都會(huì)根據(jù)這些標(biāo)準(zhǔn)定名來(lái)描述用例。
只是,有許多人習(xí)慣在業(yè)務(wù)用例 中不作描述,或者只是簡(jiǎn)單的描述一下,這點(diǎn)我認(rèn)為無(wú)所謂,因?yàn)闃I(yè)務(wù)用例是描述企業(yè)的組織機(jī)構(gòu)中各部門的業(yè)務(wù),它的用例實(shí)在是很粗的,它本身的目標(biāo)只在于可以及時(shí)得在談需求時(shí)記錄下企業(yè)的業(yè)務(wù)。不過(guò)我認(rèn)為最好的做法是在業(yè)務(wù)用例的階段,我們需要將業(yè)務(wù)用例劃分出來(lái),然后根據(jù)調(diào)研的結(jié)果將業(yè)務(wù)流程清晰的描述出來(lái),表達(dá)的方式就不用太過(guò)拘泥,最簡(jiǎn)單的就可以是“我做 1-> 我做 2-> 我做 3… ”。
而在系統(tǒng)用例 部分則不得不清晰得來(lái)表明每個(gè)用例的場(chǎng)景,演示系統(tǒng)的需求,描述系統(tǒng)的功能。那么這里我們就用一個(gè)例子來(lái)說(shuō)明一下這些描述吧。
根據(jù)之前曾經(jīng)給出的一組用例來(lái)看:
我們來(lái)描述“提取商品信息”這個(gè)用例(請(qǐng)注意這是系統(tǒng)用例 )。
參與者:
商品管理員
參與者的意思是,誰(shuí)在對(duì)這個(gè)用例進(jìn)行使用
前置條件:
1. 商品管理員登陸 XXX 系統(tǒng)后擁有能夠操作該用例的權(quán)限
2. 商品信息的名稱、生產(chǎn)日期可以被商品管理員獲取作為條件
前置條件的意思是,在怎樣的前提下,該用例才有可能被使用。
基本操作流程:
商品管理員輸入商品名稱和信息-> 系統(tǒng)提取對(duì)應(yīng)的商品并顯示所有商品信息
可選操作流程:
商品管理員輸入商品名稱和信息-> 系統(tǒng)無(wú)法根據(jù)條件得到對(duì)應(yīng)商品信息,系統(tǒng)提示商品管理員重新輸入條件
基本操作流程和可選操作流程的意思是,描述用例中基本的操作步驟和系統(tǒng)的反應(yīng)結(jié)果,以及針對(duì)同一操作步驟可能會(huì)出現(xiàn)的另一種可能性。
業(yè)務(wù)規(guī)則:
1.在提取商品信息的時(shí)候必須滿足不能提取“安全鎖”類型的商品
業(yè)務(wù)規(guī)則的意思是,在整個(gè)用例的場(chǎng)景中,無(wú)法在前置條件或后置條件以及基本操作流程和可選操作流程中描述的一些特殊業(yè)務(wù)規(guī)則。該業(yè)務(wù)規(guī)則是隱含的卻是必須的。
后置條件:
1. 被提取的商品其狀態(tài)全部變成“已查看”狀態(tài)的商品
后置條件的意思是,在用例結(jié)束后會(huì)產(chǎn)生怎樣的一個(gè)結(jié)果,而該結(jié)果可能會(huì)對(duì)今后的其他用例產(chǎn)生一定的影響。
相關(guān)用例:
擴(kuò)展的用例:打印商品信息、更新商品信息
被包含的用例:獲取商品單價(jià)
相關(guān)用例的意思是,能夠在用例的描述中查看到當(dāng)前用例與其他用例的關(guān)系,一般只有直接與當(dāng)前用例相關(guān)的用例才會(huì)被作為相關(guān)用例,而且需要使用“擴(kuò)展的用例”和“被包含的用例”來(lái)清晰的定義。
這樣,我們的系統(tǒng)用例就完成了,雖然很煩瑣,但是能夠清晰的告之你的客戶,你的系統(tǒng)將會(huì)做什么,不是一件令人很愉快的事嗎?
完成了這一步后,我們接著的工作就需要進(jìn)入邏輯模型了。邏輯模型對(duì)于我們來(lái)說(shuō),是為了展示這個(gè)系統(tǒng)是怎樣做的。因此它牽涉到的內(nèi)容就比較多了。而一般而言,對(duì)于邏輯模型,我們通常分為做三步:
Step-1 :業(yè)務(wù)對(duì)象模型
業(yè)務(wù)對(duì)象模型描述的是現(xiàn)行的業(yè)務(wù)活動(dòng)對(duì)象之間的關(guān)系,是通過(guò)從業(yè)務(wù)用例視圖中調(diào)研描述的結(jié)果以及角色和客戶交付的文檔中的對(duì)象演化而來(lái),通過(guò)對(duì)象合作來(lái)實(shí)現(xiàn)。
Step-2 :分析模型
分析模型屬于推進(jìn)用例的實(shí)現(xiàn),它是在系統(tǒng)用例模型和業(yè)務(wù)對(duì)象模型基礎(chǔ)上更進(jìn)一步的對(duì)一個(gè)用例的實(shí)現(xiàn)說(shuō)明。它更多的是告訴了我們,針對(duì)某個(gè)用例,系統(tǒng)會(huì)怎樣實(shí)現(xiàn)。而在這里我們就會(huì)引出一個(gè)新名詞“用例實(shí)現(xiàn)”,也會(huì)看到“類”。
Step-3 :設(shè)計(jì)模型
設(shè)計(jì)模型和分析模型一樣,其實(shí)也是告訴了我們針對(duì)某個(gè)用例系統(tǒng)會(huì)怎樣實(shí)現(xiàn),只是設(shè)計(jì)模型更抽象,它已經(jīng)要求帶入了實(shí)現(xiàn)技術(shù)的概念。
it知識(shí)庫(kù):需求分析階段的工作(二):用例描述和邏輯模型,轉(zhuǎn)載需保留來(lái)源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。