登錄

瀑布模型

百科 > 信息管理工具 > 瀑布模型

1.什么是瀑布模型

1970年溫斯頓·羅伊斯(Winston Royce)提出了著名的“瀑布模型”,直到80年代早期,它一直是唯一被廣泛采用的軟件開發(fā)模型

瀑布模型將軟件生命周期劃分為制定計(jì)劃、需求分析、軟件設(shè)計(jì)、程序編寫、軟件測試和運(yùn)行維護(hù)等六個(gè)基本活動,并且規(guī)定了它們自上而下、相互銜接的固定次序,如同瀑布流水,逐級下落。從本質(zhì)來講,它是一個(gè)軟件開發(fā)架構(gòu),開發(fā)過程是通過一系列階段順序展開的,從系統(tǒng)需求分析開始直到產(chǎn)品發(fā)布和維護(hù),每個(gè)階段都會產(chǎn)生循環(huán)反饋,因此,如果有信息未被覆蓋或者發(fā)現(xiàn)了問題,那么最好 “返回”上一個(gè)階段并進(jìn)行適當(dāng)?shù)男薷?,開發(fā)進(jìn)程從一個(gè)階段“流動”到下一個(gè)階段,這也是瀑布開發(fā)名稱的由來。

瀑布模型核心思想是按工序?qū)栴}化簡,將功能的實(shí)現(xiàn)與設(shè)計(jì)分開,便于分工協(xié)作,即采用結(jié)構(gòu)化的分析與設(shè)計(jì)方法將邏輯實(shí)現(xiàn)與物理實(shí)現(xiàn)分開。瀑布模型將軟件生命周期劃分為軟件計(jì)劃、需求分析和定義、軟件設(shè)計(jì)、軟件實(shí)現(xiàn)、軟件測試、軟件運(yùn)行和維護(hù)這6個(gè)階段,規(guī)定了它們自上而下、相互銜接的固定次序,如同瀑布流水逐級下落。采用瀑布模型的軟件過程如下圖所示:

采用瀑布模型的軟件過程

瀑布模型是最早出現(xiàn)的軟件開發(fā)模型,在軟件工程中占有重要的地位,它提供了軟件開發(fā)的基本框架。其過程是從上一項(xiàng)活動接收該項(xiàng)活動的工作對象作為輸入,利用這一輸入實(shí)施該項(xiàng)活動應(yīng)完成的內(nèi)容給出該項(xiàng)活動的工作成果,并作為輸出傳給下一項(xiàng)活動。同時(shí)評審該項(xiàng)活動的實(shí)施,若確認(rèn),則繼續(xù)下一項(xiàng)活動;否則返回前面,甚至更前面的活動。

2.瀑布模型的優(yōu)缺點(diǎn)

1、瀑布模型有以下優(yōu)點(diǎn):

1)為項(xiàng)目提供了按階段劃分的檢查點(diǎn)。

2)當(dāng)前一階段完成后,您只需要去關(guān)注后續(xù)階段。

3)可在迭代模型中應(yīng)用瀑布模型。

迭代模型中應(yīng)用瀑布模型

增量迭代應(yīng)用于瀑布模型。迭代1解決最大的問題。每次迭代產(chǎn)生一個(gè)可運(yùn)行的版本,同時(shí)增加更多的功能。每次迭代必須經(jīng)過質(zhì)量和集成測試。

2、瀑布模型有以下缺點(diǎn):

1)在項(xiàng)目各個(gè)階段之間極少有反饋。

2)只有在項(xiàng)目生命周期的后期才能看到結(jié)果。

3)通過過多的強(qiáng)制完成日期和里程碑來跟蹤各個(gè)項(xiàng)目階段。

3.瀑布模型的客戶需求

盡管瀑布模型招致了很多批評,但是它對很多類型的項(xiàng)目而言依然是有效的,如果正確使用,可以節(jié)省大量的時(shí)間和金錢。對于您的項(xiàng)目而言,是否使用這一模型主要取決于您是否能理解客戶的需求以及在項(xiàng)目的進(jìn)程中這些需求的變化程度,對于經(jīng)常變化的項(xiàng)目而言,瀑布模型毫無價(jià)值,對于這種情況,您可以考慮其他的架構(gòu)來進(jìn)行項(xiàng)目管理,比如名為螺旋模型(spiral model)的方法。

評論  |   0條評論