SE02第2章軟件過程課件_第1頁
SE02第2章軟件過程課件_第2頁
SE02第2章軟件過程課件_第3頁
SE02第2章軟件過程課件_第4頁
SE02第2章軟件過程課件_第5頁
已閱讀5頁,還剩36頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第二章 軟件過程1主要知識點什么是軟件過程什么是軟件過程模型有哪些常見的軟件過程模型及其各自的特點2軟件過程、生命周期、過程模型軟件工程方法學(xué)包括方法、工具和過程軟件過程為了獲得高質(zhì)量的軟件所需要完成的一系列任務(wù)的框架,它規(guī)定了完成各項任務(wù)的工作步驟它定義了運用方法的順序應(yīng)該交付的文檔資料為保證軟件質(zhì)量和協(xié)調(diào)變化所需要采取的管理措施標志軟件開發(fā)各個階段任務(wù)完成的里程碑3軟件過程、生命周期、過程模型軟件生命周期:軟件從定義、開發(fā)、使用和維護,直到被廢棄的整個時期生命周期模型:規(guī)定了把生命周期劃分成哪些階段及各個階段的執(zhí)行順序。它能直觀表達軟件生命的全過程,明確規(guī)定了各時期要完成的主要活動、任務(wù)和開發(fā)策略。因此,軟件生命周期模型也常稱為:軟件過程模型(ProcessModel

)42.1軟件生命周期的基本任務(wù)軟件生命周期由三個時期組成:軟件定義(又稱為系統(tǒng)分析、需求分析)問題定義可行性研究需求分析軟件開發(fā)系統(tǒng)設(shè)計(概要設(shè)計、詳細設(shè)計)編碼和單元測試綜合測試軟件維護(運行維護)5軟件生命周期分析做什么???設(shè)計怎么做???實現(xiàn)完成系統(tǒng)確認質(zhì)量保證維護安裝后的進一步完善6生命周期各階段的基本任務(wù)階段關(guān)鍵問題結(jié)束標準問題定義要解決的問題是什么?問題性質(zhì)、工程規(guī)模和工程目標的報告書可行性研究有可行的解決辦法嗎?若干種可能的系統(tǒng)實現(xiàn)方案及其成本/效益分析需求分析目標系統(tǒng)必須做什么?目標系統(tǒng)的需求文檔,即規(guī)格說明(specification)總體設(shè)計/概要設(shè)計

怎樣實現(xiàn)目標系統(tǒng)?

可能的解法:系統(tǒng)流程圖、成本/效益分析;推薦的系統(tǒng)結(jié)構(gòu):層次圖或結(jié)構(gòu)圖

階段關(guān)鍵問題結(jié)束標準詳細設(shè)計/模塊設(shè)計怎樣具體地實現(xiàn)這個系統(tǒng)?編碼規(guī)格說明:HIPO圖或PDL編碼和單元測試正確的程序模塊原程序清單:單元測試方案和結(jié)果綜合測試符合要求的軟件綜合測試方案和結(jié)果;完整一致的軟件配置軟件維護持久地滿足需要的軟件完整準確的維護記錄82.2瀑布模型(waterfallmodel)1970年WinstonRoyce直到80年代早期,一直是唯一被廣泛采用的軟件開發(fā)模型需求分析驗證規(guī)格說明驗證設(shè)計驗證編碼測試綜合測試維護9傳統(tǒng)瀑布模型的特點特點(文檔驅(qū)動的模型)階段間具有順序性和依賴性推遲實現(xiàn)的觀點質(zhì)量保證的觀點每個階段都必須完成規(guī)定的文檔每個階段結(jié)束前對所完成的文檔進行評審10思考????

傳統(tǒng)瀑布模型存在什么問題?11傳統(tǒng)瀑布模型的問題傳統(tǒng)的瀑布模型過于理想化了,事實上,人在工作過程中不可能不犯錯誤單一流程,開發(fā)中的經(jīng)驗教訓(xùn)不能反饋用戶常常難以清楚地給出所有需求不能適應(yīng)需求的變化用戶必須有耐心開發(fā)者常常被不必要地耽擱風(fēng)險往往遲至后期的開發(fā)階段才顯露12實際的瀑布模型瀑布模型的優(yōu)點:強調(diào)采用規(guī)范的方法;嚴格規(guī)定各階段必交的文檔;強調(diào)各階段產(chǎn)品的測試缺點:文檔驅(qū)動的模型,最終交付的產(chǎn)品可能不是用戶真正需要的需求分析驗證規(guī)格說明驗證設(shè)計驗證編碼測試綜合測試維護變化的需求驗證132.3快速原型模型

(rapidprototypemodel)基本思想:在獲取一組基本的需求定義后,利用高級軟件工具的可開發(fā)環(huán)境,快速建立一個能反映用戶主要需求的原型系統(tǒng)(目標系統(tǒng)的最初版本),讓用戶在計算機上試用它并提出修改意見;補充和修改原型系統(tǒng),再次請用戶試用;反復(fù)進行這個過程,直到用戶滿意,開發(fā)人員可據(jù)此書寫規(guī)格說明文檔,進行目標系統(tǒng)的開發(fā)。14快速建立起來的可以在計算機上運行的程序,它所能完成的功能往往是最終產(chǎn)品能完成的功能的一個子集。15適用情況用戶定義了一組一般性目標,但不能標識出詳細的輸入、處理及輸出需求;開發(fā)者可能不能確定算法的有效性、操作系統(tǒng)的適應(yīng)性或人機交互的形式;……

