常見的幾種生命週期模型及其適用範圍
1.瀑布模型
瀑布模型有以下優點:
1)為專案提供了按階段劃分的檢查點。
2)當前一階段完成後,您只需要去關注後續階段。
3)可在迭代模型中應用瀑布模型。
增量迭代應用於瀑布模型。迭代1解決最大的問題。每次迭代產生一個可執行的版本,同時增加更多的功能。每次迭代必須經過質量和整合測試。
2瀑布模型有以下缺點:
1)在專案各個階段之間極少有反饋。
2)只有在專案生命週期的後期才能看到結果。
3)通過過多的強制完成日期和里程碑來跟蹤各個專案階段。
瀑布模型的使用範圍:(1)使用者的需求非常清楚全面,且在開發過程中沒有或很少變化;(2)開發人員對軟體的應用領域很熟悉;(3)使用者的使用環境非常穩定;(4)開發工作對使用者參與的要求很低。
2.快速原型模型
快速原型模型的優點:
(1)可以得到比較良好的需求定義,容易適應需求的變化;
(2)有利於開發與培訓的同步;
(3)開發費用低、開發週期短且對使用者更友好。
快速原型模型的缺點:
(1)客戶與開發者對原型理解不同;
(2) 準確的原型設計比較困難;
(3) 不利於開發人員的創新。
快速原型模型的使用範圍:(1)對所開發的領域比較熟悉而且有快速的原型開發工具;(2)專案招投標時,可以以原型模型作為軟體的開發模型;(3)進行產品移植或升級時,或對已有產品原型進行客戶化工作時,原型模型是非常適合的。
3.增量模型
增量模型的優點:
(1)採用增量模型的優點是人員分配靈活,剛開始不用投入大量人力資源;
(2)如果核心產品很受歡迎,則可增加人力實現下一個增量;
(3)可先發布部分功能給客戶,對客戶起到鎮靜劑的作用。
增量模型的缺點:
(1)並行開發構件有可能遇到不能整合的風險,軟體必須具備開放式的體系結構;
(2)增量模型的靈活性可以使其適應這種變化的能力大大優於瀑布模型和快速原型模型,但也很容易退化為邊做邊改模型,從而是軟體過程的控制失去整體性。
增量模型的使用範圍:(1)進行已有產品升級或新版本開發,增量模型是非常適合的;(2)對完成期限嚴格要求的產品,可以使用增量模型;(3)對所開發的領域比較熟悉而且已有原型系統,增量模型也是非常適合的。
4.螺旋模型
螺旋模型的優點:
(1)設計上的靈活性,可以在專案的各個階段進行變更;
(2)以小的分段來構建大型系統,使成本計算變得簡單容易;
(3)客戶始終參與每個階段的開發,保證了專案不偏離正確方向以及專案的可控性;
(4) 隨著專案推進,客戶始終掌握專案的最新資訊 , 從而他或她能夠和管理層有效地互動。
螺旋模型的缺點:
(1)採用螺旋模型需要具有相當豐富的風險評估經驗和專門知識,在風險較大的專案開發中,如果未能夠及時標識風險,勢必造成重大損失;
(2)過多的迭代次數會增加開發成本,延遲提交時間。
螺旋模型的使用範圍:螺旋模型只適合於大規模的軟體專案。