目進(jìn)行工作分解,估計(jì)理想工作條件下各工作的執(zhí)行時間以及人力資源分配,建立工作節(jié)點(diǎn)網(wǎng)絡(luò)圖(Active on Node,AON);然后考慮人力資源的約束,確定工作節(jié)點(diǎn)網(wǎng)絡(luò)圖中的關(guān)鍵鏈;接著采用風(fēng)險(xiǎn)量=風(fēng)險(xiǎn)概率×風(fēng)險(xiǎn)時間這樣的技術(shù)風(fēng)險(xiǎn)評估技術(shù),對每項(xiàng)工作進(jìn)行風(fēng)險(xiǎn)分析,在此基礎(chǔ)上,為關(guān)鍵鏈配置項(xiàng)目緩沖,為非關(guān)鍵鏈配置輸入緩沖;最后,在項(xiàng)目進(jìn)行過程中,通過對緩沖區(qū)的監(jiān)控,進(jìn)行計(jì)劃風(fēng)險(xiǎn)的管理。對項(xiàng)目進(jìn)行工作分解之后,我們以工作在理想工作條件下的完成時間來估計(jì)該工作的執(zhí)行時間。所謂理想工作條件是指既不考慮風(fēng)險(xiǎn)因素,也不考慮資源約束的“理想”狀況。這樣的理想工作條件實(shí)際是不存在的,就如同物理學(xué)研究中經(jīng)常用到的理想氣體一樣。之所以采用理想工作條件下的完成時間(簡稱為理想工作時間),而不是Goldratt的50%完成的時間,是由于在50%的時間內(nèi)肯定是不能完成工作的,太過緊張的計(jì)劃時間會給工作執(zhí)行人員造成不必要的壓力,從而加大了項(xiàng)目的系統(tǒng)功能風(fēng)險(xiǎn)。而理想工作時間既不會因?yàn)橛写罅堪踩珪r間的存在而出現(xiàn)所謂學(xué)生綜合癥、帕金森癥等工作積壓現(xiàn)象,又因?yàn)槠浯嬖诎磿r完成的可能性而對工作執(zhí)行人員起到激勵的作用。建立工作節(jié)點(diǎn)網(wǎng)絡(luò)圖。網(wǎng)絡(luò)圖中每個工作節(jié)點(diǎn)有一個三元組屬性(a/b/c),其中a為理想工作條件下的工作執(zhí)行時間估計(jì),b是該項(xiàng)工作需要的資源,c是所需資源的數(shù)量。與CPM不同的是,關(guān)鍵鏈技術(shù)不是單純以時間最長的路徑為關(guān)鍵路徑,而是在考慮了工作所需資源之后,根據(jù)資源約束,對網(wǎng)絡(luò)圖中工作的緊前關(guān)系進(jìn)行必要的調(diào)整,然后再由工作時間,找出此時的關(guān)鍵路徑,也就是關(guān)鍵鏈。我們以一個簡單的軟件開發(fā)項(xiàng)目為例來說明方法的應(yīng)用。該項(xiàng)目開發(fā)所需要的人力資源有:R1系統(tǒng)設(shè)計(jì)人員,R2程序開發(fā)人員,R3數(shù)據(jù)庫開發(fā)人員,R4系統(tǒng)測試人員。工作節(jié)點(diǎn)網(wǎng)絡(luò)圖見圖1。其中工作時間a是考慮到不確定因素的非理想工作條件下的工作執(zhí)行時間。圖中粗線標(biāo)識的路線是時間關(guān)鍵路徑。
由于考慮到人力資源約束,從圖1中可以看出,工作3和工作4資源沖突,工作2、5和工作6也存在資源沖突,我們將它們之間的并行執(zhí)行關(guān)系轉(zhuǎn)化為串行執(zhí)行,如圖1中虛線所示。同時重新按理想工作條件估計(jì)每項(xiàng)工作的執(zhí)行時間,從而得到圖2。圖2中的工作時間是理想工作時間,粗線標(biāo)識的是考慮了人力資源約束之后的項(xiàng)目關(guān)鍵鏈。
3 基于關(guān)鍵鏈的風(fēng)險(xiǎn)管理
為了保護(hù)關(guān)鍵鏈上的工作而不影響到整個項(xiàng)目的計(jì)劃進(jìn)度,關(guān)鍵鏈技術(shù)要求為關(guān)鍵鏈設(shè)置項(xiàng)目緩沖區(qū);同時為了防止非關(guān)鍵鏈上的工作影響到關(guān)鍵鏈上工作的進(jìn)度,在非關(guān)鍵鏈與關(guān)鍵鏈的匯合處設(shè)置輸入緩沖。那些不是基于關(guān)鍵鏈的項(xiàng)目往往依賴于任務(wù)和任務(wù)終止日期(里程碑進(jìn)程表)所內(nèi)含的安全性來控制項(xiàng)目進(jìn)程。而這種方式的風(fēng)險(xiǎn)在于,將使項(xiàng)目遭受共同資源行為的影響,降低提前完成進(jìn)度的能力?;陉P(guān)鍵鏈的項(xiàng)目采用接力賽式的管理方法,它鼓勵一旦獲得所需要的資源就立即交接進(jìn)入下一階段的任務(wù)輸入,一旦完成本階段的任務(wù)就立即交接該階段的項(xiàng)目輸出。團(tuán)隊(duì)成員開始及完成任務(wù)的方式是,盡快執(zhí)行并將工作傳遞給下一個資源,盡其所能盡早傳下去?;陉P(guān)鍵鏈技術(shù)的軟件項(xiàng)目風(fēng)險(xiǎn)管理是通過對緩沖區(qū)的監(jiān)控進(jìn)行的。在關(guān)鍵鏈管理方式下,任何任務(wù)都可以消耗項(xiàng)目緩沖或匯入緩沖。當(dāng)一項(xiàng)任務(wù)實(shí)際耗時 超過估計(jì)時間時,它將占用相關(guān)緩沖。通過對緩沖區(qū)的監(jiān)控,即緩沖區(qū)消耗的程度與關(guān)鍵鏈完成的程度進(jìn)行比較,可以部分的判斷出項(xiàng)目執(zhí)行狀態(tài)。因此,我們?yōu)榫彌_區(qū)設(shè)置了安全底線,在項(xiàng)目進(jìn)行過程中,定時觀測緩沖區(qū)的大小,若緩沖區(qū)處于安全底線以上,認(rèn)為工作情況正常,低于安全底線,則有必要采取風(fēng)險(xiǎn)措施。
4 結(jié)語
本文討論了基于關(guān)鍵鏈的軟件項(xiàng)目風(fēng)險(xiǎn)管理方法。以理想工作條件下各個工作的執(zhí)行時間建立工作節(jié)點(diǎn)網(wǎng)絡(luò)圖,考慮人力資源的沖突,確定關(guān)鍵鏈。在對各個工作進(jìn)行風(fēng)險(xiǎn)分析的基礎(chǔ)上,配置項(xiàng)目緩沖區(qū)和輸入緩沖區(qū),以消除不確定性,保證整個項(xiàng)目的按時完工。項(xiàng)目過程中,通過對緩沖區(qū)的監(jiān)控和管理,實(shí)現(xiàn)對軟件項(xiàng)目的風(fēng)險(xiǎn)管理。