第二章 軟件生命周期過程_第1頁
第二章 軟件生命周期過程_第2頁
第二章 軟件生命周期過程_第3頁
第二章 軟件生命周期過程_第4頁
第二章 軟件生命周期過程_第5頁
已閱讀5頁,還剩40頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第二章 軟件生命周期過程主講:肖丁;北京郵電大學通信軟件工程中心2022年5月9日2提綱第二章 軟件生命周期過程2.1 軟件生命周期2.2 基本過程2.3 支持過程2.4 組織過程2022年5月9日32.1 軟件生命周期2.1.1 軟件生命周期定義2.1.2 軟件生命周期模型2.1.2.1 瀑布模型2.1.2.2 演化模型2.1.2.3 螺旋模型2.1.2.4 噴泉模型2.1.2.5 構(gòu)件組裝模型2.1.2.6 快速應用開發(fā)模型2.1.2.7 其他模型2022年5月9日42.1.1 軟件生命周期定義l軟件生命周期:指軟件產(chǎn)品從考慮其概念開始,到該軟件產(chǎn)品不再能使用為止的整個時期。l一般包括:概

2、念階段、需求階段、設計階段、實現(xiàn)階段、測試階段、安裝以及交付使用階段、運行和維護階段。有時還有退役階段。l這些階段可以有重復,執(zhí)行時也可以有迭代。2022年5月9日52.1.1 軟件生命周期定義l軟件開發(fā)生命期:指軟件產(chǎn)品從考慮其概念開始到該軟件產(chǎn)品交付使用為止的整個時期。l一般包括:概念階段、需求階段、設計階段、實現(xiàn)階段、測試階段、安裝階段,以及交付階段。l這些階段可以有重疊,執(zhí)行時也可以有迭代。2022年5月9日62.1.1 軟件生命周期定義:把用戶的要求轉(zhuǎn)變成軟件產(chǎn)品的過程叫做軟件開發(fā)過程。軟件過程的規(guī)劃由不同開發(fā)機構(gòu)針對不同應用項目確定,包括一些有組織的活動:l對用戶的要求(need)

3、進行分析、l解釋成軟件需求(requirement)、l把需求變換成設計、l把設計用代碼來實現(xiàn)、l測試該代碼,l軟件安裝和交付運行使用。2022年5月9日72.1.1 軟件生命周期定義l軟件過程的研究重點:軟件生產(chǎn)和管理。l因此,不僅要有工程的觀點,還要有系統(tǒng)的、管理的、運行的、用戶的觀點。l軟件過程的分類:l基本過程:與軟件生產(chǎn)直接相關的過程l支持過程:支持軟件生產(chǎn)的過程l組織過程:與軟件生產(chǎn)組織(單位)有關的過程l剪裁過程:將上述過程和活動剪裁到具體應用中的過程。2022年5月9日82.1.1 軟件生命周期定義l軟件過程的活動:實現(xiàn)軟件開發(fā)生命周期目標所必須完成的所有任務以及完成任務的步驟

4、。包括框架活動和傘形活動。l框架活動:是軟件工程過程必須的主要步驟、是決定軟件產(chǎn)品如何出現(xiàn)而存在的重要活動。l包括:一組軟件工程工作任務并指出完成標志(里程碑); 交付的工件(artifact)以及軟件質(zhì)量保證點。 l軟件工程工作任務因產(chǎn)品特性而選用不同的過程模型展開。最抽象(最高層)的框架活動是定義、開發(fā)、維護。有了模型它就可以把這三大步驟細化了。2022年5月9日92.1.1 軟件生命周期定義l傘形活動:是為保證高質(zhì)量產(chǎn)品而存在的活動。它凌駕于框架活動之上,故謂之“傘形”,典型的傘形活動是:l軟件項目追蹤和管理l正式技術(shù)評審l軟件質(zhì)量保證l軟件配置管理l文檔的準備和制作l可重用管理l軟件度

5、量(指本項目特殊的度量)l風險管理2022年5月9日102.1.2 軟件生命周期模型l軟件生命周期模型:是從軟件項目需求定義直至軟件經(jīng)使用后廢棄為止,跨越整個生存期的系統(tǒng)開發(fā)、運行和維護所實施的全部過程、活動和任務的結(jié)構(gòu)框架。2022年5月9日112.1.2.1 瀑布模型l早期的瀑布模型即為線性順序模型。它一次走完分析、設計、編碼、測試和運行維護這些框架活動。l質(zhì)量保證、文檔管理、正式技術(shù)評審、配置管理等傘形活動穿插其中。2022年5月9日122.1.2.1 瀑布模型l1970年,W.Royce提出瀑布模型。l特征:活動的輸入來自上一活動的輸出;完成該項活動的內(nèi)容;活動的輸出傳給下一活動;對活

