日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【软件工程】软件生命周期模型 --- 瀑布模型、快速原型模型、增量模型、螺旋模型及喷泉模型

發布時間:2024/1/1 编程问答 62 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【软件工程】软件生命周期模型 --- 瀑布模型、快速原型模型、增量模型、螺旋模型及喷泉模型 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

軟件生命周期模型是跨越整個生存期的系統開發、運作和維護所實施的全部過程、活動和任務的結構框架。
下面介紹幾種常見的軟件生命周期模型:

瀑布模型

瀑布模型是將軟件生存周期的各項活動規定為按固定順序而連接的若干階段工作,形如瀑布流水,最終得到軟件產品。
瀑布模型一直是唯一被廣泛采用的生命周期模型,現在它仍然是軟件工程中應用得最廣泛的過程模型。

瀑布模型的核心思想:
瀑布模型核心思想是按工序將問題化簡,將功能的實現與設計分開,便于分工協作,即采用結構化的分析與設計方法將邏輯實現與物理實現分開。將軟件生命周期劃分為制定計劃、需求分析、軟件設計、程序編寫、軟件測試和運行維護等六個基本活動,并且規定了它們自上而下、相互銜接的固定次序,如同瀑布流水,逐級下落。

瀑布模型的特點:

  • 階段間具有順序性和依賴性
    1、必須等前一階段的工作完成之后,才能開始后一階段的工作
    2、前一階段的輸出文檔就是后一階段的輸入文檔
  • 推遲實現的觀點
    清楚地區分邏輯設計與物理設計,盡可能推遲程序的物理實現,是按照瀑布模型開發軟件的一條重要的指導思想。
  • 質量保證的觀點
    軟件工程的基本目標是優質、高產。為保證所開發的軟件的質量,在瀑布模型的每個階段都應堅持兩個重要做法:
    1、每個階段都必須完成規定的文檔,沒有交出合格的文檔就是沒有完成該階段的任務。
    2、每個階段結束前都要對所完成的文檔進行評審,以便盡早發現問題,改正錯誤。

瀑布模型的優點:
1、為項目提供了按階段劃分的檢查點。
2、當前一階段完成后,您只需要去關注后續階段。
3、可在迭代模型中應用瀑布模型。
增量迭代應用于瀑布模型。迭代1解決最大的問題。每次迭代產生一個可運行的版本,同時增加更多的功能。每次迭代必須經過質量和集成測試。
4、它提供了一個模板,這個模板使得分析、設計、編碼、測試和支持的方法可以在該模板下有一個共同的指導。雖然有不少缺陷但比在軟件開發中隨意的狀態要好得多。

瀑布模型的缺點:
1、實際的項目大部分情況難以按照該模型給出的順序進行,而且這種模型的迭代是間接的,這很容易由微小的變化而造成大的混亂。
2、通常情況下客戶難以表達真正的需求,而這種模型卻要求如此,這種模型是不歡迎具有二義性問題存在的。
3、客戶要等到開發周期的晚期才能看到程序運行的測試版本,而在這時發現大的錯誤時,可能引起客戶的驚慌,而后果也可能是災難性的。

傳統的瀑布模型過于理想化了,事實上,人在工作過程中不可能不犯錯誤。實際的瀑布模型是帶“反饋環”的。如下圖:

圖中實線箭頭表示開發過程,虛線箭頭表示維護過程。
實際的瀑布模型當在后面階段發現前面階段的錯誤時,需要沿圖中左側的反饋線返回前面的階段,修正前面階段的產品之后再回來繼續完成后面階段的任務。

快速原型模型

快速原型是快速建立起來的可以在計算機上運行的程序,它所能完成的功能往往是最終產品能完成的功能的一個子集。

