軟件項目風險是指在軟件開發(fā)過程中遇到的預(yù)算和進度等方面的問題以及這些問題對軟件項目的影響。軟件項目風險會影響項目計劃的實現(xiàn),如果項目風險變成現(xiàn)實,就有可能影響項目的進度,增加項目的成本,甚至使軟件項目不能實現(xiàn)。如果對項目進行風險管理,就可以最大限度的減少風險的發(fā)生。但是,目前國內(nèi)的軟件企業(yè)不太關(guān)心軟件項目的風險管理,結(jié)果造成軟件項目經(jīng)常性的延期、超過預(yù)算,甚至失敗。成功的項目管理一般都對項目風險進行了良好的管理。因此任何一個系統(tǒng)開發(fā)項目都應(yīng)將風險管理作為軟件項目管理的重要內(nèi)容。
在項目風險管理中,存在多種風險管理方法與工具,軟件項目管理只有找出最適合自己的方法與工具并應(yīng)用到風險管理中,才能盡量減少軟件項目風險,促進項目的成功。
項目風險管理
項目風險管理是指為了最好的達到項目的目標,識別、分配、應(yīng)對項目生命周期內(nèi)風險的科學與藝術(shù)。項目風險管理的目標是使?jié)撛跈C會或回報最大化,使?jié)撛陲L險最小化。風險管理涉及的主要過程包括:風險識別,風險量化,風險應(yīng)對計劃制定和風險監(jiān)控,如圖1所示。風險識別在項目的開始時就要進行,并在項目執(zhí)行中不斷進行。就是說,在項目的整個生命周期內(nèi),風險識別是一個連續(xù)的過程。
(1)風險識別:風險識別包括確定風險的來源,風險產(chǎn)生的條件,描述其風險特征和確定哪些風險事件有可能影響本項目。風險識別不是一次就可以完成的事,應(yīng)當在項目的自始至終定期進行。
(2)風險量化:涉及對風險及風險的相互作用的評估,是衡量風險概率和風險對項目目標影響程度的過程。風險量化的基本內(nèi)容是確定那些事件需要制定應(yīng)對措施。。
(3)風險應(yīng)對計劃制定:針對風險量化的結(jié)果,為降低項目風險的負面效應(yīng)制定風險應(yīng)對策略和技術(shù)手段的過程。風險應(yīng)對計劃依據(jù)風險管理計劃、風險排序、風險認知等依據(jù),得出風險應(yīng)對計劃、剩余風險、次要風險以及為其它過程提供得依據(jù)。
(4)風險監(jiān)控:涉及整個項目管理過程中的風險進行應(yīng)對。該過程的輸出包括應(yīng)對風險的糾正措施以及風險管理計劃的更新。
風險管理步驟 所使用的工具、方法
風險識別 頭腦風暴法、面談、Delphi法、核對表、SWOT技術(shù)
風險量化 風險因子計算、PERT估計、決策樹分析、風險模擬
風險應(yīng)對計劃制定 回避、轉(zhuǎn)移、緩和、接受
風險監(jiān)控 核對表、定期項目評估、掙值分析
軟件項目中的風險管理
1、軟件項目中的風險
軟件項目的風險無非體現(xiàn)在以下四個方面:需求、技術(shù)、成本和進度。IT項目開發(fā)中常見的風險有如下幾類:
(1)需求風險
①需求已經(jīng)成為項目基準,但需求還在繼續(xù)變化;
②需求定義欠佳,而進一步的定義會擴展項目范疇;
③添加額外的需求;
④產(chǎn)品定義含混的部分比預(yù)期需要更多的時間;
⑤在做需求中客戶參與不夠;
⑥缺少有效的需求變化管理過程。
(2)計劃編制風險
①計劃、資源和產(chǎn)品定義全憑客戶或上層領(lǐng)導口頭指令,并且不完全一致;
②計劃是優(yōu)化的,是"最佳狀態(tài)",但計劃不現(xiàn)實,只能算是"期望狀態(tài)";
③計劃基于使用特定的小組成員,而那個特定的小組成員其實指望不上;
④產(chǎn)品規(guī)模(代碼行數(shù)、功能點、與前一產(chǎn)品規(guī)模的百分比)比估計的要大;
⑤完成目標日期提前,但沒有相應(yīng)地調(diào)整產(chǎn)品范圍或可用資源;
⑥涉足不熟悉的產(chǎn)品領(lǐng)域,花費在設(shè)計和實現(xiàn)上的時間比預(yù)期的要多。
(3)組織和管理風險
①僅由管理層或市場人員進行技術(shù)決策,導致計劃進度緩慢,計劃時間延長;
②低效的項目組結(jié)構(gòu)降低生產(chǎn)率;
③管理層審查 決策的周期比預(yù)期的時間長;
④預(yù)算削減,打亂項目計劃;
⑤管理層作出了打擊項目組織積極性的