結構化方法和面向對象方法有一個共同點:在系統(tǒng)開發(fā)初期必須明確系統(tǒng)的功能要求,確定系統(tǒng)邊界。然而對于信息系統(tǒng)建設而言,明確問題本身不是一件輕松的事情。
原型的目的是:明確并完善需求、探索設計選擇方案、發(fā)展為最終的產(chǎn)品。
1.原型的分類
(1)按原型是否實現(xiàn)功能
①水平原型:也稱行為原型,水平原型通常只是功能的導航,但并未真實實現(xiàn)功能。水平原型主要用在界面上。
②垂直原型:也稱結構化原型,實現(xiàn)了部分功能。垂直原型主要用在復雜的算法實現(xiàn)上。
(2)按原型的最終結果
①拋棄型原型:也稱探索型原型,是指達到預期目的后,原型本身被拋棄。拋棄型原型主要用在解決需求不確定性、二義性、不完整性、含糊性等。
②演化型原型:為增量開發(fā)品提供基礎,是螺旋模型的一部分,也是面向對象軟件開發(fā)過程的一部分。演化型原型主要用于必須易于升級和優(yōu)化及適用于Web項目。
2.原型類型的選擇
如果是在需求分析階段要使用原型化方法,必須從系統(tǒng)結構、邏輯結構、用戶特征、應用約束、項目管理和項目環(huán)境等多方面來考慮,以決定是否采用原型化方法。
表18-1 原型法的選擇
| 適用原型法 | 不適用原型法 |
系統(tǒng)結構 | 聯(lián)機事務處理系統(tǒng),相互關聯(lián)的應用系統(tǒng) | 批處理、批修改等結構 |
邏輯結構 | 有結構系統(tǒng),如操作支持系統(tǒng)、管理信息系統(tǒng)、記錄管理系統(tǒng) | 基于大運算法的系統(tǒng) |
用戶特征 | 不滿足于預先做系統(tǒng)定義說明,愿意為定義和修改原型投資,愿意承擔決策責任,積極參與的用戶是適合使用原型的用戶 |
|
應用約束 |
| 己經(jīng)運行系統(tǒng)的補充 |
項目環(huán)境 | 系統(tǒng)規(guī)模很大、要求復雜、系統(tǒng)服務不清晰 當性能要求較高時,在系統(tǒng)原型上先做一些試驗也是很必要的 |
|
原型法適合于用戶需求不明確的場合。在開發(fā)過程中,用戶的參與和決策加強了,縮短了開發(fā)周期,降低了開發(fā)風險,最終的結果是更適合用戶的要求。原型法成敗的關鍵及效率的高低,在于模型的建立及建模的速度。