軟件過程模型_第1頁
軟件過程模型_第2頁
軟件過程模型_第3頁
軟件過程模型_第4頁
軟件過程模型_第5頁
已閱讀5頁,還剩43頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

軟件過程軟件生命周期軟件過程模型瀑布模型快速原型模型噴泉模型演化模型增量模型螺旋模型軟件開發(fā)過程的一般視圖第2講軟件過程模型

(ProcessModel)由安博測試空間技術(shù)中心/提供1質(zhì)量焦點過程模型方法工具方法使用的順序;要求交付的文檔資料;為保證質(zhì)量和適應(yīng)變化所需要的管理;軟件開發(fā)各個階段完成的里程碑。軟件開發(fā)提供了“如何做”的技術(shù)。為軟件工程方法提供了自動的或半自動的軟件支撐環(huán)境,CASE軟件工程層次圖2過程及軟件過程過程:為實現(xiàn)一個給定目標而進行的一系列運作步驟。軟件過程:開發(fā)和維護軟件及其相關(guān)產(chǎn)品所涉及的一系列活動。3軟件過程軟件過程需要提供一個公共過程框架,在該框架下可以建立一個軟件開發(fā)的綜合計劃:若干框架活動適用于所有軟件項目,而不在乎其規(guī)模和復(fù)雜性。若干不同任務(wù)的集合,使得框架活動適應(yīng)于不同軟件項目的特征和項目組的需求。若干保護性活動,它們貫穿于整個過程模型之中。保護性活動獨立于任何一個框架活動,且貫穿于整個過程之中。選擇一個公共過程框架是根據(jù)產(chǎn)品、人員和項目而調(diào)整的。4公共過程框架Commonprocessframework保護性活動UmbrellaActivitiesProjecttracking&controlFormaltechnicalreviewsQualityassuranceConfigurationmanagementDocumentationReusabilitymanagementMeasurementRiskmanagement框架活動FrameworkActivities任務(wù)集合worktasks工作任務(wù)workproducts交付物milestones&deliverables質(zhì)量保證點QAcheckpoints5內(nèi)容提要軟件過程軟件生命周期軟件過程模型瀑布模型快速原型模型噴泉模型演化模型增量模型螺旋模型軟件開發(fā)過程的一般視圖6軟件生命周期軟件生命周期是軟件過程模型的基礎(chǔ),是軟件產(chǎn)品或系統(tǒng)一系列相關(guān)活動的全周期。軟件生命周期階段:可行性研究及項目定義需求分析設(shè)計(總體設(shè)計和詳細設(shè)計)編程實現(xiàn)測試使用與維護7軟件生命周期模型定義開發(fā)維護可行性研究報告需求規(guī)格說明書設(shè)計規(guī)格說明書程序測試報告軟件定義可行性研究與計劃需求分析設(shè)計編碼測試運行和維護問題描述8問題定義和可行性研究確定要開發(fā)軟件系統(tǒng)的總目標和規(guī)模。從技術(shù)、經(jīng)濟和社會因素等方面的要求來論證完成該軟件任務(wù)的可行性。估計可利用的資源(計算機硬件,軟件,人力等)、成本、效益、開發(fā)進度。制定出完成開發(fā)任務(wù)的實施計劃,連同可行性研究報告,提交管理部門審查。9需求分析理解用戶需求,并將用戶需求用書面形式表達出來。編寫軟件需求規(guī)格說明書或系統(tǒng)功能說明書及初步的系統(tǒng)用戶手冊。需求說明書是以后階段工作的基礎(chǔ)。將需求規(guī)格說明書提交管理機構(gòu)評審。10設(shè)計總體設(shè)計

—“如何解決問題”在需求說明書的基礎(chǔ)上建立軟件的體系結(jié)構(gòu)。結(jié)構(gòu)中每一組成部分都是意義明確的模塊,每個模塊都和某些需求相對應(yīng)可以列出多種解決方案進行比較詳細設(shè)計

