原型法和面向?qū)ο蟮姆治雠c設(shè)計方法(2)

字號:

2.原型法(prototyping)
    (1)原型法定義
    原型法是指在獲取一組基本的需求定義后,利用高級軟件工具可視化的開發(fā)環(huán)境,快速地建立一個目標(biāo)系統(tǒng)的最初版本,并把它交給用戶試用、補(bǔ)充和修改,再進(jìn)行新的版本開發(fā)。反復(fù)進(jìn)行這個過程,直到得出系統(tǒng)的“精確解”,即用戶滿意為止。經(jīng)過這樣一個反復(fù)補(bǔ)充和修改過程,應(yīng)用系統(tǒng) “最初版本”就逐步演變?yōu)橄到y(tǒng) “最終版本”。
    原型法就是不斷地運(yùn)行系統(tǒng)“原型”來進(jìn)行啟發(fā)、揭示、判斷、修改和完善的系統(tǒng)開發(fā)方法。
    (2)原型(prototype)
    原型(prototype)即樣品、模型的意思。把系統(tǒng)主要功能和接口通過快速開發(fā)制作為“軟件樣機(jī)”,以可視化的形式展現(xiàn)給用戶,及時征求用戶意見,從而明確無誤地確定用戶需求。同時,原型也可用于征求內(nèi)部意見,作為分析和設(shè)計的接口之一,可方便于溝通。
    對原型的基本要求包括:體現(xiàn)主要的功能;提供基本的界面風(fēng)格;展示比較模糊的部分以便于確認(rèn)或進(jìn)一步明確;原型是可運(yùn)行的,至少在各主要功能模塊之間能夠建立相互連接。
    原型可以分為三類:
    ① 淘汰(拋棄)式(disposable):目的達(dá)到即被拋棄,原型不作為最終產(chǎn)品。
    ② 演化式(evolutionary):系統(tǒng)的形成和發(fā)展是逐步完成的,它是高度動態(tài)迭代和高度動態(tài)的循環(huán),每次迭代都要對系統(tǒng)重新進(jìn)行規(guī)格說明、重新設(shè)計、重新實現(xiàn)和重新評價,所以是對付變化最為有效的方法。
    ③ 增量式(incremental):系統(tǒng)是一次一段地增量構(gòu)造,與演化式原型的區(qū)別在于增量式開發(fā)是在軟件總體設(shè)計基礎(chǔ)上進(jìn)行的。很顯然,其應(yīng)付變化的能力比演化式差。
    在信息系統(tǒng)設(shè)計的過程中,常用的各種不同形式的部分原型有:
    ① 對話原型
       原型模擬預(yù)期的終端交互,使用戶可以從屏幕上查看他們將接收什么、進(jìn)行的操作,并提出遺漏之處,從而加深正確的理解。終端對話的設(shè)計效果直接影響著系統(tǒng)的可用性和用戶對系統(tǒng)的接受程度。
    ② 數(shù)據(jù)輸入原型
    建立數(shù)據(jù)輸入的原型,可以檢查數(shù)據(jù)的輸入速度和正確性,還能進(jìn)行有效性和完整性的檢查。
    ③ 報表系統(tǒng)原型
    提供給用戶的各種報告應(yīng)在整個系統(tǒng)實現(xiàn)之前給用戶看,報表子系統(tǒng)需要經(jīng)常進(jìn)行大量修改以滿足系統(tǒng)的需要,因此,可以把報表生成器作為原型。
    ④ 數(shù)據(jù)系統(tǒng)原型
    首先生成一個含有少量記錄的原型數(shù)據(jù)庫,這樣用戶和分析員與它可以進(jìn)行交互,生成報表和顯示有用信息。這種交互經(jīng)常導(dǎo)致產(chǎn)生對不同的數(shù)據(jù)類型、新的數(shù)據(jù)域或不同的數(shù)據(jù)組織方式的需求,還可以在原型化工具的幫助下探索用戶將如何使用信息以及數(shù)據(jù)庫是什么樣的。
    ⑤ 計算和邏輯原型
    有時一個應(yīng)用邏輯或計算是復(fù)雜的。審計員、工程師、投資分析員和其他用戶可以使用高級程序設(shè)計語言建立他們所需的計算實例。這些實例可以組合在一起構(gòu)成一個大的系統(tǒng),與其它應(yīng)用系統(tǒng)、數(shù)據(jù)庫或終端相連接,用戶可以使用這些計算原型檢驗他們所求結(jié)果的準(zhǔn)確性。
    ⑥ 應(yīng)用程序包原型
    在一個應(yīng)用程序包和其它應(yīng)用系統(tǒng)相連或?qū)嶋H使用之前,可以通過一個小組用戶來鑒定這個應(yīng)用程序包是否令他們滿意,若不滿意可以進(jìn)行大量的修改,直到令他們滿意。
    ⑦ 概念原型
    有時,一個應(yīng)用概念不能被正確全面地理解,這是信息系統(tǒng)設(shè)計中存在的問題。在花費(fèi)大額經(jīng)費(fèi)來建立這個系統(tǒng)之前,需要進(jìn)行測試和細(xì)化。可以用一個快速實現(xiàn)的數(shù)據(jù)管理系統(tǒng)來測試,使用標(biāo)準(zhǔn)的數(shù)據(jù)輸入屏幕和標(biāo)準(zhǔn)的報表格式,以減少測試和細(xì)化其概念的工作量。在測試和細(xì)化之后,對概念有了明確的理解,再進(jìn)行建立該應(yīng)用的特定報表和屏幕等細(xì)節(jié)工作。
    (3)原型法意義
    原型法意義是可視化,強(qiáng)化溝通,降低風(fēng)險,節(jié)省后期變更成本,提高項目成功率。一般來說,采用原型法后可以改進(jìn)需求質(zhì)量;雖然投入了較多先期的時間,但可以顯著減少后期變更的時間;原型法投入的人力成本代價并不大,但可以節(jié)省后期成本;對于較大型的軟件來說,原型系統(tǒng)可以成為開發(fā)團(tuán)隊的藍(lán)圖;另外,原型通過充分和客戶交流,還可以提高客戶滿意度。
    原型法是在計算機(jī)技術(shù)發(fā)展到一定階段,用戶應(yīng)用需求高漲的情況下發(fā)展的一種方法論,但它同時又是對開發(fā)人員有高要求的一種方法論。