快速原型模型是不帶反饋環的,這正是這種過程模型的主要優點。軟件產品的開發基本上是線性順序進行的。能基本上做到線性順序開發的主要原因如下:
1、原型系統已經通過與用戶交互而得到驗證,據此產生的規格說明文檔正確地描述了用戶需求,因此,在開發過程的后續階段不會因為發現了規格說明文檔的錯誤而進行較大的返工。
2、開發人員通過建立原型系統已經學到了許多東西,因此,在設計和編碼階段發生錯誤的可能性也比較小,這自然減少了在后續階段需要改正前面階段所犯錯誤的可能性。

快速原型模型的優點:
使用戶能夠感受到實際的系統,使開發者能夠快速地構造出系統的框架。

快速原型模型缺點:
產品的先天性不足,因為開發者常常需要做實現上的折中,可能采用不合適的操作系統或程序設計語言,以使原型能夠盡快工作。

增量模型

增量模型也稱為漸增模型。使用增量模型開發軟件時,把軟件產品作為一系列的增量構件來設計、編碼、集成和測試。每個構件由多個相互作用的模塊構成,并且能夠完成特定的功能。使用增量模型時,第一個增量構件往往實現軟件的基本需求,提供最核心的功能。

增量模型的優點:
1、人員分配靈活,剛開始不用投入大量人力資源,當核心產品很受歡迎時,可增加人力實現下一個增量。
2、能在較短時間內向用戶提交可完成部分工作的產品。
3、逐步增加產品功能可以使用戶有較充裕的時間學習和適應新產品,從而減少一個全新的軟件可能給客戶組織帶來的沖擊。

增量模型的缺點:
1、 至始至終開發者和客戶糾纏在一起,直到完全版本出來。
2、適合于軟件需求不明確、設計方案有一定風險的軟件項目。

使用增量模型的困難:
1、在把每個新的增量構件集成到現有軟件體系結構中時,必須不破壞原來已經開發出的產品。
2、必須把軟件的體系結構設計得便于按這種方式進行擴充,向現有產品中加入新構件的過程必須簡單、方便,也就是說,軟件體系結構必須是開放的。

該模型具有一定的市場。

風險更大的增量模型:

螺旋模型

螺旋模型的基本思想是,使用原型及其他方法來盡量降低風險。理解這種模型的一個簡便方法,是把它看作在每個階段之前都增加了風險分析過程的快速原型模型。


螺旋模型的優點:
對于大型系統及軟件的開發,這種模型是一個很好的方法。開發者和客戶能夠較好地對待和理解每一個演化級別上的風險。

螺旋模型的缺點:
1、需要相當的風險分析評估的專門技術,且成功依賴于這種技術。
2、很明顯一個大的沒有被發現的風險問題,將會導致問題的發生,可能導致演化的方法失去控制。
3、這種模型相對比較新,應用不廣泛,其功效需要進一步的驗證。

該模型適合于大型軟件的開發

噴泉模型

“噴泉”這個詞體現了面向對象軟件開發過程迭代和無縫的特性。迭代是軟件開發過程中普遍存在的一種內在屬性。用面向對象方法學開發軟件時,工作重點應該放在生命周期中的分析階段。

圖中代表不同階段的圓圈相互重疊,這明確表示兩個活動之間存在交迭; 圖中在一個階段內的向下箭頭代表該階段內的迭代(或求精)。 圖中較小的圓圈代表維護,圓圈較小象征著采用了面向對象范型之后維護時間縮短了。

噴泉模型的優點:
噴泉模型不像瀑布模型那樣,需要分析活動結束后才開始設計活動,設計活動結束后才開始編碼活動。該模型的各個階段沒有明顯的界限,開發人員可以同步進行開發。其優點是可以提高軟件項目開發效率,節省開發時間,適應于面向對象的軟件開發過程。

噴泉模型的缺點:
由于噴泉模型在各個開發階段是重疊的,因此在開發過程中需要大量的開發人員,因此不利于項目的管理。此外這種模型要求嚴格管理文檔,使得審核的難度加大,尤其是面對可能隨時加入各種信息、需求與資料的情況。

總結

以上是生活随笔為你收集整理的【软件工程】软件生命周期模型 --- 瀑布模型、快速原型模型、增量模型、螺旋模型及喷泉模型的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。