
SDLC - 瀑布模型
瀑布模型是一個經典的 SDLC 模型,它廣為人知、易於理解且常用。它由 Royce 於 1970 年提出,至今仍被作為軟體開發的常用方法,在業界各種組織中被廣泛採用。
在瀑布模型中,每個生命週期階段只有在之前的生命週期階段完成後才能開始。因此,它是一個沒有反饋迴圈的線性模型。

瀑布模型 – 優點
瀑布模型的優點如下:
- 易於理解,易於使用。
- 為缺乏經驗的開發團隊提供結構。
- 里程碑易於理解。
- 設定需求穩定性。
- 非常適合管理控制(計劃、監控、報告)。
- 當質量比成本或進度更重要時,它非常有效。
瀑布模型 – 缺點
瀑布模型的缺點或不足之處如下:
理想化 - 它與現實並不完全匹配。
不切實際 - 無法期望在專案早期獲得準確的需求。
沒有反映探索性開發的迭代性質,而探索性開發更為常見。
難以且成本高昂地進行更改。
軟體僅在專案結束時交付。因此 -
延遲發現嚴重缺陷。
可能交付過時的需求。
管理開銷很大,對於小型團隊和專案來說可能成本很高。
每個階段都需要經驗豐富的資源 - 分析師、設計師、開發人員、測試人員。
測試僅在開發完成後開始,測試人員不參與任何早期階段。
跨職能團隊的專業知識未得到共享,因為每個階段都是獨立執行的。
何時使用瀑布模型?
如果您滿足以下條件,可以使用瀑布模型:
需求非常明確。
產品定義穩定。
技術充分理解。
現有產品的更新版本。
將現有產品移植到新平臺。
大型組織,擁有結構化的跨職能團隊。
組織內部以及與客戶之間的溝通渠道已建立。
演化原型模型
在使用演化原型模型進行軟體開發時,開發人員在需求階段構建原型。然後,終端使用者評估原型並提供反饋。反饋可以是原型更正或附加功能。根據反饋,開發人員進一步完善原型。
因此,產品透過原型→反饋→改進原型迴圈演化,因此得名演化原型。當用戶對產品的功能和工作方式感到滿意時,原型程式碼將提升至最終產品交付所需的標準。

演化原型模型 – 優點
演化原型模型的優點或優勢如下:
客戶/終端使用者可以透過檢視原型來直觀地瞭解系統需求。
開發人員從客戶那裡學習,因此在領域或生產環境方面沒有歧義。
允許靈活的設計和開發。
與原型的互動激發了對額外所需功能的認識。
意外需求和需求變更很容易適應。
產生穩定且可見的進度跡象。
交付準確且可維護的最終產品。
演化原型模型 – 缺點
演化原型模型的缺點或不足之處如下:
傾向於在程式碼和修復開發中放棄結構化開發,儘管這並非模型規定的內容。
該模型因其快速且簡便的方法而聲譽不佳。
整體可維護性可能會被忽略。
客戶可能會要求將原型作為最終產品交付,而沒有給開發人員機會執行最後一步,即最終產品的標準化。
專案可能會無限期地持續(隨著範圍蔓延),管理層可能不會對此表示讚賞。
何時使用演化原型模型?
您可以使用演化原型模型 -
- 當需求不穩定或需要澄清時
- 作為瀑布模型的需求澄清階段
- 開發使用者介面
- 用於短期演示
- 用於新的或原始開發
- 用於實施新技術