—對每個模塊要完成的工作進行具體的描述,為源程序編寫打下基礎(chǔ)編寫設(shè)計說明書(模塊說明書、數(shù)據(jù)庫或文件結(jié)構(gòu)說明書等),提交評審。11編碼把軟件設(shè)計轉(zhuǎn)換成計算機可以接受的程序代碼,即寫成以某一種特定程序設(shè)計語言表示的“源程序清單”。寫出的程序應(yīng)當是結(jié)構(gòu)良好、清晰易讀的(如匈牙利法則),且與設(shè)計相一致的。12測試單元測試:查找各模塊在功能和結(jié)構(gòu)上存在的問題并加以糾正。集成測試:將已測試過的、并且相關(guān)的模塊按一定順序組裝起來進行測試。按規(guī)定的各項需求,逐項進行系統(tǒng)測試,決定已開發(fā)的軟件是否合格,能否交付用戶使用。13運行和維護改正性維護:運行中發(fā)現(xiàn)了軟件中的錯誤需要修正。適應(yīng)性維護:為了適應(yīng)變化了的軟件工作環(huán)境,需做適當變更。完善性維護:為了增強軟件的功能需做變更。預(yù)防性維護:修改軟件為將來的維護活動預(yù)先做準備14內(nèi)容提要軟件過程軟件生命周期軟件過程模型瀑布模型快速原型模型噴泉模型演化模型增量模型螺旋模型軟件開發(fā)過程的一般視圖15傳統(tǒng)瀑布模型(WaterfallModel)軟件定義可行性研究與計劃需求分析設(shè)計編碼測試運行和維護16實際瀑布模型軟件定義可行性研究與計劃需求分析設(shè)計編碼測試運行和維護17瀑布模型變種:V型模型該方法是對瀑布模型的修正,強調(diào)了驗證活動18瀑布模型所有過程模型的鼻祖。----Royce,1970瀑布模型把軟件開發(fā)過程劃分成若干階段,每個階段的任務(wù)相對獨立,便于不同人員分工協(xié)作,從而降低了整個軟件開發(fā)工程的困難程度。在軟件生存期的每個階段都采用科學的管理技術(shù)和良好的方法與技術(shù),而且每個階段結(jié)束之前,都從技術(shù)和管理兩個角度進行嚴格的審查,經(jīng)確認之后才開始下一階段的工作。----項目是按照一定的順序執(zhí)行。瀑布模型是文檔驅(qū)動的,各個階段不連續(xù)也不交叉。19瀑布模型的特點階段間具有順序性和依賴性。(兩重含義)推遲程序的物理實現(xiàn)。(重要指導思想)質(zhì)量保證:每個階段必須完成規(guī)定的文檔;每個階段結(jié)束前完成文檔審查,及早改正錯誤。(兩個重要做法)易于組織,易于管理:因為你可以預(yù)先完成所有計劃。是一種嚴格線性的、按階段順序的、逐步細化的過程模型(開發(fā)模式)。20瀑布模型的缺陷在項目開始的時候,用戶常常難以清楚地給出所有需求;用戶與開發(fā)人員對需求理解存在差異。缺乏靈活性:因為瀑布模型確定了需求分析的絕對重要性,但是在實踐中要想獲得完善的需求說明是非常困難的,導致“阻塞狀態(tài)”。反饋信息慢,開發(fā)周期長。實際的項目很少按照順序模型進行。21內(nèi)容提要軟件過程軟件生命周期軟件過程模型瀑布模型快速原型模型噴泉模型演化模型增量模型螺旋模型基于構(gòu)件的開發(fā)軟件開發(fā)過程的一般視圖22建立原型目標開發(fā)原型定義原型功能評估原型原型開發(fā)過程原型規(guī)劃框架定義可執(zhí)行原型評估報告用戶意見反饋23聽取用戶意見建造/修改原型用戶測試運行原型

快速原型模型

(RapidPrototypeModel)24原型模型的特點

適用于用戶驅(qū)動的系統(tǒng)(即需求模糊或隨時間變化的系統(tǒng))。25原型模型的優(yōu)點從實踐中學習(Learningbydoing)用戶參與使部分已知需求逐漸清晰化提高系統(tǒng)的實用性、可維護性節(jié)省開發(fā)的投入、縮短整個軟件的開發(fā)周期26原型模型存在的問題用戶有時誤解了原型的角色,例如他們可能誤解原型應(yīng)該和真實系統(tǒng)一樣可靠。缺少項目標準,進化原型方法有點像編碼修正。缺少控制,由于用戶可能不斷提出新要求,因而原型迭代的周期很難控制。額外的花費:研究結(jié)果表明構(gòu)造一個原型可能需要10%額外花費。為了盡快實現(xiàn)原型,采用了不合適的技術(shù),運行效率可能會受影響。原型法要求開發(fā)者與用戶密切接觸,有時這是不可能的。例如外包軟件。27內(nèi)容提要軟件過程軟件生命周期軟件過程模型瀑布模型快速原型模型噴泉模型演化模型增量模型螺旋模型軟件開發(fā)過程的一般視圖28噴泉模型維護確認實現(xiàn)設(shè)計分析演化29噴泉模型的特點是典型的面向?qū)ο笊芷谀P汀皣娙边@個詞體現(xiàn)了面向?qū)ο筌浖_發(fā)過程迭代和無縫的特性應(yīng)該把線性過程作為總目標30內(nèi)容提要軟件過程軟件過程模型瀑布模型快速原型模型噴泉模型演化模型增量模型螺旋模型軟件開發(fā)過程的一般視圖31演化軟件過程模型演化模型是利用一種迭代的思想方法,它的特征是使軟件工程師漸進地開發(fā)逐步完善的軟件版本。增量模型(IncrementalModel)螺旋模型

