為了解決前文所述的軟件需求困境,我們首先需要找到一種可以被各方真正理解和溝通、并可以被逐步精化的需求體系。我認(rèn)為,這種體系應(yīng)該是基于用例(usecase)的。
首先,讓我們仔細(xì)研究一下用例的定義:
一個(gè)用例抽象了目標(biāo)系統(tǒng)在現(xiàn)實(shí)中將執(zhí)行的一組場(chǎng)景(每個(gè)場(chǎng)景由一系列動(dòng)作組成);這些場(chǎng)景會(huì)產(chǎn)生一個(gè)對(duì)某個(gè)Actor有價(jià)值的、可觀測(cè)的結(jié)果;
在這個(gè)定義中,我們強(qiáng)調(diào)了兩件事情:一、用例是被從現(xiàn)實(shí)的場(chǎng)景中抽象出來(lái)的,而不是被隨便發(fā)明出來(lái)的;二、每個(gè)用例(場(chǎng)景)應(yīng)能提供完整的商業(yè)價(jià)值。在未來(lái)的博文里會(huì)介紹這兩條會(huì)如何幫助我們避免對(duì)用例的誤用。
用例的優(yōu)勢(shì)在于它天生是黑盒的,它用自然語(yǔ)言抽象了用戶和目標(biāo)系統(tǒng)的交互,避免了混入分析、設(shè)計(jì)和實(shí)現(xiàn)細(xì)節(jié),以保證用例可以被不懂具體技術(shù)的業(yè)務(wù)及測(cè)試人員所真正理解。同時(shí),需求分析員又可以方便地通過(guò)用例分析(use case analysis)(即用分析類來(lái)試圖在理想方式下實(shí)現(xiàn)用例),將需求體系精華成分析模型。在這一過(guò)程中,需求分析員可以更進(jìn)一步地完善基于用例的需求體系,而不必?fù)?dān)心分析模型會(huì)污染需求,從而實(shí)現(xiàn)需求與分析的分離及有效互動(dòng)。
最后,我們必須指出,基于用例的需求管理體系中不僅僅包含用例,它還應(yīng)該包括涉眾請(qǐng)求,特性列表,前景文檔,補(bǔ)充規(guī)約,詞匯表等等。
用例其實(shí)是Ivar在許多年前發(fā)明的老技術(shù)了,現(xiàn)在被很多人所采用,而被更多人誤用,下面的文章讓我們看看一些對(duì)用例的典型的誤解和誤用。
項(xiàng)目經(jīng)理勝任力免費(fèi)測(cè)評(píng)PMQ上線啦!快來(lái)測(cè)測(cè)你排多少名吧~
http://m.opto-elec.com.cn/pmqhd/index.html