一、 引言
世界銀行的統(tǒng)計表明:在發(fā)展中的政府信息系統(tǒng)項目中,只有15%是完全成功的。因此,加強軟件項目開發(fā)中的風險管理是軟件開發(fā)中的重要的工作之一,尤其對于大型的軟件項目,軟件風險管理的奠基人之一,Charatte認為大型軟件項目的管理是風險管理。
Microsoft的量化研究表明,在風險管理中投入5%的項目工作可以獲取50%~75%的如期完成的機會�?梢婏L險管理在軟件開發(fā)中的重要性。風險管理的研究在起源于20世紀80年代末,經(jīng)過二十多年的發(fā)展,產(chǎn)生了大量的理論成果并對軟件項目的開發(fā)起到積極的作用。其中,風險管理的過程研究是風險管理的框架和基礎,為風險管理提供規(guī)范的模式。本文在分析現(xiàn)有研究的基礎上建立軟件項目的建設方和承包商風險管理的協(xié)同過程模型,以實現(xiàn)更加完整的規(guī)范的風險管理。
二、 風險管理過程模型的比較
1. Boehm模型
Boehm于1991年詳細描述了他的思想體系。Boehm認為:軟件風險管理這門學科的出現(xiàn)是試圖將影響項目成功的風險形式化為一組易用的原則和實踐的集合,是在風險成為軟件項目返工的主要因素并由此威脅到項目的成功運作前,識別、描述并消除這些風險項。他將風險管理過程歸納成二個基本步驟:風險評估和風險控制。其中風險評估包括風險識別、風險分析、風險排序;風險控制包括制定風險管理計劃、解決風險、監(jiān)控風險。
Boehm風險管理理論的核心是維護和更新十大風險列表。他通過對一些大型項目進行調查總結出了軟件項目十大風險列表,其中包括人員短缺、不切實際的工期和預算、不合時宜的需求、開發(fā)了錯誤的軟件功能、開發(fā)了錯誤的用戶界面、過高的非實質性能要求、接連不斷的需求改變、可外購部件不足、外部已完成任務不及時、實時性能過低和計算機能力有限。在軟件項目開始時歸納出現(xiàn)在項目的十大風險列表,在項目的生命周期中定期召開會議去對列表進行更新、評比。十大風險列表是讓高層經(jīng)理的注意力集中在項目關鍵成功因素上的有效途徑,可以有效地管理風險并由此減少高層的時間和精力。
2.Charette模型
1989年Charette設計的風險分析和管理的體系分為兩大階段,分別為分析階段和管理階段,每個階段內含三個過程,這是一個相互重疊和循環(huán)的模型。Charette同時為各個過程提供了相應的戰(zhàn)略思路、方法模型和技術手段。
3.CMU/SEI的CRM(Continuous Risk Management)持續(xù)風險管理模型
CMU/SEI的軟件風險管理原則包括:
�。�1)全局觀點;
(2)積極的策略;
�。�3)開放的溝通環(huán)境;
(4)綜合管理;
�。�5)持續(xù)的過程;
�。�6)共同的目標;
�。�7)協(xié)調工作。
具體來說是要不斷地評估可能造成惡劣后果的因素;決定迫切需要處理的風險;實現(xiàn)控制風險的策略;評測并確保風險策略實施的有效性。CRM模型要求在項目生命期的所有階段都關注風險識別和管理,它將風險管理劃分為五個步驟:風險識別、分析、計劃、跟蹤、控制。它強調的是對風險管理的各個組成部分的溝通。
4.IEEE風險管理標準
IEEE風險管理標準定義了軟件開發(fā)生命周期中的風險管理過程。這個風險管理過程系統(tǒng)地描述和管理在產(chǎn)品或服務的生命周期中出現(xiàn)的風險。包括以下活動:計劃并實施風險管理、管理項目風險列表、分析風險、監(jiān)控風險、處理風險、評估風險管理過程。
5.CMU/SEI的CMMI(Capability Maturity Model Integration)風險管理過程
CMMI是由SEI在CMM基礎上發(fā)展而來。目前,CMMI是全球軟件業(yè)界的管理標準。風險管理過程域在CMMI的第三級,即已定義級中建立一個關鍵過程域(KPA,Key Practice Area)。CMMI認為風險管理是一種連續(xù)的前瞻性的過程。它要識別潛在的可能危及關鍵目標的因素,以便策劃應對風險的活動和在必要時實施這些活動,緩解不利的影響終實現(xiàn)組織的目標。CMMI的風險管理被清晰地描述為實現(xiàn)三個目標,每個目標的實現(xiàn)又通過一系列的活動來完成,如圖1示。
該模型的核心是風險庫,實現(xiàn)各個目標的每個活動都會更新這個風險庫。其中活動“制訂并維護風險管理策略”與風險庫的聯(lián)系是一個雙向的交互過程,即通過采集風險庫中相應的數(shù)據(jù)并結合前一活動的輸入來制訂風險管理策略。