浅析项目工作量估算方法
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?淺析項目工作量估算方法
? ? ? ?馬克思主義的認識論和實踐觀告訴我們,認識源于實踐;總結實踐經驗、深化認識,進而指導實踐,通過實踐檢驗、修正認識(理論),螺旋式上升地提高認識。
? ? ? ?項目管理作為一個實踐性很強的學科,特別需要理論實踐相結合。在實際的項目管理工作中,每個管理者都有自己的一套辦法,有的不看理論,純粹自己摸索的(稱之為“野路子”);有的是純靠理論的;有的是理論與實踐相結合的。純靠理論的那種,如果是用來教學,那還是合適的,如果真用到項目管理中,通常不會獲得成功。對于不看理論,自己探索的,也不乏出色的管理者。我們走近這些人,去研究他們的管理模式后就會發現,雖不看理論,但管理方式卻與理論如出一轍。對于理論與實踐相結合的,無疑是最好的,也是最適宜絕大多數項目管理者的。我們也建議從事項目管理工作的同仁能邊做、邊總結、邊學習、邊分享,取得更大的成績與進步。
? ? ? ?本文從理論和實踐兩方面出發,帶大家再次溫習一下工作量評估。
第一部分,理論學習。
? ? ? 項目工作量估算是對項目全生命周期各階段活動所需投入的人力資源成本進行度量量化、統計的行為活動,產出的成果應成為項目工期估算、計劃制定、資源需求估算、風險管理的依據。
? ? ? ?常用的工作量估算方法有:Delphi頭腦風暴(DWB)法、類比估算法、功能點分析(FPA)法和三點估算法。
? ? ? ?類比估算法,根據以前類似項目的實際工作量,憑經驗來推測當前項目的工作量。例如,以前新增過一個重要空白憑證,實際工作量大概是15人天。參照歷史經驗,我們推測當前的新增網銀Key重要空白憑證的項目為20人天(多出的5人天為網銀端改造)。
? ? ? Delphi頭腦風暴(DWB)法(德爾菲估算法),也是一種比較典型的專家判斷法,是由許多專家運用結構化的方法來做出主觀判斷。簡單來說就是背對背評估、偏差不超過一定數值(比如10%)有效。德爾菲估算法一般進行4~6輪,使大家的意見逐漸趨于一致。
? ? ? 功能點估算法,是一種在需求分析階段基于系統功能的一種規模估計方法。通過研究初始應用需求來確定各種輸入、輸出、計算和數據庫需求的數量和特性。該算法用的最多的是功能點技術(Function Point,FP),該技術是Albrecht在1979年首先提出來的一種比較流行的估算方法,它將估算的關注點集中于程序的“功能性”和“實用性”上,而不是LOC的計數上。
? ? ? ?這種方法的計算公式是:
? ? ? 功能點=信息處理規模X技術復雜度。
? ? ? 信息處理規模包括各種輸入、輸出、查詢、內部邏輯文件數、外部接口文件數等等;技術復雜度包括性能復雜度、配置項目復雜度、數據通信復雜度、分布式處理復雜度、在線更新復雜度等等。
?? ? ? 三點估算法,是指估算三種可能的工期,然后加權平均,得出活動的平均工期和標準偏差。常用公式包括:
? ? ? ? ? ? ? ? ? ? ? 期望工期 = (樂觀估計+ 4 X 一般估計? + 悲觀估計)/6
? ? ? ? ? ? ? ? ? ? ? 標準偏差 = (悲觀估計 – 樂觀估計)/6
? ? ? ? ? ? ? ? ? ? ? 方差 = [(悲觀估計 – 樂觀估計)/6]2
? ? ?公式中,期望工期是指有50%的可能性在該工期內完工;樂觀估計是指在各種條件都很好的情況下,活動所需要的最短工期;悲觀估計指在各種條件都很差的情況下,活動所需要的最長工期;標準偏差指悲觀與樂觀估計之間的離散程度,表示活動的風險的大小;方差指標準偏差的平方,用于計算整條路徑的總工期的標準偏差。
?第二部分,實踐經驗。
? ? ??功能點估算法。通常,項目經理在接到項目后,評估完可行性后,就要做一個WBS分解,將項目先按大的模塊拆分、再逐層細分。理論上,拆分的粒度越小越好,但考慮到工期問題,通常我們能拆分到某支具備獨立功能的交易就可以了。基于WBS,我們評估通過定義每個功能的輸入有多少字段、輸出有多少字段、用到多少張數據表、用到什么文件等,定義項目的復雜系數,然后可以自動計算出項目的最少工作量、推薦工作量和最多工作量。
? ? ? ?最后項目經理采用的工作量只要在區間范圍內即可。
? ? ? ?該方法操作起來較為簡單,也方便高層領導驗證,防止虛報;方法基于組織的歷史經驗數據建模,可持續改進優化。
? ? ? ?要用好功能點估算法,需要做到以下幾點:
1、項目類型劃分。通常可分為新建類、升級改造類,不同類型也對應不同的復雜系數。
2、功能拆分盡可能細。可下探到交易、函數、數據表、文件。從這個角度講,有點像自下而上估算法。
3、功能分類,初始化復雜系數。將功能分為查詢交易、維護類交易、新增類交易、刪除類交易、新增數據表、修改數據表、文件上傳、文件下載等等,并為每類功能定義初始的復雜系數(這個靠專家判斷了)。
4、建立與需求跟蹤矩陣的關聯。防止為了湊工作量瞎編功能。
? ? ??德爾菲估算法。項目經理在拿到需求后,首先做需求分析,列出需求涉及到的功能,其實也是框定范圍、做WBS分解的過程。理論上,這一步也是越細越好(每個需求條目最好不要超過80人時,即10人天)。第二,評估每一個需求條目的工作量。這一步用到了專家判斷和德爾菲估算法,首先每位評估人背靠背根據自己的經驗判斷完成每個需求條目所需的工作量,并提交到系統;然后系統針對每個需求條目對應的工作量加總取平均,然后將每位評估人評估的工作量與平均值比較,任一需求條目的偏差超過閾值(比如10%),則視為不通過,需要重新評估;如此反復,直到偏差在10%以內。
德爾菲法有三個特點:
(1)反饋性:表現在多次作業,即在偏差超過閾值時反復修訂與評定。
(2)獨立性:參與評估的專家之間獨立評估,不商量、不討論,只通過他們頭腦中的數據資料和經驗,經過分析,判斷和計算,確定出理想的結果。
(3)統計性:對各位專家提出的意見進行統計,再取平均數或是中位數統計出量化結果。
?
?? 第三部分,個人總結。
? ? 在外包模式下,工作量估算結果經過計算后即為開發該功能所需花費的成本,所以企業必須重視。企業需要根據實際情況選擇適合自己企業特色的估算方法,做到客觀、公正。
?? 從個人角度,我認為“功能點估算+德爾菲方法”。首先,企業收集歷史經驗數據搭建功能點估算的數據模型,設定關注參數,比如項目類型、功能點復雜度、功能點是否重(chong)用、功能點影響范圍等;然后采用德爾菲方法,交由3名專家以上的評估團進行評估,評估團背靠背設定關注參數;最后,每名評估人提交評估結果,系統檢查評估偏差是否超過閾值,若超過,則重新開始,直至在閾值范圍內。
?? 無論采用哪一種評估方法,最后的評估結果都要進行正式評審。
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
總結
以上是生活随笔為你收集整理的浅析项目工作量估算方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python数据精度_python数字精
- 下一篇: Minio过期分片上传文件清理引出的系统