版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
軟件過程模型軟件工程內容何為軟件過程模型基本概念和特點有哪些軟件過程模型有什么類別,各有什么優(yōu)缺點3.如何來選擇軟件過程模型軟件過程模型的選擇方式和策略1.1軟件開發(fā)的特點基于智力的協(xié)作過程智力活動:基于邏輯思維來構造軟件交流協(xié)作:多方參與、相互間的交流和討論軟件項目實施復雜性介入的人多、涉及的內容多、產生的制品多不同要素間存在關聯(lián)循序漸進的開發(fā)過程開展有序的開發(fā)活動,如編碼、分析、設計體現(xiàn)了工程的思想:按步驟、分階段、循序漸進按照什么樣的過程和步驟來有序地開發(fā)軟件?1.2軟件過程過程(Process)活動:明確要做哪些事情,包括具體的活動關系:活動間存在邏輯關系,如依賴和先后次序示例:考研的過程軟件過程(SoftwareProcess)按照項目進度、成本和質量要求,遵循用戶需求,開發(fā)和維護軟件、管理軟件項目的一系列有序軟件開發(fā)活動軟件開發(fā)活動:技術活動和管理活動1.3軟件過程模型軟件過程模型(SoftwareProcessModel)定義了軟件開發(fā)的具體活動以及活動間的邏輯關系開發(fā)活動1開發(fā)活動2開發(fā)活動3開發(fā)活動n任務、目標、輸入和輸出投入人員、工具、資源和成本等軟件制品思考和討論:軟件開發(fā)應該按照什么樣的過程?先做什么,然后再做什么,最后做什么為什么要按照這樣的過程?內容何為軟件過程模型基本概念和特點有哪些軟件過程模型有什么類別,各有什么特點和優(yōu)缺點如何來選擇軟件過程模型軟件過程模型的選擇方式和策略2.1軟件過程模型的產生背景作坊式的個人創(chuàng)作聚焦于編寫代碼關注時空利用,精雕細琢程序規(guī)模小且功能單一依靠個體技能,缺乏合作無系統(tǒng)性方法和標準流程軟件工程產生之前的軟件開發(fā)軟件過程模型的產生背景IBMOS/360超大型軟件項目(1963年-1965年)通用系統(tǒng),支持多道程序,最多可同時運行15道程序軟件工程師超2000人,花費超5億美元,工作量超5000人年有史以來最可怕的軟件開發(fā)泥潭Brooks,《人月神話》TheMythicalMan-Month作者、圖靈獎獲得者凸顯了軟件過程及其管理的重要性典型的軟件過程模型瀑布模型增量模型迭代模型原型模型螺旋模型基于構件的過程模型UP模型需要系統(tǒng)、規(guī)范性的軟件過程模型的指導每種軟件過程模型有其各自的特點和適用場所2.2瀑布模型(WaterfallModel)需求分析概要設計詳細設計編碼實現(xiàn)集成測試確認測試特點與軟件生命周期相互一致每個活動結束后需要評審相鄰活動間存在因果關系優(yōu)點簡單,一目了然,易理解、掌握、應用和管理適合于需求易于定義、不易變動的軟件系統(tǒng)1970提出的第一個軟件過程模型需求分析(RequirementAnalysis)活動任務:定義軟件需求,包括功能、非功能需求關注點:要做什么?(What,Problem)層次和視角:用戶角度,僅描述問題和需求方法依據(jù):用戶的期望和要求不斷與用戶進行交流和商討,抽象、問題分解、多視點等技術產出軟件需求模型、軟件需求文檔、軟件確認測試計劃產生文檔類的軟件制品明確問題是什么?概要設計(ArchitectureDesign)活動任務:建立軟件總體架構、制定集成測試計劃關注點:軟件高層設計?(How,Solution)層次和視角:宏觀、全局、整體、戰(zhàn)略性方法依據(jù):軟件需求文檔自頂向下,逐步求精,抽象,模塊化,局部化,信息隱藏…...產出軟件概要設計模型、軟件概要設計文檔、軟件集成測試計劃產生文檔類的軟件制品明確問題如何解決?詳細設計(DetailedDesign)活動任務:設計模塊內部細節(jié)(算法、數(shù)據(jù)結構),制訂單元測試計劃關注點:詳細設計?(How,Solution)層次和視角:微觀、局部、細節(jié)性方法依據(jù):概要設計文檔、軟件需求文檔高質量的軟件設計原則,如單入口單出口產出軟件詳細設計模型、軟件詳細設計文檔、單元測試計劃產生文檔類的軟件制品明確問題如何解決?編程實現(xiàn)(Implementation)活動任務:編寫程序代碼并進行單元測試和調試關注點:如何最終做出這個東西?(How,Code)層次和視角:最終的實現(xiàn)代碼方法依據(jù):軟件概要和詳細設計文檔、單元測試計劃采用某種程序設計語言(如C、C++、Java)產出經過單元測試的源程序代碼產生程序類的軟件制品明確如何實際解決問題集成測試(IntegrationTest)活動任務:組裝軟件模塊并進行測試以發(fā)現(xiàn)問題關注點:集成后軟件中的缺陷(Bug)層次和視角:自底向上組裝、全局
方法依據(jù):軟件概要設計文檔、軟件集成測試計劃軟件集成測試工具產出經過集成測試、修復缺陷的源程序代碼,集成測試報告產生數(shù)據(jù)、文檔和代碼類的軟件制品明確問題解決如何?軟件有缺陷嗎?確認測試(ValidationTest)活動任務:測試軟件是否滿足用戶需求關注點:軟件在滿足用戶需求方面是否存在缺陷層次和視角:從用戶角度,聚焦需求是否得以正確實現(xiàn)方法依據(jù):軟件確認測試計劃、軟件需求文檔軟件測試支撐工具產出經過確認測試、修復缺陷后的代碼,軟件確認測試報告產生數(shù)據(jù)、文檔和代碼類的軟件制品明確問題解決如何?軟件有缺陷嗎?思考和討論:瀑布模型的局限性?需求分析概要設計詳細設計編碼實現(xiàn)集成測試確認測試優(yōu)點是什么有何不足需求確定,過于理想化缺乏變通,難應對變化軟件需求具有易變、多變的特點怎么辦?2.3改進的瀑布模型:帶反饋和回溯需求分析概要設計詳細設計編碼實現(xiàn)集成測試確認測試回溯后期活動發(fā)現(xiàn)有問題后,可返回到前面活動加以解決提高了過程模型的靈活性不足軟件開發(fā)處于動蕩之中需等到所有功能實現(xiàn)后,才能得到可運行軟件2.4增量模型(IncrementalModel)需求分析概要設計詳細設計編碼實現(xiàn)集成測試確認測試詳細設計編碼實現(xiàn)集成測試增量1增量n漸進式、增量式地實現(xiàn)軟件功能優(yōu)點:漸進快速交付,并行開發(fā),提高效率增量模型的局限性?結合課程綜合實踐思考不足軟件需求可確定且不易于變化增量1增量n2.5迭代模型(IterativeModel)需求分析概要設計詳細設計編碼實現(xiàn)軟件測試迭代1需求分析概要設計詳細設計編碼實現(xiàn)軟件測試迭代2迭代n每次迭代完成部分可確定的軟件需求迭代模型的特點每次迭代是一完整過程體現(xiàn)了小步快跑的開發(fā)理念適合需求難導出、不易確定且持續(xù)變動的軟件迭代模型的局限性?結合課程綜合實踐思考不足迭代多少次不確定管理較為復雜思考和討論:增量模型與迭代模型二者有何共性和區(qū)別?增量模型迭代模型增量1增量n軟件需求獲取是關鍵和瓶頸問題軟件需求非常關鍵軟件開發(fā)的基礎、驗收的依據(jù)用戶講不清楚軟件需求有哪些、是什么?說不清、道不明,尤其當軟件較為復雜和龐大之時用戶與軟件工程師對軟件需求理解存在偏差對軟件需求描述的歧義性、二義性、不準確等造成的“應該是這樣的”、“實際是這樣的”如果軟件需求分析結果不正確、不完整、有歧義,會帶來什么樣的問題?軟件需求的偏差需求偏差有多大如何來解決軟件需求偏差問題?2.6原型模型(PrototypeModel)特點軟件原型作為交流載體和媒介支持用戶參與到軟件開發(fā)中持續(xù)、漸進地導出用戶要求適合于需求難導出、不易確定且持續(xù)變動的軟件快速設計采集和細化需求建造原型客戶使用評價原型獲得反饋開發(fā)軟件系統(tǒng)何為軟件原型?用戶界面執(zhí)行流程2.7螺旋模型(SpiralModel)集成迭代模型和原型模型引入風險分析,風險驅動的過程模型每個迭代四個階段,若干活動適合于需求不明確、開發(fā)風險高、開發(fā)過程中需求變更大的軟件項目不足:管理復雜軟件風險使軟件開發(fā)受到影響和損失、甚至導致失敗的、可能會發(fā)生的事件不同軟件過程模型的特點模型名稱指導思想關注點適合軟件管理難度瀑布模型提供系統(tǒng)性指導與軟件生命周期相一致需求變動不大、較為明確、可預先定義的應用易原型模型以原型為媒介指導用戶的需求導出和評價需求獲取、導出和確認理解需求難以表述清楚、不易導出和獲取的應用易增量模型快速交付和并行開發(fā)軟件詳細設計、編碼和測試的增量式完成需求變動不大、較為明確、可預先定義的應用易迭代模型多次迭代,每次僅針對部分明確軟件需求分多次迭代來開發(fā)軟件,每次僅關注部分需求需求變動大、難以一次性說清楚的應用中等螺旋模型集成迭代模型和原型模型,引入風險分析軟件計劃制定和實施,軟件風險管理,基于原型的迭代式開發(fā)開發(fā)風險大,需求難以確定的應用難內容何為軟件過程模型基本概念和特點有哪些軟件過程模型有什么類別,各有什么特點和優(yōu)缺點3.如何來選擇軟件過程模型軟件過程模型的選擇方式和策略如何為軟件項目開發(fā)選擇合適的軟件過程模型軟件項目及開發(fā)團隊的具體特點軟件過程模型特點、優(yōu)點和局限分析和對比3.1軟件過程模型的選擇考慮軟件項目的特點尤其是所開發(fā)軟件的業(yè)務特點,如業(yè)務領域是否明確、軟件需求是否易于確定、用戶需求是否會經常性變化等等是否可以預估到潛在的軟件開發(fā)風險考慮開發(fā)團隊的水平需要結合軟件開發(fā)團隊的能力和水平來選擇過程模型,以防開發(fā)團隊和管理人員無法掌控和駕馭過程模型結合軟件過程模型特點優(yōu)缺點以及適合的場所示例:如何選擇合適的過程互聯(lián)網應用軟件的開發(fā)過程模型特點:軟件需求不確定且快速變化如:12306APP軟件,微信軟件,淘寶軟件選用瀑布模型不合適,迭代模型較為合適裝備軟件的開發(fā)過程模型特點:軟件需求確定且較為穩(wěn)定,質量要求高如:飛行控制軟件可考慮選用瀑布模型,用迭代模型不是很合適思考和討論結合課程綜合實踐的具體特點和要求,思考選用什么樣的軟件過程模型較為合適,為什么?軟件有創(chuàng)意:問題及基于軟件的解決方法有新意軟件上規(guī)模:軟件具有一定規(guī)模,代碼量>15000+LOC如空巢老人看護軟件、多無人機聯(lián)合搜尋軟件課程實踐軟件項目有何特點?軟件項目開發(fā)團隊有何特點?3.2傳統(tǒng)軟件過程模型的特點和不足軟件開發(fā)和運維的大量工作用于撰寫軟件文檔,而非去編寫程序代碼軟件開發(fā)過程中會花費大量時間和精力用于軟件文檔的評審,以確保軟件質量一旦軟件需求發(fā)生變化,開發(fā)人員需要修改軟件需求文檔,并據(jù)此來調整其他的一系列文檔,最后再修改程序代碼等較長時間才能得到可運行軟件系統(tǒng)以文檔為中心的重型軟件開發(fā)方法,非常笨重瀑布模型增量模型迭代模型原型模型螺旋模型……軟件文檔敏捷軟件開發(fā)方法(AgileMethod)的產生重視人和交互、重視可運行軟件系統(tǒng)、重視客戶合作、重視響應用戶需求變化少寫軟件文檔,以代碼為中心,快速響應變化拓展閱讀軟件科學與工程-學科發(fā)展戰(zhàn)略,梅宏等著,高等教育出版社,2021.課后作業(yè)和課程實訓訪問/paths/1944完成第四章“軟件過程模型和開發(fā)方法”的實訓闖關任務本章知識圖譜小結軟件開發(fā)需要過程指導明確步驟、活動、次序、關系多樣化的軟件過程模型瀑布、增量、迭代、原型、螺旋等,各自有其優(yōu)缺點選擇合適軟件過程模型考慮軟件項目特點和要求、團隊的經驗和水平及各個軟件過程模型的優(yōu)缺點傳統(tǒng)軟件過程模型不足以文檔是中心,非常笨重,難以快速應對需求變化,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- GB/T 30921.5-2025工業(yè)用精對苯二甲酸(PTA)試驗方法第5部分:酸值的測定
- 2026年腦機接口神經康復設備臨床驗證合同
- 2026年HIMSS認證咨詢服務合同
- 2025年浦發(fā)銀行昆明分行公開招聘備考題庫及完整答案詳解一套
- 普洱中學學校內涵發(fā)展經驗交流匯報材料
- 春節(jié)發(fā)給客戶的放假通知3篇
- 2025年濟寧市檢察機關招聘聘用制書記員的備考題庫(31人)及一套答案詳解
- 2025年達州銀行股份有限公司社會招聘備考題庫附答案詳解
- 2025年廈門大學教育研究院行政秘書招聘備考題庫及參考答案詳解1套
- 2025年香格里拉市自然資源局自然資源巡查臨聘人員招聘備考題庫參考答案詳解
- 2025年山西大地環(huán)境投資控股有限公司社會招聘116人備考題庫及完整答案詳解一套
- 2025年植物標本采集合同協(xié)議
- 2025湖北武漢市蔡甸區(qū)總工會招聘工會協(xié)理員4人筆試試題附答案解析
- 2026年企業(yè)出口管制合規(guī)審查培訓課件與物項識別指南
- 膽管重復畸形健康宣教
- 2025秋人教精通版英語小學五年級上冊知識點及期末測試卷及答案
- 校園反恐防暴2025年培訓課件
- 2026年安徽城市管理職業(yè)學院單招職業(yè)技能測試模擬測試卷附答案
- 2025年秋季學期國家開放大學《人文英語4》期末機考精準復習題庫
- 高血壓的常用降壓藥及其分類
- 2025年低空經濟產業(yè)安全管理人員技能要求報告
評論
0/150
提交評論