The waterfall model (Plan-driven)
需求分析與定義:
與系統使用者進行諮商後,定義出系統的服務、限制和目標,之後再詳細定義成系統的規格。
系統與軟體設計:
系統的設計程序會將需求分割成硬體和軟體系統需求,以建立整體的系統架構。
實作與單元測試:
在此階段將軟體設計實作成一組程式或程式單元,單元測試則是驗證每個單元是否符合制定的規格。
整合與系統測試:
將獨立的程式單元或程式整合,並將其視為完整的系統進行測試,以確保系統符合軟體的需求。
運作與維護:
這個階段通常是最久的,安裝好該系統並開始實際運作。維護則包括修正之前沒有發現的錯誤、改善系統單元的實作,以及針對新需求改進系統的服務。
優點 :
1. 建立嚴謹、標準的開發程序。
2. 透過統一的步驟,保證系統產品的品質。
3. 提供良好的專案管理控制。
4. 清楚的階段劃分,易於分工及責任歸屬,讓每個階段工作由最專業的人去執行。
5. 符合Divide and Conquer 及模組化的觀念,將大而複雜的系統發展工作,區分成六件小工作。
6. 允許系統開發人員於個階段自由選擇適合的方法、模型工具去進行系統開發。
7. 適合開發商業用軟體,適合大型專案開發
8. 一個版本一個週期
9. 易於維護、管理
缺點 :
1. 各個階段的劃分完全固定,階段之間產生大量的文檔,極大地增加了工作量。
2. 由於開發模型是線性的,用戶只有等到整個過程的末期才能見到開發成果,從而增加了開發風險。
3. 通過過多的強制完成日期和里程碑來跟蹤各個項目階段。
4. 瀑布模型的突出缺點是不適應用戶需求的變化。
資料來源 : PPT
留言列表