




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、 2008 BUPT TSEG軟件工程軟件工程Software Engineering第十二章第十二章 軟件工程管理軟件工程管理黃黃 海海 2u軟件項目管理軟件項目管理u軟件過程管理軟件過程管理u軟件質量管理軟件質量管理u軟件工程環(huán)境軟件工程環(huán)境 2008 BUPT TSEG 北京郵電大學北京郵電大學 通信軟件工程中心通信軟件工程中心312.1 12.1 軟件項目管理軟件項目管理1. 項目和軟件項目項目和軟件項目項目,是一項為了創(chuàng)造某一項目,是一項為了創(chuàng)造某一唯一唯一的產品或服務的產品或服務的的時限性時限性工作。其中時限性是指每一個項目都工作。其中時限性是指每一個項目都具有明確的開始和結束時間
2、;唯一性是指該項具有明確的開始和結束時間;唯一性是指該項產品或服務與同類產品或服務相比在某些方面產品或服務與同類產品或服務相比在某些方面具有顯著的不同。具有顯著的不同。軟件項目是一種成果體現(xiàn)為軟件產品的項目軟件項目是一種成果體現(xiàn)為軟件產品的項目。它不僅僅是成果上的唯一性工作,而且在技術它不僅僅是成果上的唯一性工作,而且在技術上也有所創(chuàng)新,可以將其看作創(chuàng)新型項目。上也有所創(chuàng)新,可以將其看作創(chuàng)新型項目。 2008 BUPT TSEG 北京郵電大學北京郵電大學 通信軟件工程中心通信軟件工程中心412.1 12.1 軟件項目管理軟件項目管理2. 項目管理一般過程項目管理一般過程項目管理就是為了滿足甚至
3、超越項目干系人員項目管理就是為了滿足甚至超越項目干系人員(stakeholder)對項目的需求和期望而將理論)對項目的需求和期望而將理論知識、技能、工具和技巧應用到項目的活動中知識、技能、工具和技巧應用到項目的活動中去。去。項目管理分九個知識領域項目管理分九個知識領域 綜合管理綜合管理范圍管理范圍管理時間管理時間管理 成本管理成本管理質量管理質量管理人力資源管理人力資源管理 溝通管理溝通管理風險管理風險管理采購管理采購管理 2008 BUPT TSEG 北京郵電大學北京郵電大學 通信軟件工程中心通信軟件工程中心512.1 12.1 軟件項目管理軟件項目管理3. 軟件項目管理過程軟件項目管理過程
4、實現(xiàn)項目目標要受到四個因素的制約:項目范實現(xiàn)項目目標要受到四個因素的制約:項目范圍、成本、進度和客戶滿意度。圍、成本、進度和客戶滿意度。軟件項目管理的對象就是軟件工程項目,它所軟件項目管理的對象就是軟件工程項目,它所涉及的范圍覆蓋了整個軟件工程過程,這種管涉及的范圍覆蓋了整個軟件工程過程,這種管理開始于技術工作開始之前,在軟件從概念到理開始于技術工作開始之前,在軟件從概念到實現(xiàn)的過程中持續(xù)進行,最后終止于軟件工程實現(xiàn)的過程中持續(xù)進行,最后終止于軟件工程過程結束。過程結束。 2008 BUPT TSEG 北京郵電大學北京郵電大學 通信軟件工程中心通信軟件工程中心612.1 12.1 軟件項目管理
5、軟件項目管理軟件項目管理基本過程:軟件項目管理基本過程:啟動軟件項目啟動軟件項目( (確定目標、范圍確定目標、范圍 ) )制定項目計劃制定項目計劃軟件項目估算軟件項目估算軟件項目度量軟件項目度量風險分析風險分析進度安排進度安排人員組織結構設計和部署人員組織結構設計和部署執(zhí)行計劃執(zhí)行計劃項目控制項目控制項目結束項目結束 2008 BUPT TSEG 北京郵電大學北京郵電大學 通信軟件工程中心通信軟件工程中心712.1 12.1 軟件項目管理軟件項目管理4. 軟件項目度量軟件項目度量(1) 軟件度量軟件度量所謂度量,是指根據(jù)已明確的規(guī)則把數(shù)字或符號指定所謂度量,是指根據(jù)已明確的規(guī)則把數(shù)字或符號指定
6、給現(xiàn)實世界中實體的某一屬性,以便闡述實體的某種給現(xiàn)實世界中實體的某一屬性,以便闡述實體的某種狀態(tài)。狀態(tài)。軟件度量涉及的范圍較廣,其度量實體大致劃分為三軟件度量涉及的范圍較廣,其度量實體大致劃分為三大類:大類:產品:是指在軟件開發(fā)過程中產生的各種中間產品、發(fā)布的產品:是指在軟件開發(fā)過程中產生的各種中間產品、發(fā)布的資料和文檔等資料和文檔等過程過程:是與軟件相關的一些活動:是與軟件相關的一些活動資源資源:是指開發(fā)過程中使用的資源:是指開發(fā)過程中使用的資源軟件度量就是為了獲取關于這些實體屬性的值。這些軟件度量就是為了獲取關于這些實體屬性的值。這些實體的屬性又劃分為內部屬性和外部屬性實體的屬性又劃分為內
7、部屬性和外部屬性 2008 BUPT TSEG 北京郵電大學北京郵電大學 通信軟件工程中心通信軟件工程中心812.1 12.1 軟件項目管理軟件項目管理 2008 BUPT TSEG 北京郵電大學北京郵電大學 通信軟件工程中心通信軟件工程中心實體實體屬性屬性內部屬性內部屬性外部屬性外部屬性產品產品規(guī)格說明書規(guī)格說明書規(guī)模、可復用性、模塊化、冗余、功能、規(guī)模、可復用性、模塊化、冗余、功能、語法正確語法正確可理解性、可維護可理解性、可維護性性設計設計規(guī)模、可復用性、模塊化、耦合、聚合、規(guī)模、可復用性、模塊化、耦合、聚合、功能功能質量、復雜性、可質量、復雜性、可維護性維護性編碼編碼規(guī)模、可復用性、模
8、塊化、耦合、功能、規(guī)模、可復用性、模塊化、耦合、功能、算法復雜性、控制流、結構性算法復雜性、控制流、結構性可靠性、可用性、可靠性、可用性、可維護性可維護性測試數(shù)據(jù)測試數(shù)據(jù)規(guī)模、覆蓋度規(guī)模、覆蓋度質量質量過程過程編制規(guī)格說明書編制規(guī)格說明書時間、工作量、需求變動數(shù)、事件(故時間、工作量、需求變動數(shù)、事件(故障與變化)障與變化)質量、費用、穩(wěn)定質量、費用、穩(wěn)定性性詳細設計詳細設計時間、工作量、在規(guī)格說明書中找到的時間、工作量、在規(guī)格說明書中找到的缺陷數(shù)缺陷數(shù)費用、性能費用、性能/ /價格價格比比測試測試時間、工作量、找到的缺陷數(shù)時間、工作量、找到的缺陷數(shù)費用、性能費用、性能/ /價格比、價格比、穩(wěn)
9、定性穩(wěn)定性資源資源人員人員年齡、工資待遇年齡、工資待遇生產率、經(jīng)驗、智生產率、經(jīng)驗、智力力團隊團隊規(guī)模、交流活動水平、結構規(guī)模、交流活動水平、結構生產率、質量生產率、質量硬件硬件價格、速度、內存容量價格、速度、內存容量可靠性可靠性軟件軟件價格、規(guī)模價格、規(guī)模可用性、可靠性可用性、可靠性辦公地點辦公地點面積、溫度、照明面積、溫度、照明舒適度、質量舒適度、質量912.1 12.1 軟件項目管理軟件項目管理(2) 軟件項目規(guī)模度量軟件項目規(guī)模度量軟件項目規(guī)模度量(軟件項目規(guī)模度量(size measurement)的主要目的)的主要目的是為軟件項目估算建立基線,是估算軟件項目工作量是為軟件項目估算建
10、立基線,是估算軟件項目工作量、編制成本預算、策劃合理項目進度的基礎、編制成本預算、策劃合理項目進度的基礎。度量對象仍然包括軟件產品、軟件開發(fā)過程和軟件資度量對象仍然包括軟件產品、軟件開發(fā)過程和軟件資源源。度量的屬性包括:項目投入的費用(或者稱為成本)度量的屬性包括:項目投入的費用(或者稱為成本)、投入的人力、持續(xù)的時間;產生的代碼行數(shù)、完成、投入的人力、持續(xù)的時間;產生的代碼行數(shù)、完成的功能點數(shù)、發(fā)生的錯誤數(shù);軟件的生產率、軟件質的功能點數(shù)、發(fā)生的錯誤數(shù);軟件的生產率、軟件質量、單位成本等。量、單位成本等。兩種主要的規(guī)模度量方法兩種主要的規(guī)模度量方法:代碼行(代碼行(Lines Of Code
11、,簡稱,簡稱LOC)度量方法)度量方法功能點(功能點(Function Points,簡稱,簡稱FP)度量方法)度量方法 2008 BUPT TSEG 北京郵電大學北京郵電大學 通信軟件工程中心通信軟件工程中心1012.1 12.1 軟件項目管理軟件項目管理代碼行度量方法代碼行度量方法 代碼行指所有的可執(zhí)行的源代碼行數(shù),包括可交代碼行指所有的可執(zhí)行的源代碼行數(shù),包括可交付的動作和控制語句、數(shù)據(jù)定義、數(shù)據(jù)類型聲明付的動作和控制語句、數(shù)據(jù)定義、數(shù)據(jù)類型聲明等等 簡單的面向規(guī)模的生產率和質量的度量簡單的面向規(guī)模的生產率和質量的度量生產率生產率KLOC工作量(人月數(shù))工作量(人月數(shù))質量錯誤數(shù)質量錯誤
12、數(shù)KLOC另外,還可以計算單位代碼行的成本以及其他令人感興趣的度量另外,還可以計算單位代碼行的成本以及其他令人感興趣的度量單位成本成本單位成本成本 KLOC單位文檔文檔頁數(shù)單位文檔文檔頁數(shù)KLOC 2008 BUPT TSEG 北京郵電大學北京郵電大學 通信軟件工程中心通信軟件工程中心項目編碼項目編碼 工作量(人月)工作量(人月)成本(萬元)成本(萬元)KLOC文檔頁數(shù)文檔頁數(shù)錯誤數(shù)錯誤數(shù)人數(shù)人數(shù)aaa-012416.812.1365293ccc-04624427.21224865fff-034331.420.210506461112.1 12.1 軟件項目管理軟件項目管理功能點度量方法功能點
13、度量方法 該方法將注意力集中于程序的該方法將注意力集中于程序的“功能性功能性”和和“實實用性用性”,利用有關軟件數(shù)據(jù)域的一些計數(shù)度量和,利用有關軟件數(shù)據(jù)域的一些計數(shù)度量和軟件復雜性估計的經(jīng)驗關系式,導出功能點軟件復雜性估計的經(jīng)驗關系式,導出功能點(FP),而不是對,而不是對LOC計數(shù)。計數(shù)。 功能點度量方法需要對五個數(shù)據(jù)域特征計數(shù)功能點度量方法需要對五個數(shù)據(jù)域特征計數(shù)外部輸入數(shù)(外部輸入數(shù)(External Input,EI)外部輸出數(shù)(外部輸出數(shù)(External Output,EO)外部查詢數(shù)(外部查詢數(shù)(External Query,EQ)內部邏輯文件數(shù)(內部邏輯文件數(shù)(Internal
14、 Logical File,ILF)外部接口文件數(shù)(外部接口文件數(shù)(External Interface File,EIF) 2008 BUPT TSEG 北京郵電大學北京郵電大學 通信軟件工程中心通信軟件工程中心1212.1 12.1 軟件項目管理軟件項目管理5. 項目進度安排項目進度安排軟件項目進度安排是一種活動,它通過將工作軟件項目進度安排是一種活動,它通過將工作量分配給特定的軟件工程任務,從而將所估算量分配給特定的軟件工程任務,從而將所估算的工作量分配到計劃的項目工期內的工作量分配到計劃的項目工期內項目工期的確定有兩種方式項目工期的確定有兩種方式 系統(tǒng)最終交付日期已經(jīng)確定,軟件開發(fā)部門
15、必須系統(tǒng)最終交付日期已經(jīng)確定,軟件開發(fā)部門必須在規(guī)定期限內完成在規(guī)定期限內完成 系統(tǒng)最終交付日期只確定了大致的年限,最后交系統(tǒng)最終交付日期只確定了大致的年限,最后交付日期由軟件開發(fā)部門確定付日期由軟件開發(fā)部門確定 2008 BUPT TSEG 北京郵電大學北京郵電大學 通信軟件工程中心通信軟件工程中心1312.1 12.1 軟件項目管理軟件項目管理(1) 工作量與人數(shù)關系工作量與人數(shù)關系人月神話:人月神話:“即使進度拖后,我們也總是可以增加更即使進度拖后,我們也總是可以增加更多的程序員,并在后期跟上進度。多的程序員,并在后期跟上進度。”在項目后期增加人手通常會對項目產生破壞性的影響在項目后期增
16、加人手通常會對項目產生破壞性的影響,其結果是使進度進一步拖延。有以下原因,其結果是使進度進一步拖延。有以下原因:后期增加人員必須熟悉在開發(fā)系統(tǒng),而培訓他們的正是正在后期增加人員必須熟悉在開發(fā)系統(tǒng),而培訓他們的正是正在開發(fā)的項目成員,他們必須停下手頭工作來完成培訓工作,開發(fā)的項目成員,他們必須停下手頭工作來完成培訓工作,延緩了項目進度延緩了項目進度必須為后期增加的人員分配任務,因此,需要重新劃分任務必須為后期增加的人員分配任務,因此,需要重新劃分任務新增加人員參與項目后,必然增加了項目成員之間的溝通途新增加人員參與項目后,必然增加了項目成員之間的溝通途徑和交流的復雜度徑和交流的復雜度有人提出:軟
17、件開發(fā)項目可以由多個軟件開發(fā)小組組有人提出:軟件開發(fā)項目可以由多個軟件開發(fā)小組組成,每個開發(fā)小組的人數(shù)不能太多,以成,每個開發(fā)小組的人數(shù)不能太多,以28人左右為人左右為宜。宜。 2008 BUPT TSEG 北京郵電大學北京郵電大學 通信軟件工程中心通信軟件工程中心1412.1 12.1 軟件項目管理軟件項目管理(2) 工作量分配工作量分配將總體工作量分配到軟件生命周期的每個開發(fā)階段,將總體工作量分配到軟件生命周期的每個開發(fā)階段,進而分配到每個開發(fā)階段中的開發(fā)任務中去進而分配到每個開發(fā)階段中的開發(fā)任務中去 2008 BUPT TSEG 北京郵電大學北京郵電大學 通信軟件工程中心通信軟件工程中心
18、項目類型項目類型階段分配階段分配項目規(guī)模(項目規(guī)模(KDSI)微型微型2小型小型8中型中型32大型大型128特大型特大型512組織型組織型計劃與需求計劃與需求設計設計編碼和單元測試編碼和單元測試組裝與測試組裝與測試10175716101753201117492311174527半獨立型半獨立型計劃與需求計劃與需求設計設計編碼和單元測試編碼和單元測試組裝與測試組裝與測試1421481715214420162240221822362419233226嵌入型嵌入型計劃與需求計劃與需求設計設計編碼和單元測試編碼和單元測試組裝與測試組裝與測試1924391822253419242630202626262
19、229272321基于基本基于基本COCOMO模型的工作量分配百分比表模型的工作量分配百分比表15u軟件項目管理軟件項目管理u軟件過程管理軟件過程管理u軟件質量管理軟件質量管理u軟件工程環(huán)境軟件工程環(huán)境 2008 BUPT TSEG 北京郵電大學北京郵電大學 通信軟件工程中心通信軟件工程中心1612.2 12.2 軟件過程管理軟件過程管理1. 軟件過程框架軟件過程框架事實表明:在無規(guī)則和混亂的軟件過程管理的條件下事實表明:在無規(guī)則和混亂的軟件過程管理的條件下,先進的軟件開發(fā)技術和方法并不能發(fā)揮應有的作用,先進的軟件開發(fā)技術和方法并不能發(fā)揮應有的作用。關鍵問題在于。關鍵問題在于軟件過程軟件過程的
20、管理不盡人意。的管理不盡人意。所謂過程是指針對一個給定目的的一系列操作步驟,所謂過程是指針對一個給定目的的一系列操作步驟,軟件過程是軟件生存周期中的一系列相關過程,又稱軟件過程是軟件生存周期中的一系列相關過程,又稱為軟件生存周期過程,是人們用于開發(fā)和維護軟件及為軟件生存周期過程,是人們用于開發(fā)和維護軟件及其相關產品(項目計劃、設計文件、源程序、測試用其相關產品(項目計劃、設計文件、源程序、測試用例、用戶手冊)的一系列活動、方法、實踐。例、用戶手冊)的一系列活動、方法、實踐。過程(過程(process)是活動()是活動(activity)的集合,活動是任)的集合,活動是任務(務(task)的集合
21、,任務是將輸入變換為輸出的動作)的集合,任務是將輸入變換為輸出的動作(action)。活動的執(zhí)行可以是順序的,可以是重復)。活動的執(zhí)行可以是順序的,可以是重復的,可以是并行的,也可以是嵌套的,由軟件生命周的,可以是并行的,也可以是嵌套的,由軟件生命周期模型組織。期模型組織。 2008 BUPT TSEG 北京郵電大學北京郵電大學 通信軟件工程中心通信軟件工程中心1712.2 12.2 軟件過程管理軟件過程管理通用過程框架通用過程框架一個軟件過程框架一個軟件過程框架(process framework)是由幾個典是由幾個典型的框架活動型的框架活動(framework activity)和傘形活動
22、(和傘形活動(umbrella activity)構成。)構成。框架活動是軟件過程為達到過程目標必需的主要步驟框架活動是軟件過程為達到過程目標必需的主要步驟,是決定軟件產品如何出現(xiàn)而存在的重要活動。它包,是決定軟件產品如何出現(xiàn)而存在的重要活動。它包括:一組軟件工程工作任務,并指出任務完成標志(括:一組軟件工程工作任務,并指出任務完成標志(里程碑),交付的工作產品(里程碑),交付的工作產品(artifact,或稱工件),或稱工件),以及質量保證點。以及質量保證點。一個通用的框架活動包括:一個通用的框架活動包括: 溝通溝通 規(guī)劃規(guī)劃 建模建模 構造構造 部署部署 2008 BUPT TSEG 北京
23、郵電大學北京郵電大學 通信軟件工程中心通信軟件工程中心1812.2 12.2 軟件過程管理軟件過程管理傘形活動是為保證高質量產品出現(xiàn)而存在的活動傘形活動是為保證高質量產品出現(xiàn)而存在的活動。它支持并保護框架活動的順利執(zhí)行,類似于框。它支持并保護框架活動的順利執(zhí)行,類似于框架活動的架活動的“保護傘保護傘”,故謂之,故謂之“傘形活動傘形活動”。典型的傘形活動包括:典型的傘形活動包括:軟件項目跟蹤和控制軟件項目跟蹤和控制風險管理風險管理軟件質量保證軟件質量保證正式技術評審正式技術評審軟件度量軟件度量軟件配置管理軟件配置管理可復用管理可復用管理工作產品的準備和生產工作產品的準備和生產 2008 BUPT
24、 TSEG 北京郵電大學北京郵電大學 通信軟件工程中心通信軟件工程中心1912.2 12.2 軟件過程管理軟件過程管理 2008 BUPT TSEG 北京郵電大學北京郵電大學 通信軟件工程中心通信軟件工程中心每個框架活動是一些工作任務組成,每個任務又是由將輸入每個框架活動是一些工作任務組成,每個任務又是由將輸入變換為輸出的動作組成,這些動作具有相應的操作步驟,每變換為輸出的動作組成,這些動作具有相應的操作步驟,每個動作規(guī)定了相應的輸入,產生相應的工作產品,并且設置個動作規(guī)定了相應的輸入,產生相應的工作產品,并且設置了質量保證動作,經(jīng)過質量保證的某些工作產品可能成為項了質量保證動作,經(jīng)過質量保證
25、的某些工作產品可能成為項目里程碑的一部分目里程碑的一部分通用軟件過程框架及框架活動組織結構通用軟件過程框架及框架活動組織結構2012.2 12.2 軟件過程管理軟件過程管理2. 軟件能力成熟度模型軟件能力成熟度模型CMM(1) 軟件過程能力軟件過程能力軟件過程不能保證軟件是有質量的。究其主要原軟件過程不能保證軟件是有質量的。究其主要原因是:軟件過程模型中定義的軟件過程只是名義因是:軟件過程模型中定義的軟件過程只是名義上的,過程的實際執(zhí)行與管理等實踐才是軟件過上的,過程的實際執(zhí)行與管理等實踐才是軟件過程能力的保證措施。程能力的保證措施。所謂軟件過程能力(所謂軟件過程能力(software pro
26、cess capability)是指軟件開發(fā)團隊遵循某個軟件過程規(guī)范后是指軟件開發(fā)團隊遵循某個軟件過程規(guī)范后期望期望達到的結果范圍。達到的結果范圍。在遵循某個軟件過程規(guī)范后在遵循某個軟件過程規(guī)范后實際實際達到的結果稱為達到的結果稱為軟件過程性能(軟件過程性能(software process performance) 2008 BUPT TSEG 北京郵電大學北京郵電大學 通信軟件工程中心通信軟件工程中心2112.2 12.2 軟件過程管理軟件過程管理一個軟件團隊要達到軟件過程能力,除了通過軟一個軟件團隊要達到軟件過程能力,除了通過軟件生命周期模型規(guī)劃和定義軟件過程之外,還需件生命周期模型規(guī)劃
27、和定義軟件過程之外,還需要遵循定義好的軟件過程規(guī)范進行具體實施,在要遵循定義好的軟件過程規(guī)范進行具體實施,在過程實施過程中對部署的過程進行度量,發(fā)現(xiàn)過過程實施過程中對部署的過程進行度量,發(fā)現(xiàn)過程性能與過程能力偏差較大時,應該及時對過程程性能與過程能力偏差較大時,應該及時對過程進行調整,即進行過程控制,并將這些調整內容進行調整,即進行過程控制,并將這些調整內容納入到統(tǒng)一的過程管理范圍中納入到統(tǒng)一的過程管理范圍中軟件過程的成熟性(軟件過程的成熟性(software process maturity)就是指一個具體的軟件過程被明確地定義、管理就是指一個具體的軟件過程被明確地定義、管理、度量、控制和實
28、施的程度。、度量、控制和實施的程度。如何對軟件過程的執(zhí)行狀態(tài)進行評估,如何提出如何對軟件過程的執(zhí)行狀態(tài)進行評估,如何提出過程的改進方向和路線,這些問題就是過程的改進方向和路線,這些問題就是CMM需要需要解決的解決的 2008 BUPT TSEG 北京郵電大學北京郵電大學 通信軟件工程中心通信軟件工程中心2212.2 12.2 軟件過程管理軟件過程管理(2) CMM (Capability Maturity Model)卡內基梅隆大學于卡內基梅隆大學于1987年年9月提出了軟件過程成熟月提出了軟件過程成熟度框架,用于評估軟件過程能力,評價軟件組織度框架,用于評估軟件過程能力,評價軟件組織的軟件開
29、發(fā)能力,并于的軟件開發(fā)能力,并于1991年年8月提出了月提出了CMM(Capabilitiy Maturity Model)1.0版本版本。CMM基于眾多軟件專家的實踐經(jīng)驗,是組織進行基于眾多軟件專家的實踐經(jīng)驗,是組織進行軟件軟件過程改進過程改進和軟件和軟件過程評估過程評估的一個有效的指導的一個有效的指導框架。框架。CMM模型為較全面地描述和分析軟件過程能力的模型為較全面地描述和分析軟件過程能力的發(fā)展程度,建立了一個描述一個軟件組織的軟件發(fā)展程度,建立了一個描述一個軟件組織的軟件過程成熟程度的過程成熟程度的分級標準分級標準。 2008 BUPT TSEG 北京郵電大學北京郵電大學 通信軟件工程
30、中心通信軟件工程中心2312.2 12.2 軟件過程管理軟件過程管理CMM模型的模型的5個成熟度等級個成熟度等級 2008 BUPT TSEG 北京郵電大學北京郵電大學 通信軟件工程中心通信軟件工程中心利用它,軟件組織可以評估自己當前的過程成熟程度,并利用它,軟件組織可以評估自己當前的過程成熟程度,并通過提出更嚴格的軟件質量標準和過程改進,來選擇自己通過提出更嚴格的軟件質量標準和過程改進,來選擇自己的改進策略,以達到更高級別的成熟程度。的改進策略,以達到更高級別的成熟程度。2412.2 12.2 軟件過程管理軟件過程管理(3) 能力成熟度模型集成能力成熟度模型集成CMMI自自1990年起美國卡
31、內基年起美國卡內基-梅隆大學軟件工程研究梅隆大學軟件工程研究(SEI)所發(fā)布所發(fā)布SW-CMM V1.0以來,以來,SEI針對不同領域的要求針對不同領域的要求對對SW-CMM先后進行改進,并衍生出了一系列成熟先后進行改進,并衍生出了一系列成熟度模型。度模型。2001年年11月月SEI推出了推出了CMMI V1.1,將以上模型集成,將以上模型集成,解決了多模型之間內容的,解決了多模型之間內容的重疊重疊問題。就軟件而言,問題。就軟件而言,CMMI是是SW-CMM的修訂本。的修訂本。CMMI項目為工業(yè)界和政府部門提供了一個項目為工業(yè)界和政府部門提供了一個集成集成的產的產品集,其主要目的是消除不同模型
32、之間的不一致和重品集,其主要目的是消除不同模型之間的不一致和重復,降低基于模型的過程改進成本。復,降低基于模型的過程改進成本。CMMI將以更加系統(tǒng)和一致的框架來指導組織改進軟將以更加系統(tǒng)和一致的框架來指導組織改進軟件過程,提高產品和服務的開發(fā)、獲取和維護能力。件過程,提高產品和服務的開發(fā)、獲取和維護能力。 2008 BUPT TSEG 北京郵電大學北京郵電大學 通信軟件工程中心通信軟件工程中心25u軟件項目管理軟件項目管理u軟件過程管理軟件過程管理u軟件質量管理軟件質量管理u軟件工程環(huán)境軟件工程環(huán)境 2008 BUPT TSEG 北京郵電大學北京郵電大學 通信軟件工程中心通信軟件工程中心261
33、2.3 12.3 軟件質量管理軟件質量管理軟件質量管理是適用于整個軟件生命周期的一軟件質量管理是適用于整個軟件生命周期的一種傘形活動,有時也稱為軟件質量保證活動,種傘形活動,有時也稱為軟件質量保證活動,其內容包括:其內容包括: 軟件質量保證(軟件質量保證(Software Quality Assurance,簡,簡稱稱SQA)過程;)過程; 特定的質量保證和質量控制任務;特定的質量保證和質量控制任務; 有效的質量保證實踐(方法和工具);有效的質量保證實踐(方法和工具); 對所有軟件工作產品及其變更的控制(軟件配置對所有軟件工作產品及其變更的控制(軟件配置管理);管理); 保證軟件開發(fā)過程符合軟
34、件開發(fā)標準的規(guī)程;保證軟件開發(fā)過程符合軟件開發(fā)標準的規(guī)程; 軟件質量度量和報告機制軟件質量度量和報告機制 2008 BUPT TSEG 北京郵電大學北京郵電大學 通信軟件工程中心通信軟件工程中心2712.3 12.3 軟件質量管理軟件質量管理1. 軟件質量軟件質量ANSI/IEEE Std 729-1983定義軟件質量為:定義軟件質量為:“與軟件產品滿足規(guī)定的和隱含的需求的能力有與軟件產品滿足規(guī)定的和隱含的需求的能力有關的特征和特性的全體關的特征和特性的全體”。MJFisher將軟件質量定義為:將軟件質量定義為:“所有描述所有描述計算機軟件優(yōu)秀程度的特性的組合計算機軟件優(yōu)秀程度的特性的組合”。
35、 2008 BUPT TSEG 北京郵電大學北京郵電大學 通信軟件工程中心通信軟件工程中心2812.3 12.3 軟件質量管理軟件質量管理2. 質量控制質量控制“質量控制(質量控制(Quality Control,簡稱,簡稱QC)”是是為了保證每一件工作產品都滿足對它的需求而為了保證每一件工作產品都滿足對它的需求而應用于整個生命周期中的一系列審查、評審和應用于整個生命周期中的一系列審查、評審和測試。測試。質量控制經(jīng)過了一個發(fā)展過程,大致經(jīng)歷了檢質量控制經(jīng)過了一個發(fā)展過程,大致經(jīng)歷了檢驗質量管理、統(tǒng)計質量管理和全面質量管理三驗質量管理、統(tǒng)計質量管理和全面質量管理三個階段。個階段。質量控制逐步成為
36、軟件生產中不可缺少的重要質量控制逐步成為軟件生產中不可缺少的重要環(huán)節(jié),質量控制活動可以是全自動的、全人工環(huán)節(jié),質量控制活動可以是全自動的、全人工的,也可以是自動工具與人員交互的結合。的,也可以是自動工具與人員交互的結合。 2008 BUPT TSEG 北京郵電大學北京郵電大學 通信軟件工程中心通信軟件工程中心2912.3 12.3 軟件質量管理軟件質量管理3. 質量保證質量保證質量控制活動是否有效和完整?這個問題是通質量控制活動是否有效和完整?這個問題是通過質量保證(過質量保證(Quality Assurance,簡稱,簡稱QA)活動解決的。活動解決的。QA包括一系列審計和報告功能來評估包括一
37、系列審計和報告功能來評估QC的有的有效性和完整性,目的就是要為管理層了解產品效性和完整性,目的就是要為管理層了解產品質量提供所需的數(shù)據(jù),從而讓管理層獲知產品質量提供所需的數(shù)據(jù),從而讓管理層獲知產品質量是否符合預定目標。質量是否符合預定目標。 2008 BUPT TSEG 北京郵電大學北京郵電大學 通信軟件工程中心通信軟件工程中心3012.3 12.3 軟件質量管理軟件質量管理4. 軟件質量度量與評價軟件質量度量與評價(1) 軟件質量度量方法軟件質量度量方法預測(預測(predictive)度量)度量:利用定量的或定性的方法,:利用定量的或定性的方法,對軟件質量的評價值進行估計,以得到軟件質量的
38、比對軟件質量的評價值進行估計,以得到軟件質量的比較精確的估算值。它是用在軟件開發(fā)過程中的。較精確的估算值。它是用在軟件開發(fā)過程中的。尺度度量,這是一種定量度量。它適用于一些能夠直接度量尺度度量,這是一種定量度量。它適用于一些能夠直接度量的特性,例如:出錯率定義為:錯誤數(shù)的特性,例如:出錯率定義為:錯誤數(shù)/KLOC/單位時間單位時間二元度量,這是一種定性度量。它適用于一些只能間接度量二元度量,這是一種定性度量。它適用于一些只能間接度量的特性,例如,可使用性、靈活性等等。的特性,例如,可使用性、靈活性等等。驗收(驗收(acceptance)度量)度量:在軟件開發(fā)各階段的檢查:在軟件開發(fā)各階段的檢查
39、點,對軟件要求的質量進行確認性檢查而得到的具體點,對軟件要求的質量進行確認性檢查而得到的具體評價值,它可以看成是對預測度量的一種確認,是對評價值,它可以看成是對預測度量的一種確認,是對開發(fā)過程中的預測質量進行評價。開發(fā)過程中的預測質量進行評價。 2008 BUPT TSEG 北京郵電大學北京郵電大學 通信軟件工程中心通信軟件工程中心3112.3 12.3 軟件質量管理軟件質量管理 2008 BUPT TSEG 北京郵電大學北京郵電大學 通信軟件工程中心通信軟件工程中心評價準則評價準則度量度量需求需求設計設計編碼編碼是是/否否值值是是/否否值值是是/否否值值程序復雜性程序復雜性每 一 模 塊 的
40、 復 雜 度每 一 模 塊 的 復 雜 度(McCabe)系統(tǒng)復雜性度量各模塊復系統(tǒng)復雜性度量各模塊復雜性度量之和雜性度量之和/系統(tǒng)模塊數(shù)系統(tǒng)模塊數(shù)設計文檔的完備性設計文檔的完備性 無二義性引用(輸入無二義性引用(輸入/處處理理/輸出)輸出) 所有數(shù)據(jù)引用都可以從所有數(shù)據(jù)引用都可以從一個外部源定義、計算和獲一個外部源定義、計算和獲取。取。 所有定義的功能都被使所有定義的功能都被使用用 所有使用的功能都被定所有使用的功能都被定義義 對每一個判定點,所有對每一個判定點,所有的條件和處理都已被定義的條件和處理都已被定義 所有被定義、被引用的所有被定義、被引用的調用序列的參數(shù)一致調用序列的參數(shù)一致質量
41、特性檢查表質量特性檢查表3212.3 12.3 軟件質量管理軟件質量管理(2) 軟件質量評價方法軟件質量評價方法一般采用一般采用delphi方法,由若干(方法,由若干(610)位富有實際經(jīng))位富有實際經(jīng)驗的軟件專家進行打分來評價驗的軟件專家進行打分來評價評價分兩步走評價分兩步走:評分:針對系統(tǒng)、子系統(tǒng)或者模塊,對每一階段要達到的質評分:針對系統(tǒng)、子系統(tǒng)或者模塊,對每一階段要達到的質量指標(質量特性目標值或基準)詳細建立度量工作表,以量指標(質量特性目標值或基準)詳細建立度量工作表,以提問方式列出在某一階段為實現(xiàn)某一質量指標應達到的標準提問方式列出在某一階段為實現(xiàn)某一質量指標應達到的標準。然后由
42、專家根據(jù)實際的軟件成果進行評分。然后由專家根據(jù)實際的軟件成果進行評分。分析評分結果:根據(jù)評分結果,對照基準評價指標,檢查某分析評分結果:根據(jù)評分結果,對照基準評價指標,檢查某個質量特性是否達到了質量要求,如果沒有達到,就應當分個質量特性是否達到了質量要求,如果沒有達到,就應當分析達不到質量要求的原因。析達不到質量要求的原因。 2008 BUPT TSEG 北京郵電大學北京郵電大學 通信軟件工程中心通信軟件工程中心3312.3 12.3 軟件質量管理軟件質量管理5. 軟件配置管理軟件配置管理(1) 配置管理基本概念配置管理基本概念軟件配置管理(軟件配置管理(Software Configurat
43、ion Management,簡稱,簡稱SCM)是一種標識、組織和控制修改的技術,是一種標識、組織和控制修改的技術,目的是使錯誤達到最小并最有效地提高生產率。它是目的是使錯誤達到最小并最有效地提高生產率。它是一種傘形活動,它也是一種質量保證活動,應用于一種傘形活動,它也是一種質量保證活動,應用于整整個軟件生存期個軟件生存期,開始于軟件開發(fā)項目開始之時,結束,開始于軟件開發(fā)項目開始之時,結束于軟件被淘汰之時。于軟件被淘汰之時。配置管理目標:配置管理目標:標識變更標識變更控制變更控制變更確保正確地實現(xiàn)變更確保正確地實現(xiàn)變更向其他相關的項目涉眾人員報告變更向其他相關的項目涉眾人員報告變更 2008
44、BUPT TSEG 北京郵電大學北京郵電大學 通信軟件工程中心通信軟件工程中心3412.3 12.3 軟件質量管理軟件質量管理(2) 軟件配置項軟件配置項在軟件工程過程中產生的所有的信息項(文檔、報告在軟件工程過程中產生的所有的信息項(文檔、報告、程序、表格、數(shù)據(jù))就構成了軟件配置、程序、表格、數(shù)據(jù))就構成了軟件配置軟件配置管理的對象就是軟件配置項(軟件配置管理的對象就是軟件配置項(Software Configuration Item,簡稱,簡稱SCI),它們是軟件工程過),它們是軟件工程過程中產生的信息項。按照程中產生的信息項。按照ISO 9000-3的說明,軟件配的說明,軟件配置項可以是
45、置項可以是:與合同、過程、計劃和產品有關的文檔和數(shù)據(jù)與合同、過程、計劃和產品有關的文檔和數(shù)據(jù)源代碼、目標代碼和可執(zhí)行代碼源代碼、目標代碼和可執(zhí)行代碼相關產品,包括軟件工具、代碼庫內的可復用軟件、外購軟相關產品,包括軟件工具、代碼庫內的可復用軟件、外購軟件及用戶提供的軟件件及用戶提供的軟件 2008 BUPT TSEG 北京郵電大學北京郵電大學 通信軟件工程中心通信軟件工程中心3512.3 12.3 軟件質量管理軟件質量管理(3) 軟件配置基線軟件配置基線基線(基線(baseline)是一個軟件配置管理的概念,它有助)是一個軟件配置管理的概念,它有助于在不嚴重阻礙合理變更的前提下控制變更。于在不
46、嚴重阻礙合理變更的前提下控制變更。IEEE Std 610.12-1990定義:已經(jīng)通過正式評審和批準定義:已經(jīng)通過正式評審和批準的規(guī)格說明和產品,它可以作為進一步開發(fā)的基礎,的規(guī)格說明和產品,它可以作為進一步開發(fā)的基礎,并且只有通過正式的變更控制規(guī)程才能修改它并且只有通過正式的變更控制規(guī)程才能修改它。 2008 BUPT TSEG 北京郵電大學北京郵電大學 通信軟件工程中心通信軟件工程中心3612.3 12.3 軟件質量管理軟件質量管理(5) 軟件配置管理過程軟件配置管理過程軟件配置管理的軟件配置管理的5個任務個任務:配置標識配置標識版本管理版本管理變更控制變更控制配置審計配置審計配置配置狀
47、態(tài)狀態(tài)報告報告 2008 BUPT TSEG 北京郵電大學北京郵電大學 通信軟件工程中心通信軟件工程中心37u軟件項目管理軟件項目管理u軟件過程管理軟件過程管理u軟件質量管理軟件質量管理u軟件工程環(huán)境軟件工程環(huán)境 2008 BUPT TSEG 北京郵電大學北京郵電大學 通信軟件工程中心通信軟件工程中心3812.4 12.4 軟件工程環(huán)境軟件工程環(huán)境1. 軟件開發(fā)環(huán)境軟件開發(fā)環(huán)境軟件開發(fā)環(huán)境是指在計算機的基本軟件的基礎上,為軟件開發(fā)環(huán)境是指在計算機的基本軟件的基礎上,為了支持軟件的開發(fā)而提供的一組工具軟件系統(tǒng)。了支持軟件的開發(fā)而提供的一組工具軟件系統(tǒng)。軟件開發(fā)環(huán)境是一組相關工具的集合;軟件開發(fā)環(huán)
48、境是一組相關工具的集合;這些相關工具是按一定的開發(fā)方法或一定開發(fā)處理模型組織這些相關工具是按一定的開發(fā)方法或一定開發(fā)處理模型組織起來的;起來的;這些相關工具支持整個軟件生存期的各個階段或部分階段這些相關工具支持整個軟件生存期的各個階段或部分階段軟件工程領域,還經(jīng)常使用這樣一些術語,它們都具軟件工程領域,還經(jīng)常使用這樣一些術語,它們都具有相似或相同的含義有相似或相同的含義軟件開發(fā)環(huán)境軟件開發(fā)環(huán)境SDE軟件工程環(huán)境軟件工程環(huán)境SEE軟件支持環(huán)境軟件支持環(huán)境SSE項目支持環(huán)境項目支持環(huán)境PSE自動開發(fā)環(huán)境自動開發(fā)環(huán)境ADE集成化程序設計環(huán)境集成化程序設計環(huán)境IPE工具盒工具盒Toolbox工具箱工具
49、箱Toolkit 2008 BUPT TSEG 北京郵電大學北京郵電大學 通信軟件工程中心通信軟件工程中心3912.4 12.4 軟件工程環(huán)境軟件工程環(huán)境2. 軟件工具軟件工具軟件工具是指為支持計算機軟件的開發(fā)、維護、軟件工具是指為支持計算機軟件的開發(fā)、維護、模擬、移植或管理而研制的程序系統(tǒng)模擬、移植或管理而研制的程序系統(tǒng)工具分類:工具分類: 按照用途分按照用途分支持程序設計的工具支持程序設計的工具支持軟件分析與設計的工具支持軟件分析與設計的工具支持項目管理的工具支持項目管理的工具 按照界面劃分按照界面劃分支持字符界面的工具支持字符界面的工具支持圖形界面的工具支持圖形界面的工具 按照軟件生存周
50、期的階段劃分按照軟件生存周期的階段劃分系統(tǒng)計劃工具系統(tǒng)計劃工具需求分析工具需求分析工具系統(tǒng)設計工具系統(tǒng)設計工具支持編碼工具支持編碼工具測試和調試工具測試和調試工具運行和維護工具運行和維護工具文檔管理工具文檔管理工具 2008 BUPT TSEG 北京郵電大學北京郵電大學 通信軟件工程中心通信軟件工程中心4012.4 12.4 軟件工程環(huán)境軟件工程環(huán)境3. 計算機輔助軟件工程(計算機輔助軟件工程(CASE)(1) CASE定義定義CASE(Computer-Aided Software Engineering)是一組工具和方法的集合,通過一系列集成化的是一組工具和方法的集合,通過一系列集成化的軟件工具、技術和方法,實現(xiàn)分析、設計與程序軟件工具、技術和方法,實現(xiàn)分析、設計與程序開發(fā)、維護的自動化,輔助軟件生存周期各個階開發(fā)、維護的自動化,輔助軟件生存周期各個階段
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 電力行業(yè)數(shù)據(jù)監(jiān)控報告表
- 分析制造業(yè)中質量管理體系的建設與實施
- 六一創(chuàng)意綜合活動方案
- 六一散打活動方案
- 六一治水活動方案
- 六一活動游園活動方案
- 六一活動迪士尼活動方案
- 六一活動餃子活動方案
- 六一燈謎活動方案
- 六一節(jié)活動童裝活動方案
- 2024年海南省中考數(shù)學試題卷(含答案解析)
- 2024年選拔鄉(xiāng)鎮(zhèn)副科級領導干部考試模擬試題及答案
- 2023秋北師版八上數(shù)學 第一章 勾股定理 單元測試卷【含答案】
- 2024年全國青少年航天創(chuàng)新大賽航天知識競賽試題
- 道路危險貨物運輸押運人員資格考試復習題庫及答案
- MOOC 微生物學-浙江工業(yè)大學 中國大學慕課答案
- 國家開放大學《Python語言基礎》實驗2:基本數(shù)據(jù)類型和表達式計算參考答案
- 吉蘭-巴雷綜合征
- “項目路演”評分細則
- 小學科學課上教師指導學生
- 焊接技術的應用與發(fā)展課件
評論
0/150
提交評論