即原型制作和原型評(píng)價(jià)。
如果從需求角度看軟件過(guò)程,我們不妨可以把軟件過(guò)程這樣劃分:
3.1 需求收集和分析
搜集需求得到需求說(shuō)明書,了解軟件要做什么,做成什么樣,解決用戶什么問題。
這時(shí)候軟件公司以書面文檔方式提出,例如需求問詢表等。
3.2 提供原型并進(jìn)行評(píng)價(jià)
制定原型開發(fā)計(jì)劃,根據(jù)用戶需求及不確定的高風(fēng)險(xiǎn)部分進(jìn)行原型開發(fā),在內(nèi)部進(jìn)行原型評(píng)價(jià),請(qǐng)客戶進(jìn)行原型評(píng)價(jià),以保證確實(shí)反映了用戶的真正想法。
3.3 實(shí)現(xiàn)需求
當(dāng)前的軟件開發(fā)過(guò)程常常采用迭代方式進(jìn)行開發(fā),逐步求精,以降低風(fēng)險(xiǎn)和成本。對(duì)迭代的次數(shù),每次迭代的里程碑,要實(shí)現(xiàn)的目標(biāo),及可提交的成果必須有可驗(yàn)證的清晰的計(jì)劃。項(xiàng)目管理是一種藝術(shù),迭代規(guī)劃及里程碑定義都是一種挑戰(zhàn)、一種藝術(shù),但項(xiàng)目管理不在本文討論范圍。
3.4 需求變更
需求變更是正常的,也是難免的,應(yīng)允許用戶和開發(fā)團(tuán)隊(duì)自身對(duì)需求進(jìn)行變更。變更處理的關(guān)鍵在于跟蹤和控制,如何使產(chǎn)生的影響應(yīng)得到控制,這屬于配置管理的內(nèi)容,也不在本文討論范圍。
實(shí)際上我們可以把原型看得更為廣義一些。任何用戶或者內(nèi)部演示的材料,都可以看作為原型。例如,如果你的產(chǎn)品是某種通用的或者行業(yè)解決方案,雖然你其實(shí)還沒有產(chǎn)品,但先做出一個(gè)原型,再加一個(gè)漂亮的白皮書,就可以在市場(chǎng)上進(jìn)行預(yù)銷售了。
對(duì)于拋棄型和演化型原型來(lái)說(shuō),也不是絕對(duì)的。演化型原型中必然會(huì)不斷拋棄一些內(nèi)容,而拋棄型原型,盡管在完成歷史使命后不再使用,但很多思想以及部分設(shè)計(jì)還是可以繼承的。