




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
軟件工程導(dǎo)論工程環(huán)境建立軟件過程(流程)軟件方法工程環(huán)境建立軟件過程(流程)軟件方法軟件工具軟件工程知識體系:軟件工程方法學(xué)軟件工程方法學(xué)計劃管理成本管理(經(jīng)濟(jì))計劃管理成本管理(經(jīng)濟(jì))人員管理(人文)配置管理質(zhì)量管理軟件管理軟件工程學(xué)軟件工程學(xué)軟件工程管理學(xué)軟件工程管理學(xué)軟件工程要素:軟件工程包括三個要素:方法、工具和過程。軟件工程知識體系構(gòu)成:軟件需求(softwarerequirements),是真實世界問題而必須展示的特性。軟件設(shè)計(softwaredesign),設(shè)計是定義一個系統(tǒng)或組件的體系結(jié)構(gòu)、組件、接口和其他特征的過程。軟件構(gòu)造(softwareconstruction),是指通過算法實現(xiàn)、編碼、單元測試、集成和編譯等工作,創(chuàng)建一個可工作的、有價值的軟件。軟件測試(softwaretesting),是在有限測試用例集合上,根據(jù)所期望的結(jié)果,對軟件階段性成果和最終產(chǎn)品進(jìn)行驗證和確認(rèn),已發(fā)現(xiàn)問題。軟件維護(hù)(softwaremaintenance),軟件投入運行后,為了適應(yīng)運行環(huán)境所發(fā)生的變化、修正出現(xiàn)的問題、增強(qiáng)軟件功能和滿足用戶新的需求而對軟件進(jìn)行變更的工作。軟件配置管理(softwareconfigurationmanagement),為了系統(tǒng)地控制配置的變更和維護(hù)在整個系統(tǒng)生命周期中的完整性和可追蹤性,在時間上不同點上標(biāo)識軟件各個配置項。軟件工程管理(softwareengineeringmanagement),處理軟件工程的管理與度量。軟件工程過程(softwareengineeringprocess),涉及軟件工程過程本身的定義、實現(xiàn)、評定、度量、管理、變更和改進(jìn)。軟件工程工具和方法(softwareengineeringtoolandmethod)。軟件質(zhì)量(softwarequality),軟件生命周期過程的軟件質(zhì)量管理。基本概念關(guān)鍵問題結(jié)構(gòu)與體系結(jié)構(gòu)質(zhì)量分析與評價設(shè)計符號策略與方法需求工程過程需求獲取需求分析需求規(guī)格說明需求驗證需求管理軟件需求基本概念關(guān)鍵問題結(jié)構(gòu)與體系結(jié)構(gòu)質(zhì)量分析與評價設(shè)計符號策略與方法需求工程過程需求獲取需求分析需求規(guī)格說明需求驗證需求管理軟件需求軟件設(shè)計軟件測試軟件維護(hù)軟件工程過程軟件工程管理軟件配置設(shè)置軟件工程工具與方法軟件設(shè)計軟件測試軟件維護(hù)軟件工程過程軟件工程管理軟件配置設(shè)置軟件工程工具與方法軟件構(gòu)造降低復(fù)雜性預(yù)知多樣性軟件構(gòu)造降低復(fù)雜性預(yù)知多樣性結(jié)構(gòu)化驗證使用外部標(biāo)準(zhǔn)基本概念和定義基本概念和定義測試級別測試技術(shù)測試相關(guān)度量測試過程管理基本概念基本概念維護(hù)過程關(guān)鍵問題維護(hù)技術(shù)配置過程管理配置標(biāo)識配置控制配置過程管理配置標(biāo)識配置控制配置狀態(tài)報告配置審計軟件發(fā)布管理與交付軟件工程知識體系(SWEBOK)組織管理過程/項目管理軟件工程質(zhì)量軟件工具軟件方法軟件質(zhì)量組織管理過程/項目管理軟件工程質(zhì)量軟件工具軟件方法軟件質(zhì)量軟件過程概念軟件過程概念過程基礎(chǔ)設(shè)施過程度量過程定義定性過程分析過程實施與變更軟件質(zhì)量概念SQA軟件質(zhì)量概念SQA和V&V目的與計劃SQA和V&V活動與技術(shù)SQA和V&V的度量標(biāo)準(zhǔn)的軟件開發(fā)過程1.可行性與計劃研究階段可行性研究報告:在可行性研究與計劃階段內(nèi),要確定該軟件的開發(fā)目標(biāo)和總的要求,要進(jìn)行可行性分析、投資一收益分析、制訂開發(fā)計劃,并完成應(yīng)編制的文件。項目開發(fā)計劃:編制項目開發(fā)計劃的目的是用文件的形式,把對于在開發(fā)過程中各項工作的負(fù)責(zé)人員、開發(fā)進(jìn)度、
所需經(jīng)費預(yù)算、所需軟、硬件條件等問題作出的安排記載下來,以便根據(jù)本計劃開展和檢查本項目的開發(fā)工作。2.需求分析階段軟件需求說明書:軟件需求說明書的編制是為了使用戶和軟件開發(fā)者雙方對該軟件的初始規(guī)定有一個共同的理解,
使之成為整個開發(fā)工作的基礎(chǔ)。內(nèi)容包括對功能的規(guī)定對性能的規(guī)定等。數(shù)據(jù)要求說明書:數(shù)據(jù)要求說明書的編制目的是為了向整個開發(fā)時期提供關(guān)于被處理數(shù)據(jù)的描述和數(shù)據(jù)采集要求的技術(shù)信息。初步的用戶手冊:用戶手冊的編制是要使用非專門術(shù)語的語言,充分地描述該軟件系統(tǒng)所具有的功能及基本的使用方法。使用戶(或潛在用戶)通過本手冊能夠了解該軟件的用途,并且能夠確定在什么情況下,如何使用它。3.設(shè)計階段概要設(shè)計說明書:概要設(shè)計說明書又可稱系統(tǒng)設(shè)計說明書,這里所說的系統(tǒng)是指程序系統(tǒng)。編制的目的是說明對程序系統(tǒng)的設(shè)計考慮,包括程序系統(tǒng)的基本處理流程、程序系統(tǒng)的組織結(jié)構(gòu)、模塊劃分、功能分配、接口設(shè)計。
運行設(shè)計、數(shù)據(jù)結(jié)構(gòu)設(shè)計和出錯處理設(shè)計等,為程序的詳細(xì)設(shè)計提供基礎(chǔ)。詳細(xì)設(shè)計說明書:詳細(xì)設(shè)計說明書又可稱程序設(shè)計說明書。編制目的是說明一個軟件系統(tǒng)各個層次中的每一個程序
(每個模塊或子程序)的設(shè)計考慮,如果一個軟件系統(tǒng)比較簡單,層次很少,本文件可以不單獨編寫,有關(guān)內(nèi)容合并入概要設(shè)計說明書。數(shù)據(jù)庫設(shè)計說明書:數(shù)據(jù)庫設(shè)計說明書的編制目的是對于設(shè)計中的數(shù)據(jù)庫的所有標(biāo)識、邏輯結(jié)構(gòu)和物理結(jié)構(gòu)作出具體的設(shè)計規(guī)定。測試計劃初稿:這里所說的測試,主要是指整個程序系統(tǒng)的組裝測試和確認(rèn)測試。本文件的編制是為了提供一個對該軟件的測試計劃,包括對每項測試活動的內(nèi)容、進(jìn)度安排、設(shè)計考慮、測試數(shù)據(jù)的整理方法及評價準(zhǔn)則。4.實現(xiàn)階段模塊開發(fā)卷宗(開始編寫):模塊開發(fā)卷宗是在模塊開發(fā)過程中逐步編寫出來的,每完成一個模塊或一組密切相關(guān)的模塊的復(fù)審時編寫一份,應(yīng)該把所有的模塊開發(fā)卷宗匯集在一起。編寫的目的是記錄和匯總低層次開發(fā)的進(jìn)度和結(jié)果,以便于對整個模塊開發(fā)工作的管理和復(fù)審,并為將來的維護(hù)提供非常有用的技術(shù)信息。用戶手冊完工操作手冊:操作手冊的編制是為了向操作人員提供該軟件每一個運行的具體過程和有關(guān)知識,包括操作方法的細(xì)節(jié)。測試計劃終稿:5.測試階段模塊開發(fā)卷宗(此階段內(nèi)必須完成)測試分析報告:測試分析報告的編寫是為了把組裝測試和確認(rèn)測試的結(jié)果、發(fā)現(xiàn)及分析寫成文件加以記載。項目開發(fā)總結(jié)報告:項目開發(fā)總結(jié)報告的編制是為了總結(jié)本項目開發(fā)工作的經(jīng)驗,說明實際取得的開發(fā)結(jié)果以及對整個開發(fā)工作的各個方面的評價。6.運行與維護(hù)階段開發(fā)進(jìn)度月報的編制目的是及時向有關(guān)管理部門匯報項目開發(fā)的進(jìn)展和情況,以便及時發(fā)現(xiàn)和處理開發(fā)過程中出現(xiàn)的問題。一般地,開發(fā)進(jìn)度月報是以項目組為單位每月編寫的。如果被開發(fā)的軟件系統(tǒng)規(guī)模比較大,整個工程項目被劃分給若干個分項目組承擔(dān),開發(fā)進(jìn)度月報將以分項目組為單位按月編寫。軟件過程(SoftwareProcedure)是指\o"軟件生存周期"軟件生存周期所涉及的一系列相關(guān)過程,由工程過程、支持過程、管理過程、組織過程和客戶-供應(yīng)商的過程五部分組成。工程過程是軟件系統(tǒng)/產(chǎn)品的定義、設(shè)計、實現(xiàn)以及維護(hù)的過程。支持過程是在整個軟件生命周期中可能隨時被任何其他過程所采用的、起輔助作用的過程??蛻簦?yīng)商過程(customer-supplierprocess)是指那些直接影響到客戶、對開發(fā)的支持、向客戶交付軟件以及軟件正確操作與使用的過程。管理過程(managementprocess)是在整個生命周期中為工程過程、支持過程和客戶-供應(yīng)商過程的實踐活動提供指導(dǎo)、跟蹤和監(jiān)控的過程。組織過程是指那些用于建立組織商業(yè)目標(biāo)和定義整個組織內(nèi)部培訓(xùn)、開發(fā)活動和資源使用等規(guī)則的過程,并有助于組織在實施項目時更好、更快地實現(xiàn)預(yù)訂的開發(fā)任務(wù)和商業(yè)目標(biāo)。提供軟件軟件獲得操作軟件客戶需求管理提供客戶服務(wù)提供軟件軟件獲得操作軟件客戶需求管理提供客戶服務(wù)客戶-供應(yīng)商過程客戶-供應(yīng)商過程軟件設(shè)計實施集成并測試系統(tǒng)系統(tǒng)需求和設(shè)計集成并測試軟件軟件需求分析開發(fā)軟件設(shè)計軟件設(shè)計實施集成并測試系統(tǒng)系統(tǒng)需求和設(shè)計集成并測試軟件軟件需求分析開發(fā)軟件設(shè)計工程過程支持過程管理過程工程過程支持過程管理過程系統(tǒng)與軟件的維護(hù)系統(tǒng)與軟件的維護(hù)審核聯(lián)合評審確認(rèn)工作產(chǎn)品解決問題文檔編制配置管理過程質(zhì)量保證過程驗證工作產(chǎn)品審核聯(lián)合評審確認(rèn)工作產(chǎn)品解決問題文檔編制配置管理過程質(zhì)量保證過程驗證工作產(chǎn)品軟件軟件過程提供軟件工程架構(gòu)提供有技能的人員業(yè)務(wù)規(guī)劃定義過程改進(jìn)過程子合同管理風(fēng)險管理項目管理質(zhì)量管理組織過程提供軟件工程架構(gòu)提供有技能的人員業(yè)務(wù)規(guī)劃定義過程改進(jìn)過程子合同管理風(fēng)險管理項目管理質(zhì)量管理組織過程需求工程是指應(yīng)用已證實有效的技術(shù)、方法進(jìn)行需求分析,確定客戶需求,幫助分析人員理解問題并定義目標(biāo)系統(tǒng)的所有外部特征的一門學(xué)科。它通過合適的工具和記號系統(tǒng)地描述待開發(fā)系統(tǒng)及其行為特征和相關(guān)約束,形成需求文檔,并對用戶不斷變化的需求演進(jìn)給予支持。(1)需求獲?。和ㄟ^與用戶的交流,對現(xiàn)有系統(tǒng)的觀察及對任務(wù)進(jìn)行分析,從而開發(fā)、捕獲和修訂用戶的需求;(2)需求建模:為最終用戶所看到的系統(tǒng)建立一個概念模型,作為對需求的抽象描述,并盡可能多的捕獲現(xiàn)實世界的語義;(3)形成需求規(guī)格:生成需求模型構(gòu)件的精確的形式化的描述,作為用戶和開發(fā)者之間的一個協(xié)約;(4)需求驗證:以需求規(guī)格說明為輸入,通過符號執(zhí)行、模擬或快速原型等途徑,分析需求規(guī)格的正確性和可行性;(5)需求管理:支持系統(tǒng)的需求演進(jìn),如需求變化和可跟蹤性問題。\o"軟件需求"軟件需求的定義:(1)用戶解決問題或達(dá)到目標(biāo)所需的條件或權(quán)能(Capability)。
(2)系統(tǒng)或系統(tǒng)部件要滿足合同、標(biāo)準(zhǔn)、規(guī)范或其它正式規(guī)定文檔所需具有的條件或權(quán)能。
(3)一種反映上面(1)或(2)所描述的條件或權(quán)能的文檔說明。軟件需求包括三個不同的層次:業(yè)務(wù)需求、用戶需求和功能需求,也包括非功能需求。業(yè)務(wù)需求(businessrequirement)反映了組織機(jī)構(gòu)或客戶對系統(tǒng)、產(chǎn)品高層次的目標(biāo)要求,它們在項目\o"視圖"視圖與范圍文檔中予以說明。用戶需求(userrequirement)文檔描述了用戶使用產(chǎn)品必須要完成的任務(wù),這在使用實例(\o"usecase"usecase)文檔或方案腳本(scenario)說明中予以說明。功能需求(functionalrequirement)定義了開發(fā)人員必須實現(xiàn)的軟件功能,使得用戶能完成他們的任務(wù),從而滿足了業(yè)務(wù)需求。需求開發(fā)需求開發(fā)的目的是通過市場和用戶的調(diào)查,獲取用戶需求并進(jìn)行相應(yīng)的分析,從而能夠定義軟件產(chǎn)品的功能需求和非功能需求。需求開發(fā)可以分為需求獲取、需求分析、需求建模、需求定義和需求確認(rèn)共五個階段。需求管理需求管理是針對不斷變化的客戶需求加以收集、處理和跟蹤,并建立軟件需求的基準(zhǔn)線,以作為項目中軟件開發(fā)活動過程和產(chǎn)品度量和變更管理的基礎(chǔ)。需求管理可以進(jìn)一步分為需求評審、需求跟蹤和需求變更控制。軟件設(shè)計軟件設(shè)計一般可以分為體系結(jié)構(gòu)設(shè)計(architecturedesign)和詳細(xì)設(shè)計(detaileddesign)兩個階段。體系結(jié)構(gòu)設(shè)計:高層次的設(shè)計,將軟件需求轉(zhuǎn)化為數(shù)據(jù)結(jié)構(gòu)和軟件的系統(tǒng)結(jié)構(gòu),并定義子系統(tǒng)(組件)和它們之間的通信和接口。詳細(xì)設(shè)計:通過對結(jié)構(gòu)表示進(jìn)行細(xì)化,得到軟件詳細(xì)的數(shù)據(jù)結(jié)構(gòu)和算法,包括對所有的類都詳盡地進(jìn)行描述,給編寫代碼的程序員一個清晰的規(guī)范說明。軟件實施軟件的實施包括編程和測試。編程是將設(shè)計轉(zhuǎn)化為計算機(jī)語言描述的程序,使之可以運行在計算機(jī)之上。測試則包括單元測試、集成測試、功能測試、系統(tǒng)測試等。編程和測試是并發(fā)進(jìn)行的。階段輸入要求輸出需求分析審查(requirementsreview)市場與產(chǎn)品需求定義、分析文檔和相關(guān)技術(shù)文檔需求定義要準(zhǔn)確、完整和一致,真正理解客戶的需求需求定義中問題列表、批準(zhǔn)的需求分析文檔;測試計劃書的起草設(shè)計審查(designreview)產(chǎn)品規(guī)格設(shè)計說明、系統(tǒng)架構(gòu)和技術(shù)設(shè)計文檔、測試計劃和測試用例系統(tǒng)結(jié)構(gòu)的合理性、處理過程的正確性、數(shù)據(jù)庫的規(guī)范化、模塊的獨立性等設(shè)計問題列表、批準(zhǔn)的各類設(shè)計文檔、系統(tǒng)和功能的測試計劃和測試用例;測試環(huán)境的準(zhǔn)備單元測試(unittesting)源程序、編程規(guī)范、產(chǎn)品規(guī)格設(shè)計說明書和詳細(xì)的程序設(shè)計文檔遵守規(guī)范、模塊的高內(nèi)聚性、功能實現(xiàn)的一致性和正確性缺陷報告、跟蹤報告;完善的測試用例、測試計劃;對系統(tǒng)功能及其實現(xiàn)等了解清楚集成測試(integrationtesting)通過單元測試的模塊或組件、編程規(guī)范、集成測試規(guī)格說明和程序設(shè)計文檔、系統(tǒng)設(shè)計文檔接口定義清楚且正確、模塊或組件一起工作正常、能集成為完整的系統(tǒng)缺陷報告、跟蹤報告;完善的測試用例、測試計劃;集成測試分析報告;集成后的系統(tǒng)功能驗證(functionalityting)代碼軟件包(含文檔),功能詳細(xì)設(shè)計說明書;測試計劃和用例模塊集成功能的正確性、適用性缺陷報告、代碼完成狀態(tài)報告、功能驗證測試報告系統(tǒng)測試(systemtesting)修改后的軟件包、測試環(huán)境、系統(tǒng)測試用例和測試計劃系統(tǒng)能正常地、有效的運行,包括性能、可靠性、安全性、兼容性等缺陷報告、系統(tǒng)性能分析報告、缺陷狀態(tài)報告、階段性測試報告驗收測試(acceptancetesting)產(chǎn)品規(guī)格設(shè)計說明、預(yù)發(fā)布的軟件包、確認(rèn)測試用例向用戶表明系統(tǒng)能夠按照預(yù)定要求那樣工作,使系統(tǒng)最終可以正式發(fā)布或向用戶提供服務(wù)。用戶要參與驗收測試,包括阿爾法測試(內(nèi)部用戶測試)、貝塔測試(外部用戶測試)用戶驗收報告、缺陷報告審查、版本審查、最終測試報告版本發(fā)布(release)軟件發(fā)布包、軟件發(fā)布檢查表(清單)當(dāng)前版本已知問題的清單、版本發(fā)布報告維護(hù)(maintance)變更的需求、修改的軟件包、測試用例和計劃新的或增強(qiáng)的功能正常、原有的功能正常,不能出現(xiàn)回歸缺陷缺陷報告、更改跟蹤報告、測試報告軟件工程的基本目標(biāo):提高軟件開發(fā)的效率和軟件產(chǎn)品的質(zhì)量。軟件工程影響因素:軟件工程的思想:1)迭代開發(fā),以時間換空間,消除市場風(fēng)險。2)敏捷開發(fā)或輕量級過程,以不變應(yīng)萬變。3)永遠(yuǎn)的Beta,不斷推陳出新,永無止境。4)持續(xù)集成、持續(xù)構(gòu)建、全程測試。5)知識管理,將軟件工程納入知識管理的范疇。6)面向?qū)ο笫且环N方法,也是一種思想。7)軟件即服務(wù)(SaaS),面向服務(wù)架構(gòu)(SOA)的開發(fā)思想。8)用例驅(qū)動開發(fā),用戶為本思想在軟件中的體現(xiàn)。同時,軟件工程可以向傳統(tǒng)工業(yè)工程學(xué)習(xí),吸收傳統(tǒng)工業(yè)工程上百年實踐積累下來的經(jīng)驗、沉淀下來的思想。1)以顧客為中心的全面質(zhì)量管理。2)過程決定結(jié)果。3)有效的持續(xù)改進(jìn)過程。4)預(yù)防為主,檢驗為輔。5)驗證和確認(rèn)缺一不可,質(zhì)量保證和測試融為一體。6)以架構(gòu)設(shè)計為中心,體現(xiàn)設(shè)計為重的思想。7)生產(chǎn)標(biāo)準(zhǔn)化、產(chǎn)品標(biāo)準(zhǔn)化和技能標(biāo)準(zhǔn)化。8)軟件工廠思想造就了組件、構(gòu)件技術(shù),包括自動化測試。9)圍繞項目管理開展工作,包括風(fēng)險預(yù)防、里程碑控制和關(guān)鍵路徑法等。系統(tǒng)工程方法論在解決工程技術(shù)系統(tǒng)中的問題時,常遵循霍爾三維結(jié)構(gòu)中的邏輯維中所列出的工作步驟:①明確問題;②設(shè)計評價指標(biāo)體系;③系統(tǒng)綜合;④系統(tǒng)分析;⑤最優(yōu)化;⑥決策;⑦實施計劃。對于社會經(jīng)濟(jì)系統(tǒng),除上述工作步驟外,還可以采用切克蘭德方法論的工作步驟:①說明問題現(xiàn)狀;②弄清關(guān)聯(lián)因素;③建立概念模型;④改善概念模型;⑤比較;⑥實施。切克蘭德方法論工作步驟的核心不是“最優(yōu)化”,而是“比較”或“學(xué)習(xí)”,從對模型和現(xiàn)狀的比較中學(xué)習(xí)改善現(xiàn)狀的途徑。“比較”的含義包括組織討論和聽取各方面的意見在內(nèi),因而不拘泥于建立數(shù)學(xué)模型來定量描述系統(tǒng)的最優(yōu)解。這正是反映了社會經(jīng)濟(jì)系統(tǒng)的特點和人在這類系統(tǒng)中的積極因素。軟系統(tǒng)方法論的步驟:1)調(diào)查非結(jié)構(gòu)化問題;2)對于問題情景的表示,運用“豐富圖”(richpictures)來實現(xiàn);3)對相關(guān)系統(tǒng)進(jìn)行根定義(RootDefinition)。用戶需求的獲取方法:需求訪談;便利的應(yīng)用規(guī)約技術(shù)。軟件工程的分析方法:系統(tǒng)分析方法:整體分析;結(jié)構(gòu)分析;層次分析;相關(guān)分析。問題分析方法:問題說明階段;分析研究階段;評估結(jié)果。根本原因分析。決策分析:評價準(zhǔn)則的建立;決策分析的指導(dǎo)原則;結(jié)構(gòu)化決策。軟件工程的設(shè)計方法原型設(shè)計方法。結(jié)構(gòu)化方法:面向數(shù)據(jù)結(jié)構(gòu)的軟件設(shè)計方法;問題分析法;系統(tǒng)關(guān)聯(lián)圖;信息隱蔽方法。面向?qū)ο蠓椒?面向?qū)ο蠓治觯幻嫦驅(qū)ο笤O(shè)計;面向構(gòu)件設(shè)計方法:從傳統(tǒng)的關(guān)注點分離到構(gòu)件組裝;COD方法的過程。面向服務(wù)方法服務(wù)的識別;服務(wù)的分級和分類;子系統(tǒng)分析;服務(wù)分配;服務(wù)實現(xiàn)。6.可視化方法。軟件開發(fā)過程模型1.瀑布模型A.瀑布模型特征
從上一項活動接收該項活動的工作對象,作為輸入,
利用這一輸入實施該項活動應(yīng)完成的內(nèi)容;
給出該項活動的工作成果,作為輸出傳給下一項活動;
對該項活動實施的工作進(jìn)行評審,若其工作得到確認(rèn),則繼續(xù)下一項活動,否則返回前項,甚至更前項的活動進(jìn)行返工。
B.瀑布模型的優(yōu)點
通過設(shè)置里程碑,明確每階段的任務(wù)與目標(biāo);
可為每階段制定開發(fā)計劃,進(jìn)行成本預(yù)算,組織開發(fā)力量;
通過階段評審,將開發(fā)過程納入正確軌道;
嚴(yán)格的計劃性保證軟件產(chǎn)品的按時交付。
C.瀑布模型的缺點
缺乏靈活性,不能適應(yīng)用戶需求的改變;
開始階段的小錯誤被逐級放大,可能導(dǎo)致軟件產(chǎn)品報廢;
返回上一級的開發(fā)需要十分高昂的代價;
隨著軟件規(guī)模和復(fù)雜性的增加,軟件產(chǎn)品成功的機(jī)率大幅下降。2.螺旋模型(圖)A.螺旋模型的特征
每一圈是一個階段,每個階段里又有一些活動;
階段可分為:操作的概念、軟件需求、產(chǎn)品設(shè)計、詳細(xì)設(shè)計、編碼、單元測試、集成和測試、驗收測試、實現(xiàn)活動有:需求與計劃、風(fēng)險分析、設(shè)計與制作、用戶評價。
B.螺旋模型的優(yōu)點
風(fēng)險分析可使一些極端困難的問題和可能導(dǎo)致費用過高的問題被更改或取消用戶評價為需求的變更帶來柔性。
C.螺旋模型的缺點
需要開發(fā)人員具有相當(dāng)豐富的風(fēng)險評估經(jīng)驗和專門知識;
要求用戶參與階段評價,對用戶來說比較困難,不易取得好的效果。3.原型模型(圖)A.原型模型的特征
立項以后先提交原型給用戶,在用戶試用的基礎(chǔ)上進(jìn)行需求調(diào)查與原形修改;
強(qiáng)調(diào)用戶對軟件功能和使用性能的評價;
設(shè)計、修改原型與試用交替進(jìn)行;
一次迭代中的開發(fā)步驟:
*了解用戶/設(shè)計者的基本信息需求
*開發(fā)初始原型系統(tǒng)
*用戶/設(shè)計者試用和評估原型系統(tǒng)
B.原型模型的優(yōu)點
開發(fā)者與用戶充分交流,可以澄清模糊需求,需求定義比其他模型好得多;
開發(fā)過程與用戶培訓(xùn)過程同步;
為用戶需求的改變提供了充分的余地;
開發(fā)風(fēng)險低,產(chǎn)品柔性好;
開發(fā)費用低,時間短;
系統(tǒng)易維護(hù),對用戶更友好;
C.原型模型的缺點
開發(fā)者在不熟悉的領(lǐng)域中不易分清主次,原型不切題;
產(chǎn)品原型在一定程度上限制了開發(fā)人員的創(chuàng)新;
隨著更改次數(shù)的增多,次要部分越來越大,“淹沒”了主要部分;
原型過快收斂于需求集合,而忽略了一些基本點;
資源規(guī)劃和管理較為困難,隨時更新文檔也帶來麻煩;
只注意原型是否滿意,忽略了原型環(huán)境與用戶環(huán)境的差異。
4.構(gòu)件組裝模型/增量模型(圖)A.構(gòu)件組裝模型的特征
應(yīng)用軟件可用預(yù)先編好的、功能明確的產(chǎn)品部件定制而成,并可用不同版本的部件實現(xiàn)應(yīng)用的擴(kuò)展和更新。
利用模塊化方法,將復(fù)雜的難以維護(hù)的系統(tǒng)分解為互相獨立、協(xié)同工作的部件,并努力使這些部件可反復(fù)重用。
突破時間、空間及不同硬件設(shè)備的限制,利用客戶和軟件之間統(tǒng)一的接口實現(xiàn)跨平臺的互操作。
B.構(gòu)件組裝模型的優(yōu)點
構(gòu)件組裝模型導(dǎo)致了軟件的復(fù)用,提高了軟件開發(fā)的效率,面向?qū)ο蠹夹g(shù)是軟件工程的構(gòu)件組裝模型的基礎(chǔ)。
構(gòu)件可由一方定義其規(guī)格說明,被另一方實現(xiàn),然后供給第三方使用。
構(gòu)件組裝模型允許多個項目同時開發(fā),降低了費用,提高了可維護(hù)性。
可實現(xiàn)分步提交軟件產(chǎn)品。
C.構(gòu)件組裝模型的缺點
可重用性和軟件高效性不易協(xié)調(diào)。
缺乏通用的組裝結(jié)構(gòu)標(biāo)準(zhǔn),而自定義的組裝結(jié)構(gòu)標(biāo)準(zhǔn)引入較大的風(fēng)險。
需要精干的有經(jīng)驗的分析和開發(fā)人員,一般的開發(fā)人員插不上手。
客戶的滿意度低。5.統(tǒng)一軟件過程RUP模型(圖)
A.RUP模型特征
RUP可以用二維坐標(biāo)來描述。橫軸通過時間組織,是過程展開的生命周期特征,體現(xiàn)開發(fā)過程的動態(tài)結(jié)構(gòu),用來描述它的術(shù)語主要包括周期(Cycle)、階段(Phase)、迭代(Iteration)和里程碑(Milestone);縱軸以內(nèi)容來組織為自然的邏輯活動,體現(xiàn)開發(fā)過程的靜態(tài)結(jié)構(gòu),用來描述它的術(shù)語主要包括活動(Activity)、產(chǎn)物(Artifact)、工作者(Worker)和工作流(Workflow)。
RUP的時間軸
被分解為四個順序的階段,分別是:
初始階段(Inception)、
細(xì)化階段(Elaboration)、
構(gòu)造階段(Construction)和
交付階段(Transition)。
每個階段結(jié)束于一個主要的里程碑(MajorMilestones);每個階段本質(zhì)上是兩個里程碑之間的時間跨度。在每個階段的結(jié)尾執(zhí)行一次評估以確定這個階段的目標(biāo)是否已經(jīng)滿足。如果評估結(jié)果令人滿意的話,可以允許項目進(jìn)入下一個階段。
RUP的階段目標(biāo)
初始階段的目標(biāo)是為系統(tǒng)建立商業(yè)案例并確定項目的邊界。
細(xì)化階段的目標(biāo)是分析問題領(lǐng)域,建立健全的體系結(jié)構(gòu)基礎(chǔ),編制項目計劃,淘汰項目中最高風(fēng)險的元素。
在構(gòu)建階段,所有剩余的構(gòu)件和應(yīng)用程序功能
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 防洪堤加固工程施工合同
- 2023-2024學(xué)年天津市中小學(xué)生mixly創(chuàng)意編程 第11課 自動變速風(fēng)扇-教學(xué)設(shè)計
- 個人與家政公司服務(wù)合同范本
- 2023-2024學(xué)年人教版高中信息技術(shù)必修二第三章第二節(jié)《 信息系統(tǒng)中的通信網(wǎng)絡(luò)》教學(xué)設(shè)計
- 8《我們受到特殊保護(hù)》(第2課時)(教學(xué)設(shè)計)2024-2025學(xué)年統(tǒng)編版道德與法治六年級上冊
- 股東投資合伙合同樣本
- 標(biāo)準(zhǔn)房產(chǎn)買賣合同范本解析
- 戰(zhàn)略合作合同樣本Top10
- 11 我是一張紙 第二課時 教學(xué)設(shè)計-2023-2024學(xué)年道德與法治二年級下冊統(tǒng)編版
- Module 2 Unit 2 It will show in Harbin(教學(xué)設(shè)計)-2023-2024學(xué)年外研版(三起)英語六年級下冊
- 公司人事招聘面試技巧培訓(xùn)完整版課件兩篇
- 第1課《立足時代+志存高遠(yuǎn)》第1框《時代為我搭舞臺》【中職專用】《心理健康與職業(yè)生涯》(高教版2023基礎(chǔ)模塊)
- 出國勞務(wù)派遣合同(專業(yè)版)電子版正規(guī)范本(通用版)
- 主語從句趣味課件
- 小學(xué)生品德發(fā)展與道德教育PPT完整全套教學(xué)課件
- 汽車修理廠維修結(jié)算清單
- 《計算機(jī)應(yīng)用基礎(chǔ)》教學(xué)教案-02文字錄入技術(shù)
- 2023年1月浙江省高考英語真題及詳細(xì)解析
- 2023年大疆科技行業(yè)發(fā)展概況分析及未來五年行業(yè)數(shù)據(jù)趨勢預(yù)測
- 中國航天日揚帆起航逐夢九天(課件)-小學(xué)主題班會通用版
- 老年醫(yī)學(xué)概論智慧樹知到答案章節(jié)測試2023年浙江大學(xué)
評論
0/150
提交評論