(SpiralModel)32內(nèi)容提要軟件過程軟件過程模型瀑布模型快速原型模型噴泉模型演化軟件過程模型增量模型螺旋模型軟件開發(fā)過程的一般視圖33增量模型可行性研究與計劃需求分析概要設(shè)計維護針對每個構(gòu)件,完成詳細設(shè)計、編碼和集成,經(jīng)測試后交付給用戶34增量模型的特點融合了瀑布模型的基本成分和快速原型的迭代特征;以功能遞增的方式進行軟件開發(fā);能較快地產(chǎn)生可操作的系統(tǒng);在每一步遞增中,均發(fā)布一個新的增量版本,把用戶/開發(fā)者的經(jīng)驗結(jié)合到不斷求精的產(chǎn)品中。35增量模型和原型模型的區(qū)別增量模型與快速原型模型,本質(zhì)上都是迭代的。兩者區(qū)別在:增量模型強調(diào)每一個增量發(fā)布一個可操作的產(chǎn)品。早期的增量提供了為用戶服務(wù)的功能和給用戶評價的平臺。36增量模型存在的問題很難把用戶的需求映射到適當規(guī)模的增量上。大多數(shù)系統(tǒng)需要一組在系統(tǒng)許多部分都會用到的基本服務(wù)。但由于增量實現(xiàn)前,需求不能被詳細定義,所以,明確所有增量都會用到的基本服務(wù)就比較困難。37內(nèi)容提要軟件過程軟件過程模型瀑布模型原型實現(xiàn)模型噴泉模型演化軟件過程模型增量模型螺旋模型軟件開發(fā)過程的一般視圖38螺旋模型(SpiralModel)Spiral模型(Boehm,1988提出)綜合了快速原型模型的迭代特征和瀑布模型的控制和系統(tǒng)化的優(yōu)點。增加了風險分析,是以風險為導向的生命期模型。從一個小范圍的關(guān)鍵中心地帶開始尋找風險因素,制定風險控制計劃,并交付給下一步驟,如此迭代,每次迭代將項目擴展到一個更大的規(guī)模。39ReviewCommitmentPartition風險分析原型1建模模擬評價需求計劃生存期計劃原型2風險分析軟件需求需求確認開發(fā)計劃風險分析原型3軟件產(chǎn)品設(shè)計設(shè)計確認和驗證集成與測試計劃風險分析可運行原型詳細設(shè)計單元測試編碼集成測試驗收測試實現(xiàn)計劃下一個階段開發(fā),確認以及下一級產(chǎn)品確定目標選擇方案設(shè)定約束條件評估方案,識別并排除風險累計成本各步驟的進度Thespiralmodel40螺旋模型的特點把軟件開發(fā)過程組成為一個逐步細化的定義周期(螺旋周期)序列,每經(jīng)歷一個周期,系統(tǒng)就得到進一步的細化和完善;緊密圍繞開發(fā)中的風險問題,用風險分析推動軟件設(shè)計向深一層擴展、求精;強調(diào)持續(xù)地判斷、確定和修改用戶任務(wù)目標,并按成本、效益來分析候選的軟件產(chǎn)品性質(zhì)對任務(wù)目標的貢獻;可結(jié)合采用多種軟件開發(fā)方法,但究竟結(jié)合哪一種方法仍由風險分析來決定。41螺旋模型對于大型軟件系統(tǒng)的開發(fā),螺旋模型是一個很現(xiàn)實的方法。優(yōu)勢:隨著迭代的增加(成本的增加),風險程度隨之降低。缺陷:比較復(fù)雜,需要相當?shù)娘L險評估技術(shù),且成功依賴于這種技術(shù)。42內(nèi)容提要軟件過程軟件過程模型瀑布模型原型實現(xiàn)模型噴泉模型演化軟件過程模型增量模型螺旋模型軟件開發(fā)過程的一般視圖43軟件開發(fā)過程的一般視圖無論哪種軟件過程模型,軟件開發(fā)過程都要經(jīng)歷三個典型階段:定義Definition開發(fā)Development維護Maintenance44定義階段集中于“做什么”三個基本任務(wù)系統(tǒng)分析systemanalysis軟件項目計劃softwareprojectplanning需求分析requirementsanal

溫馨提示

  • 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)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論