《軟件項目管理》PPT課件.ppt
《《軟件項目管理》PPT課件.ppt》由會員分享,可在線閱讀,更多相關《《軟件項目管理》PPT課件.ppt(71頁珍藏版)》請在裝配圖網上搜索。
1、chapter_4,0,軟件開發(fā)項目管理,信息管理系 汪維清,chapter_4,1,承上啟下,chapter_4,2,成本計劃,chapter_4,3,軟件開發(fā)項目管理,第 4 章 軟件項目成本計劃,chapter_4,4,4.1 關于估算,估算一般可能不是非常的準確,尤其是軟件更是如此,軟件項目中存在太多的不確定性,而且,在項目初期,人們對需求喝技術的不了解還不是很透徹。 對于估算既沒有特效的辦法,也沒有通用的模型,項目經理可以根據以前的項目經驗和驗證過的指南來提高精度。,chapter_4,5,4.1.1 項目規(guī)模與成本的關系,軟件項目規(guī)模即工作量,是從軟件項目范圍中抽出的軟件功能,然后
2、確定每個軟件功能所必須執(zhí)行的一系列軟件工程任務 包括:軟件規(guī)劃,軟件管理,需求,設計,編碼,測試,以及后期的維護等任務。 軟件項目成本是指完成軟件項目規(guī)模相應付出的代價,是待開發(fā)的軟件項目需要的資金。 規(guī)模的單位:代碼行(line of code,LOC)、功能點、人天、人月、人年等 成本一般采用貨幣單位,如人民幣或美元等,chapter_4,6,4.1.2 成本估算的定義,軟件開發(fā)成本是指軟件開發(fā)過程中所花費的工作量及相應代價。 軟件開發(fā)成本的估算應該從軟件計劃、需求分析設計、編碼、單元測試、集成測試到接受測試等這些過程中所花費的代價作為依據。,chapter_4,7,4.2 估算的過程,成
3、本管理就是確保項目在預算范圍之內的管理過程,包括成本估算、成本預算、成本控制等過程。 成本估算涉及計算完成項目所需各資源成本的近似值。 由于影響軟件成本的因素太多(例如人、技術、環(huán)境、政治等),軟件估算仍然是恨不成熟的技術,一些方法只能作為借鑒,更多的時候需要經驗。目前沒有一個估算方法或者成本估算模型可以適用于所有的軟件類型和開發(fā)環(huán)境,chapter_4,8,4.2.1 成本估算輸入,估算的輸入一般包括以下幾項: 項目需求或WBS:根據估算的不同階段,有不同的輸入可用于成本估算,以確保所有工作均一一被估計進成本了 歷史項目數據:是以往項目的數據,包括規(guī)模、進度、成本等,是項目估算的主要參考 資
4、源要求(資源編制計劃):它可以讓項目組掌握資源需要和分配的情況 資源消耗率:即資源單擊,如人員成本: 100元/小時 進度規(guī)劃:項目活動時間的估計,活動時間估計會影響到項目成本估計 學習曲線:是項目組學習某項技術或者工作的時間,當一件事情被重復的時候,完成這件事情的時間將會被縮短,業(yè)績會以一定的百分比提高,chapter_4,9,4.2.2 估算處理,成本估算包括直接成本和間接成本。 直接成本是與開放的具體項目直接相關的成本,如人員的工資、材料費、外包外購成本等,包括開放成本、管理成本、質量成本等 間接晨報歸屬于一個具體項目,可以分攤到各個具體項目中的成本,例如:培訓、房租水電、員工福利、市場
5、費用、管理費等等,chapter_4,10,4.2.3 估算輸出,成本估算的結果可以以簡略或詳細的形式表示。對項目所需的各種資源的成本均需加以估計。估算單位通常是貨幣單位,如元、法郎、美元等;也可以用人月、人天或人小時這樣的單位 估算文件包括項目所需的資源,資源的數量,質量標準,估算成本等信息,單位一般是貨幣單位 估算說明包括工作范圍、估算的基礎和依據、估算的假設、估算的誤差變動等,chapter_4,11,4.3 成本估算的方法,常用的成本估算方法如: 代碼行、功能點 類比 (自頂向下)估算法 自下而上估算法 參數法估算法 專家估算法,chapter_4,12,4.3.1 代碼行(LOC)、
6、功能點及對象,代碼行、功能點是表達軟件項目規(guī)模的單位,有時也稱為軟件項目規(guī)模估算方法,chapter_4,13,1 代碼行,這種方法依據以往開發(fā)類似產品的經驗和歷史數據,估計實現一個功能所需要的源程序航數。 使用代碼行作為規(guī)模單位時,要求功能分解足夠詳細,而且有一定的經驗數據,采用不同的開發(fā)語言,代碼行可能不一樣。 代碼行技術的主要優(yōu)點:代碼是所有軟件開發(fā)項目都有的“產品”,而且很容易計算代碼行數。 代碼行(LOC)缺點: 對代碼行沒有公認的可接受的標準定義 代碼行數量依賴于所用的編程語言和個人的編程風格. 在項目早期,需求不穩(wěn)定、設計不成熟、實現不確定的情況下很難準確地估算代碼量. 代碼行強
7、調編碼的工作量,只是項目實現階段的一部分,chapter_4,14,2. 功能點(FP: Function point),(1)基本概念 功能點是用系統(tǒng)的功能數量來測量其規(guī)模,它以一個標準的單位來度量軟件產品的功能,與實現產品所用的語言和技術沒有關系。 功能點計算公式:FP =UFC*TCF UFC:未調整功能點計數 TCF:技術復雜度因子,chapter_4,15,(2)UFC-未調整功能點計數,在功能點分析中,系統(tǒng)被分為5類組件和一些常規(guī)系統(tǒng)特征 在計算未調整功能點計數時,應該先計算5類功能組件的計數項: 內部邏輯文件(ILF):是用戶可以識別的一組邏輯相關的數據,而且完全存在于應用的邊界
8、之內,并且通過外部輸入維護 外部輸入(EI):給軟件提供面向應用的數據項(如屏幕、菜單、對話框、控件等),在這個過程中,數據穿越外部邊界進入系統(tǒng)內部。 外部輸出(EO):向外部提供面向應用的信息,如報表和出錯信息等 外部查詢(EQ):即一次聯機輸入,它導致軟件以聯機輸出方式產生某種及時響應 外部文件(EIF):是用戶可以識別的一組邏輯相關數據,這組數據只能被引用,chapter_4,16,當組件被規(guī)為以上5類主要組件中的一類以后,就要為之指定級別,所有組件都被指定為高、中、低三個級別。它們的級別取決于被更新或引用文件的個數以及數據元素類型的個數。,外部輸入定級表,外部輸入和外部查詢共用定級表,
9、外部輸入、外部輸出和外部查詢共用定級取值,chapter_4,17,內部邏輯文件或者外部接口文件定級,組件復雜度表,內部邏輯文件或者外部接口文件級數取值,將每個類別組件的每一級復雜度輸入到組件復雜度表中,每一組件的數量乘以所示的級數得出定級的值,chapter_4,18,(3) TCF-技術復雜度因子,技術復雜度因子取決于14個通用系統(tǒng)特性。影響程度的取值從0到5,從沒有影響到強烈影響。計算復雜度因子公式如下: TCF=0.65+0.01(sum(Fi): Fi:0-5,TCF:0.65-1.35,chapter_4,19,【例1】一個軟件的五類功能計數項如下左圖,計算這個軟件的功能點 1)計
10、算UFC:按照UFC的計算過程如下右圖,得UFC301 2)計算TCF:按公式計算得TCF=0.65+0.01(14*3)=1.07 3)計算FP:按公式計算得FP=301*1.07=322,chapter_4,20,(4) 功能點與代碼行的轉換,功能點可以按照一定的條件轉換為代碼行,是針對各種語言的轉換率,它是根據經驗的研究得出的。如表所示:,chapter_4,21,4.3.2 類比估算法,估算人員根據以往的完成類似項目所消耗的總成本(或工作量),來推算將要開發(fā)的軟件的總成本(或工作量),然后按比例將它分配到各個開發(fā)任務單元中 是一種自上而下的估算形式 對于度量相似度,目前的研究中常有兩種
11、求值方式來度量差距,即不加權的歐式距離和加權的歐式距離:,chapter_4,22,類比舉例,chapter_4,23,對于工作量最后估算值的確定,有不同的方法,如: 可以直接取最相似的項目的工作量(對應P0工作量取1000) 可以取幾個相似的項目的工作量的平均值(對應P0工作量取1900/2=950) 目前,類別估算的方法,基本上采用主觀推測,很少采用相似度計算的方法,chapter_4,24,4.3.3 自下而上估算法,利用任務分解結構圖,對各個具體工作包進行詳細的成本估算,然后將結果累加起來得出項目總成本。 自下而上使用情況: 項目開始以后,WBS的開發(fā)階段; 需要進行準確估算的時候 自
12、下而上特點: 這種方法相對比較準確,它的準確度來源于每個任務的估算情況 非常費時,估算本身也需要成本支持 可能發(fā)生虛報現象,chapter_4,25,4.3.4 參數模型估算法,參數模型估算法也稱算法模型或者經營導出模型,是一種使用項目特性參數建立數據模型來估算成本的方法,是一種統(tǒng)計技術,如回歸分析和學習曲線。 其基本思想是:找到軟件工作量的各種成本影響因子,并判斷它對工作量所產生的影響程度是可加的、乘數的還是指數的,以期得到最佳的模型算法表達形式。 當某個因子只影響系統(tǒng)的局部時,我們一般說它是可加的,如:給系統(tǒng)增加源指令、功能點實體、模塊等 當某個因子對整個系統(tǒng)具有全局性的影響時,則說它是乘
13、數的或指數的。如:增加服務需求的等級或者不兼容的客戶等,chapter_4,26,(1)靜態(tài)單變量模型,這類模型的總結構形式如下: E=A+B*SC E:以人月表示的工作量 A,B,C:經驗導出的系數 S:主要的輸入參數(通常是LOC,FP等),chapter_4,27,以下為幾個典型的靜態(tài)單變量模型: 面向LOC的估算模型 Walston-Felix(IBM) E= 5.2*(KLOC)0.91 Balley-Basili E=5.5+0.73*(KLOC)1.16 .COCOMO E=3.2*(KLOC)1.05 Doty E=5.288*(KLOC)1.047 面向FP驅動的 Albre
14、cht and Gaffney E=-12.39+0.0545FP Matson,Barnett E=585.7+15.12FP,chapter_4,28,(2)動態(tài)多變量模型,動態(tài)多變量模型也稱為軟件方程式,該模型把工作量看作是軟件規(guī)模和開發(fā)時間這兩個變量的函數 E=(LOC*B0.333/P)3*(1/t)4 E:以人月表示的工作量 t:以月或年為單位的項目持續(xù)時間 B:特殊技術因子,隨著對測試、質量保證、文檔及管理技術的需求的增加而緩慢增加 P:生產率參數,可從歷史數據導出適用于當前項目的生產率參數值 對較小的程序(KLOC5-15),B0.16 對超過70KLOC的程序,B0.39 開
15、發(fā)嵌入式軟件時,P的典型值為2000;開發(fā)電信系統(tǒng)和系統(tǒng)軟件時,P10000;對商業(yè)系統(tǒng)P28000,chapter_4,29,COCOMO(Constructive Cost model)模型,參數模型估算方法適合于比較成熟的軟件企業(yè),其中COCOMO模型是一種結構化成本模型 ,也是世界上應用最廣泛的參數型軟件成本估計模型 由Barry Boehm開發(fā)的 COCOMO模型通用公式: 其中,PM為工作量,通常表示為人月;A為校準因子;Size為對工作量呈可加性影響的軟件模塊的功能尺寸的度量;B為工作量呈指數或非線性影響的比例因子;EM為影響軟件開發(fā)工作量的工作量乘數。,chapter_4,30
16、,COCOMO模型發(fā)展,COCOMO 81 COCOMO II 模型系列,chapter_4,31,1. COCOMO 81,COCOMO 81有3個等級的模型: 基本COCOMO:在項目相關信息極少的情況下使用; 中等COCOMO:在需求確定以后使用 高級COCOMO:在設計完成后使用 COCOMO 81的3個等級模型也滿足類似的通用公式:Efforta(KLOCK)bF 其中:Effort為工作量,表示為人月;a和b為系數,具體取值取決于建模等級(即基本、中等或高級)以及項目的模式(有機、半嵌入型或嵌入型),chapter_4,32,1. COCOMO 81,COCOMO 81將項目的模式
17、分為: 有機: Organic, 各類應用程序,例如數據處理、科學計算 等 受硬件的約束比較小,程序的規(guī)模不是很大 嵌入式: Embedded 系統(tǒng)程序,例如實時處理、控制程序等 緊密聯系的硬件、軟件和操作的限制條件下運行,軟件規(guī)模任意 半有機: Semidetached 各類實用程序,介于上述兩種軟件之間,例如編譯器(程序) 規(guī)模和復雜度都屬于中等或者更高,chapter_4,33,(1)基本COCOMO,E= a(KLOC)exp(b) 其中: E是所需的人力(人月), KLOC是交付的代碼行 a , b是依賴于項目自然屬性的參數:,chapter_4,34,舉例,一個33.3 KLOC的
18、軟件開發(fā)項目,屬于中等規(guī)模、半有機型的項目,采用基本COCOMO: a=3.0,b=1.12。 E = 3.0L 1.12 = 3.033.3 1.12 = 152 PM,chapter_4,35,(2)中等COCOMO,E=a(KLOC)exp(b)*乘法因子 a b是系數 乘法因子是根據成本驅動屬性打分的結果,對公式的校正系數,chapter_4,36,乘法因子屬性,產品屬性 平臺屬性 人員屬性 過程屬性,chapter_4,37,乘法因子,chapter_4,38,乘法因子計算,每個屬性Fi的取值范圍為: 很低、低、正常、高、很高、極高,共六級。正常情況下 Fi=1。 當每個Fi的值選定
19、后,乘法因子的計算如下 乘法因子F1*F2* Fi * Fn,chapter_4,39,舉例(續(xù)),一個33.3 KLOC的軟件開發(fā)項目,屬于中等規(guī)模、半有機型的項目,采用中等COCOMO模型 a=3.0,b=1.12。 乘法因子0.70*0.85*1*1.15=1.09 E = 3.0L 1.12 = 3.033.3 1.12 PM,chapter_4,40,(3)高級(詳細)COCOMO,將項目分解為一系列的子系統(tǒng)或者子模型 在一組子模型的基礎上更加精確地調整一個模型的屬性, 高級COCOMO模型的工作量計算公式與中等COCOMO模型相同,其主要區(qū)別在于: 將待估算的軟件項目分解為模塊、子
20、系統(tǒng)、系統(tǒng)3個等級 增加了與開發(fā)階段相關的工作量乘數,它可以準確反映成本驅動因子對工作量階段分布的影響,chapter_4,41,chapter_4,42,4.3.5 專家估算法,專家估算是由一個被認為是該任務專家的人來進行估算,并且估算過程的很大一部分是基于不清晰、不可重復的過程,也就是直覺。 由多位專家進行成本估算,一個專家可能會有偏見,最好由多位專家進行估算,取得多個估算值,最后得出綜合的估算值。,chapter_4,43,專家估算法-Deiphi,組織者發(fā)給每位專家一份軟件系統(tǒng)的規(guī)格說明和一張記錄估算值的表格,請他們估算 專家詳細研究軟件規(guī)格說明后,對該軟件提出3個規(guī)模的估算值 最小a
21、i 最可能的mi 最大bi 組織者對專家的表格中的答復進行整理,計算每位專家的Ei=(ai+4mi+bi)/6,然后,計算出期望值:E=E1+E2+En/n(N:表示N 個專家),chapter_4,44,專家估算法-Deiphi(續(xù)),綜合結果后,再組織專家無記名填表格,比較估算差,并查找原因 如果各個專家的估算差異超出規(guī)定的范圍(例如:15%),則需重復上述過程 ,最終可以獲得一個多數專家共識的軟件規(guī)模,chapter_4,45,專家估算法-舉例,某多媒體信息查詢系統(tǒng)專家估算 專家1:1,8,9=(1+9+4 * 8 )/6=7(萬元) 專家2: 4, 6 , 8 =(4+8+4*6)/6
22、=6 (萬元) 估算結果=(6+7)/2=6.5 (萬元),chapter_4,46,4.3.6 猜測法,猜測法是一種經驗估算法,進行估算的人有專門的知識和豐富的經驗,據此提出一個近似的數據,是一種原始的估算方法。 此方法只適用于要求很快拿出項目的大概數字的情況,對于要求詳細估算的項目是不適合的,chapter_4,47,4.3.7 成本估算方法綜述,主要考慮三種模型:類比法,自下而上法,參數法. 自下而上法費時費力,參數法比較簡單 自下向上法與參數法的估計精度相似 類比法通常用來驗證參數法和自下而上法的結果 各種方法不是孤立的,應該注意相互的結合使用,chapter_4,48,實用軟件估算模
23、型,是一種自下而上和參數法的結合模型,步驟如下: 對任務進行分解:1,2,i 估算每個任務的成本Ei 直接成本=E1+E2+ Ei+ En 項目總估算成本= 直接成本+間接成本 項目總報價=項目總估算成本+風險利潤 風險利潤=利潤+風險基金+稅,chapter_4,49,估算每個任務的成本,直接估算成本Ei 先估算規(guī)模Qi,然后估算成本Ei= Qi *人力成本參數 唯一估計值:Qi=Avg PERT算法: Qi=(Max+4Avg+Min)/6,chapter_4,50,直接成本估算,直接成本=規(guī)模*人力成本參數 直接成本組成 開發(fā)成本 管理成本 質量成本 例如:人力成本參數=2萬/人月,30
24、人月規(guī)模的項目的直接成本是 60萬,chapter_4,51,直接成本估算簡易估算:,開發(fā)(工作量)規(guī)模: Scale(Dev) (單位:人月) 管理、質量(工作量)規(guī)模: Scale(Mgn)=a* Scale(Dev) a為比例系數:例如:20%-25% 直接成本 Scale(Dev) a* Scale(Dev),退出,chapter_4,52,項目總估算成本,估算成本=直接成本+間接成本 間接成本估算: 按照企業(yè)模型直接估算: 簡易算法: 間接成本=直接成本*間接成本系數 間接成本= 規(guī)模*人力成本參數*間接成本系數 例如:間接成本系數=0.3,chapter_4,53,項目總估算成本,
25、估算成本=直接成本+間接成本 估算成本=直接成本+直接成本*間接成本系數 估算成本=直接成本(1+間接成本系數) 估算成本=規(guī)模*人力成本參數(1+間接成本系數) 成本系數=人力成本參數* (1+間接成本系數) 簡易算法: 估算成本=規(guī)模*成本系數 例如:成本系數= 3萬/人月,退出,chapter_4,54,項目總報價,項目總報價=項目總估算成本+風險利潤 項目利潤=估算成本*a% 風險基金=估算成本*b% 稅=估算成本*c% (例如:c為5.5左右) 項目總報價=(a+b+c) %*項目總估算成本+項目總估算成本,chapter_4,55,4.4 估算的誤差度,一般說,進行規(guī)模成本估算都存
26、在一定的誤差。誤差的大小會因項目的不同、因項目階段的不同而有所不同,chapter_4,56,1.估算的誤差,項目估算在不同的階段會有不同的誤差,常規(guī)估算準確度的統(tǒng)如表,chapter_4,57,2. 估算不準的原因,基礎數據不足 缺乏經驗的估算人員 簽約前后不連貫:簽約前,銷售人員為了拿到項目,而夸大了承諾,或者削減了價格 低劣的推測技術 估算對需求的敏感性,chapter_4,58,3.對付估算誤差的方法,避免無準備的估算 留出估算的時間,并做好計劃 使用以前的項目數據 使用開發(fā)人員提供的數據為基礎估算 分類法估算 詳細的較低層次上的估算 使用軟件估算工具 使用幾種不同估算技術,并比較它們
27、的結果,chapter_4,59,估算的表達方式技巧,加減限定 6個人月,+3人月,-1人月 范圍 5-9人月,chapter_4,60,估算的表達方式技巧,3.風險量化: 見下例,chapter_4,61,估算的表達方式技巧,4.情況: 見下:案例估算的例子,chapter_4,62,軟件工程中的真相與假象,該書總結了55個真相和10個假象,其中直接與估算有關的7個真像和1個假象: 真相8:造成軟件項目失控最普遍的兩個原因之一就是軟件估算不足(另外的原因是需求不穩(wěn)定). 真相9:往往在錯誤的時間,甚至在沒有定義需求也即沒有理解問題之前,就進行軟件估算. 真相10:往往由錯誤的人員,即不是由軟
28、件開發(fā)人員或者項目經理,而是由高層管理或者市場營銷,進行軟件估算. 真相11:由錯誤的人員、在錯誤的時間做出的軟件估算不但往往是錯誤的,也很少隨著項目的進行做必要的調整.,chapter_4,63,軟件工程中的真相與假象,真相12:雖然軟件估算會發(fā)生如此錯誤,但是人們不去關心產生錯誤的原因,卻還在努力按照錯誤估算的時間進度執(zhí)行. 真相13:管理人員和技術人員對軟件估算的認識是完全隔絕的,因此也難以達到一致的目標. 真相14:很少有真正的可行性研究. 假象6:要估算軟件項目開發(fā)時間和開發(fā)成本,必須首先估算軟件項目的代碼行數,chapter_4,64,4.5 成本預算,成本預算是將項目的總成本按照
29、項目的進度分攤到各個工作單元中去。成本預算將總的成本安排到各個任務中 成本預算的目的是產生成本基線 分配項目成本預算包括三種情況: 分配資源成本 給任務分配固定資源成本 給任務分配固定成本,chapter_4,65,1)分配資源成本,這是最常用的一種方式,即根據每個任務的資源分配情況來計算這個任務的成本預算,而資源成本與資源的基本費率緊密相連,所以要設置資源費率 設置資源費率如: 標準費率 加班費率 每次使用費率 。,chapter_4,66,2)分配固定資源成本,當一個項目的資源需要固定數量的資金時,用戶可以向任務分配固定資源成本。 例如:需要的硬件設備,chapter_4,67,3)分配固定成本,有些任務是固定成本的類型的任務,也就是說,用戶知道某項任務的成本不變,不管任務的工期有多長,或不管任務使用了那些資源。在這種情況下,用戶向任務直接分配成本。 例如:培訓任務,chapter_4,68,成本基線,編制成本預算過程中,應該提供一個成本基線 成本基線是每個時間段內的成本,它是項目管理者度量和監(jiān)控項目的依據,chapter_4,69,4.6 案例分析,“校務通系統(tǒng)”項目成本估算 項目估算結果,chapter_4,70,核心計劃小結,合同,需求,WBS,活動,活動排序,活動歷時估計,編制計劃,成本估算,成本預算,
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
5. 裝配圖網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 建筑施工重大危險源安全管理制度
- 安全培訓資料:典型建筑火災的防治基本原則與救援技術
- 企業(yè)雙重預防體系應知應會知識問答
- 8 各種煤礦安全考試試題
- 9 危險化學品經營單位安全生產管理人員模擬考試題庫試卷附答案
- 加壓過濾機司機技術操作規(guī)程
- 樹脂砂混砂工藝知識總結
- XXXXX現場安全應急處置預案
- 某公司消防安全檢查制度總結
- 1 煤礦安全檢查工(中級)職業(yè)技能理論知識考核試題含答案
- 4.燃氣安全生產企業(yè)主要負責人模擬考試題庫試卷含答案
- 工段(班組)級安全檢查表
- D 氯化工藝作業(yè)模擬考試題庫試卷含答案-4
- 建筑起重司索信號工安全操作要點
- 實驗室計量常見的30個問問答題含解析