摘要:針對(duì)國(guó)內(nèi)IT企業(yè)百人左右的大中型產(chǎn)品或團(tuán)隊(duì)在項(xiàng)目管理上存在的問(wèn)題,文章提出了在企業(yè)研發(fā)流程中引入MSF(Microsoft Solutions Framework)軟件開發(fā)模型,并結(jié)合企業(yè)的具體情況進(jìn)行裁減,其能夠極大的提高軟件工程過(guò)程管理能力,從而提高整個(gè)軟件產(chǎn)品的質(zhì)量。
關(guān)鍵詞:項(xiàng)目管理;MSF;軟件過(guò)程管理
中國(guó)絕大多數(shù)的軟件、互聯(lián)網(wǎng)企業(yè)在100人規(guī)模以下,開發(fā)團(tuán)隊(duì)幾十人左右,工作經(jīng)驗(yàn)3年~9年,基本處于原始手工作坊式的刀耕火種階段,工業(yè)化的軟件研發(fā)流程和方法往往不執(zhí)行,或執(zhí)行不得力。本文引入微軟公司的MSF(Microsoft Solutions Framework)軟件開發(fā)模型,通過(guò)A企業(yè)的實(shí)踐證明,運(yùn)用MSF框架的軟件工程過(guò)程管理能大大提高小型軟件開發(fā)公司的軟件研發(fā)能力,軟件的交付期也得到了基本保證。
一、 MSF基本模型
1. 組隊(duì)模型。MSF把軟件開發(fā)分成了六個(gè)小組,分別是:程序管理組、產(chǎn)品管理組、開發(fā)組、用戶培訓(xùn)組、測(cè)試組、安裝管理組。組隊(duì)的原則是小隊(duì)(一般3人~8人)、多側(cè)面;角色交叉、目標(biāo)一致;人員技術(shù)、業(yè)務(wù)精;關(guān)注能力和交貨期;對(duì)項(xiàng)目的前景認(rèn)識(shí)一致;人人參與設(shè)計(jì);善于總結(jié)經(jīng)驗(yàn);共同管理、共同決策,項(xiàng)目人員同地工作等。
2. 過(guò)程模型。MSF過(guò)程模型主要確立了四個(gè)重要的里程碑:前景范圍確認(rèn)、項(xiàng)目規(guī)劃確認(rèn)、開發(fā)完成、對(duì)外發(fā)布,通過(guò)控制這四個(gè)里程碑來(lái)分解管理項(xiàng)目過(guò)程。
3. 應(yīng)用模型。MSF應(yīng)用模型是分層次的應(yīng)用模型,大體可分為三層,用戶層、業(yè)務(wù)層和數(shù)據(jù)層,各層次通過(guò)標(biāo)準(zhǔn)組件進(jìn)行封裝,互相通訊調(diào)用來(lái)完成系統(tǒng)任務(wù)。
4. 風(fēng)險(xiǎn)模型。MSF風(fēng)險(xiǎn)管理過(guò)程主要包括:風(fēng)險(xiǎn)識(shí)別、風(fēng)險(xiǎn)表述,通過(guò)分析、計(jì)劃、跟蹤和控制過(guò)程,最終解除風(fēng)險(xiǎn)。
二、 MSF在A企業(yè)呼叫中心項(xiàng)目中的具體應(yīng)用
本文以A企業(yè)呼叫中心項(xiàng)目為例(合計(jì)開發(fā)人員50人),結(jié)合該項(xiàng)目中的數(shù)據(jù)資料,對(duì)此項(xiàng)目中服務(wù)商的選擇進(jìn)行具體的分析和研究。
1. 組隊(duì)模型裁減。首先,確立項(xiàng)目經(jīng)理角色,符合一般企業(yè)的管理模式,比較容易被接受。如果有多人同時(shí)負(fù)責(zé)的話,容易產(chǎn)生責(zé)權(quán)理不清楚,互相扯皮的現(xiàn)象。有一個(gè)項(xiàng)目經(jīng)理對(duì)項(xiàng)目完全負(fù)責(zé),遇到問(wèn)題容易很快得到解決;他作為項(xiàng)目組代表,負(fù)責(zé)向上級(jí)匯報(bào)工作,能使其他人全力投入到項(xiàng)目中,而不至于在日常的事務(wù)中耽誤太多時(shí)間,從而在某種程度上也提高了工作效率。
產(chǎn)品管理經(jīng)理(以下簡(jiǎn)稱產(chǎn)品經(jīng)理)是項(xiàng)目中非常重要的角色,他可以對(duì)技術(shù)不是很精通,但是必須對(duì)產(chǎn)品所服務(wù)的領(lǐng)域非常熟悉,最好是領(lǐng)域?qū)<遥谒膸ьI(lǐng)下,項(xiàng)目才不至于偏離預(yù)先設(shè)定的前景范圍。他必須對(duì)產(chǎn)品的需求能做出很好的把握,在適當(dāng)?shù)臅r(shí)候能進(jìn)行流程重組,對(duì)產(chǎn)品的可用性和易用性有最終決定權(quán)。通過(guò)設(shè)定產(chǎn)品經(jīng)理,主要的感覺是產(chǎn)品受用戶的歡迎程度增加了,無(wú)用的特性少了,因而也更容易成功。
2. 開發(fā)過(guò)程管理。在過(guò)程模型上,主要包括四個(gè)重要里程碑:①前景/范圍確認(rèn);②項(xiàng)目規(guī)劃確認(rèn);③開發(fā)完成;④對(duì)外發(fā)布。
A企業(yè)把MSF的各個(gè)階段對(duì)應(yīng)到傳統(tǒng)的項(xiàng)目開發(fā)各階段,目的是使企業(yè)所有人員便于理解和使用。其中“前景范圍確認(rèn)”對(duì)應(yīng)傳統(tǒng)的“可行性分析”;“項(xiàng)目規(guī)劃確認(rèn)”對(duì)應(yīng)“需求分析”和“項(xiàng)目計(jì)劃”;“首次運(yùn)行”對(duì)應(yīng)“開發(fā)完成”,“發(fā)布”的意思和傳統(tǒng)基本相同。同時(shí),A企業(yè)根據(jù)企業(yè)的具體情況對(duì)流程進(jìn)行了相應(yīng)調(diào)整,把整個(gè)流程分為可行性分析、需求分析、開發(fā)計(jì)劃、開發(fā)過(guò)程和結(jié)項(xiàng)總結(jié)五個(gè)階段,下面分別進(jìn)行說(shuō)明。
(1)可行性分析。在做可行性分析的時(shí)候,要充分考慮企業(yè)以前的各種技術(shù)和市場(chǎng)積累,還有目前的資源可用性情況,特別是要做好風(fēng)險(xiǎn)分析。通常企業(yè)在項(xiàng)目立項(xiàng)前沒有充分考慮各種情況,認(rèn)為這個(gè)項(xiàng)目比較簡(jiǎn)單,應(yīng)該沒什么問(wèn)題,結(jié)果是沒有做得很成功,進(jìn)度上也拖了一段時(shí)間。在后來(lái)結(jié)項(xiàng)分析的時(shí)候,認(rèn)為主要的問(wèn)題就是領(lǐng)域的區(qū)別造成了企業(yè)內(nèi)部沒有人對(duì)該領(lǐng)域特別熟悉,缺乏領(lǐng)域?qū)<遥?duì)上述風(fēng)險(xiǎn)估計(jì)不足,也沒有對(duì)風(fēng)險(xiǎn)進(jìn)行較好的管理,所以造成了項(xiàng)目的不成功。
上面提到,可行性分析一般是由未來(lái)的項(xiàng)目經(jīng)理和產(chǎn)品經(jīng)理完成,必要時(shí)還需要市場(chǎng)人員的參與,項(xiàng)目經(jīng)理主要考慮技術(shù)可行性,包括項(xiàng)目最初估計(jì)的進(jìn)度表和資源需求情況;產(chǎn)品經(jīng)理主要考慮市場(chǎng)和經(jīng)濟(jì)上的可行性(主要是針對(duì)軟件產(chǎn)品而言)。只有預(yù)先對(duì)各種問(wèn)題進(jìn)行完備的分析后,才能得出正確的決策。不要到后來(lái)因?yàn)槟切┦孪葲]考慮到的,但應(yīng)該想到的各種原因造成項(xiàng)目失敗;或者雖然完成了,但是沒有取得預(yù)期的效果,不能給企業(yè)帶來(lái)較好的收益。
只有在可行性分析通過(guò)評(píng)審,企業(yè)高層領(lǐng)導(dǎo)者認(rèn)可的情況下才能付諸實(shí)施。通過(guò)可行性分析,揭示了即將面臨的各種問(wèn)題及風(fēng)險(xiǎn),使得企業(yè)內(nèi)部對(duì)該項(xiàng)目有了一致的認(rèn)識(shí),在后來(lái)的資源申請(qǐng)上也更容易得到高層支持,更易于導(dǎo)致項(xiàng)目成功。
(2)需求分析。需求管理是軟件開發(fā)中非常重要的部分,在一般的MIS型項(xiàng)目中,準(zhǔn)確的把握需求往往是項(xiàng)目成功的關(guān)鍵。但需求管理也是個(gè)困難的過(guò)程,太多項(xiàng)目的需求都沒有良好的管理過(guò)程,往往導(dǎo)致項(xiàng)目后期的大量修改或者直接使項(xiàng)目失敗。
需求的管理主要由產(chǎn)品經(jīng)理負(fù)責(zé),其中最終用戶的實(shí)時(shí)參與是一個(gè)非常重要的因素。在需求采集階段,A企業(yè)主要采用了原型法,使用ViualStudio.Net建立最終產(chǎn)品的界面,然后把功能實(shí)現(xiàn)和界面一一對(duì)應(yīng)起來(lái),和用戶進(jìn)行討論,并不斷的修改界面。最終在基本達(dá)成一致后,對(duì)應(yīng)原型寫出需求規(guī)格說(shuō)明書,在評(píng)審后納入基線管理。
在需求的制定過(guò)程中,產(chǎn)品經(jīng)理必須和項(xiàng)目經(jīng)理、開發(fā)人員、測(cè)試人員進(jìn)行良好的溝通,使項(xiàng)目組全體都參與到需求分析中來(lái),并共同確定需求的關(guān)鍵特性:①項(xiàng)目的范圍:在需求分析中,首先必須明確項(xiàng)目的范圍,去掉那些看似屬于該項(xiàng)目其實(shí)不該在項(xiàng)目中的需求特性。特別是在一些MIS項(xiàng)目中,客戶往往把一些屬于他們的日常工作但不屬于該項(xiàng)目的需求提交給項(xiàng)目組,這時(shí)就必須分清項(xiàng)目的范圍,不要在項(xiàng)目中加入太多不應(yīng)該做的東西,否則往往會(huì)導(dǎo)致項(xiàng)目范圍無(wú)限擴(kuò)大,最終只能是使項(xiàng)目失敗。②需求的優(yōu)先級(jí):需求的優(yōu)先級(jí)是非常重要的特性,只有在準(zhǔn)確把握的需求優(yōu)先級(jí)的基礎(chǔ)上才可能規(guī)劃外部里程碑(產(chǎn)品版本)和內(nèi)部里程碑(開發(fā)的階段性,后面會(huì)講到)。通常是用戶最關(guān)心,使用最頻繁的功能應(yīng)該屬于高優(yōu)先級(jí),而那些不怎么重要或很少用到的功能應(yīng)該屬于低優(yōu)先級(jí)。A企業(yè)必須在產(chǎn)品的開始版本和項(xiàng)目的開始就把重點(diǎn)放在高優(yōu)先級(jí)的需求上,而對(duì)于低優(yōu)先級(jí)的功能可以在項(xiàng)目后期根據(jù)需要進(jìn)行裁減或納入下一個(gè)版本規(guī)劃。③產(chǎn)品的易用性:產(chǎn)品的易用性反映在原型中,是原型法的一個(gè)非常重要的作用。很多產(chǎn)品的失敗其一個(gè)重要原因就是易用性比較差,雖然它在功能上滿足了用戶需求,甚至可以說(shuō)功能很強(qiáng)大。通過(guò)原型法,能讓用戶看到并模擬使用最終的產(chǎn)品界面,能在需求階段通過(guò)修正軟件界面來(lái)適應(yīng)用戶的偏好,從而在很大程度上提高了產(chǎn)品的易用性,使項(xiàng)目更容易成功。④其他需求特性:如性能要求、健壯性等。這些特性是產(chǎn)品的非功能性需求,也是項(xiàng)目成功的關(guān)鍵因素,特別是在一些大型的涉及重要領(lǐng)域的管理信息系統(tǒng)中。
需求分析完成后,項(xiàng)目組需要對(duì)項(xiàng)目的初步計(jì)劃進(jìn)行重新審定,一般都需要變更項(xiàng)目時(shí)間表和資源需求。需求分析的完成也意味著項(xiàng)目其他部分可以齊頭并進(jìn),如概要設(shè)計(jì)、測(cè)試計(jì)劃、用戶說(shuō)明書,這也在某個(gè)方面證明了需求分析的重要性——它是下面所有活動(dòng)的基礎(chǔ)和準(zhǔn)繩。
(3)開發(fā)計(jì)劃。軟件開發(fā)中的計(jì)劃性是非常重要的,一個(gè)沒有良好計(jì)劃的開發(fā)項(xiàng)目能夠成功的機(jī)會(huì)非常小,除非有天才的程序員再加上好運(yùn)氣。開發(fā)計(jì)劃的主要內(nèi)容包括:項(xiàng)目進(jìn)度安排、人力資源安排,風(fēng)險(xiǎn)管理策略等。
項(xiàng)目的進(jìn)度安排和人力資源安排可能是開發(fā)計(jì)劃中最重要的部分,也是最難以估計(jì)的部分。一般國(guó)內(nèi)的中小軟件企業(yè)對(duì)項(xiàng)目工作量和開發(fā)人員能力的量化程度不高,所以導(dǎo)致進(jìn)度和資源安排不確切,有時(shí)候甚至是相差很遠(yuǎn)。目前一個(gè)最實(shí)際的辦法就是根據(jù)以往項(xiàng)目的積累,但必須要求是同一領(lǐng)域的類似項(xiàng)目,這樣才有較強(qiáng)的可比性。由于這些計(jì)劃安排是預(yù)估粗略的,所以還必須在以后的項(xiàng)目各階段完成后進(jìn)行合理的變更,反應(yīng)項(xiàng)目的實(shí)際需求。微軟的辦法是把進(jìn)度估計(jì)的權(quán)限交給開發(fā)人員,由開發(fā)人員根據(jù)自己的經(jīng)驗(yàn)進(jìn)行估計(jì),由于一般開發(fā)人員往往會(huì)高估自己的能力,估計(jì)的進(jìn)度也會(huì)相應(yīng)偏短,最后再做適當(dāng)?shù)难娱L(zhǎng)。這種辦法有它合理的地方,在中國(guó)還需進(jìn)行實(shí)踐摸索。
對(duì)于進(jìn)度的估計(jì)業(yè)界有個(gè)經(jīng)驗(yàn)公式,即最初預(yù)估的時(shí)間再乘以2.5,可能是最后的完成時(shí)間。因?yàn)樵S多人在估計(jì)進(jìn)度的時(shí)候,往往忽略了很多非開發(fā)時(shí)間,如與客戶溝通的時(shí)間、項(xiàng)目組溝通時(shí)間、企業(yè)培訓(xùn)時(shí)間、假期等,所以在估計(jì)進(jìn)度的時(shí)候,一定要全方位周全考慮,在盡可能的情況下寧愿把進(jìn)度估計(jì)的長(zhǎng)一點(diǎn),免得在項(xiàng)目后期導(dǎo)致非常被動(dòng)的局面。后面將具體講到采取的階段性的開發(fā)方法,這種方法的運(yùn)用反映在進(jìn)度估計(jì)時(shí)必須在各階段間預(yù)留緩沖時(shí)間,以解決那些事先沒有預(yù)料到的活動(dòng)。如果進(jìn)度表和要求的出貨時(shí)間有沖突,寧愿砍掉一些不重要的功能,也不要盲目增加人手,這種做法可能會(huì)導(dǎo)致產(chǎn)品質(zhì)量下降,最終得不償失。
(4)開發(fā)過(guò)程。在項(xiàng)目的開發(fā)過(guò)程中,A企業(yè)采用了階段式的開發(fā)過(guò)程,這也是微軟企業(yè)所推薦的開發(fā)過(guò)程。在開發(fā)過(guò)程的初期,首要的活動(dòng)是概要設(shè)計(jì)。概要設(shè)計(jì)的目標(biāo)是簡(jiǎn)單、適用、能夠覆蓋所有的需求并能支持后面的階段式開發(fā)。微軟的應(yīng)用方案解決模型是基于服務(wù)的三層(多層)架構(gòu),包括用戶層,業(yè)務(wù)層和數(shù)據(jù)層,各層之間采用標(biāo)準(zhǔn)的接口進(jìn)行通訊。
階段開發(fā)過(guò)程不是傳統(tǒng)的根據(jù)模塊劃分來(lái)依次完成各模塊,最后再進(jìn)行項(xiàng)目的整合,而是在每個(gè)階段完成后,項(xiàng)目都可以推出產(chǎn)品,只不過(guò)該產(chǎn)品的功能比最終產(chǎn)品的功能弱一些。階段性完成項(xiàng)目比傳統(tǒng)的開發(fā)方法最明顯的優(yōu)點(diǎn)是不必到項(xiàng)目的末期才開始整合產(chǎn)品,使產(chǎn)品模塊之間協(xié)作產(chǎn)生的問(wèn)題及早產(chǎn)生,也及早修正,從而項(xiàng)目的風(fēng)險(xiǎn)也大大減小。當(dāng)然采用階段性開發(fā)方法也有相應(yīng)的代價(jià),最大的代價(jià)可能是反復(fù)的整合、測(cè)試已經(jīng)完成的模塊,但采用相應(yīng)的一些自動(dòng)化工具可以減小這個(gè)代價(jià)。
一般在開始的階段進(jìn)行的是系統(tǒng)架構(gòu)和最重要的功能,后面的階段是相對(duì)不怎么重要的功能。這樣的分配有利于最終用戶在早期就能看到系統(tǒng)的大致模樣,便于他們及早的對(duì)產(chǎn)品提出意見,并對(duì)相應(yīng)的錯(cuò)誤進(jìn)行修改;也有利于項(xiàng)目組在項(xiàng)目后期時(shí)間很緊的情況下,去掉一些不重要的功能,把它們納入下一個(gè)版本處理,確保產(chǎn)品的推出時(shí)間。迭代的順利進(jìn)行依賴于良好的架構(gòu)設(shè)計(jì),前面階段的設(shè)計(jì)應(yīng)該給后面要加入的功能預(yù)留出各種接口,并能使后面的工作在前面的基礎(chǔ)上繼續(xù)進(jìn)行下去。
這種在開發(fā)階段的迭代方式不同于整個(gè)項(xiàng)目的完全迭代開發(fā),后者是項(xiàng)目的需求、概要設(shè)計(jì)、開發(fā)等全部是迭代進(jìn)行,一次迭代要進(jìn)行所有的項(xiàng)目活動(dòng)。至于誰(shuí)優(yōu)誰(shuí)劣可能在不同的情況下有不同的說(shuō)法,需要根據(jù)項(xiàng)目和自身的情況合理采用。還有就是迭代的次數(shù)也要根據(jù)項(xiàng)目的具體情況而定。不能太多,導(dǎo)致重復(fù)的工作量過(guò)大;也不能太少,使得該方法退化到傳統(tǒng)方法。通常把項(xiàng)目分了四個(gè)階段:架構(gòu)完成、主要功能完成、其他功能完成、整合發(fā)行。實(shí)踐證明,這樣的實(shí)施比傳統(tǒng)方法確實(shí)在很大程度上減小了項(xiàng)目失敗的風(fēng)險(xiǎn),再?zèng)]有產(chǎn)生那種“似乎永遠(yuǎn)也做不完的感覺”。
(5)結(jié)項(xiàng)總結(jié)。很多企業(yè)在項(xiàng)目完成后往往忽視了最后的總結(jié),沒有把在上個(gè)項(xiàng)目中得到的經(jīng)驗(yàn)教訓(xùn)進(jìn)行分析,轉(zhuǎn)化成企業(yè)的巨大財(cái)富。項(xiàng)目的總結(jié)是整個(gè)項(xiàng)目的不可缺少的重要組成部分,只有通過(guò)詳盡的充分的項(xiàng)目總結(jié),才能使項(xiàng)目組的所有成員對(duì)項(xiàng)目的歷程有一個(gè)清楚的了解,提高他們對(duì)軟件項(xiàng)目的認(rèn)識(shí)。
A企業(yè)的做法是在項(xiàng)目完成后首先由各個(gè)項(xiàng)目成員寫出各自的總結(jié)報(bào)告,包括所從事的工作、任務(wù)的完成情況、遇到的問(wèn)題及解決方案、對(duì)項(xiàng)目過(guò)程的意見和自己的想法等內(nèi)容。項(xiàng)目負(fù)責(zé)人需要把整個(gè)的項(xiàng)目歷程整理成一份文件,其中包括項(xiàng)目的介紹、項(xiàng)目進(jìn)行的具體資料(如實(shí)際花費(fèi)時(shí)間、源代碼數(shù)、功能模塊數(shù)量等)、項(xiàng)目計(jì)劃與實(shí)際的比較等。
在上述完成后,全體項(xiàng)目參與人員舉行項(xiàng)目結(jié)項(xiàng)工作會(huì)議,對(duì)各人所列舉的問(wèn)題及想法進(jìn)行討論,目的是得出好的經(jīng)驗(yàn)教訓(xùn),從而指導(dǎo)后面項(xiàng)目過(guò)程。會(huì)議可由分別針對(duì)的問(wèn)題分為幾個(gè)部分,如項(xiàng)目過(guò)程方面的、質(zhì)量管理方面的、技術(shù)方面的等,整合后形成結(jié)項(xiàng)會(huì)議報(bào)告。
項(xiàng)目負(fù)責(zé)人最后把項(xiàng)目歷程、資料、在結(jié)項(xiàng)會(huì)議中總結(jié)的經(jīng)驗(yàn)教訓(xùn)等整理成一份總的項(xiàng)目過(guò)程文件,歸檔并分發(fā)到各成員和上層領(lǐng)導(dǎo),并由項(xiàng)目經(jīng)理向上層領(lǐng)導(dǎo)匯報(bào),這時(shí),一個(gè)完整的項(xiàng)目才真正告一段落。這些項(xiàng)目資料給以后的項(xiàng)目提供很好的模板和借鑒意義,并可以作為以后項(xiàng)目預(yù)估的依據(jù)。
3. 風(fēng)險(xiǎn)管理。微軟企業(yè)認(rèn)為,軟件開發(fā)是一個(gè)風(fēng)險(xiǎn)驅(qū)動(dòng)的過(guò)程,由此可看出風(fēng)險(xiǎn)管理在軟件項(xiàng)目中的重要性。一個(gè)項(xiàng)目的風(fēng)險(xiǎn)有許多來(lái)源,如客戶、進(jìn)度、開發(fā)過(guò)程、人力資源等,忽視風(fēng)險(xiǎn)的后果可能是成本超支、進(jìn)度推后,最嚴(yán)重導(dǎo)致項(xiàng)目失敗。
MSF的風(fēng)險(xiǎn)管理原則是:①風(fēng)險(xiǎn)應(yīng)該在整個(gè)項(xiàng)目的進(jìn)程中一直被估計(jì),并且作為項(xiàng)目決策的依據(jù)之一。②有效的風(fēng)險(xiǎn)管理過(guò)程覆蓋了所有關(guān)鍵的人力、過(guò)程、商務(wù)及技術(shù)領(lǐng)域。③風(fēng)險(xiǎn)在納入管理前必須被清晰的表述。④重要的風(fēng)險(xiǎn)必須優(yōu)先被處理。
MSF風(fēng)險(xiǎn)管理過(guò)程包括以下階段:風(fēng)險(xiǎn)識(shí)別、風(fēng)險(xiǎn)陳述、風(fēng)險(xiǎn)分析、處理計(jì)劃、風(fēng)險(xiǎn)跟蹤、風(fēng)險(xiǎn)控制、風(fēng)險(xiǎn)解除。
在中小企業(yè)的風(fēng)險(xiǎn)管理過(guò)程中,一般項(xiàng)目經(jīng)理?yè)?dān)任風(fēng)險(xiǎn)管理員的角色,但同時(shí)需要另外的資深開發(fā)人員輔助,一起完成風(fēng)險(xiǎn)管理的任務(wù)。他們負(fù)責(zé)維護(hù)十大風(fēng)險(xiǎn)清單(不一定非要列出十個(gè)),并在項(xiàng)目進(jìn)程中隨時(shí)對(duì)風(fēng)險(xiǎn)清單進(jìn)行更新。對(duì)風(fēng)險(xiǎn)的評(píng)級(jí)MSF采用的方式是:風(fēng)險(xiǎn)影響程度=風(fēng)險(xiǎn)的可能性×風(fēng)險(xiǎn)發(fā)生造成的損失,根據(jù)風(fēng)險(xiǎn)影響程度的大小對(duì)風(fēng)險(xiǎn)進(jìn)行評(píng)級(jí)。
在項(xiàng)目實(shí)施中,A企業(yè)總結(jié)的一些高風(fēng)險(xiǎn)事件主要有:需求的不準(zhǔn)確、項(xiàng)目時(shí)間表過(guò)于短促、開發(fā)一個(gè)從前沒進(jìn)入的領(lǐng)域軟件、開發(fā)人員對(duì)工具的不熟悉、人員流動(dòng)頻繁、使用了外部軟件中間件等。如果對(duì)這些風(fēng)險(xiǎn)不提前做出計(jì)劃,可能會(huì)對(duì)項(xiàng)目的順利進(jìn)行造成極大的破壞,甚至直接導(dǎo)致項(xiàng)目失敗。針對(duì)每一個(gè)風(fēng)險(xiǎn),A企業(yè)需要列出who, when, how, how much等事項(xiàng),并對(duì)風(fēng)險(xiǎn)處理的結(jié)果進(jìn)行追蹤,最后決定是否已經(jīng)解除風(fēng)險(xiǎn)或再進(jìn)入風(fēng)險(xiǎn)處理循環(huán)。
三、 總結(jié)
引入MSF管理思想后,項(xiàng)目的成功率比原來(lái)增大了很多。企業(yè)研發(fā)流程必須盡可能MSF模型化,工具化,沒有銀彈。所有的這一切都是在一個(gè)公共的工具平臺(tái)上,至少需要需求管理工具、版本控制工具、日志構(gòu)建工具、Bug管理工具等。德魯克認(rèn)為,管理既不是科學(xué),也不是藝術(shù),管理是實(shí)踐,正如軟件工程的世界級(jí)大師Ivar Jacobson所說(shuō),“我相信沒有一種技術(shù)、沒有一種流程能夠解決所有的問(wèn)題,我更相信基于實(shí)踐的方式。你需要用不同來(lái)源的實(shí)踐,結(jié)合自己的流程,改進(jìn)自己的流程和工作方式,這樣才能立于不敗之地。”
參考文獻(xiàn):
1. (美)邁克爾·科索馬羅,理查德·賽爾比 著.程化 譯. 微軟的秘密. 北京:北京大學(xué)出版社, 西蒙與舒斯特國(guó)際出版公司,1996.
2. (美)史蒂夫·麥克康奈爾 著,余孟學(xué) 譯. 微軟項(xiàng)目求生法則. 北京:機(jī)械工業(yè)出版社,2000.
3. (美)Karl E. Wiegers 著.陸麗娜,王忠民,王志敏 譯. 軟件需求. 北京:機(jī)械工業(yè)出版社,2000.
4. (美)卡耐基梅隆大學(xué)軟件工程研究所著.劉孟仁 譯. 能力成熟度模型(CMM):軟件過(guò)程改進(jìn)指南. 北京:電子工業(yè)出版社,2001.
5. (美)Frederick P. Brooks Jr. 著. 人月神話(影印版) The Mythical Man-Month. 北京:中國(guó)電力出版社,2003.
6. 匡曉紅. 基于MSF的風(fēng)險(xiǎn)管理模型. 中國(guó)科技信息, 2007,(17).
基金項(xiàng)目:福建省社會(huì)科學(xué)規(guī)劃一般項(xiàng)目(項(xiàng)目號(hào):2011B223)。
作者簡(jiǎn)介:劉震宇,廈門大學(xué)管理學(xué)院教授、博士生導(dǎo)師;陳思恩,廈門大學(xué)管理學(xué)院博士生,高級(jí)工程師;張耕,廈門大學(xué)國(guó)際經(jīng)濟(jì)與貿(mào)易系副教授。
收稿日期:2012-10-26。