軟體開發模式

2021-09-01 17:32:16 字數 2765 閱讀 5481

[align=center][size=xx-large][b]軟體開發模式[/b][/size][/align]

[size=large]1、瀑布模型和原型模型的區別?[/size]

[b]瀑布模型:[/b]

瀑布模型將軟體生命週期劃分為制定計畫、需求分析、軟體設計、程式編寫、軟體測試和執行維護等六個基本活動,並且規定了它們自上而下、相互銜接的固定次序,如同瀑布一樣,乙個階級向另乙個階級落下。

在瀑布模型中,軟體開發的各項活動嚴格按照線性方式進行,當前活動接受上一項活動的工作結果,實施完成所需的工作內容。當前活動的工作結果需要進行驗證,如果驗證通過,則該結果作為下一項活動的輸入,繼續進行下一項活動,否則返回修改。

瀑布模型強調文件的作用,並要求每個階段都要仔細驗證。這種模型的線性過程很理想化,單已不再適合現代的軟體開發模式,幾乎被業界拋棄,其主要問題在於:

(1) 各個階段的劃分完全固定,階段之間產生大量的文件,極大地增加了工作量;

(2) 由於開發模型是線性的,使用者只有等到整個過程的末期才能見到開發成果,從而增加了開發的風險;

(3) 早期的錯誤可能要等到開發後期的測試階段才能發現,進而帶來嚴重的後果。

相反,它的優點,方便安排開發者具體要做的事情,方便對於不懂軟體的客戶陳述,也方便評估進度容易保證質量等。

[b]優點:[/b]有利於大型軟體開發過程中人員的組織、管理,有利於軟體開發方法和工具的研究,從而提高了大型軟體專案開發的質量和效率。

[b] 缺點: [/b] (1)開發過程一般不能逆轉,否則代價太大;

(2)實際的專案開發很難嚴格按該模型進行;

(3)客戶往往很難清楚地給出所有的需求,而該模型卻要求如此。

(4)軟體的實際情況必須到專案開發的後期客戶才能看到,這要求客戶有足夠的耐心。

[b] 使用範圍:[/b]

(1)使用者的需求非常清楚全面,且在開發過程中沒有或很少變化;

(2)開發人員對軟體的應用領域很熟悉;

(3)使用者的使用環境非常穩定;

(4)開發工作對使用者參與的要求很低。

[b]原型模型法:[/b]

原型法的模式與開發過程對系統進行分析、設計、程式設計和執行以及結構化的內容相類似,不同點就是不需要對系統進行長時間和非常細緻的分析、設計,只是對系統有個大致的了解,對它的主要功能進行初步分析、初步設計和程式設計以後就馬上執行,以後在與使用者進行交流中再進一步改進。

[b]優點:[/b] 1、方便開發者更改,

2、在設計和編碼過程中發生錯誤的機率比較小 ,

3、開發中的風險比較小,

4、見效比較快,方便與客戶進行洽談。

[b]缺點:[/b] 1、開發過程中要發反覆的修改,具體目標不是很明確。

2、工程完成沒有預期。

3、 不能確定工程的完成質量

[size=large]2、for each of the process models described in this chapter,what are the benefits and drawbacks of using the model? ( 在這章中所描述的每個程式模型,在使用它們的時間的過程中有哪些優缺點?)[/size]

[b]瀑布模型(wate***ll model)的優點:[/b]有利於大型軟體開發過程中人員的組織、管理,有利於軟體開發方法和工具的研究,從而提高了大型軟體專案開發的質量和效率。

[b]瀑布模型的缺點:[/b]

(1)開發過程一般不能逆轉,否則代價太大;

(2)實際的專案開發很難嚴格按該模型進行;

(3)客戶往往很難清楚地給出所有的需求,而該模型卻要求如此。

(4)軟體的實際情況必須到專案開發的後期客戶才能看到,這要求客戶有足夠的耐心。

[b]v模型的優點:[/b]

在軟體開發的生存期,開發活動和測試活動幾乎同時的開始,這兩個並行的動態的過程就會極大的較少bug和error出現的機率。縮短開發周期。

[b] v模型的缺點:[/b]

僅僅把測試過程作為在需求分析、系統設計及編碼之後的乙個階段,忽視了測試對需求分析,系統設計的驗證,一直到後期的驗收測試才被發現。

[b] 快速原型模型(prototyping model)的優點:[/b]

(1)可以得到比較良好的需求定義,容易適應需求的變化;

(2)有利於開發與培訓的同步;

(3)開發費用低、開發周期短且對使用者更友好。

[b] 快速原型模型的缺點:[/b]

(1)客戶與開發者對原型理解不同;

(2) 準確的原型設計比較困難;

(3) 不利於開發人員的創新。

[b] 變換模型(transformational model)的優點:[/b]解決了**結構經多次修改而變壞的問題,減少了許多中間步驟(如設計、編碼和測試 等)。

[b]變換模型的缺點:[/b]以形式化開發方法為基礎的變換模型需要嚴格的數學理論和一整套開發環境的支援

[b]螺旋模型(spiral model)的優點:[/b]

(1)設計上的靈活性,可以在專案的各個階段進行變更;

(2)以小的分段來構建大型系統,使成本計算變得簡單容易;

(3)客戶始終參與每個階段的開發,保證了專案不偏離正確方向以及專案的可控性;

(4) 隨著專案推進,客戶始終掌握專案的最新資訊 , 從而他或她能夠和管理層有效地互動。

[b]螺旋模型的缺點:[/b]

(1)採用螺旋模型需要具有相當豐富的風險評估經驗和專門知識,在風險較大的專案開發中,如果未能夠及時標識風險,勢必造成重大損失;

(2)過多的迭代次數會增加開發成本,延遲提交時間。

[size=large]3、project規劃圖——project應用[/size]

[img]

軟體開發模式

軟體的開發模式包括 大棒開發法 邊寫邊改法 瀑布法 快速原型法和螺旋模式法,它們的定義及特點如下 第一,大棒開發法。它是源於能量爆發創造宇宙,萬物都由能量和物質積聚而成的理論,但如果不是遵循某種正確的排列和組合,形成的將不是預先期望的事物 大棒模式與上述理論一樣 一大堆能量 這裡指開發軟體所需的人力...

軟體開發模式

軟體開發模式大概有11種,如下所示 邊做邊改模型 build and fix model 瀑布模型 wate ll model 快速原型模型 rapid prototype model 增量模型 incremental model 迭代模型 stagewise model 螺旋模型 spiral m...

軟體開發模式

瀑布模型式嚴格遵循預先計畫的需求分析 設計 編碼 整合 測試 維護的步驟順序進行。瀑布模型是以每個步驟所取得的成果作為衡量進度的方法 由於它的嚴格分級,所以在專案前期需求不明確或者需求頻繁更改時代價高昂,是不可行的。所以在開發的前期,需求設計越完美,則損失越少。迭代式開發值每次只設計和完成產品的一部...