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