軟件開發模型(Software Development Model)是指軟件開發全部過程、活動和任務的結構框架。軟件開發包括需求、設計、編碼和測試等階段,有時也包括維護階段。 軟件開發模型能清晰、直觀地表達軟件開發全過程,明確規定了要完成的主要活動和任務,用來作爲軟件項目工作的基礎。
軟件開發模型
名稱 特點 缺點 擴展 瀑布模型
1)爲項目提供了按階段劃分的檢查點。
2)當前一階段完成後,您只需要去關注後續階段。
3)可在迭代模型中應用瀑布模型。
-
1)在項目各個階段之間極少有反饋。
2)只有在項目生命週期的後期才能看到結果。
3)通過過多的強制完成日期和里程碑來跟蹤各個項目階段。
-
4)懼怕用戶測試中的反饋,懼怕需求變更
瀑布V模型 螺旋模型
限制條件:
- 適應於內部的大規模軟件開發:螺旋模型強調風險分析,許多客戶都無法接受和相信這種分析因此
- 適合於大規模軟件項目(執行風險分析將大大影響項目的利潤,進行風險分析就毫無意義)
- 軟件開發人員應該擅長尋找可能的風險,準確地分析風險,否則將會帶來更大的風險
優點:
- 設計上的靈活性,可以在項目的各個階段進行變更.
- 以小的分段來構建大型系統,使成本計算變得簡單容易
- 客戶始終參爲保證了項目不偏離正確方向以及項目的可控性
- 客戶始終掌握項目的最新信息,從而他或她能夠和管理層有效地交互.
- 客戶認可這種公司內部的開發方式帶來的良好的溝通和高質量的產品.
不足
與用戶見面晚,成功率比較低
與系統要求明確的系統;
各種應用軟件的開發均可以使用。
快速原型模型 演化模型 漸增模型 噴泉模型
參考: