簡述原型模型的特點 軟體開發模型有哪些?

2021-10-14 05:12:04 字數 3145 閱讀 2693

軟體開發模型大體上可分為兩種型別,第一種是以軟體需求完全確定為前提的瀑布模型。 第二種是在軟體開發初始階段只能提供基本需求時採用的漸進式開發模型,如原型模型、螺 旋模型等。實踐中經常將幾種模型組合使用以便充分利用各種模型的優點。

瀑布模型也稱軟體生存週期模型,由 w.royce 於 1970 年首先提出。

根據軟體生存周 期各個階段的任務,瀑布模型從系統需求分析開始,逐步進行階段性變換,直至通過驗收測 試並得到使用者確認的軟體產品為止。瀑布模型上一階段的變換結果是下一階段變換的輸入, 相鄰的兩個階段具有因果關係,緊密相聯。

乙個階段工作的失誤將蔓延到以後的各個階段。 為了保證軟體開發的正確性,每一階段任務完成後,都必須對它的階段性產品進行評審,確 認之後再轉入下一階段的工作。評審過程發現錯誤和疏漏後,應該反饋到前面的有關階段修 正錯誤、彌補疏漏,然後再重複前面的工作,直至某一階段通過評審後再進入下一階段,這 種形式的瀑布模型是帶有反饋的瀑布模型,

模型中各個階段的任務和軟體 開發活動如前所述。 瀑布模型在軟體工程中占有重要的地位,它提供了軟體開發的基本框架,這比依靠「個 人技藝」開發軟體好得多。它有利於大型軟體開發過程中人員的組織和管理,有利於軟體開 發方法和工具的研究與使用,從而提高了大型軟體專案開發的質量和效率。

瀑布模型的主要特點是:

階段間的順序性和依賴性,開發過程是乙個嚴格的下導式過程, 即前一階段的輸出是後一階段的輸入,每一階段工作的完成需要確認,而確認過程是嚴格的 追溯式過程,

後一階段出現了問題要通過前一階段的重新確認來解決。因此,問題發現得越 晚解決問題的代價就越高。

瀑布模型的主要缺點是:

(1)在軟體開發的初始階段指明軟體系統的全部需求是困難的,有時甚至是不現實的。 從認識論上講,人的認識是乙個多次反覆的過程,實踐——認識——再實踐——再認識,多 次認識,多次飛躍,最後才能獲得對客觀世界較為正確的認識。軟體開發是人的乙個智力認 識活動,也不可能一次完成,需要多次反覆地進行,但瀑布模型中劃分的幾個階段沒有反映 出這種認識過程的反覆性,缺乏靈活性。

(2)軟體開發是個知識密集型的開發活動,需要人們合作交流才能完成,因此,人員 間的通訊和活動間的並行和序列都是必需的,但在瀑布模型中沒有這方面的體現。隨著軟體 開發專案規模的日益龐大,由此引發的問題顯得更為嚴重。

2. 快速原型法模型 快速原型法是針對瀑布模型(即傳統的生存週期法)提出來的一種方法。

它的基本思想是 迴避(或暫時迴避)傳統的生存週期法中的一些難點,順從使用者需求出發,快速建立乙個原型。 使使用者通過這個原型初步表達出自己的要求,在徵求使用者對原型意見的過程中,進一步修改、 完善、確認軟體系統的需求並達到一致的理解,這就大大避免了在瀑布模型冗長的開發過程 中,看不見最終軟體產品雛形的現象。通過反覆修改、完善,逐步靠近使用者的全部需求,最 終形成乙個完全滿足使用者要求的新體系。

因此,快速原型法的最大特點是快捷,且避免了許 多由於不同理解而造成的錯誤。 原型開發模型如圖 6.7 所示。

快速開發原型的途徑有三種:

(1)利用計算機模擬軟體系統的人機介面和人機互動方式。

(2)開發乙個工作原型,實現軟體系統的部分功能,而這部分功能是重要的,也 可能是容易產生誤解的。

(3)利用類似軟體向客戶展示軟體需求中的部分或全部功能。 為了快速開發原型,要盡量採用軟體重用技術,在演算法時/空開銷方面也可以讓步,以 便爭取時間,盡快向使用者提供原型。原型應充分展示軟體的可見部分,如資料的輸入方式、 人機介面、資料的輸出格式等。

