鄭志遠(yuǎn),劉宏志,李海生
(北京工商大學(xué) 計(jì)算機(jī)學(xué)院,北京 100048)
隨著當(dāng)今社會(huì)中不同領(lǐng)域?qū)τ谛畔⑾到y(tǒng)功能多樣性需求的不斷增加,信息系統(tǒng)的開發(fā)受到了人為因素和社會(huì)因素的影響,這導(dǎo)致了項(xiàng)目進(jìn)度的拖延,延長(zhǎng)了項(xiàng)目的交付時(shí)間。因此在信息系統(tǒng)監(jiān)理中對(duì)于項(xiàng)目進(jìn)度控制的準(zhǔn)確性以及高效性有了更為嚴(yán)格的要求。在信息工程監(jiān)理[1-3]中,有“四控三管一協(xié)調(diào)”這八個(gè)方面來對(duì)信息系統(tǒng)的開發(fā)[4]進(jìn)行管理,其中進(jìn)度控制[5]是尤為重要的一項(xiàng)。同時(shí)關(guān)鍵鏈技術(shù)在建筑工期控制等方面應(yīng)用較多,而在信息工程監(jiān)理中卻很少有嘗試,因此,將關(guān)鍵鏈技術(shù)運(yùn)用在信息工程監(jiān)理中是一個(gè)可深入研究的方向。
1997年,Goldratt博士提出了關(guān)鍵鏈(critical chain method,CCM)[6]這一方法,使得工程進(jìn)度的管理及控制走向了一個(gè)新的高度。它的核心思想是利用設(shè)置的一個(gè)緩沖區(qū)以平衡各類不確定的影響因素對(duì)于完工時(shí)間的影響。一般對(duì)于緩沖區(qū)設(shè)置的方法有兩種:剪切/粘貼法和根方差法[7]。剪切粘貼法的原理是用50%的安全時(shí)間作為緩沖的大小,但此做法過于單一,在信息系統(tǒng)的開發(fā)當(dāng)中有許多不同屬性的工序,而把這些不同屬性的工序的安全時(shí)間做統(tǒng)一處理沒有體現(xiàn)工序與工序之間的差異,因此這樣的做法是很不合理的。
根方差法的原理是利用安全時(shí)間的50%作為標(biāo)準(zhǔn)差,并以鏈路標(biāo)準(zhǔn)差的兩倍來設(shè)置緩沖區(qū),但此方法側(cè)重于中心極限的思想,將各個(gè)工序單獨(dú)分開來計(jì)算時(shí)間,與實(shí)際的項(xiàng)目進(jìn)展不符。因此許多學(xué)者在此方法上進(jìn)行了改進(jìn)。
國(guó)外學(xué)者Iranmaneshetal H[8]在綜合考慮了資源約束、工序風(fēng)險(xiǎn)以及工序在項(xiàng)目網(wǎng)絡(luò)之中的位置,改進(jìn)了緩沖區(qū)大小的計(jì)算公式,由此提高了項(xiàng)目進(jìn)度的精確程度;李建中等[9]利用模糊綜合評(píng)價(jià)法對(duì)各種影響因素實(shí)行了貼近實(shí)際的量化計(jì)算,效果顯著,且主觀性較強(qiáng);因此以上方法對(duì)于信息工程監(jiān)理中的進(jìn)度控制具有一定價(jià)值。
國(guó)內(nèi)研究者馬萍等人[10]引入關(guān)鍵鏈思想,根據(jù)項(xiàng)目自身特點(diǎn)從不確定性出發(fā),建立層次分析法與熵權(quán)法主客觀組合賦權(quán)模型,并結(jié)合灰色關(guān)聯(lián)分析法改進(jìn)緩沖區(qū)的計(jì)算方法,加強(qiáng)了項(xiàng)目進(jìn)度控制的力度;孫嫣然[11]結(jié)合信息系統(tǒng)項(xiàng)目特點(diǎn),以關(guān)鍵鏈進(jìn)度管理理論為支撐,研究適合于信息系統(tǒng)項(xiàng)目的進(jìn)度管理模型,并以此能夠?qū)ο鄬?shí)踐起到指導(dǎo)作用。結(jié)合具體實(shí)例,對(duì)所建模型進(jìn)行實(shí)證分析并應(yīng)用蒙特卡洛方法對(duì)進(jìn)度管理過程進(jìn)行量化驗(yàn)證。以上研究對(duì)于信息工程監(jiān)理的進(jìn)度控制研究具有很高的參考價(jià)值。
該文將基于改進(jìn)的關(guān)鍵鏈算法引入到信息工程監(jiān)理的進(jìn)度控制中,利用三角模糊數(shù)來量化工期的不確定性,并估算出安全時(shí)間;根據(jù)信息工程監(jiān)理的特點(diǎn),引入安全時(shí)間評(píng)價(jià)系數(shù)來進(jìn)一步地對(duì)安全時(shí)間進(jìn)行調(diào)整以使得信息工程項(xiàng)目可以按時(shí)保質(zhì)保量的完工。分析各種不確定的影響因素并進(jìn)行量化,使得不確定的影響因素盡可能貼合實(shí)際的影響,使得預(yù)估工期與實(shí)際工期更加接近。
關(guān)鍵鏈法的核心思想是從關(guān)鍵路徑算法中衍生的,該方法是利用綜合分析資源的約束程度和各個(gè)工序之間的關(guān)聯(lián)后,將不同工序的安全時(shí)間算出,并設(shè)置緩沖區(qū)以達(dá)到項(xiàng)目可以按時(shí)完成的目的。這種方法相比于傳統(tǒng)的管理方法,提高了對(duì)項(xiàng)目進(jìn)度的控制力度。
在關(guān)鍵鏈中,通常把緩沖區(qū)分為以下三種:
(1)資源緩沖RB,它一般被放在相連的兩個(gè)任務(wù)之間,目的是預(yù)防所需資源不足的情況發(fā)生。
(2)匯入緩沖FB,此緩沖區(qū)是為了防止兩個(gè)相連的任務(wù)之間因?yàn)槠渌蝿?wù)的插入而延期的緩沖區(qū)。
(3)項(xiàng)目緩沖PB,是對(duì)項(xiàng)目的按時(shí)完成的一個(gè)限制,一般設(shè)置在關(guān)鍵鏈末端。
在對(duì)緩沖區(qū)量化時(shí),傳統(tǒng)的關(guān)鍵鏈法是直接把安全時(shí)間的50%作為緩沖區(qū)的量,但這忽略了工序與工序之間的關(guān)聯(lián)以及差異,計(jì)算出來的時(shí)間與實(shí)際時(shí)間相差較多。因此,為了使偏差縮小,就要對(duì)安全時(shí)間的算法進(jìn)行改進(jìn)。
該文根據(jù)工期預(yù)測(cè)的不確定性這個(gè)特性,結(jié)合三角模糊數(shù)[12]來確定三種預(yù)計(jì)的工期完工時(shí)間。工序i的活動(dòng)工期ti,對(duì)應(yīng)的三角模糊數(shù)(ai,bi,ci)分別表示工序i最理想工期、最可能工期、最悲觀工期。
三角模糊數(shù)的隸屬函數(shù)μ(ti)表示為:
(1)
其函數(shù)圖像如圖1所示。
圖1 三角模糊數(shù)函數(shù)
因?yàn)楦鱾€(gè)工序之間存在聯(lián)系和差異,因此一致性指數(shù)(AI)[13]的性質(zhì)很適合衡量?jī)蓚€(gè)模糊事件(兩個(gè)工序)的關(guān)聯(lián)性。該文利用AI來計(jì)算各個(gè)工序的預(yù)估時(shí)間,其公式為:
(2)
一致指數(shù)的含義是指模糊事件(A)有多少比例會(huì)影響模糊事件(B),也表示事件(A)相對(duì)于事件(B)的重要性程度。一般情況下AI<1,當(dāng)事件(A)對(duì)于事件(B)最重要且唯一時(shí),AI(A,B)=1,但一致指數(shù)并不具備對(duì)稱性,即當(dāng)AI(A,B)=1時(shí),并不能得出AI(B,A)=1。在信息工程監(jiān)理中不同工序之間的聯(lián)系是不同的,因此出現(xiàn)因?yàn)楣ば駻進(jìn)度的延期,導(dǎo)致與之聯(lián)系最為緊密的工序B也延期的現(xiàn)象屢見不鮮。因此通過利用一致性指數(shù)AI來對(duì)工期進(jìn)行計(jì)算,可以減少因?yàn)楣ば蛑g相互關(guān)聯(lián)而產(chǎn)生的誤差。其具體計(jì)算公式如下:
(3)
經(jīng)變換后得出:
(4)
同時(shí),該文根據(jù)信息工程監(jiān)理[14]的特點(diǎn)設(shè)置了安全時(shí)間評(píng)價(jià)系數(shù)ω,用來從監(jiān)理師的角度對(duì)所預(yù)估的安全時(shí)間做出調(diào)整,以此加強(qiáng)對(duì)項(xiàng)目進(jìn)度的更精確的控制。其公式為:
(5)
式中,k為參與安全時(shí)間評(píng)價(jià)的人數(shù),nk為第k人對(duì)安全時(shí)間評(píng)價(jià)的分?jǐn)?shù),若安全時(shí)間完全符合現(xiàn)有要求,則nk=1;若監(jiān)理師認(rèn)為此安全時(shí)間可以適當(dāng)縮短,則ω<1,但若ω≤0.7,則可能需要建議開發(fā)方重新計(jì)算安全時(shí)間或者與開發(fā)方協(xié)商。反之,若監(jiān)理師認(rèn)為此工序比較復(fù)雜且有多因素影響,則可適當(dāng)增加安全時(shí)間ω>1,但若ω>1.5,則需要與開發(fā)方進(jìn)行協(xié)商以對(duì)此工序的安全時(shí)間做出合理的預(yù)估。因?yàn)榘踩珪r(shí)間評(píng)價(jià)系數(shù)會(huì)受到評(píng)價(jià)分?jǐn)?shù)極值的影響(權(quán)重大),因此建議在計(jì)算安全時(shí)間將分?jǐn)?shù)的最大值以及最小值去掉,再計(jì)算安全時(shí)間評(píng)價(jià)系數(shù)。文中為減小誤差,采用真度95%與真度50%的模糊工期的差值作為工序安全時(shí)間,計(jì)算公式如下:
σ=(tiω)0.95-(tiω)0.5
(6)
在完成各個(gè)任務(wù)工時(shí)預(yù)估以及商榷、敲定各項(xiàng)工序前后之間的關(guān)系之后,我們需要利用正推法和逆推法來計(jì)算每個(gè)任務(wù)四個(gè)重要時(shí)間參數(shù):任務(wù)最早開工時(shí)間ES、任務(wù)最早完工時(shí)間EF、任務(wù)最晚開工時(shí)間LS、任務(wù)最晚完工時(shí)間LF,進(jìn)而計(jì)算得出各條路徑的浮動(dòng)時(shí)間TF,完成了這些計(jì)算,我們只需尋找時(shí)間變動(dòng)為零的路徑即為關(guān)鍵路徑。
關(guān)鍵鏈法的創(chuàng)新之處在于設(shè)置緩沖來平衡工期與不確定因素的矛盾,以提高項(xiàng)目的完工率與穩(wěn)定性。該文主要從以下4個(gè)不確定因素進(jìn)行量化[15]:
(1)路徑復(fù)雜度:工期的前置工序越多,不確定性程度就越大,應(yīng)設(shè)置大的緩沖區(qū)避免工期延誤。
設(shè)N1=路徑復(fù)雜度,有:
(7)
其中,n表示工序在最長(zhǎng)路徑中的位置;R表示通過工序最長(zhǎng)路徑的工序數(shù)。
(2)任務(wù)困難程度:在一個(gè)項(xiàng)目中,某個(gè)任務(wù)的困難程度越高,那么它的完工率可能越低,相反越簡(jiǎn)單的任務(wù),那么它的完工率有可能就會(huì)越高。設(shè)N2=任務(wù)難度系數(shù),由項(xiàng)目組以及監(jiān)理師評(píng)估得出。評(píng)分標(biāo)準(zhǔn)如表1所示。
表1 任務(wù)難度評(píng)價(jià)標(biāo)準(zhǔn)
(3)風(fēng)險(xiǎn)預(yù)估系數(shù):以三點(diǎn)估計(jì)法的最理想時(shí)間X、最可能時(shí)間Y以及最悲觀工期Z來確定風(fēng)險(xiǎn)系數(shù)的大小,若Y越接近X,則此任務(wù)按時(shí)完工的幾率高;相反,則任務(wù)按時(shí)完工的幾率偏低。
設(shè)N3=風(fēng)險(xiǎn)預(yù)估系數(shù),有:
(8)
(4)資源滿足度:在信息系統(tǒng)開發(fā)時(shí),資源的分配會(huì)影響到不同模塊開發(fā)的進(jìn)度、質(zhì)量等方面,因此預(yù)估任務(wù)的資源是否足夠達(dá)到目標(biāo)是很有必要的。設(shè)N4=資源滿足度,采用百分比來計(jì)算。若資源完全滿足任務(wù)需求,則資源滿足度為100%;若資源滿足度低于50%,則需給當(dāng)前任務(wù)增加額外時(shí)間或者提供更多的資源以保證任務(wù)的順利進(jìn)行,此項(xiàng)由開發(fā)團(tuán)隊(duì)以及監(jiān)理師共同商議決定。
確定影響因素的權(quán)重,采用如下方法:
層次分析法:首先采用1~9標(biāo)度法[16]將影響因素兩兩比較構(gòu)造判斷矩陣P,計(jì)算特征向量αi以及特征值λmax,之后計(jì)算一致性檢驗(yàn)指標(biāo)CI,其中:
(9)
其中,n為影響因素個(gè)數(shù)(矩陣行列數(shù))。
緩沖區(qū)大小的設(shè)置[17]是關(guān)鍵鏈的核心所在,它在對(duì)不確定因素的有效對(duì)沖方面發(fā)揮著重要作用,且根方差法比較符合時(shí)間累加的統(tǒng)計(jì)規(guī)律。該文在經(jīng)典方法根方差法的基礎(chǔ)上,通過引入影響因子[18]βi來改進(jìn)根方差法。影響因子βi表示為:
βi=(N1iα1+N2iα2+N3iα3+N4iα4)
(10)
其中,i為第i個(gè)任務(wù),α1為N1影響因素的權(quán)重,以此類推。
改進(jìn)后的緩沖區(qū)計(jì)算公式為:
(11)
某公司原有的銷售系統(tǒng)因?yàn)閮?yōu)化不足的問題,打算委托X公司開發(fā)出一套新的銷售系統(tǒng),并希望能在一年至兩年內(nèi)實(shí)現(xiàn)新平臺(tái)平穩(wěn)過渡。
任務(wù)工期由X公司項(xiàng)目經(jīng)理和監(jiān)理師結(jié)合研討情況和項(xiàng)目最晚可以投入使用的時(shí)間共同預(yù)估得出,各工序前后邏輯關(guān)系由項(xiàng)目團(tuán)隊(duì)分析得出,具體如表2所示。
表2 項(xiàng)目基本信息
根據(jù)表2中每項(xiàng)任務(wù)估算的三項(xiàng)時(shí)間,利用式(4)計(jì)算各個(gè)工序的預(yù)估工期Ti。之后,根據(jù)上文中所提及的正推法和逆推法得出重要的時(shí)間參數(shù),選擇浮動(dòng)時(shí)間為0的路徑為關(guān)鍵路徑。此外還需進(jìn)行安全評(píng)價(jià)系數(shù)的計(jì)算,具體如表3所示。
表3 關(guān)鍵路徑計(jì)算
由表3可以直觀地看出關(guān)鍵路徑為:A→B→C→D→F→I→J→L→M→N→O
得出關(guān)鍵路徑之后,在兩個(gè)非關(guān)鍵路徑后插入兩個(gè)匯入緩沖:FB1、FB2。以及在關(guān)鍵鏈末端插入項(xiàng)目緩沖:PB。插入緩沖后的網(wǎng)絡(luò)計(jì)劃如圖2所示。
圖2 插入緩沖后的網(wǎng)絡(luò)計(jì)劃
首先根據(jù)2.2節(jié)中各個(gè)影響因素的計(jì)算方法進(jìn)行數(shù)據(jù)的量化處理,之后采用1~9標(biāo)度法將量化后的影響因素兩兩比較構(gòu)造判斷矩陣P:
通過計(jì)算矩陣P得出特征值λmax=4.06,此時(shí)αi=(0.316,0.215,0.254,0.215)。
根據(jù)式(9)CI=0.020;通過查表RI=0.90,此時(shí)一致性比例CR=0.022 2,CR<0.1滿足一致性檢驗(yàn)。之后根據(jù)表2、表3中的數(shù)據(jù)計(jì)算關(guān)鍵數(shù)據(jù),計(jì)算后的關(guān)鍵數(shù)據(jù)如表4所示。
表4 關(guān)鍵數(shù)據(jù)
根據(jù)表4計(jì)算項(xiàng)目緩沖PB和匯入緩沖FB。
FB1=1.7 d
FB2=2.3 d
PB=3.0 d
為了驗(yàn)證改進(jìn)的關(guān)鍵鏈法的有效性,運(yùn)用Oracle Crystal Ball[19]進(jìn)行蒙特卡洛模擬。蒙特卡洛是一個(gè)在離散系統(tǒng)中進(jìn)行模擬仿真[20]中有著較好效果的模擬方法,它的核心思想是建立與所要模擬的系統(tǒng)性能相似的概率模型,之后并進(jìn)行隨機(jī)實(shí)驗(yàn),這樣就可以模擬系統(tǒng)中出現(xiàn)的各種影響因素。要確保實(shí)驗(yàn)誤差相對(duì)較小,因此選定的實(shí)驗(yàn)次數(shù)要多,文中的實(shí)驗(yàn)次數(shù)取5 000。
模擬結(jié)果如圖3和圖4所示。
圖3 95%保證率改進(jìn)關(guān)鍵鏈法項(xiàng)目工期頻數(shù)分布圖
圖4 95%保證率關(guān)鍵鏈法項(xiàng)目工期頻數(shù)分布圖
通過對(duì)比觀察可知,采用改進(jìn)關(guān)鍵鏈法,確定性為100%時(shí)只需要179.0天,而直接采用關(guān)鍵鏈法確定性為100%時(shí)則需要184.3天,同時(shí)兩者在相同的保證率情況下,改進(jìn)關(guān)鍵鏈法的完工時(shí)間少于直接關(guān)鍵鏈法的天數(shù),證明改進(jìn)關(guān)鍵鏈法的效果較好。
在當(dāng)今信息工程監(jiān)理領(lǐng)域中,大部分的進(jìn)度控制方法忽略或者簡(jiǎn)化了影響因素的處理以及資源的協(xié)調(diào)性,使預(yù)期的計(jì)劃很難順利進(jìn)行。而關(guān)鍵鏈正是綜合考慮了資源約束和工序的邏輯關(guān)系,通過分析和計(jì)算得出可以平衡影響的緩沖區(qū)來使項(xiàng)目能夠順利進(jìn)行。文中根據(jù)信息工程監(jiān)理中出現(xiàn)的各種影響和問題,對(duì)關(guān)鍵鏈法中緩沖區(qū)的算法進(jìn)行了改進(jìn)。同時(shí)針對(duì)信息工程監(jiān)理的特點(diǎn),提出了安全時(shí)間評(píng)價(jià)系數(shù),從監(jiān)理師的角度對(duì)項(xiàng)目的計(jì)劃進(jìn)度進(jìn)行評(píng)價(jià)及優(yōu)化,從而加強(qiáng)對(duì)項(xiàng)目進(jìn)度的控制。最后通過仿真實(shí)驗(yàn)的分析結(jié)果表明,該改進(jìn)方法在完工率較高的同時(shí),可有效地控制項(xiàng)目的進(jìn)度。這為信息工程監(jiān)理提供了一種有效的進(jìn)度控制方法。