瀑布模型、迭代模型、增量模型、原型模型,是項目管理常見的四種模型。每種模型都有其優(yōu)缺點(diǎn)和適用的項目類型。項目經(jīng)理針對不同的項目用對模型,才能起到事半功倍的作用。
01
瀑布模型
用瀑布模型做項目就像古代匠雕刻玉石,先有完整的設(shè)計圖,然后按部就班往前推進(jìn),中間不能出一點(diǎn)差錯,追求的是“一次成型”。
這就是瀑布模型,最基本也最常用的一種項目管理模型,又稱線性模型。
采用瀑布模型的項目依照該模型選定的階段順序進(jìn)行,每一個階段的工作產(chǎn)品都是下一個階段工作的輸入,每一個階段只有在上一個階段通過檢查,確認(rèn)完成后才開始新的階段工作。
▲ 瀑布模型的思想示意圖
瀑布模型的突出特征是文檔驅(qū)動。從需求分析到系統(tǒng)維護(hù),每一項活動的工作成果就是此項活動所產(chǎn)生的工作文檔,以及在此基礎(chǔ)上形成的產(chǎn)品。
瀑布模型最大的優(yōu)點(diǎn)有兩個:
1、每個階段的開發(fā)質(zhì)量都有保證,減少了返工。
2、是文檔細(xì)致,降低了溝通成本,有利于及早發(fā)現(xiàn)問題。
這就是開頭說的雕刻玉石的步驟,有精細(xì)的設(shè)計圖紙,每一步都不可行差踏錯,因為一旦雕壞了,就得摔了玉重來。
這也正是瀑布模型的缺點(diǎn):周期長,不易變更。
用戶直到項目開發(fā)晚期才能了解產(chǎn)品的真實面貌和質(zhì)量。這時候提出變更,成本會非常大。
適合采用瀑布模型的項目類型,通常是對用戶需求非常明確的項目。同時還要求項目預(yù)算充足,人員齊備。
02
迭代模型
其實,迭代模型項目就是數(shù)個小而快的瀑布式項目組成的。
因為,每一次開發(fā)迭代都是一次完整地經(jīng)過所有工作流程的過程:需求、分析設(shè)計、實施和測試工作流程。
每一次的迭代都會產(chǎn)生一個可以發(fā)布的產(chǎn)品,這個產(chǎn)品是最終產(chǎn)品的一個子集。
▲ 迭代模型的思想示意圖
迭代模型沿著螺線進(jìn)行若干次迭代,圖中的四個象限代表了四個活動:制定計劃、風(fēng)險分析、實施工程、客戶評估。
使用迭代模型進(jìn)行軟件開發(fā),項目活動包含以下幾個階段:
1. 初始階段
為系統(tǒng)建立商業(yè)案例并確定項目的邊界。
2. 細(xì)化階段
細(xì)化階段的目標(biāo)是分析問題領(lǐng)域,建立健全的體系結(jié)構(gòu)基礎(chǔ),編制項目計劃,淘汰項目中最高風(fēng)險的元素。
3. 構(gòu)造階段
在構(gòu)建階段,所有剩余的構(gòu)件和應(yīng)用程序功能被開發(fā)并集成為產(chǎn)品,所有的功能被詳細(xì)測試。
4. 交付階段
交付階段的重點(diǎn)是確保軟件對最終用戶是可用的。交付階段可以跨越幾次迭代,包括為發(fā)布做準(zhǔn)備的產(chǎn)品測試,基于用戶反饋的少量的調(diào)整。
▲ 迭代模型的幾個階段
迭代模型由風(fēng)險驅(qū)動,強(qiáng)調(diào)可選方案和約束條件從而支持軟件的重用,有助于將軟件質(zhì)量作為特殊目標(biāo)融入產(chǎn)品開發(fā)之中。
因此,迭代模型的風(fēng)險管理成本較高,在風(fēng)險分析,進(jìn)度管理方面,對項目組成員的要求也非常高。
選擇迭代模型的項目,通常屬于高風(fēng)險項目,且需求不確定,用戶能在整個開發(fā)過程中不同程度地參與。
03
增量模型
增量模型是通過對用戶需求的判斷,在定義了用戶要求和系統(tǒng)需求,進(jìn)行總體構(gòu)架設(shè)計后,采用序列化地創(chuàng)建產(chǎn)品的方法進(jìn)行開發(fā)的過程。
增量模型本質(zhì)上是迭代的,但其強(qiáng)調(diào):每一個增量均發(fā)布一個可操作產(chǎn)品。
增量模型的特點(diǎn)是引進(jìn)了增量包的概念,無須等到所有需求都出來,只要某個需求的增量包出來即可進(jìn)行開發(fā)。
▲ 增量模型的思想示意圖
雖然某個增量包可能還需要進(jìn)一步適應(yīng)客戶的需求并且更改,但只要這個增量包足夠小,其影響對整個項目來說是可以承受的。
增量模型有三大優(yōu)點(diǎn):
1、在達(dá)到初始需求之前可降低成本。
2、可快速生產(chǎn)出可使用的系統(tǒng)。
3、能夠有計劃地管理技術(shù)風(fēng)險。
但是,在開發(fā)過程中,需求的變化是不可避免的。
增量模型的靈活性可以使其適應(yīng)這種變化的能力大大優(yōu)于瀑布模型和快速原型模型,但也很容易退化為邊做邊改模型,導(dǎo)致軟件過程的控制失去整體性。
增量模型的適用項目特點(diǎn):
i. 用戶核心需求非常清楚;
ii. 項目人員不足;
iii. 產(chǎn)品可以分割成不同的階段分別完成
04
原型模型
原型模型采用逐步求精的方法完善原型,使得原型能夠“快速”開發(fā).
原型模型是一種用戶需求驅(qū)動的方法。它能減少系統(tǒng)開發(fā)的風(fēng)險,特別是在大型項目的開發(fā)中,由于對項目需求的分析難以一次完成,應(yīng)用原型法效果更為明顯。
▲ 原型模型的思想示意圖
原型模型根據(jù)其最終保留情況分為非拋棄型和拋棄型兩種:
非拋棄型原型:先根據(jù)用戶的最主要的要求,開發(fā)出能實現(xiàn)系統(tǒng)最基本功能的一個原型,再根據(jù)用戶對原型使用與評價的意見,反復(fù)修改完善原型,直到等到用戶滿意的最終系統(tǒng)為止。
拋棄型原型模型:一般用來描述和驗證用戶需求,可以采用與實際開發(fā)所不同的開發(fā)工具,建立模擬的數(shù)據(jù)庫系統(tǒng),從而達(dá)到與用戶交流的最好效果。到用戶需求確定之后即不再繼續(xù)開發(fā)此原型。
這兩者的目的、手段、結(jié)構(gòu)各有不同。采取拋棄型原型模型往往是為了和用戶更好地溝通,大家一定要注意區(qū)分。
原型模型適用的項目特點(diǎn):
i 處理簡單過程明確、涉及面窄的小型系統(tǒng);
ii 大型系統(tǒng)的需求階段,用原型去跟用戶交流,需求分析會更加明確和細(xì)化
寫在最后
針對不同類型的項目。應(yīng)選擇什么樣的開發(fā)模型,應(yīng)從以下兩方面進(jìn)行慎重考慮:
i. 實施推廣的難度
項目管理團(tuán)隊的管理能力和系統(tǒng)開發(fā)團(tuán)隊的技術(shù)能力決定了所選擇開發(fā)模型的實施難度。選擇一個適合項目團(tuán)隊特點(diǎn)的開發(fā)模型尤為重要。
ii. 項目管理的側(cè)重點(diǎn)
項目不同,其側(cè)重點(diǎn)也不同,如側(cè)重于進(jìn)度、質(zhì)量、成本控制、風(fēng)險管理等等。根據(jù)項目的側(cè)重點(diǎn),可以選擇不同的開發(fā)模型。
再結(jié)合這些特點(diǎn),選擇最適合項目的開發(fā)模型,就能起到事半功倍的效果。
各模型項目特點(diǎn):
瀑布模型——文檔驅(qū)動型
迭代模型——風(fēng)險驅(qū)動型
增量模型——任務(wù)驅(qū)動型
原型模型——需求驅(qū)動型
來源:PM圈子
版權(quán)聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn),該文觀點(diǎn)僅代表作者本人。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如發(fā)現(xiàn)本站有涉嫌抄襲侵權(quán)/違法違規(guī)的內(nèi)容, 請發(fā)送郵件至 舉報,一經(jīng)查實,本站將立刻刪除。