6、動的實施工作進行評審。(IPOC)l適合:需求明確的任務。l優(yōu)點:以項目的階段評審和文檔控制(凍結(jié))為手段有效地對整個開發(fā)過程進行指導,從而保證了軟件產(chǎn)品及時交付,并達到預期的質(zhì)量要求。嚴格把關、錯誤盡早發(fā)現(xiàn)并消滅在前一階段。l缺點:成品時間長;缺乏靈活性。 80年代中期發(fā)現(xiàn)嚴格按瀑布模型開發(fā)的大型系統(tǒng)成功率極低(低于23%)。2022年5月9日132.1.2.1 瀑布模型2022年5月9日142.1.2.1 瀑布模型l瀑布模型的變種V模型需求分析概要設計詳細設計編碼單元測試集成測試確認測試其他測試2022年5月9日152.1.2.2 演化模型l項目開發(fā)初始階段對需求的認識不夠清晰,使得開發(fā)工

7、作出現(xiàn)再開發(fā)在所難免。經(jīng)驗:開發(fā)“兩次”后的軟件能較好地滿足用戶的要求。:試驗開發(fā),目的是探索可行性,弄清楚項目的需求。:在第一次的原型基礎上進行開發(fā),從而獲得較為滿意的軟件產(chǎn)品。2022年5月9日162.1.2.2 演化模型需求分析軟件設計程序編碼軟件測試軟件集成軟件評審需求分析軟件設計程序編碼軟件測試軟件集成軟件評審反饋“第一次”“第二次”適合:事先不能清晰和完整定義需求的軟件開發(fā)。缺點:原型增加了開發(fā)的工作量,增加了管理上的困難。特別是原型過程步驟事先難于計劃,不知道應反復幾次,從哪里開始反復,預算進度均難于控制。優(yōu)點:它切合實際,成功率較高,故至今仍在使用。2022年5月9日172.1

8、.2.3 螺旋模型l對于大型項目而言,事先不能完整清晰地定義需求是常事,而且開發(fā)一個原型是遠遠不能解決問題的,需要開發(fā)內(nèi)容逐步豐富的多個原型。l大型項目的規(guī)模和復雜性增加,軟件開發(fā)過程中必然存在著許多風險問題,風險分析是保證項目成功的必要手段。2022年5月9日182.1.2.3 螺旋模型2022年5月9日192.1.2.3 螺旋模型l螺旋模型沿著螺線旋轉(zhuǎn),在四個象限上分別表達了四個方面的活動,即:l制定計劃確定軟件目標,選定實施方案,弄清項目開發(fā)的限制條件l風險分析分析所選方案,考慮如何識別和消除風險l實施工程實施軟件開發(fā)l客戶評估評價開發(fā)工作,提出修正建議2022年5月9日202.1.2.

9、4 噴泉模型l軟件開發(fā)的固有特征:l迭代: 多次重復、演進。l無間隙:各階段間無明顯的界限。支持分析和設計結(jié)果的自然復用。l適用:面向?qū)ο蟮能浖_發(fā)過程。2022年5月9日212.1.2.5 其他模型l還有并發(fā)開發(fā)模型和形式方法模型,分別針對并發(fā)程序系統(tǒng)和需要進行數(shù)學驗證或函數(shù)式、邏輯式程序系統(tǒng)而設的。lRUP介紹。2022年5月9日222.2 基本過程l定義:指那些與軟件生產(chǎn)直接相關的過程。l包括:獲取過程; 供應過程; 開發(fā)過程; 運行過程; 維護過程;l其中:每一個過程是由一些有組織的活動構(gòu)成的。每一個活動還可以繼續(xù)劃分為一些將輸入變換為輸出的操作任務。2022年5月9日232.2.1

10、獲取過程l過程執(zhí)行者:需要軟件系統(tǒng)或軟件產(chǎn)品的人。l包含的活動: 確定需求;招標;簽訂合同;對供應方的監(jiān)督;驗收完成。2022年5月9日242.2.2 供應過程l過程執(zhí)行者:軟件供應方l包含的活動:理解需求;投標;簽訂合同;計劃;實施;控制;評審評價;交付。2022年5月9日252.2.3 開發(fā)過程l過程執(zhí)行者:軟件開發(fā)者l包含的活動:需求分析;設計;編碼;集成;測試;安裝;驗收支持等。l具體的任務:1.過程的實施準備:制定過程計劃、過程規(guī)約、文檔編制方式等;2.系統(tǒng)需求分析:完成系統(tǒng)需求規(guī)格說明書,檢查其一致性和完備性。(系統(tǒng)需求:主要是指用戶的要求以及軟/硬件配置要求等)3.2022年5月

