瀑布模型
1970年 溫斯頓·羅伊斯 (Winston Royce)提出了著名的“瀑布模型”,直到80年代早期,它一直是唯一被廣泛採用的 軟體開發模型 。 瀑布模型將 軟體生命周期 劃分為制定計劃、需求分析、 軟體設計 、程式編寫、軟體測試和運行維護等六個基本活動,並且規定了它們自上而下、相互銜接的固定次序,如同瀑布流水,逐級下落。從本質來講,它是一個軟體開發架構,開發過程是通過一系列階段順序展開的,從系統需求分析開始直到產品發佈和維護,每個階段都會產生迴圈反饋,因此,如果有信息未被覆蓋或者發現了問題,那麼最好 “返回”上一個階段併進行適當的修改,開發進程從一個階段“流動”到下一個階段,這也是瀑布開發名稱的由來。 瀑布模型核心思想是按工序將問題化簡,將功能的實現與設計分開,便於分工協作,即採用結構化的分析與設計方法將邏輯實現與物理實現分開。瀑布模型將軟體生命周期劃分為軟體計劃、需求分析和定義、 軟體設計 、軟體實現、 軟體測試 、軟體運行和維護這6個階段,規定了它們自上而下、相互銜接的固定次序,如同瀑布流水逐級下落。採用瀑布模型的 軟體過程 如下圖所示: 瀑布模型是最早出現的軟體開發模型,在 軟體工程 中占有重要的地位,它提供了軟體開發的基本框架。其過程是從上一項活動接收該項活動的工作對象作為輸入,利用這一輸入實施該項活動應完成的內容給出該項活動的工作成果,並作為輸出傳給下一項活動。同時評審該項活動的實施,若確認,則繼續下一項活動;否則返回前面,甚至更前面的活動。