本詞條缺少概述圖,補充相關內容使詞條更完整,還能快速升級,趕緊來編輯吧!
演化模型是一種全局的軟件(或產品)生存周期模型。屬于迭代開發方法。
- 中文名
- 演化模型
- 外文名
- Evolutionary Model
- 概 念
- 全局的軟件(或產品)生存周期模型
- 類 別
- 迭代開發方法
演化模型簡介
編輯演化模型(Evolutionary Model)
該模型可以表示為:第一次迭代(需求->設計->實現->測試->集成)->反饋->第二次迭代(需求->設計->實現->測試->集成)->反饋->……
即根據用戶的基本需求,通過快速分析構造出該軟件的一個初始可運行版本,這個初始的軟件通常稱之為原型,然后根據用戶在使用原型的過程中提出的意見和建議對原型進行改進,獲得原型的新版本。重復這一過程,最終可得到令用戶滿意的軟件產品。采用演化模型的開發過程,實際上就是從初始的原型逐步演化成最終軟件產品的過程。演化模型特別適用于對軟件需求缺乏準確認識的情況。
演化模型作用
編輯演化模型主要針對事先不能完整定義需求的軟件開發。用戶可以給出待開發系統的核心需求,并且當看到核心需求實現后,能夠有效地提出反饋,以支持系統的最終設計和實現。軟件開發人員根據用戶的需求,首先開發核心系統。當該核心系統投入運行后,用戶試用之,完成他們的工作,并提出精化系統、增強系統能力的需求。軟件開發人員根據用戶的反饋,實施開發的迭代過程。第一迭代過程均由需求、設計、編碼、測試、集成等階段組成,為整個系統增加一個可定義的、可管理的子集。 在開發模式上采取分批循環開發的辦法,每循環開發一部分的功能,它們成為這個產品的原型的新增功能。于是,設計就不斷地演化出新的系統。 實際上,這個模型可看作是重復執行的多個“瀑布模型”。
“演化模型”要求開發人員有能力把項目的產品需求分解為不同組,以便分批循環開發。這種分組并不是絕對隨意性的,而是要根據功能的重要性及對總體設計的基礎結構的影響而作出判斷。有經驗指出,每個開發循環以六周到八周為適當的長度。
演化模型優缺點
編輯演化模型演化模型的優點
1)任何功能一經開發就能進入測試以便驗證是否符合產品需求。
2)幫助導引出高質量的產品要求。如果沒有可能在一開始就弄清楚所有的產品需求,它們可以分批取得。而對于已提出的產品需求,則可根據對現階段原型的試用而作出修改。
3)風險管理可以在早期就獲得項目進程數據,可據此對后續的開發循環作出比較切實的估算。提供機會去采取早期預防措施,增加項目成功的機率。
5)開發中的經驗教訓能反饋應用于本產品的下一個循環過程,大大提高質量與效率。
6)如果風險管理發現資金或時間已超出可承受的程度,則可以決定調整后續的開發,或在一個適當的時刻結束開發,但仍然有一個具有部分功能的,可工作的產品。
7)心理上,開發人員早日見到產品的雛型,是一種鼓舞。
8)使用戶可以在新的一批功能開發測試后,立即參加驗證,以便提供非常有價值的反饋。
9)可使銷售工作有可能提前進行,因為可以在產品開發的中后期取得包含了主要功能的產品原型去向客戶作展示和試用。
演化模型演化模型的缺點
2)如果缺乏嚴格的過程管理的話,這個生命周期模型很可能退化為一種原始的無計劃的“試-錯-改”模式。
3)心理上,可能產生一種影響盡最大努力的想法,認為雖然不能完成全部功能,但還是造出了一個有部分功能的產品。
4)如果不加控制地讓用戶接觸開發中尚未測試穩定的功能,可能對開發人員及用戶都產生負面的影響。