複製鏈接
請複製以下鏈接發送給好友

增量模型

鎖定
增量模型是把待開發的軟件系統模塊化,將每個模塊作為一個增量組件,從而分批次地分析、設計、編碼和測試這些增量組件。運用增量模型的軟件開發過程是遞增式的過程。相對於瀑布模型而言,採用增量模型進行開發,開發人員不需要一次性地把整個軟件產品提交給用户,而是可以分批次進行提交。
中文名
增量模型
外文名
Incremental Model
別    名
漸增模型
特    點
將待開發的軟件系統模塊化

增量模型基本介紹

增量模型又稱為漸增模型,也稱為有計劃的產品改進模型,它從一組給定的需求開始,通過構造一系列可執行中間版本來實施開發活動。第一個版本納入一部分需求,下一個版本納入更多的需求,依此類推,直到系統完成。每個中間版本都要執行必需的過程、活動和任務。
圖1 圖1
增量模型是瀑布模型和原型進化模型的綜合,它對軟件過程的考慮是:在整體上按照瀑布模型的流程實施項目開發,以方便對項目的管理;但在軟件的實際創建中,則將軟件系統按功能分解為許多增量構件,並以構件為單位逐個地創建與交付,直到全部增量構件創建完畢,並都被集成到系統之中交付用户使用。
如同原型進化模型一樣,增量模型逐步地向用户交付軟件產品,但不同於原型進化模型的是,增量模型在開發過程中所交付的不是完整的新版軟件,而只是新增加的構件。 圖1是增量模型的工作流程,它被分成以下三個階段:
1、在系統開發的前期階段,為了確保所建系統具有優良的結構,仍需要針對整個系統進行需求分析和概要設計,需要確定系統的基於增量構件的需求框架,並以需求框架中構件的組成及關係為依據,完成對軟件系統的體系結構設計。
2、在完成軟件體系結構設計之後,可以進行增量構件的開發。這個時候,需要對構件進行需求細化,然後進行設計、編碼測試和有效性驗證。
3、在完成了對某個增量構件的開發之後,需要將該構件集成到系統中去,並對已經發生了改變的系統重新進行有效性驗證,然後再繼續下一個增量構件的開發。 [1] 

增量模型增量模型的特點

增量模型的最大特點就是將待開發的軟件系統模塊化和組件化。基於這個特點,增量模型具有以下優點。
1、將待開發的軟件系統模塊化,可以分批次地提交軟件產品,使用户可以及時瞭解軟件項目的進展。
2、以組件為單位進行開發降低了軟件開發的風險。一個開發週期內的錯誤不會影響到整個軟件系統。
3、開發順序靈活。開發人員可以對組件的實現順序進行優先級排序,先完成需求穩定的核心組件。當組件的優先級發生變化時,還能及時地對實現順序進行調整。
增量模型的缺點是要求待開發的軟件系統可以被模塊化。如果待開發的軟件系統很難被模塊化,那麼將會給增量開發帶來很多麻煩。
增量模型適用於具有以下特徵的軟件開發項目:
1、軟件產品可以分批次地進行交付。
2、待開發的軟件系統能夠被模塊化。
3、軟件開發人員對應用領域不熟悉,難以一次性地進行系統開發。
4、項目管理人員把握全局的水平較高。 [2] 

增量模型增量模型的作用

增量模型帶來了以下幾方面的作用:
1、開發初期的需求定義只是用來確定軟件的基本結構,這使得開發初期,用户只需要對軟件需求進行大概的描述,而對於需求的細節性描述,則可以延遲到增量構件開發時進行,以增量構件為單位逐個地進行需求補充。這種方式有利於用户需求的逐漸明朗,能夠有效適應用户需求的變更。
2、軟件系統可以按照增量構件的功能安排開發的優先順序,並逐個實現和交付使用。這不僅有利於用户儘早地用上系統,能夠更好地適應新的軟件環境,而且用户在以增量方式使用系統的過程中,還能夠獲得對軟件系統後續構件的需求經驗。這樣能使軟件需求定義越往後越順利。
3、軟件系統是逐漸擴展的,因此,開發者可以通過對諸多構件的開發,逐步積累開發經驗。實際上,增量式開發還有利於技術複用,前面構件中設計的算法、採用的技術策略、編寫的源碼等,都可以應用到後面將要創建的增量構件中去。
4、增量式開發還有利於從總體上降低軟件項目的技術風險。個別的構件或許不能使用,但這一般不會影響到整個系統的正常工作。
5、實際上,在採用增量模型時,具有最高優先權的核心增量構件將會被最先交付,而隨着後續構件不斷被集成進系統,這個核心構件將會受到最多次數的測試。這意味着軟件系統最重要的心臟部分將具有最高的可靠性,這將使得整個軟件系統更具健壯性。
比較瀑布模型、原型進化模型,增量模型具有非常顯著的優越性。但是,增量模型對軟件設計有更高的技術要求,特別是對軟件體系結構,要求它具有很好的開放性與穩定性,能夠順利地實現構件的集成。在把每個新的構件集成到已建軟件系統的結構中的時候,一般要求這個新增的構件應該儘量少地改變原來已建的軟件結構。因此增量構件要求具有相當好的功能獨立性,其接口應該簡單,以方便集成時與系統的連接。
參考資料
  • 1.    曾強聰.軟件工程:高等教育出版社,2004
  • 2.    呂雲翔、王昕鵬 .軟件工程:人民郵電出版社,2009