11、9日262.2.4 運行過程l過程執(zhí)行者:用戶和操作人員(為了使系統(tǒng)或產(chǎn)品投入運行而在用戶的業(yè)務運行環(huán)境中進行的一系列有關的活動)l包含的活動:運行準備;運行測試;產(chǎn)品轉(zhuǎn)移;運行;對用戶運行的支持(提供幫助和咨詢);系統(tǒng)運行評價;用戶對運行效果進行評價。l目的:使軟件從開發(fā)環(huán)境向用戶業(yè)務運行環(huán)境轉(zhuǎn)移。2022年5月9日272.2.5 維護過程l過程執(zhí)行者:維護人員l包含的活動:過程實施準備;問題分析和修改設計;修改實施;對維護的評審和驗收;軟件移植;軟件退役。l目的:保持軟件整體性能的同時修改它,使其達到某一需求,直到其退役為止。 1.改正性維護:診斷并校正錯誤。 2.適應性維護:為適應變化的

12、環(huán)境而對軟件進行修改的活動。 3.完善性維護:根據(jù)用戶新的需求,或增加或修改軟件的功能。2022年5月9日282.2.6 基本過程總結(jié)過程名執(zhí)行者活動內(nèi)容獲取過程項目委托方確定需求;招標;簽訂合同;對供應方的監(jiān)督;驗收完成。供應過程項目承包方理解需求;投標;簽訂合同;計劃;實施;控制;評審評價;交付。開發(fā)過程軟件開發(fā)人員過程實施準備;系統(tǒng)需求分析;系統(tǒng)結(jié)構(gòu)設計;軟件需求分析;軟件體系結(jié)構(gòu)設計;軟件詳細設計;軟件編碼和測試;軟件集成;軟件合格測試;系統(tǒng)集成;系統(tǒng)合格測試;軟件安裝;驗收支持。運行過程用戶運行準備;運行測試;產(chǎn)品轉(zhuǎn)移;運行;運行支持;運行評價。維護過程維護人員過程實施準備;問題分析

13、和修改設計;修改實施;對維護的評審和驗收;軟件移植;軟件退役。2022年5月9日292.3 支持過程l定義:為了提供系統(tǒng)或軟件產(chǎn)品的質(zhì)量而在軟件基本過程的各個活動中使用的支持手段。l包括:文檔過程;配置管理過程;質(zhì)量保證過程;驗證過程;確認過程;聯(lián)合評審過程;審計過程;問題解決過程。l過程執(zhí)行組織: 1.軟件開發(fā)組織自己實施; 2.獨立的第三方組織實施; 3.作為一種服務由客戶實施。2022年5月9日302.3.1 文檔過程l定義:記錄在某一軟件基本過程或活動中產(chǎn)生的信息的過程。l活動:l 1.制訂文檔編制計劃;l 2.設計和開發(fā)文檔;l 3.制作和發(fā)行文檔;l 4.文檔維護。2022年5月9

14、日312.3.2 配置管理過程l定義:管理軟件配置項(軟件工程過程中產(chǎn)生的所有信息項,如:文檔、報告、程序、表格、數(shù)據(jù)等)的提交、存儲、更新,保證軟件配置項完整、相容和正確的過程。l活動:l確定、定義一個系統(tǒng)中的軟件配置項和基線(Milestone:軟件生存期中各開發(fā)階段末尾的特定點)。l控制配置項的修改與交付。l記錄并報告配置項的完成情況和修改要求。l保證配置項的完整性、相容性、正確性。l控制配置項的存儲、處理和提交。2022年5月9日322.3.3質(zhì)量保證過程l目的:使軟件過程和軟件產(chǎn)品符合規(guī)定的質(zhì)量要求。l要求:實施質(zhì)量保證的人員不能是直接負責軟件產(chǎn)品開發(fā)的人員,并應在組織上給予獨立的權(quán)

15、限。l內(nèi)容:l軟件產(chǎn)品質(zhì)量保證:保證產(chǎn)品及其相關文檔與合同的要求一致。l軟件過程質(zhì)量保證:保證軟件開發(fā)過程按合同要求的計劃完成。l保證開發(fā)單位的軟件工程支持按合同要求完成。l保證開發(fā)環(huán)境、測試環(huán)境及資料等與合同要求一致。l保證軟件度量符合所建立的標準和步驟。l保證項目組成員接受必要的培訓以達到軟件開發(fā)必需的知識和技能。2022年5月9日332.3.4驗證(verification)過程l目的:確定一個系統(tǒng)或軟件的需求是否完備和正確,以及每一階段的軟件產(chǎn)品是否達到了前面各階段對它提出的要求或條件。l內(nèi)容:l合同驗證:驗證供應者滿足需求的能力。l過程驗證:驗證項目計劃需求是否已經(jīng)合適和適時。l需求

