您的位置:軟件測(cè)試 > 軟件項(xiàng)目管理 > 項(xiàng)目收尾 >
一個(gè)失敗項(xiàng)目的總結(jié)-兼談風(fēng)險(xiǎn)管理
作者:網(wǎng)絡(luò)轉(zhuǎn)載 發(fā)布時(shí)間:[ 2013/11/27 10:25:06 ] 推薦標(biāo)簽:

我曾經(jīng)做過(guò)一個(gè)失敗的項(xiàng)目。那時(shí)我對(duì)項(xiàng)目管理一知半解,對(duì)于風(fēng)險(xiǎn)管理、進(jìn)度管理等更是一無(wú)所知,以致后花費(fèi)了當(dāng)初幾倍的人力來(lái)挽救它造成的損失。

      項(xiàng)目概況

      這個(gè)項(xiàng)目的策劃是在11月開(kāi)始的,是對(duì)現(xiàn)有的一個(gè)Web應(yīng)用程序進(jìn)行改造?蛻魧(xiě)了一份簡(jiǎn)單的需求說(shuō)明,希望能在12/25圣誕節(jié)之前投入使用。根據(jù)這份需求說(shuō)明,我們整理出了一份功能列表,然后估算每個(gè)功能的代碼規(guī)模,發(fā)現(xiàn)規(guī)模大大超出期限,于是跟客戶交涉,刪減了一些功能,并將發(fā)布日期定為1/26。后結(jié)果為服務(wù)器端3KL,客戶端3KL,按照1KL/人月的保守估計(jì),需要6個(gè)人月,投入兩個(gè)人,正好能在1月底完工。于是項(xiàng)目開(kāi)始了。

      為檢查項(xiàng)目進(jìn)行狀況,客戶希望在12/25之前發(fā)布beta測(cè)試版。因此主要功能必須在短短的兩個(gè)月之內(nèi)完成。為了趕工期,我們省略了概要設(shè)計(jì)和大部分的詳細(xì)設(shè)計(jì),直接進(jìn)入編碼階段。一部分用戶需求還未確定,只好先進(jìn)行確定部分的編碼工作,將那些遲遲沒(méi)有定論的需求放在beta版發(fā)布之后。

      我負(fù)責(zé)客戶端的開(kāi)發(fā),很不幸的是負(fù)責(zé)服務(wù)器端開(kāi)發(fā)的同事在11月上旬一直在忙于另一個(gè)項(xiàng)目,而到了11月中旬又因病離職,導(dǎo)致11月份服務(wù)器端幾乎沒(méi)有任何進(jìn)展。好在服務(wù)器端開(kāi)發(fā)難度不大,項(xiàng)目組在12月份調(diào)入另一名強(qiáng)人來(lái)接班。在我倆的努力下終于在12/24如期發(fā)布了beta版。

      到這里似乎一切順利,但接下來(lái)的一個(gè)月中,未確定的需求和不斷發(fā)現(xiàn)的bug成了災(zāi)難。項(xiàng)目從原定的1/25推遲到2/8,再推遲到2/16。而這時(shí)開(kāi)發(fā)團(tuán)隊(duì)也由原來(lái)的兩個(gè)人增加到五個(gè)人,增加的三個(gè)人專(zhuān)職測(cè)試。后終于發(fā)布了,結(jié)果發(fā)布當(dāng)天因?yàn)橐粋(gè)小bug導(dǎo)致數(shù)十個(gè)用戶數(shù)據(jù)被誤刪。于是暫停服務(wù)繼續(xù)修改,改為封閉式開(kāi)發(fā),并且繼續(xù)增加測(cè)試隊(duì)伍到10個(gè)人,這樣整個(gè)團(tuán)隊(duì)有12個(gè)人在工作。

      這樣的狀況一直持續(xù)到二月底,項(xiàng)目總算正常發(fā)布了。

      計(jì)算一下結(jié)果

      下面是每個(gè)月的開(kāi)發(fā)者數(shù)目。

      計(jì)劃 實(shí)際
      11月 2 1.5
      12月 2 2
      1月 2 5
      2月 0 8.5
      總計(jì) 6 17

      實(shí)際的工時(shí)約為預(yù)計(jì)的3倍。

      分析原因

      為什么這個(gè)項(xiàng)目會(huì)失?我認(rèn)為原因在以下幾個(gè)方面。

      1. 忽視項(xiàng)目風(fēng)險(xiǎn)。這個(gè)項(xiàng)目的風(fēng)險(xiǎn)有以下幾條

      風(fēng)險(xiǎn) 影響(人月) 發(fā)生的可能性 實(shí)際影響(人月)
      未確定的需求 1 1
      原有框架的缺陷造成的實(shí)現(xiàn)困難 0.5 20% 0.1
      開(kāi)發(fā)環(huán)境不完善 0.2 50% 0.1
      新的bug管理系統(tǒng)造成的學(xué)習(xí)困難 0.2 50% 0.1
      發(fā)布后的bug 1 50% 0.5
      總計(jì) 1.7

      總計(jì)是1.8人月,也是說(shuō)項(xiàng)目應(yīng)當(dāng)在計(jì)劃的6人月上再加上1.8人月,實(shí)際的估算值應(yīng)為7.8人月。但在估算時(shí)并沒(méi)有考慮到這些風(fēng)險(xiǎn)(或者說(shuō),雖然考慮到了但卻沒(méi)有認(rèn)識(shí)到它的嚴(yán)重性),導(dǎo)致1月底計(jì)劃結(jié)束時(shí)風(fēng)險(xiǎn)暴露,不得不增加人力來(lái)修補(bǔ)問(wèn)題。

      2. 對(duì)風(fēng)險(xiǎn)未采取相應(yīng)對(duì)策。實(shí)際上,上述風(fēng)險(xiǎn)中甚至存在發(fā)生概率為的風(fēng)險(xiǎn),但由于開(kāi)發(fā)者過(guò)于自信(所謂的“自我膨脹”),以致并未采取相關(guān)措施。甚至在12月底,某些問(wèn)題已浮出水面時(shí)依然未進(jìn)行控制。

      當(dāng)初如果能采取一些對(duì)策,或許不會(huì)這么糟糕。

      風(fēng)險(xiǎn) 對(duì)策
      未確定的需求 嚴(yán)格控制流程,在詳細(xì)設(shè)計(jì)未完成之前禁止編碼
      原有框架的缺陷造成的實(shí)現(xiàn)困難 及早聯(lián)系框架開(kāi)發(fā)者調(diào)整
      開(kāi)發(fā)環(huán)境不完善 盡早使用較為完善的開(kāi)發(fā)環(huán)境
      發(fā)布后的bug 發(fā)布β版

      3. 人月神話!度嗽律裨挕愤@本經(jīng)典著作中提到,增加開(kāi)發(fā)者并不能加快開(kāi)發(fā)進(jìn)程。請(qǐng)注意2月份比1月份多出來(lái)的那3.5人月。從事后結(jié)果來(lái)看,這3.5人月并未發(fā)現(xiàn)一個(gè)有效的bug。這是因?yàn),這3.5人月是從其他項(xiàng)目組臨時(shí)借調(diào)過(guò)來(lái)的人員,完全不熟悉項(xiàng)目,加上不完善的測(cè)試用例,導(dǎo)致他們無(wú)法正確理解測(cè)試用例的意圖。

      通常編碼過(guò)程中的人月效應(yīng)都能引起大家的重視,但實(shí)際上測(cè)試階段也存在人月效應(yīng),它的影響并不比編碼時(shí)小多少。

      并不是說(shuō)不能加人,加人時(shí)也要加有經(jīng)驗(yàn)的開(kāi)發(fā)者(比如1月份比12月份多的那3個(gè)人月)。

      4. 盲目編程,跳過(guò)概要設(shè)計(jì)和詳細(xì)設(shè)計(jì),直接進(jìn)行編碼。我們都知道,隨著項(xiàng)目的進(jìn)行,修改一個(gè)bug所花費(fèi)的時(shí)間會(huì)呈指數(shù)增加。也是說(shuō),一個(gè)本應(yīng)在詳細(xì)設(shè)計(jì)階段發(fā)現(xiàn)的bug,推遲到單元測(cè)試階段修改,所花時(shí)間將是詳細(xì)設(shè)計(jì)階段修改的幾十倍;如果推遲到正式部署之后再修改,所花費(fèi)時(shí)間將是詳細(xì)設(shè)計(jì)階段修改的上萬(wàn)倍。

      因此,跳過(guò)概要設(shè)計(jì)和詳細(xì)設(shè)計(jì),相當(dāng)于增加了修改bug的時(shí)間,擴(kuò)大了項(xiàng)目風(fēng)險(xiǎn)。

      結(jié)論

      軟件項(xiàng)目開(kāi)發(fā)中的幾個(gè)重點(diǎn)——質(zhì)量管理、進(jìn)度管理、風(fēng)險(xiǎn)管理,通常大家都會(huì)注意到前兩者,而風(fēng)險(xiǎn)管理則鮮有人知,為什么?因?yàn)轱L(fēng)險(xiǎn)是有概率的,不像質(zhì)量和進(jìn)度那么實(shí)在,而這種不確定性使得它很容易因?yàn)殚_(kāi)發(fā)者的自負(fù)和自我膨脹心理而被忽略。

      因此無(wú)論項(xiàng)目有多么緊急,請(qǐng)務(wù)必腳踏實(shí)地地分析項(xiàng)目風(fēng)險(xiǎn),不要抱有僥幸心理。

 

軟件測(cè)試工具 | 聯(lián)系我們 | 投訴建議 | 誠(chéng)聘英才 | 申請(qǐng)使用列表 | 網(wǎng)站地圖
滬ICP備07036474 2003-2017 版權(quán)所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd