評價(jià)一個(gè)軟件項(xiàng)目(這里主要指合同項(xiàng)目)管理優(yōu)劣的主要指標(biāo)是質(zhì)量、進(jìn)度和成本,這已為業(yè)界所公認(rèn)。軟件項(xiàng)目的質(zhì)量管理問題自有一套完整的體系,包括定義良好的過程、評價(jià)準(zhǔn)則和控制方法。軟件項(xiàng)目的計(jì)劃進(jìn)度反映了用戶對項(xiàng)目在時(shí)間方面的要求,從我國的實(shí)際情況看,這種時(shí)間要求往往不是由項(xiàng)目的設(shè)計(jì)開發(fā)方根據(jù)對項(xiàng)目規(guī)模、性質(zhì)以及資源等的估算提出來的,而往往是由用戶根據(jù)其使用要求、市場需求,有的甚至是根據(jù)某種行政或政治上的需要提出來的。這兩種要求有時(shí)有很大的差距,用戶的要求往往偏緊。這是多數(shù)軟件項(xiàng)目不能按時(shí)完成的重要原因。軟件項(xiàng)目的成本主要是人力資源成本,而人力資源成本直接與投入項(xiàng)目的人力和項(xiàng)目的計(jì)劃進(jìn)度相關(guān)。大多數(shù)情況下,項(xiàng)目經(jīng)理對人力資源的控制能力是很有限的(更多的權(quán)力在項(xiàng)目經(jīng)理的上層),項(xiàng)目經(jīng)理能夠控制的就是進(jìn)度。所以,從某種意義上說,控制好了進(jìn)度,成本基本上也就控制了。項(xiàng)目經(jīng)理想要在既定的項(xiàng)目工期內(nèi)完成任務(wù),那么控制項(xiàng)目的計(jì)劃進(jìn)度是非常關(guān)鍵的,是至關(guān)重要的。但是,在實(shí)踐中,我們看到有很多項(xiàng)目沒能按計(jì)劃完成,項(xiàng)目經(jīng)理在執(zhí)行中往往不知道如何控制計(jì)劃,發(fā)覺了計(jì)劃已經(jīng)偏離,但不知道偏離有多大,影響有多嚴(yán)重,如何采取有效的措施來糾正。
有一個(gè)不是笑話的例子:
老板對項(xiàng)目經(jīng)理小張說:“這個(gè)項(xiàng)目對公司和客戶都很重要,你們要好好干,在四個(gè)月內(nèi)完成,要讓客戶滿意。四個(gè)月后我來看你們的成果,為你們慶功?!?
按規(guī)?,每铬V苣┬≌哦家蚶習(xí)寤惚ㄏ钅拷骨榭觶啡鱸呂錚≌琶看位惚ǘ妓擔(dān)茫顧忱?lt;BR>
四個(gè)月時(shí),老板興沖沖地問小張:“項(xiàng)目完成了吧,可以請客戶驗(yàn)收了吧?”
小張卻說:“還有一些小問題,再給我半個(gè)月時(shí)間,應(yīng)該沒問題?!?
四個(gè)半月后,小張?jiān)趨R報(bào)中說:“出了點(diǎn)小意外,我們正在解決,我們保證在一星期內(nèi)解決。”
五個(gè)月后,小張說:“我們在測試時(shí)遇到了點(diǎn)小麻煩,還需半個(gè)月?!?
六個(gè)月后,小張說:“我們正在修改一些重要功能,還需半個(gè)月?!?
七個(gè)月時(shí),小張說:“我們正在完善一些重要功能,還需半個(gè)月?!?
八個(gè)月后,項(xiàng)目總算完成了,老板請客戶來驗(yàn)收,客戶礙于情面同時(shí)也覺得再也等不起了,就通過驗(yàn)收,投入試用。
過了試用期,客戶卻不按合同規(guī)定付款,他們說,試用中發(fā)現(xiàn)了好多問題,要到這些問題都解決了才能付款。
比起那些因?yàn)橛?jì)劃拖延得太多而放棄的項(xiàng)目來,小張他們還算不錯(cuò)。但公司可能賺不到錢了,客戶的項(xiàng)目建設(shè)計(jì)劃泡湯了,應(yīng)用也受到嚴(yán)重影響,公司的客戶滿意度和在業(yè)界的聲譽(yù)也受到了影響。
為什么小張他們一而再,再而三地突破計(jì)劃呢?很大的可能是小張?jiān)诿看沃軈R報(bào)時(shí)不能正確地判定當(dāng)時(shí)的狀態(tài),發(fā)現(xiàn)問題后,又不能評估問題的嚴(yán)重程度,當(dāng)然也不會提出切實(shí)的解決措施。
本文提出的積分法就是要讓項(xiàng)目經(jīng)理和項(xiàng)目成員能在檢查點(diǎn)處定量地評估當(dāng)時(shí)的進(jìn)度狀態(tài),定量地分析問題的嚴(yán)重程度,預(yù)測后果和輔助項(xiàng)目經(jīng)理和項(xiàng)目成員對進(jìn)度問題作出正確的決策。
1、用積分法控制進(jìn)度
積分法的基本思想是,為項(xiàng)目中每一項(xiàng)任務(wù)按項(xiàng)目計(jì)劃給出一個(gè)績效指標(biāo)—計(jì)劃積分,在項(xiàng)目執(zhí)行過程中的每一個(gè)檢查點(diǎn)(一般應(yīng)在里程碑點(diǎn),或按月/周定期)按執(zhí)行計(jì)劃的績效得出實(shí)際積分,通過這兩個(gè)積分值的比較,分析、評估項(xiàng)目的進(jìn)度狀態(tài)。
讓我們用一個(gè)例子來說明這種方法是如何控制進(jìn)度的。一般在作項(xiàng)目計(jì)劃時(shí)都應(yīng)該繪制計(jì)劃圖(如GANTT圖,可用MS PROJECT繪),圖1是項(xiàng)目EXP(本文用的案例)的GANTT圖。圖中還包含了人力的安排,在表示每項(xiàng)任務(wù)工期的杠的兩端標(biāo)出了該項(xiàng)任務(wù)的開工和完工日期。繪制這種圖的難度在于對整個(gè)項(xiàng)目工作量的估計(jì)和對各項(xiàng)任務(wù)工作量的分配,關(guān)于這方面的問題,在不少資料上有介紹,本文不予討論。從圖1可以看出,這是一個(gè)需要100人-周工作量,分成9項(xiàng)任務(wù)的項(xiàng)目。開發(fā)工期為9個(gè)半月。下面我們討論積分法的工作步驟。
2、 積分和累計(jì)積分
1) 計(jì)算每個(gè)月(時(shí)間粒度可因項(xiàng)目而異)的計(jì)劃積分
由計(jì)劃圖中各項(xiàng)任務(wù)的工作量及其工期和項(xiàng)目的總工作量可計(jì)算出每個(gè)月的計(jì)劃
積分,計(jì)算公式如下:
某月的計(jì)劃積分 = (該月計(jì)劃的各項(xiàng)任務(wù)的工作量之和 / 項(xiàng)目的總工作量)* 100
例如本例,在5月份,有兩項(xiàng)工作:部分的需求和部分的設(shè)計(jì)工作,所以
5月份的積分 = (用于做需求的工作 + 用于做設(shè)計(jì)的工作)/ 100 * 100
= (2 * 18 + 3 * 31)/ 7 = 18.4
工作量的單位是人-周,每周7天
2) 計(jì)算每個(gè)月的計(jì)劃累計(jì)積分
某月的計(jì)劃累計(jì)積分 = 該月上個(gè)月的計(jì)劃累計(jì)積分 + 該月的計(jì)劃積分
不言而喻,第一個(gè)月的計(jì)劃累計(jì)積分等于它當(dāng)月的計(jì)劃積分。
例如本例,5月份的計(jì)劃累計(jì)積分 = 4月份的計(jì)劃累計(jì)積分 + 5月份的計(jì)劃積分
= 14.6 + 18.4 = 33
在圖2的下方列出了項(xiàng)目EXP各個(gè)月份的計(jì)劃積分和計(jì)劃累計(jì)積分。
3、 進(jìn)度狀態(tài)圖
狀態(tài)是特定時(shí)刻的狀況,所以,計(jì)劃進(jìn)度狀態(tài)圖是項(xiàng)目在某個(gè)特定時(shí)間(即檢查點(diǎn),如
里程碑、月底、周末等)計(jì)劃執(zhí)行的狀況圖。圖2是項(xiàng)目EXP在6月底的進(jìn)度狀態(tài)圖。
1) 估算各項(xiàng)任務(wù)實(shí)際完成的工作量
估算各項(xiàng)任務(wù)到給定時(shí)刻實(shí)際已完成的工作量并在進(jìn)度狀態(tài)圖中標(biāo)示(在計(jì)劃工期
杠的下面畫杠。如果由于時(shí)間粒度原因在進(jìn)度狀態(tài)圖上不能足夠精確地標(biāo)示出任務(wù)已完成的工作量,那么需要將任務(wù)做進(jìn)一步的分解,這將在后面討論)。在本例中,項(xiàng)目到6月底完成了規(guī)劃任務(wù),但需求、設(shè)計(jì)和實(shí)現(xiàn)任務(wù)都未完成計(jì)劃,如圖2所示。
2) 計(jì)算實(shí)際完成積分
計(jì)算在給定時(shí)間以前每個(gè)月的實(shí)際完成積分,方法與計(jì)算月的計(jì)劃積分一樣,即
當(dāng)月完成積分 = (該月實(shí)際完成的各項(xiàng)任務(wù)的工作量之和 / 項(xiàng)目的總工作量)* 100
月 份
任務(wù)-人 3 4 5
6
7 8 9 10 11 12 工作量
(人-周)
規(guī)劃-1 3.1 4.4 4
需求-2 3.28 5.18 15
設(shè)計(jì)-3 5.1 6.16 20
實(shí)現(xiàn)-3 6.5 7.21 20
測試-2 7.10 10.22 30
文檔-2 10.15 10.26 3
培訓(xùn)-1 10.29 11.11 2
交付-2 11.15 12.2 5
總結(jié) 12.15 1
當(dāng)月計(jì)劃積分 5.6 9 18.4 18 15.2 8.8 8.8 10 4.6 1.6 100
計(jì)劃累計(jì)積分 5.6 14.6 33 51 66.2 75 83.8 93.8 98.4 100
實(shí)際完成積分 5.6 9 16.4 10
累計(jì)完成積分 5.6 14.6 31 41
圖2 六月底進(jìn)度狀態(tài)圖
3) 計(jì)算實(shí)際完成累計(jì)積分
當(dāng)月的累計(jì)完成積分 = 該月上個(gè)月的累計(jì)完成積分 + 該月的實(shí)際完成積分
項(xiàng)目EXP的這兩項(xiàng)積分分別列出在圖2的最后兩行中。
4、 進(jìn)度狀態(tài)分析
1) 進(jìn)度狀態(tài)分析圖
進(jìn)度狀態(tài)分析圖是將項(xiàng)目在給定時(shí)間實(shí)際完成任務(wù)的狀況和原來計(jì)劃作比較,并用
圖形表示之。進(jìn)度狀態(tài)分析圖是以X軸作時(shí)間軸,Y軸作積分軸畫出的計(jì)劃積分和實(shí)際完成積分的兩條折線。項(xiàng)目EXP在6月底的進(jìn)度狀態(tài)分析圖如圖3所示。 [NextPage]
2) 進(jìn)度狀態(tài)分析
進(jìn)度狀態(tài)分析要回答如下的問題:
1/ 當(dāng)前計(jì)劃是拖延了還是超前了?拖延/超前了多少?
2/ 若繼續(xù)按當(dāng)前的工作效率工作,那么完成整個(gè)項(xiàng)目還需多長時(shí)間?
3/ 若要按原計(jì)劃完成項(xiàng)目,需采取什么措施?
下面我們來逐個(gè)分析這三個(gè)問題。
A. 偏離分析
回答問題1/的分析稱為偏離分析,偏離是指在給定時(shí)間的實(shí)際累計(jì)積分與計(jì)劃累計(jì)積分之差,即
DPT = AAG – PAG
其中:DPT為偏離,AAG為實(shí)際累計(jì)積分,PAG為計(jì)劃累計(jì)積分。
所以,若DPT > 0, 則表示計(jì)劃超前了;反之,若DPT < 0,則表示計(jì)劃拖延了。
偏離量 DFR = (DPT / PAG)* 100%,若DFR < 0,則DFR是計(jì)劃拖延量;反之,若
DFR > 0,則DFR是計(jì)劃超前量。例如,項(xiàng)目EXP在6月底時(shí)
DPT = 41-51 = -10
DER = -10/51*100% = -19.61%
說明計(jì)劃是拖延了,拖延了19.61%。有時(shí)用工作量表示偏離量更直觀,根據(jù)偏離、偏離量和積分的定義,顯然有
DERw = DPT / 100 * WRKt (人-周)
式中:DERw為用工作量表示的偏離量
WRKt為項(xiàng)目的總工作量
同樣,DERw < 0, 表示拖延量;DERw > 0,表示超前量。用于本例的情況,
DERw = -10 / 100 * 100 = -10 (人-周),即計(jì)劃拖延了10個(gè)人-周。
B. 影響分析
用于回答問題B的分析稱為影響分析。若在檢查點(diǎn)以后繼續(xù)用當(dāng)前的工作效率去
完成項(xiàng)目實(shí)際剩余的工作量還需要多長時(shí)間呢?如果用單位時(shí)間內(nèi)完成的積分來表示工作效率的話,我們有
Tr = (100-AAG)/ EFC (月)
式中:Tr為用當(dāng)前的工作效率完成剩余工作所需的時(shí)間
EFC為當(dāng)前工作效率,其量綱是“積分/月”(時(shí)間粒度可因項(xiàng)目而異)
這里,對“當(dāng)前工作效率”有多種不同的計(jì)算方法,下面是可能的三種:
1/ 用最靠近檢查點(diǎn)的單位時(shí)間內(nèi)的實(shí)際工作效率作為當(dāng)前工作效率,我們用EFC1表示。以項(xiàng)目EXP為例,當(dāng)前工作效率即為6月份的實(shí)際工作效率,從圖2中的數(shù)據(jù)得到EFC1 = 10; 2/ 用從上一次的檢查點(diǎn)到現(xiàn)在的檢查點(diǎn)之間的平均實(shí)際工作效率作為當(dāng)前工作效率,我們用EFC2表示;
3/ 用從項(xiàng)目開始時(shí)間到現(xiàn)在的檢查點(diǎn)之間的平均實(shí)際工作效率作為當(dāng)前工作效率,我們用EFC3表示。以項(xiàng)目EXP為例,當(dāng)前工作效率即為3、4、5、6四個(gè)月的平均實(shí)際工作效率,從圖2中的數(shù)據(jù)得到
EFC3 =(5.6 + 9 + 16.4 + 10)/ 4 = 10.25。
當(dāng)然,也可用檢查點(diǎn)以后的計(jì)劃工作效率來計(jì)算EFC,選擇計(jì)算EFC的方法的原則
應(yīng)該是用最接近真實(shí)的工作效率。
現(xiàn)在可以來回答提出的問題了:
1/ Tr1 =(100 – AAG)/ EFC1 = (100 – 41)/ 10 = 5.9 (月)
這就是說,若用6月份的實(shí)際工作效率去完成剩余的工作,則還需要5.9個(gè)月的時(shí)間。
2/ Tr3 =(100 – AAG)/ EFC3 = (100 – 41)/ 10.25 = 5.76(月)
即若用以前的平均實(shí)際工作效率去完成剩余的工作,則還需要5.76個(gè)月的時(shí)間。
以上兩種結(jié)果的差別不大,都要拖一點(diǎn)計(jì)劃,但拖得都不多,因?yàn)樵?jì)劃的工期是9個(gè)半月,現(xiàn)在已過了4個(gè)月,還剩下5.5個(gè)月。
但是,這樣的分析可能存在一定的不合理性:在6月底檢查時(shí)發(fā)現(xiàn)拖進(jìn)度19.6%,未做任何改進(jìn),預(yù)測到完工時(shí)進(jìn)度僅拖后2%(=(4+5.76-9.5)/9.5*100%)。為什么?問題出在我們計(jì)算工作效率的方法上,從上面對EFC的定義我們發(fā)現(xiàn),這樣定義的效率是相對于時(shí)間的(單位時(shí)間內(nèi)完成的積分),而沒有考慮人力資源的因素,即沒有考慮是多少人在單位時(shí)間內(nèi)完成的積分。我們從項(xiàng)目EXP的計(jì)劃圖可以看出,到項(xiàng)目后期,按這種意義的工作效率將下降,特別是11、12兩個(gè)月。這顯然是跟人力資源有關(guān)(比如,項(xiàng)目前期,安排的人都是全職的,而到后期,則有的人就兼職了)。所以,上面的估計(jì)是偏樂觀的。如果我們用另一種方法來計(jì)算EFC,比如說,用從檢查點(diǎn)起到項(xiàng)目終了之間的平均計(jì)劃工作效率作為EFC,那么情況又會怎樣呢?由圖2中的數(shù)據(jù)我們可得到
EFC = (15.2 + 8.8 + 8.8 + 10 + 4.6 + 1.6)/ 5.5 = 8.91
Tr = (100 – AAG)/ EFC = 59 / 8.91 = 6.62 (月)
可以看出,如果不在原來計(jì)劃的基礎(chǔ)上提高工作效率的話,那么完成任務(wù)就要拖延計(jì)劃一個(gè)多月。哪種情況更符合實(shí)際,讓項(xiàng)目經(jīng)理去決策吧。
C. 措施分析
回答問題3/的分析稱為措施分析。這個(gè)問題的答案比較復(fù)雜,因?yàn)樗婕暗囊蛩乇?
較多,項(xiàng)目經(jīng)理應(yīng)該根據(jù)具體情況采取有效的措施。這里只回答一個(gè)問題:若要按原計(jì)劃完成任務(wù),應(yīng)該有怎樣的工作效率?這是影響分析的逆問題,即
EFC = (100 – AAG)/ (項(xiàng)目總工期 – 檢查點(diǎn)以前的時(shí)間)
用到項(xiàng)目EXP上,EFC =(100 – 41) / (9.5 – 4)
= 10.73 (積分/月)
就是說還是需要再提高一點(diǎn)工作效率才能按時(shí)完成任務(wù)。
5、 任務(wù)分解
從上面的討論我們可以看到,進(jìn)度控制的關(guān)鍵是要做好WBS(工作分解結(jié)構(gòu))工作,一定要將項(xiàng)目分解到可控制的程度。第二是,一定要及時(shí)準(zhǔn)確地記錄計(jì)劃進(jìn)度的數(shù)據(jù),畫出計(jì)劃圖、進(jìn)度狀態(tài)圖。我們在第3章估算任務(wù)實(shí)際完成積分時(shí)曾講到,若任務(wù)比較復(fù)雜,在項(xiàng)目的進(jìn)度狀態(tài)圖上不能足夠精確地表示其計(jì)劃進(jìn)度,這時(shí)需要將任務(wù)再作進(jìn)一步的分解。一般任務(wù)可以進(jìn)一步分解為活動,與任務(wù)一樣,畫出活動的計(jì)劃圖、進(jìn)度狀態(tài)圖。在活動計(jì)劃
圖和進(jìn)度狀態(tài)圖上,時(shí)間粒度一般可用“天”,對大多數(shù)有一定規(guī)模的項(xiàng)目來說,應(yīng)用WBS技術(shù)將任務(wù)分解到用“天”作時(shí)間單位來描述活動的工作內(nèi)容,可以說做到“可控制”的程度了,如果還不能控制,則將活動再進(jìn)行分解,直到可控制為止。我們將項(xiàng)目EXP中的設(shè)計(jì)任務(wù)分解成9項(xiàng)活動,同時(shí),將它的計(jì)劃圖和6月底的進(jìn)度狀態(tài)圖畫在同一張圖上,如圖4所示。
從圖4中的數(shù)據(jù)我們得知設(shè)計(jì)任務(wù)到6月底時(shí)才完成任務(wù)的85%,由此反映到圖2中,我們可以比較精確地確定設(shè)計(jì)任務(wù)實(shí)際完成的積分值(約為17)。
要指出的是,若任務(wù)中各項(xiàng)活動的執(zhí)行出現(xiàn)較多的并行情況,這與基本上是順序執(zhí)行的項(xiàng)目是不同的。所以,在分析任務(wù)的進(jìn)度狀態(tài)時(shí)不能簡單地套用項(xiàng)目進(jìn)度狀態(tài)分析的方法。