原型模型可能是最好的選擇16快速原型模型17快速原型驗證規(guī)格說明驗證設(shè)計驗證編碼測試綜合測試維護變化的需求驗證維護過程開發(fā)過程18快速原型模型的特點與種類特點快速開發(fā)工具得到良好的需求定義,可處理模糊需求開發(fā)者和用戶可充分通信使某些類型的風(fēng)險降至最低種類漸進型拋棄型19存在的問題用戶似乎看到的是軟件的工作版本,其實……開發(fā)者常常需要實現(xiàn)上的折衷,以使原型能夠盡快工作202.4增量模型需求分析驗證規(guī)格說明驗證設(shè)計驗證維護針對每個構(gòu)件完成詳細設(shè)計、編碼和集成,經(jīng)測試后交付給用戶21增量模型基本思想:將整個系統(tǒng)分解成若干個子系統(tǒng)(增量構(gòu)件),每個增量構(gòu)件實現(xiàn)一個特定的功能;分批地逐步向用戶提交產(chǎn)品,每次提交一個滿足用戶需求子集的可運行產(chǎn)品;最后提交滿足全部需求的完整產(chǎn)品。優(yōu)點:易于開發(fā)和維護問題:新的增量構(gòu)件集成到現(xiàn)有軟件體系結(jié)構(gòu)中時,必須不破壞原來已經(jīng)開發(fā)出的產(chǎn)品。22風(fēng)險更大的增量模型23增量模型融合了瀑布模型的基本成分和原型的迭代特性。例如,使用增量模型開發(fā)字處理軟件基本的文件管理、編輯和文檔生成功能。更完善的編輯和文檔生成能力。實現(xiàn)拼寫和文法檢查功能。完成高級的頁面布局功能。24第一個增量往往是核心產(chǎn)品每一個增量均發(fā)布一個可操作產(chǎn)品早期的增量是最終產(chǎn)品的“可拆卸”版本特點252.5螺旋模型(spiralmodel)1988年,BarryBoehm正式發(fā)表了軟件系統(tǒng)開發(fā)的"螺旋模型“每個階段之前都增加了風(fēng)險分析過程的快速原型模型26螺旋模型(Cont.)

完整2728螺旋模型的特點特點風(fēng)險驅(qū)動的瀑布模型+快速原型+風(fēng)險分析主要適用于內(nèi)部開發(fā)的大規(guī)模軟件項目優(yōu)點強調(diào)嚴格的全過程風(fēng)險管理強調(diào)各開發(fā)階段的質(zhì)量缺點 對風(fēng)險管理的技能水平要求很高 需要人員、資金和時間的投入292.6噴泉模型典型的面向?qū)ο笊芷谀P蛙浖芷诘母鱾€階段相互重疊和多次反復(fù)各項開發(fā)活動之間無縫過渡30各種模型的比較模型優(yōu)點缺點瀑布模型文檔驅(qū)動系統(tǒng)可能不滿足客戶的需求快速原型模型關(guān)注滿足客戶需求可能導(dǎo)致系統(tǒng)設(shè)計差、效率低,難于維護增量模型開發(fā)早期反饋及時,易于維護需要開放式體系結(jié)構(gòu),可能會設(shè)計差、效率低螺旋模型風(fēng)險驅(qū)動風(fēng)險分析人員需要有經(jīng)驗且經(jīng)過充分訓(xùn)練噴泉模型支持迭代開發(fā)、開發(fā)活動無縫過渡可能導(dǎo)致開發(fā)過程過分無序和開發(fā)的隨意性31其它現(xiàn)在軟件產(chǎn)業(yè)界普遍認為,開發(fā)復(fù)雜軟件項目必須采用基于UML的、以構(gòu)架為中心、用例驅(qū)動與風(fēng)險驅(qū)動相結(jié)合的迭代式增量開發(fā)過程,它是世界公認的開發(fā)復(fù)雜軟件項目的最好過程,已經(jīng)成為軟件界的“圣經(jīng)”。這一開發(fā)過程目前已經(jīng)穩(wěn)定、成熟。 這就是:RUP—RationalUnifiedProcess32RationalUnifiedProcess—RUP

Rational統(tǒng)一過程是由IBMRational開發(fā)和營銷的一種軟件工程過程,RUP是開發(fā)組織用以分配與管理任務(wù)和職責(zé)的一種規(guī)范化方法這個過程的目的是在預(yù)定的進度和預(yù)算范圍內(nèi),開發(fā)出滿足最終用戶需要的高質(zhì)量軟件。RUP有自己的過程框架(processframework),這個框架可以被改造和擴展以適應(yīng)采納此方法的組織33RUP特點用例驅(qū)動以體系結(jié)構(gòu)為中心增量和迭代開發(fā)34誰在使用RUP?電信業(yè)Ericsson、Alcatel、MCI交通、航空、國防Lockheed-Martin、BritishAerospace制造業(yè)Xerox、Volvo、Intel金融業(yè)Visa、MerrillLynch、Schwab系統(tǒng)集成業(yè)Ernst&Young、Oracle、Deloitte&Touche35XP(ExtremeProgramming)由KentBeck大師提出大師總結(jié)了大量的軟件的成功和失敗的因素之后,提出了改進軟件開發(fā)方法的四個要素:溝通(communication)簡單化(simplicity)反饋(feedback)勇氣(courage)3637382.7小結(jié)軟件過程軟件生命周期問題定義、可行性研究、需求分析、概要設(shè)計、詳細設(shè)計、編碼和單元測試、綜合測試、軟件維護生命周期模型

溫馨提示

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

評論

0/150

提交評論