16、驗證:驗證系統(tǒng)需求的完備性、正確性等。l設計驗證:驗證設計是否正確并且是否符合可跟蹤要求。l代碼驗證:驗證關鍵代碼是否可跟蹤設計和需求、可測試、正確、符合編碼標準。l集成驗證:驗證每一個軟件配置項的部件是否已完全、正確地集成到該軟件配置項中。l文檔驗證:驗證文檔內(nèi)容的正確性、交付的及時性、文檔管理的規(guī)范性。2022年5月9日342.3.5確認(Validation)過程l定義:確定需求和建成的系統(tǒng)或軟件產(chǎn)品滿足原計劃特定應用的過程。l目標:證實在一個給定的外部環(huán)境下軟件的邏輯正確性。l與驗證過程的區(qū)別:l確認過程證實軟件的邏輯正確性;l驗證過程則對是否達到邏輯正確性的要求進行檢查,同時檢查過程

17、間的邏輯連貫正確性,進一步保證軟件的邏輯正確性。2022年5月9日352.3.6聯(lián)合評審過程l定義:評價項目的某個階段或其中的某個活動的執(zhí)行情況是否合適;評價產(chǎn)品是否合適。l內(nèi)容:l項目管理的評審:評價項目是否按照計劃進展。l技術(shù)評審:評價軟件產(chǎn)品的完備性和適合性;評價軟件產(chǎn)品與標準、規(guī)范規(guī)格說明書的一致程度。2022年5月9日362.3.7審計過程l確定軟件開發(fā)遵照需求、計劃合同的程度;l軟件產(chǎn)品是否反映了設計文檔的要求;l文檔描述的驗收評審和測試需求是否適合于軟件產(chǎn)品的驗收;l測試數(shù)據(jù)是否遵照規(guī)格說明書的要求;l測試是否通過并滿足規(guī)格說明書的要求;l測試報告和使用手冊是否完整和適合;l各項

18、活動是否都已按可應用的需求、計劃和合同完成。2022年5月9日372.3.8 問題解決過程l定義:分析和排除在開發(fā)、運行、維護或其它過程中發(fā)現(xiàn)的問題或不一致的過程。l目的:提供一種適時的、可信賴的、并編成文檔的手段,以保證分析和排除所有的問題并指明各種傾向。2022年5月9日382.3.9 支持過程總結(jié)過程名執(zhí)行者活動內(nèi)容文檔過程1.由軟件開發(fā)組織自己實施。2.由獨立的第三方機構(gòu)實施。3.作為一種服務由客戶實施。制訂文檔編制計劃;設計和開發(fā)文檔;制作和發(fā)行文檔;文檔維護。配置管理過程確定軟件配置項和基線;控制配置項的修改和交付;記錄配置項的完成和修改情況;保證配置項的完整、相容和正確性;控制配

19、置項的存儲和提交。質(zhì)量保證過程軟件產(chǎn)品質(zhì)量保證;軟件過程質(zhì)量保證。驗證過程合同驗證;過程驗證;需求驗證;設計驗證;代碼驗證;集成驗證;文檔驗證。確認過程類似于驗證的活動,區(qū)別是:確認針對軟件是否正確地滿足客戶的要求,驗證針對軟件是否按照規(guī)范要求開發(fā)。評審過程項目管理評審;技術(shù)評審審計過程問題解決過程2022年5月9日392.4組織過程l定義:與軟件生產(chǎn)組織有關的過程。l內(nèi)容:l 管理過程l 基礎設施過程l 改進過程l 培訓過程2022年5月9日402.4.1管理過程l定義:軟件開發(fā)組織的管理者對軟件工程過程中的活動進行管理的過程。l目的:在一定的時間和預算范圍內(nèi)有效地利用人力、資源、技術(shù)和工具,完成預定的系統(tǒng)和軟件產(chǎn)品,實現(xiàn)預定的功能和其它質(zhì)量指標。l管理的復雜性:體現(xiàn)在軟件生產(chǎn)過程可見性差、無法量化的特點。l 可見性差:軟件研制進度不易識別,存在問題不易及時發(fā)現(xiàn)和糾正,其過程容易出現(xiàn)修改和反復。l 定量化難

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 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

提交評論