交互過程所達(dá)成的一種契約。需求說明書基于用例的分析方法是也是當(dāng)前較為流行的需求開發(fā)方式。用例文檔作為需求重要的成果性文檔也是需求評(píng)審主體之所在。需求評(píng)審確認(rèn)的重點(diǎn)是對(duì)關(guān)鍵用戶的最常用和最重要的用例進(jìn)行深入和細(xì)致的評(píng)審,首先要通過測(cè)試用例的主干過程。而我們是否撰寫有效的用例則要從以下方面著手評(píng)審。
1 用例的目標(biāo)或價(jià)值度量是否明確?
這一點(diǎn)是考察用例的編寫是從用戶角度還是從系統(tǒng)角度出發(fā)的。必須保證用例從用戶角度出發(fā),用例才有正確的目標(biāo)。也就是說用例實(shí)際上是把用戶作為參與者,以第一人稱“我”與系統(tǒng)做種種交互的過程。而其中對(duì)過程的描述要讓用戶看上去很熟悉,如果用戶看上去是如此的陌生,則說明你和用戶的溝通還沒能達(dá)成“契約”。
2 用例是否是獨(dú)立的分散任務(wù)?
3 是否明確說明可用用例會(huì)給哪些參與者帶來用處?
不要以為用例能給所有的涉眾者帶來用戶,它只對(duì)當(dāng)前的參與者和相關(guān)參與者帶來價(jià)值,這就是用例的范圍。事實(shí)上,分析師應(yīng)該清楚所有涉眾者對(duì)系統(tǒng)和用例的主要價(jià)值態(tài)度及其約束條件。
4 編寫用例的詳細(xì)程度是否恰當(dāng)?是否有不必要的設(shè)計(jì)和實(shí)現(xiàn)細(xì)節(jié)?
用例不應(yīng)該有任何的設(shè)計(jì)細(xì)節(jié),更不能出現(xiàn)UI設(shè)計(jì)。 我們要確保參與者是以黑盒子看系統(tǒng)的,這樣化繁為簡(jiǎn)的思路,正是系統(tǒng)分析分層次目的所在。
5 所有預(yù)期的分支過程是否都編寫了文檔說明?
參與者的動(dòng)作和系統(tǒng)的響應(yīng)構(gòu)成用例過程的主題,所以必須是盡可能的客觀和詳細(xì)的。
6 所有預(yù)估的異常過程是否都編寫了文檔說明?
參與者異常過程將轉(zhuǎn)化成設(shè)計(jì)的異常處理機(jī)制,所以是必不可少的,我們絕對(duì)不敢使用沒有任何異常處理的應(yīng)用程序的。
7 是否存在一些普通的動(dòng)作序列可以分解成獨(dú)立的用例?
用例之間也有可復(fù)用的,能夠把公共的動(dòng)作序列獨(dú)立出來,用例達(dá)到可復(fù)用的目標(biāo)也是用例撰寫要考慮的。
8 每個(gè)路徑的步驟是否都清晰明了,無歧義而且完整?
用例中的主干過程、分支過程、異常處理的每個(gè)步驟都建議使用主動(dòng)結(jié)構(gòu)來陳述,即參與者要干什么、系統(tǒng)要響應(yīng)什么,一步一步地描述直到完成整個(gè)用例流程。這個(gè)用例通常會(huì)是參與者完成了一個(gè)業(yè)務(wù)或任務(wù)流程。
9 用例中的每個(gè)參與者和步驟是否都與所執(zhí)行的任務(wù)有關(guān)?
要防止用例目標(biāo)和用例描述出現(xiàn)了文不對(duì)題或牛頭馬面的現(xiàn)象。
10 用例中定義的每個(gè)可選路徑是否都可行和可驗(yàn)證?
用例描述與用例圖的每個(gè)動(dòng)作序列保持一致,是可以經(jīng)過驗(yàn)證和系統(tǒng)執(zhí)行通過的。
11用例的前置條件和后置條件是否合理?
分析師必須確認(rèn)用例的前置條件和后置條件準(zhǔn)確界定了用例的邊界范圍,區(qū)分了用例和用例之間的界限。
分析師經(jīng)常會(huì)發(fā)現(xiàn)在檢查一個(gè)包含九個(gè)步驟的用例時(shí),發(fā)現(xiàn)執(zhí)行完第六個(gè)步驟就滿足了后置條件,第七、八、九在用例的邊界之外,很顯然是不必要的。同樣,用例的前置條件必須是啟動(dòng)在第一個(gè)步驟就已經(jīng)滿足。
項(xiàng)目經(jīng)理勝任力免費(fèi)測(cè)評(píng)PMQ上線啦!快來測(cè)測(cè)你排多少名吧~
http://m.opto-elec.com.cn/pmqhd/index.html