李曉明
(長安大學(xué) 經(jīng)濟(jì)管理學(xué)院,西安 710064)
在我國,IT研發(fā)項(xiàng)目團(tuán)隊(duì)的總體績效有待提高,但這方面可操作應(yīng)用型的理論方法缺乏。因此,尋找一種客觀、定量而有效管理IT研發(fā)不確定性的方法是十分必要的。這一類對IT研發(fā)進(jìn)行評估的方法與模型文獻(xiàn)中也有提出。Kellner提出了一種由STATEMATE模型工具描述的IT過程評估方法,這一方法闡述了如何將過程模型用于項(xiàng)目管理。Lee and Murata提出用于IT項(xiàng)目管理的β隨機(jī)分布的Petri網(wǎng)模型,這是一種計(jì)劃評審技術(shù)的綜合模型,而使用Petri網(wǎng)處理大型項(xiàng)目管理的不確定性問題和并發(fā)問題。FUNSOF網(wǎng)與SPADE也是基于Petri網(wǎng)的模型,它們主要側(cè)重于過程時(shí)間約束的評估。而且,Tvedt和Collofello使用系統(tǒng)動力學(xué)模型評估了IT檢驗(yàn)階段過程改進(jìn)的有效性,這一方法使用因果關(guān)系分析法預(yù)測過程改進(jìn)對IT開發(fā)的影響。但是,這些方法主要是側(cè)重于過程建模技術(shù)而不是不確定性管理過程。為了有效地對提高IT研發(fā)效率,研發(fā)活動應(yīng)該在管理IT項(xiàng)目不確定性基礎(chǔ)上進(jìn)行,使得基于基于Petri網(wǎng)的量化模型變得非常重要,這是本研究的意義所在。
為此,本文提出了使用高級Petri網(wǎng)建模方法,以IT研發(fā)項(xiàng)目為例進(jìn)行研究,結(jié)合國內(nèi)外相關(guān)研究理論,構(gòu)建了不確定性、協(xié)調(diào)機(jī)制與項(xiàng)目績效關(guān)系的模型體系,這一模型具有分析管理研發(fā)項(xiàng)目不確定性管理過程的能力,還能夠分析研發(fā)項(xiàng)目不確定性管理過程的效率,最后給出算例驗(yàn)證。將定性化的研究轉(zhuǎn)化為定量分析,減少了人為不確定性評估的主觀性和不準(zhǔn)確性。
本研究目的在于探究不確定性(不確定性是指為企業(yè)帶來機(jī)會或者威脅的及其變化趨勢不確定)與協(xié)調(diào)機(jī)制對標(biāo)準(zhǔn)變量(績效:過程績效與產(chǎn)品績效)的影響。根據(jù)以前學(xué)者在IS領(lǐng)域中運(yùn)用權(quán)變理論所進(jìn)行的變量之間關(guān)系研究,選取采用調(diào)節(jié)匹配模式,因?yàn)檎{(diào)節(jié)匹配模式更適合本研究目的。Petri網(wǎng)是一種系統(tǒng)的數(shù)學(xué)和圖形的描述方法與分析工具,對于具有并發(fā)、異步、分布、并行、不確定性和隨機(jī)性信息處理系統(tǒng),都可以構(gòu)造出相應(yīng)的Petri網(wǎng)模型,通過對Petri網(wǎng)模型的分析,得到有關(guān)系統(tǒng)性能的各項(xiàng)參數(shù)指標(biāo),根據(jù)這些指標(biāo)對系統(tǒng)進(jìn)行評價(jià)與改進(jìn)。Petri網(wǎng)目前已經(jīng)廣泛應(yīng)用于許多領(lǐng)域,包括動態(tài)系統(tǒng)說明、描述、與驗(yàn)證,而多層Petri網(wǎng)、隨機(jī)Petri網(wǎng)、著色Petri網(wǎng)等等形式主要用于安全相關(guān)方面的應(yīng)用。
位置由一個(gè)圓圈表示代表一個(gè)條件,如輸入數(shù)據(jù)、輸出信號、資源條件或緩沖區(qū)。變遷由一個(gè)矩形塊表示,代表一個(gè)事件如計(jì)算步驟、任務(wù)或活動?;≡赑etri網(wǎng)中用來連接位置與變遷?;∈怯兄赶虻模瑥囊粋€(gè)位置到一個(gè)變遷或從一個(gè)變遷到一個(gè)位置。當(dāng)輸入位置中含有托肯,Petri網(wǎng)中的變遷就可以觸發(fā)。這樣的變遷成為“使能”變遷。使能的變遷從輸入位置移動一定數(shù)量的托肯到輸出位置。在最早的形式中,Petri網(wǎng)的變遷被假設(shè)為瞬時(shí)的。后來,在Petri網(wǎng)中引入延遲時(shí)間就考慮進(jìn)去了,這樣帶有時(shí)間的變遷有能力模擬任務(wù)或活動,被稱為時(shí)間Petri網(wǎng)(TPN)。
IT系統(tǒng)研發(fā)的過程是一個(gè)集系統(tǒng)需求概念形成、系統(tǒng)設(shè)計(jì)、編碼、測試、維護(hù)于一體的綜合過程,其中涉及眾多的需求、技術(shù)、人事等方面的不確定性因素,而這些不確定性因素通過協(xié)調(diào)、控制等管理活動將其負(fù)面影響降至最低。用Petri網(wǎng)建模主要是對詳細(xì)的不確定性因素及其對項(xiàng)目的影響進(jìn)行描述,并通過不同的協(xié)調(diào)策略對不確定性因素進(jìn)行反饋調(diào)整,對項(xiàng)目不確定性因素控制實(shí)施效率進(jìn)行評估。具體開發(fā)過程的信息所產(chǎn)生的影響用不同的變遷表示,系統(tǒng)開發(fā)不確定性因素控制Petri網(wǎng)模型如圖1所示,庫所和變遷的含義如表1所示:
圖1 不確定性因素控制Petri網(wǎng)模型
其中,p1~p11項(xiàng)目不確定性因素;p12~p22不同控制策略;p23~p33不同狀態(tài);t1-t7不同變遷與策略實(shí)施。
IT研發(fā)周期工作流程包括以下活動內(nèi)容:需求分析與定義;結(jié)構(gòu)設(shè)計(jì);程序設(shè)計(jì);編碼;測試。從知識管理的角度來看,本質(zhì)上IT開發(fā)是一個(gè)知識流動的過程。顯性知識是工作流的直接產(chǎn)品,在IT研發(fā)以文件的形式存在。由于工作流中帶有不確定性信息,通過各種協(xié)調(diào)策略,不確定性程度在IT研發(fā)過程中逐漸減少。假設(shè)延誤的周期只是由于需求、技術(shù)與開發(fā)人員的變化而引起的。在流程中,每一階段文件是上一階段文件的輸入和下一階段文件的輸出,托肯Pi表示有三個(gè)特征的不確定性信息流,包括需求、技術(shù)及開發(fā)人員的變化。躍遷t14~19與t20~22代表了橫向交流與縱向協(xié)調(diào)策略的全部,當(dāng)托肯在位置P2與P3時(shí),能夠分別觸發(fā)表示帶有不確定性的信息流被吸收,然后回到位置P1。每一個(gè)變遷有一個(gè)觸發(fā)函數(shù),函數(shù)的實(shí)施更新托肯特征值,每一個(gè)變遷代表了一個(gè)控制策略,位置表示事件或行為的等待狀態(tài)。
建立模型的主要目標(biāo)就是評估不確定性管理的效率,將Petri網(wǎng)圖進(jìn)行簡化,并同構(gòu)Markov Chain(MC),有5個(gè)節(jié)點(diǎn),5個(gè)狀態(tài)可達(dá)圖,轉(zhuǎn)換為可同構(gòu)的Markov矩陣。
表1 可同構(gòu)的Markov矩陣
定義狀態(tài)轉(zhuǎn)換矩陣Q=[qi,j],1≤i,j≤n,矩陣中元素qi,j是:
根據(jù)Markov過程,每一狀態(tài)的穩(wěn)定概率X=(x1,x2,...,xn) 滿足如下線性方程:
解上述方程組,可得出每一可達(dá)標(biāo)記的穩(wěn)定概率P(Mi)=xi,(1 ≤i≤n):
基于以上狀態(tài)概率,計(jì)算以下特征函數(shù):
N(t)─位置的平均標(biāo)記數(shù),是一個(gè)很有用的績效參數(shù)。在系統(tǒng)模型中,從位置的平均標(biāo)記數(shù)可以得出子系統(tǒng)的使用率;從排隊(duì)論的觀點(diǎn)看,可以用于分析子系統(tǒng)響應(yīng)時(shí)間及任務(wù)隊(duì)列的長度;在不確定性管理模型系統(tǒng)中,可以分析不確定性信息流的系統(tǒng)延遲時(shí)間,系統(tǒng)信息負(fù)載,績效指標(biāo)等等。
變遷標(biāo)記速率R(t,s)=W(t,s)·U(t)·λ,λ流入子系統(tǒng)的平均速率的綜合
得到系統(tǒng)平均延遲時(shí)間:
可得出系統(tǒng)運(yùn)行的周期時(shí)間T,然后評估系統(tǒng)不確定性管理的效率。延遲系統(tǒng)周期時(shí)間越短,系統(tǒng)不確定性管理的效率越高。不確定性的控制是多階段反復(fù)過程,根據(jù)不確定性計(jì)劃,采取措施按順序評估?;诓煌呗缘贸龅牟煌Y(jié)果評定不同戰(zhàn)略組和適合IT項(xiàng)目,然后決定是否修訂原來的控制計(jì)劃措施。
在建立模擬模型之前,先確定模型參數(shù)。一些從真實(shí)數(shù)據(jù)中取得,一些從模擬測試中取得。然后,我們不確定性管理過程,最終輸出數(shù)據(jù)結(jié)果。
為了評估所提出方法的有效性,將提出的模型應(yīng)用于某公司A與B兩個(gè)項(xiàng)目中。
項(xiàng)目的主要特點(diǎn)如下:
①項(xiàng)目A與B的開發(fā)工作量分別為180人天和120人天
②項(xiàng)目A與B實(shí)際延誤時(shí)間分別為65天和34天
③項(xiàng)目A與B的規(guī)模分別為16KSLOC與4KSLOC
④項(xiàng)目需求、環(huán)境和最終期限在開發(fā)過程中發(fā)生變化
⑤每個(gè)項(xiàng)目實(shí)施不確定性管理
在模擬過程中,我們在TimeNET3.0.系統(tǒng)中,重復(fù)模擬200次,計(jì)算延遲日期與殘余不確定性的變化程度。項(xiàng)目A與B的模擬分析結(jié)果如表2與表3。圖2顯示了模擬實(shí)施過程。在主窗口,可以看到模擬過程如不確定性信息流、不確定性性因素應(yīng)對策略、程序產(chǎn)品的規(guī)模、項(xiàng)目中殘余不確定性的程度等等。
圖2 模擬實(shí)例結(jié)果
表2 項(xiàng)目A模擬分析結(jié)果
表3 項(xiàng)目B模擬分析結(jié)果
表4 模擬的分析結(jié)果
從以上數(shù)據(jù),當(dāng)轉(zhuǎn)換參數(shù)在0.2和0.8時(shí),可以看到模擬結(jié)果與真實(shí)參數(shù)相近。最后的比較結(jié)果如下,模擬結(jié)果與真實(shí)數(shù)據(jù)比較,誤差分別為7.78%與9.4%,所提出的模型在IT項(xiàng)目不確定性控制階段在允許的誤差范圍內(nèi)可以定量估計(jì)項(xiàng)目延誤時(shí)間,為IT項(xiàng)目不確定性控制管理提供量化依據(jù)。本模型是一種新的IT項(xiàng)目不確定性管理定量分析方法,可以從延誤的日期評估管理的有效性。在模型中,通過將Petri網(wǎng)模型轉(zhuǎn)換為可同構(gòu)的Markov矩陣,評估IT項(xiàng)目不確定性管理過程。最后,應(yīng)用將真實(shí)項(xiàng)目數(shù)據(jù)與模擬結(jié)果進(jìn)行比較,實(shí)驗(yàn)結(jié)果顯示了本模型的可行性。
本模型通過構(gòu)造IT研發(fā)Petri網(wǎng)不確定性管理模型,模型簡化后轉(zhuǎn)換為Markov鏈,對Petri網(wǎng)模型進(jìn)行分析,已經(jīng)定量化地計(jì)算了它的運(yùn)行效率——即研發(fā)產(chǎn)品開發(fā)的周期。通過對協(xié)調(diào)機(jī)制不同的策略進(jìn)行建模分析、計(jì)算,就可以對不同策略組合的管理不確定性因素有效性進(jìn)行評價(jià),可以在真正實(shí)施之前用Petri網(wǎng)模型進(jìn)行模擬,得到定量化的結(jié)論作為參考依據(jù),是一種不確定性管理方法新的嘗試與探索。
本模型的提出在于以下三個(gè)方面的貢獻(xiàn):
(1)在理論基礎(chǔ)方面,傳統(tǒng)的研發(fā)項(xiàng)目不確定性管理的識別、控制方法和工具主要內(nèi)容來源于一般工程項(xiàng)目的風(fēng)險(xiǎn)管理方法,使得不確定性管理是一種被動式的管理方式,其內(nèi)容偏于泛化,定性研究較多而針對研發(fā)項(xiàng)目特點(diǎn)的定量研究較為薄弱。本模型基于Petri網(wǎng)建模理論,后將模型簡化轉(zhuǎn)換為Markov鏈,將定性化的研究轉(zhuǎn)化為定量分析,從而減少了人為不確定性評估的主觀性和不準(zhǔn)確性。
(2)項(xiàng)目進(jìn)度的拖延往往是項(xiàng)目不確定性管理的重要內(nèi)容之一,因此,進(jìn)度不確定性通常是考慮的重點(diǎn)。本模型提出的不確定性指標(biāo)參數(shù)也正是基于項(xiàng)目時(shí)間周期的延遲,能方便地幫助研發(fā)目標(biāo)識出不確定性程度,并量化分析不確定性因子對項(xiàng)目進(jìn)度的影響,最終給出合理的項(xiàng)目交付進(jìn)度延遲的評估數(shù)據(jù)。
(3)本模型中不確定性因素控制強(qiáng)調(diào)從控制觀點(diǎn)來研究軟件開發(fā)過程,這種“輸入——控制——輸出——反饋——輸入”的方式進(jìn)行的,這樣就可以對不同策略組合實(shí)施管理不確定性因素有效性進(jìn)行評價(jià),并取得滿意的結(jié)果。當(dāng)然,還必定存在著內(nèi)外部映射關(guān)系產(chǎn)生的成本損失,如何減少這部分成本損失是需要進(jìn)一步研究的課題。
[1]葛方振,彭太樂,郭桂芳.灰色聚類法在軟件項(xiàng)目不確定性評價(jià)中的應(yīng)用[J].計(jì)算機(jī)工程與應(yīng)用,2009,45(2).
[2]張亞軍,搖張金隆,陳江濤.IT服務(wù)管理研究述評及未來展望[J].情報(bào)雜志,2013,(6).
[3]Kellner M.I.Software Process Modeling Support for Management Planning and Control[C].Proc.of the 1st International Conference on Software Process,1993.
[4]Lee G.,Murata T.A Distributed Stochastic Petri Net Model for Software Project,Time/cost Management[J].The Journal of Systems and Software,1994,26(2).
[5]Bandinelli S.C.,Fuggetta A.,Ghezzi C.Software Process Model Evolution in to SPADE Environment[J].IEEE Trans.Software Engzneerzng,1993,19(12).
[6]Tvedt J.D.,Collofello J.S.Evaluating the Effectiveness of Process Improvements on Software Development Cycle Time Via System Dynamics Modeling[C].Proc.of COMPSAC95,1995.
[7]Lenz RT.Environment,Strategy,Organization Structure,and Performance:Patterns in one Industry[J].Strateg Manage,1980,(1).
[8]Mitchell L V.Knowledge Integration and Information Technology Project Performance[J].M IS Quarterly,2006,36(4).
[9]David Verneza.Perspectives in the Use of Colored Petri Nets for Risk Analysis and Accident Modeling[J].Safety Science,2003,(41).
[10]袁崇義.Petri網(wǎng)原理與應(yīng)用[M].北京:電子工業(yè)出版社,2005.
[11]林闖.隨機(jī)Petri網(wǎng)和性能評價(jià)(第2版)[M].北京:清華大學(xué)出版社,2005.