




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
軟件開發十大模型
一、線性順序過程模型:
它有時也稱為傳統生存周期模型或瀑布模型。它提出了軟件開發的系統化的、順序的方法。其流程從系統開始,隨后是需求分析、設計、編碼、測試、支持。這種模型是最早也是應用最廣泛的軟件過程模型(雖然這種模型會引起“堵賽狀態”)。
缺點:
1、實際的項目大部分情況難以按照該模型給出的順序進行,而且這種模型的迭代是間接的,這很容易由微小的變化而造成大的混亂。
2、經常情況下客戶難以表達真正的需求,而這種模型卻要求如此,這種模型是不歡迎具有二義性問題存在的。
3、客戶要等到開發周期的晚期才能看到程序運行的測試版本,而在這時發現大的錯誤時,可能引起客戶的驚慌,而后果也可能是災難性的。
4、采用這種線性模型,會經常在過程的開始和結束時碰到等待其他成員完成其所依賴的任務才能進行下去,有可能花在等待的時間比開發的時間要長。我們稱之為“堵賽狀態”。
優點:
1、它提供了一個摸板,這個摸板使得分析、設計、編碼、測試和支持的方法可以在該摸板下有一個共同的指導。
2、雖然有不少缺陷但比在軟件開發中隨意的狀態要好得多。
二、原型實現過程模型:
從需求收集開始,開發者和客戶在一起定義軟件的總體目標,標識已知的需求并且規劃出需要進一步定義的區域。然后是“快速設計”,它集中于軟件中那些對客戶可見的部分的表示,這將導致原型的創建,并由客戶評估并進一步精化待開發軟件的需求。逐步調整原型使其滿足客戶的需求,這個過程是迭代的。其流程從聽取客戶意見開始、隨后是建造/修改原型、客戶測試運行原型、然后回頭往復循環直到客戶對原型滿意為止。由于這種模型可以讓客戶快速的感受到實際的系統(雖然這個系統不帶有任何質量的保證),所以客戶和開發者都比較喜歡這種過程模型(對于那些僅僅用來演示軟件功能的公司而言或從來不考慮軟件質量和不害怕長期維護的公司而言)。
缺點:
1、沒有考慮軟件的整體質量和長期的可維護性。
2、大部分情況是不合適的操作算法被采用目的為了演示功能,不合適的開發工具被采用僅僅為了它的方便,還有不合適的操作系統被選擇等等。
3、由于達不到質量要求產品可能被拋棄,而采用新的模型重新設計。
優點:
1、如果客戶和開發者達成一致協議:原型被建造僅為了定義需求,之后就被拋棄或者部分拋棄,那么這種模型很合適了。
2、迷惑客戶搶占市場,這是一個首選的模型。
三、快速應用(RAD)過程模型:
這是一個增量型的軟件開發過程模型,強調極短的開發周期,它是線性模型的一個“高速”變種,通過使用構件的建造方法贏得了快速開發。如果需求理解的好而且約束了項目的范圍,利用這種模型可以很快的創建出功能完善的“信息系統”。其流程從業務建模開始,隨后是數據建模、過程建模、應用生成、測試及反復。RAD過程強調的是復用,復用已有的或開發可復用的構件。實際上RAD采用第四代技術。
缺點:
1、只能用于信息系統。
2、對于較大的項目需要足夠的人力資源去建造足夠的RAD組。
3、開發者和客戶必須在很短的時間完成一系列的需求分析,任何一方配合不當都會導致RAD項目失敗。
4、這種模型對模塊化要求比較高,如果有哪一功能不能被模塊化,那么建造RAD所需要的構件就會有問題。
5、技術風險很高的情況下不適合這種模型。
優點:
1、開發速度快,質量有保證。
2、對信息系統特別有效。
四、增量過程模型:
這種模型融合了線性順序模型的基本成份和原型實現模型的迭代特征。增量模型采用隨著日程時間的進展而交錯的線性序列。每一個線性序列產生軟件的一個可發布的“增量”。當使用增量模型時,第一個增量往往是核心的產品,也就是說第一個增量實現了基本的需求,但很多補充的特征還沒有發布。客戶對每一個增量的使用和評估,都做為下一個增量發布的新特征和功能。這個過程在每一個增量發布后不斷從復,直到產生了最終的完善產品。增量模型強調每一個增量均發布一個可操作的產品。
缺點:
1、至始至終開發者和客戶糾纏在一起,直到完全版本出來。
優點:
1、人員分配靈活,剛開始不用投入大量人力資源,當核心產品很受歡迎時,可增加人力實現下一個增量。
2、當配備的人員不能在設定的期限內完成產品時,它提供了一種先推出核心產品的途徑,這樣就可以先發布部分功能給客戶,對客戶起到鎮靜劑的作用。
3、具有一定的市場。
五、螺旋過程模型:
這是一個演化軟件過程模型,它將原型實現的迭代特征和線性順序模型中控制的和系統化的方面結合起來。使得軟件的增量版本的快速開發成為可能。在螺旋模型中,軟件開發是一系列的增量發布。在每一個迭代中,被開發系統的更加完善的版本逐步產生。螺旋模型被劃分為若干框架活動,也稱為任務區域。典型地,有3到6個任務區域:
1、客戶交流:建立開發者和客戶之間有效通信所需要的任務。
2、計劃:定義資源、進度、及其它相關項目信息所需要的任務。
3、風險分析:評估技術的及管理的風險所需要的任務。
4、工程:建立應用的一個或多個表示說需要的任務。
5、構造及發布:構造、測試、安裝和提供用戶支持所需要的任務。
6、客戶評估:基于對在工程階段產生的或在安裝階段實現的軟件表示的評估,獲得客戶反饋所需要的任務。
這是一個相對較新的模型,它的功效還需要經歷若干年的使用方能確定下來。
缺點:
1、需要相當的風險分析評估的專門技術,且成功依賴于這種技術。
2、很明顯一個大的沒有被發現的風險問題,將會導致問題的發生,可能導致演化的方法失去控制。
3、這種模型相對比較新,應用不廣泛,其功效需要進一步的驗證。
優點:
1、對于大型系統及軟件的開發,這種模型是一個很好的方法。開發者和客戶能夠較好地對待和理解每一個演化級別上的風險。
六、WINWIN螺旋過程模型:
螺旋模型提出了強調客戶交流的一個框架活動。該活動的目標是從客戶處誘導項目需求。在理想情況下,開發者簡單地詢問客戶需要什么,而客戶提供足夠的細節進行下去。不幸的是這種情形很少發生。在現實中,客戶和開發者進入一個談判過程,客戶被要求在成本和應市之間的約束下平衡功能、性能、和其它產品或系統特征。最好的談判追求“雙贏”結果,也就是說通過談判客戶獲得大部份系統的功能,而開發者則獲得現實的和可達到的預算和時限。對客戶的交流定義了下面的活動:
1、系統或子系統的關鍵“風險承擔者”的標識。
2、風險承擔者的“贏條件”的確定。
3、風險承擔者的贏條件談判,以將它們協調為一組滿足各方考慮的雙贏條件。
缺點:
1、需要額外的談判技巧。
優點:
1、客戶和開發者達到一種平衡。
七、并發任務過程模型:
這種模型關注于多個任務的并發執行,表示為一系列的主要技術活動、任務及它們的相關狀態。并發過程模型是由客戶要求、管理決策、評審結果驅動的。該模型不是將軟件工程活動限定為一個順序的事件序列,而是定義了一個活動網絡。網絡上的每一個活動均可于其它活動同時發生。這種模型可以提供一個項目的當前狀態的準確視圖。
缺點:暫時無
優點:
1、可用于所有類型的軟件開發,而對于客戶/服務器結構更加有效。
2、可以隨時查閱到開發的狀態。
八、基于構件的開發過程模型:
面向對象的技術為軟件工程的基于構件的過程模型提供了技術框架。面向對象模型強調了類的創建、類的封裝了的數據、操縱該數據的算法。一般來講經過合適的設計和實現,面向對象的類可以在不同的應用及基于計算機的系統的體系結構中復用。基于構件的開發模型融合了螺旋模型的許多特征,它本質上是演化形的,要求軟件創建的迭代方法。然而基于構件的開發模型是利用預先包裝好的軟件構件(有時成為類)來構造應用。
開發活動從候選類的標識開始,這一步是通過檢查將被應用系統操縱的數據及用于實現該操縱的算法來完成的。相關的數據和算法被封裝成一個類。
缺點:
1、過分依賴于構件,構件庫的質量影響著產品質量。
優點:
1、構件可復用。提高了開發效率。
2、采用了面向對象的技術。
九、形式化方法模型:
形式化方法模型包含了一組活動,他們導致了計算機軟件的數學規約。形式化方法使得軟件工程師們能夠通過應用一個嚴格的數學符號體系來規約、開發、和驗證基于計算機的系統。這種方法的一個變種,稱為凈室軟件工程,已經被一些組織所采用。在開發中使用形式化方法時,它們提供了一種機制,能夠消除使用其它軟件過程模型難以克服的很多問題。二義性、不完整性、不一致性能被更容易地發現和糾正,而不是通過專門的評審,是通過對應用的數學分析。形式化方法提供了可以產生無缺陷軟件的承諾。
缺點:
1、開發費用昂貴(對開發人員需要多方面的培訓),而且需要的時間較長。
2、不能將這種模型作為對客戶通信的機制,因為客戶對這些數學語言一無所知。
3、目前還不流行。
優點:
1、形式化規約可直接作為程序驗證的基礎,可以盡早的發現和糾正錯誤(包括那些其它情況下不能發現的錯誤)。
2、開發出來的軟件具有很高的安全性和健壯性,特別適合安全部門或者軟件錯誤會造成經濟損失的開發者。
3、具有開發無缺陷軟件的承諾。
十、第四代技術(4GT)過程模型:
一系列的軟件工具的使用,是第四代技術的特點。這些工具有一個共同的特點:能夠使軟件工程師們在較高級別上規約軟件的某些特征,然后根據開發者的規約自動生成源代碼。我們知道,軟件在越高的級別上被規約,就越能被快速的建造出程序。軟件工程的
4GT模型集中于規約軟件的能力:使用特殊的語言形式或一種采用客戶可以理解的術語描述待解決問題的圖形符號體系。和其它模型一樣,4GT也是從需求收集這一步開始的,要將一個4GT實現變成最終產品,開發者還必須進行徹底的測試、開發有意義的文檔,并且同樣要完成其它模型中同樣要求的所有集成活
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 房子轉讓收款合同范本
- 簡單土地購買合同范本
- 手衣服購銷合同范本
- 隱形投資股東合同范本
- 策略+案例掌握大單元學習任務設計的要領
- 海運內貿運輸合同范本
- 福利粽子采購合同范本
- 工業廠房中介合同范本
- 成品 紙采購合同范本
- 中醫藥文化養生針灸刮痧
- 2025年公務員考試《公共基礎知識》全真模擬試題1000題及答案
- 啄木鳥簡介課件
- 第5單元《溫暖的家》課件 花城版音樂一年級下冊
- 晉城低空經濟產業園建設項目
- 電子政務平臺的維護與技術支持策略
- 蒙臺梭利課程模式課堂
- 2025年度文化產業項目結算扶持政策合同
- 2025年北京電子科技職業學院高職單招職業技能測試近5年常考版參考題庫含答案解析
- 教育心理學在古詩文教學中的應用研究
- 2024年全國職業院校技能大賽中職組(美術造型賽項)考試題庫(含答案)
- 2024年鄭州商貿旅游職業學院高職單招職業技能測驗歷年參考題庫(頻考版)含答案解析
評論
0/150
提交評論