軟件開發(fā)模式對比(瀑布、迭代、螺旋、敏捷).doc_第1頁
軟件開發(fā)模式對比(瀑布、迭代、螺旋、敏捷).doc_第2頁
軟件開發(fā)模式對比(瀑布、迭代、螺旋、敏捷).doc_第3頁
軟件開發(fā)模式對比(瀑布、迭代、螺旋、敏捷).doc_第4頁
全文預覽已結束

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、瀑布模型是由W.W.Royce在1970年最初提出的軟件開發(fā)模型,瀑布式開發(fā)是一種老舊的計算機軟件開發(fā)方法。瀑布模型式是最典型的預見性的方法,嚴格遵循預先計劃的需求分析、設計、編碼、集成、測試、維護的步驟順序進行。步驟成果作為衡量進度的方法,例如需求規(guī)格,設計文檔,測試計劃和代碼審閱等等。瀑布式的主要的問題是它的嚴格分級導致的自由度降低,項目早期即作出承諾導致對后期需求的變化難以調(diào)整,代價高昂。瀑布式方法在需求不明并且在項目進行過程中可能變化的情況下基本是不可行的。2、迭代式開發(fā)也被稱作迭代增量式開發(fā)或迭代進化式開發(fā),是一種與傳統(tǒng)的瀑布式開發(fā)相反的軟件開發(fā)過程,它彌補了傳統(tǒng)開發(fā)方式中的一些弱點,具有更高的成功率和生產(chǎn)率。什么是迭代式開發(fā)?每次只設計和實現(xiàn)這個產(chǎn)品的一部分,逐步逐步完成的方法叫迭代開發(fā),每次設計和實現(xiàn)一個階段叫做一個迭代.在迭代式開發(fā)方法中,整個開發(fā)工作被組織為一系列的短小的、固定長度(如3周)的小項目,被稱為一系列的迭代。每一次迭代都包括了需求分析、設計、實現(xiàn)與測試。采用這種方法,開發(fā)工作可以在需求被完整地確定之前啟動,并在一次迭代中完成系統(tǒng)的一部分功能或業(yè)務邏輯的開發(fā)工作。再通過客戶的反饋來細化需求,并開始新一輪的迭代。迭代式開發(fā)的優(yōu)點:1、降低風險2、得到早期用戶反饋3、持續(xù)的測試和集成4、使用變更5、提高復用性螺旋開發(fā),1988年,巴利玻姆(Barry Boehm)正式發(fā)表了軟件系統(tǒng)開發(fā)的“螺旋模型”,它將瀑布模型和快速原型模型結合起來,強調(diào)了其他模型所忽視的風險分析,特別適合于大型復雜的系統(tǒng)。“螺旋模型”剛開始規(guī)模很小,當項目被定義得更好、更穩(wěn)定時,逐漸展開?!奥菪P汀钡暮诵木驮谟谀恍枰趧傞_始的時候就把所有事情都定義的清清楚楚。您輕松上陣,定義最重要的功能,實現(xiàn)它,然后聽取客戶的意見,之后再進入到下一個階段。如此不斷輪回重復,直到得到您滿意的最終產(chǎn)品。 (1)制定計劃:確定軟件目標,選定實施方案,弄清項目開發(fā)的限制條件;(2)風險分析:分析評估所選方案,考慮如何識別和消除風險;(3)實施工程:實施軟件開發(fā)和驗證;(4)客戶評估:評價開發(fā)工作,提出修正建議,制定下一步計劃。螺旋模型很大程度上是一種風險驅(qū)動的方法體系,因為在每個階段之前及經(jīng)常發(fā)生的循環(huán)之前,都必須首先進行風險評估。敏捷軟件開發(fā)又稱敏捷開發(fā),是一種從1990年代開始逐漸引起廣泛關注的一些新型軟件開發(fā)方法,是一種應對快速變化的需求的一種軟件開發(fā)能力。它們的具體名稱、理念、過程、術語都不盡相同,相對于“非敏捷”,更強調(diào)程序員團隊與業(yè)務專家之間的緊密協(xié)作、面對面的溝通(認為比書面的文檔更有效)、頻繁交付新的軟件版本、緊湊而自我組織型的團隊、能夠很好地適應需求變化的代碼編寫和團隊組織方法,也更注重軟件開發(fā)中人的作用。 人和交互重于過程和工具。 可以工作的軟件重于求全而完備的文檔。 客戶協(xié)作重于合同談判。 隨時應對變化重于循規(guī)蹈矩。其中位于右邊的內(nèi)容雖然也有其價值,但是左邊的內(nèi)容最為重要。人員彼此信任 人少但是精干 可以面對面的溝通項目的敏捷開發(fā):敏捷開發(fā)小組主要的工作方式可以歸納為:作為一個整體工作; 按短迭代周期工作; 每次迭代交付一些成果;關注業(yè)務優(yōu)先級; 檢查與調(diào)整。最重要的因素恐怕是項目的規(guī)模。規(guī)模增長,面對面的溝通就愈加困難,因此敏捷方法更適用于較小的隊伍,40、30、20、10人或者更少。大規(guī)模的敏捷軟件開發(fā)尚處于積極研究的領域。四者對比區(qū)別:傳統(tǒng)的瀑布式開發(fā),也就是從需求到設計,從設計到編碼,從編碼到測試,從測試到提交大概這樣的流程,要求每一個開發(fā)階段都要做到最好。特別是前期階段,設計的越完美,提交后的成本損失就越少。迭代式開發(fā),不要求每一個階段的任務做的都是最完美的,而是明明知道還有很多不足的地方,卻偏偏不去完善它,而是把主要功能先搭建起來為目的,以最短的時間,最少的損失先完成一個“不完美的成果物”直至提交。然后再通過客戶或用戶的反饋信息,在這個“不完美的成果物”上逐步進行完善。螺旋開發(fā),很大程度上是一種風險驅(qū)動的方法體系,因為在每個階段之前及經(jīng)常發(fā)生的循環(huán)之前,都必須首先進行風險評估。敏捷開發(fā),相比迭代式開發(fā)兩者都強調(diào)在較短的開發(fā)周期提交軟件,但是,敏捷開發(fā)的周期可能更短,并且更加強調(diào)隊伍中的高度協(xié)作。敏捷方法有時候被誤認為是無計劃性和紀律性的方法,實際上更確切的說法是敏捷方法強調(diào)適應性而非預見性。適應性的方法集中在快速適應現(xiàn)實的變化。當項目的需求起了變化,團隊應該迅速適應。這個團隊可能很難確切描述未來將會如何變化.企業(yè)級項目實戰(zhàn)(帶源碼)地址:/blog/1825168收集五年的開發(fā)資料下載地址:/share/link?shareid=372668&uk=4076915866#dir/path=%2F%E5%AD%A6%E4%B9%A0%E6%96%87%E4%BB%B6參考文章:1.瀑布模型百度百科參考/view/551037.htm2.迭代模型參考/view/1380740.htm3.敏捷開發(fā)參考http

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論