快速原型法模型在各個階段使用者反饋活動的基礎上,突出了快速的改進過程,它改變 了瀑布模型的線性結構,採用逐步求精方法使原型逐步完善,以滿足使用者的要求,是一種在 新的高層次上不斷反覆推進的過程。

由於原型是使用者和軟體開發人員共同設計和評審的,因此利用原型能統一使用者和軟體開 發人員對軟體專案需求的理解,有助於需求的定義和確認。利用原型定義和確認軟體需求之 後,就可以對軟體系統進行設計、編碼、測試和維護。

原型系統的不足之處有以下兩點:

(1)為了使系統盡快執行起來,系統開發人員在初期往往考慮得不周全,有可能使原 型不能成為最終軟體產品的一部分,只是乙個示例而已。這樣,在實際開發軟體產品時,仍 有許多任務作要做。

(2)原型模型需要大量完備和實用的軟體工具的支援才能實現,即原型模型對工具和 環境的依賴性較高。 3.螺旋模型 螺旋模型是 b.boehm 於 1988 年提出的。它是瀑布模型與原型模型的結合,不僅體現 了兩個模型的優點,而且還增加了新的成分——風險分析。

它由四個部分組成:

(1)需求定義 當初次建立原型時,必須對使用者需求進行分析;當針對已有原型構造新的更為豐富和完 善的原型時,必須將使用者對已有原型的評價意見、改進建議以及對新原型的需求進行分析。

(2)風險分析 根據初始需求或改進意見,評審可選方案,給出消除或減少風險的途徑。

(3)工程實現 針對前面得到的使用者需求,進行軟體設計、編碼、除錯和測試。

(4)評審 檢查原型是否實現了使用者需求,邀請使用者實際操作該原型,要求使用者進行評價,提出改 進意見和進一步的需求。

螺旋模型是由以上步驟組成的迭代模型。軟體開發過程每迭代一次,螺旋線就增加一周, 軟體開發又前進乙個層次,系統又生成乙個新版本,而軟體開發的時間和成本又有了新的投 入。

在大多數場合,軟體開發過程沿螺旋線的路徑連續進行,希望最終得到乙個使用者滿意的 軟體版本。理論上,迭代過程可以無休止地進行下去,但在實踐中,迭代結果必須盡快收斂 到使用者允許的或可接受的目標範圍內。只有降低迭代次數,減少每次迭代的工作量,才能降 低軟體開發的時間和成本。

螺旋模型的每一週期都包括需求定義、風險分析、工程實現和評審四個階段。這是對典 型生存週期的發展。它不僅保留了生存週期模型中系統地、按階段逐步進行軟體開發和「邊 開發、邊評審」的風格,而且還引入了風險分析,並把製作原型作為風險分析的主要措施。

使用者始終關心、參與軟體開發並對階段性的軟體產品提出評審意見,這對保證軟體產品的質 量是十分有利的。

簡述原型模型的特點 簡述各軟體開發模型的構成及特點

一 瀑布模型 wate ll model 定義 瀑布模型即生存週期模型,其核心思想是按工序將問題化簡,將功能的 實現與設計分開,便於分工協作,即採用結構化的分析與設計方法將邏輯實現 與物理實現分開。結構 瀑布模型將軟體生命週期劃分為計畫 需求分析制定 軟體設計 程式 編寫 軟體測試和執行維護等六個基...

簡述瀑布模型 增量模型 快速原型模型

一 瀑布模型 瀑布模型是應用廣泛的一種軟體開發模型,易於理解和掌握。瀑布模型是將軟體生命週期的各項活動規定為按照固定順序相連的若干階段性工作,形如瀑布流水,最終得到軟體產品。因形如瀑布,故此得名。該模型比較適用於需求穩定並易於準確理解的軟體專案開發。瀑布模型的優點 易於理解 開發具有階段性 強調早期...

常見軟體開發模型簡述版

將軟體生命週期劃分為制訂計畫 需求分析 軟體設計 程式編寫 軟體測試和執行維護等六個基本活動,並且規定了他們自上而下 相互銜接的固定次序,如同瀑布流水,逐級下落 若某一階段發現上一階段產品不能滿足要求,則需返回重做.優點 有利於大型軟體開發過程中人員的組織 管理,從而提高了大型軟體專案開發的質量和效...