迭代模型和增量模型都屬於並行開發的軟體生命週期模型,但是這兩個模型大家往往容易混淆或者不好理解。下面對兩個模型的區別和相同之處做一下介紹:
迭代是不能並行的,迭代的並行是指迭代任務,比如從3.1-3.31號是一個迭代計劃,該迭代計劃需求人員可以分析功能點5-功能點10,設計人員可以做功能點3-功能點7的設計,開發人員可以做功能點2-功能點4的開發,測試人員可以做上個迭代週期釋出的程式碼。迭代的並行是指工作流的並行。
增量模型一般是指具有底層框架和平臺的專案,在該穩定的框架和平臺上,來開發和增加具體的業務功能。每個增量之間相對獨立,各個增量可以並行開發,比如:3.1-31號實現增量1(包含5的功能點),3.20-4.15開發增量2(包含另外的4個功能點)。增量內部是瀑布模型。
兩種型別的區別在於迭代是基於IBM的RUP的以架構為核心,用例為驅動,角色職責劃分不同,在同一時刻專案內部需求、設計、編碼、測試的活動都在發生。迭代適合需求不明確、架構風險大的專案,增量適合需求比較明確,架構比較穩定,而且增量功能的實現基本不影響架構。
還有一個不同就是迭代計劃是基於角色的,增量計劃是基於任務的。
兩種型別的相同之處,每個迭代和增量結束後都有產品釋出。
迭代模型和增量模型都屬於並行開發的軟體生命週期模型,但是這兩個模型大家往往容易混淆或者不好理解。下面對兩個模型的區別和相同之處做一下介紹:
迭代是不能並行的,迭代的並行是指迭代任務,比如從3.1-3.31號是一個迭代計劃,該迭代計劃需求人員可以分析功能點5-功能點10,設計人員可以做功能點3-功能點7的設計,開發人員可以做功能點2-功能點4的開發,測試人員可以做上個迭代週期釋出的程式碼。迭代的並行是指工作流的並行。
增量模型一般是指具有底層框架和平臺的專案,在該穩定的框架和平臺上,來開發和增加具體的業務功能。每個增量之間相對獨立,各個增量可以並行開發,比如:3.1-31號實現增量1(包含5的功能點),3.20-4.15開發增量2(包含另外的4個功能點)。增量內部是瀑布模型。
兩種型別的區別在於迭代是基於IBM的RUP的以架構為核心,用例為驅動,角色職責劃分不同,在同一時刻專案內部需求、設計、編碼、測試的活動都在發生。迭代適合需求不明確、架構風險大的專案,增量適合需求比較明確,架構比較穩定,而且增量功能的實現基本不影響架構。
還有一個不同就是迭代計劃是基於角色的,增量計劃是基於任務的。
兩種型別的相同之處,每個迭代和增量結束後都有產品釋出。