風險管理方面做了大量工作。SEI提出了連續(xù)風險管理(CRM)體系,其管理原則是:斷地評估可能造成惡劣后果的因素;決定最迫切需要處理的風險;實現(xiàn)控制風險的策略;評測并確保風險策略實施的有效性。它將風險管理劃分為5個步驟:風險識別、分析、計劃、跟蹤、控制并強調了這是一個在項目開發(fā)過程中反復持續(xù)進行的活動序列。
自1990年以來,美國卡耐基-梅隆大學的軟件工程研究所SEI在風險管理方面做了大量工作。SEI提出了連續(xù)風險管理(CRM)體系,其管理原則是:不斷地評估可能造成惡劣后果的因素;決定最迫切需要處理的風險;實現(xiàn)控制風險的策略;評測并確保風險策略實施的有效性。它將風險管理劃分為5個步驟:風險識別、分析、計劃、跟蹤、控制并強調了這是一個在項目開發(fā)過程中反復持續(xù)進行的活動序列。
國內對于軟件項目風險管理的研究還遠不成系統(tǒng)。在理論研究方面,直到2002年下半年才有翻譯的軟件風險管理專著面市,至今也沒有針對本土情況的專著出版。
專門針對Web軟件項目的風險管理研究目前才剛剛起步,如果按照Boehm體系來劃分,則主要集中在風險辨識和評估階段。2002年Donald發(fā)表的論文列出基于Internet和Intranet的軟件系統(tǒng)開發(fā)中的十大致命風險及其應對措施。但總的來說,目前缺乏系統(tǒng)地對Web軟件項目風險管理體系以及風險控制的研究。
Web軟件項目的風險管理模型
根據(jù)前面的敘述,我們知道大多數(shù)Web軟件項目具有快速開發(fā)的風格,項目成員少、工期緊。因此,要對Web軟件項目實施風險管理,就應該設計出一種與快速開發(fā)風格相一致的體系,使風險管理盡可能的自動化,形成輕量級的風險管理體系。同時,我們注意到同類軟件項目的風險在統(tǒng)計意義上具有一般性,即不同的項目實例可能會遇到相同的風險,因此我們應該充分重用過往項目有關風險的知識。對此,結合軟件項目風險管理模型設計的一般原則,我們提出了以下Web軟件項目風險管理模型的設計準則:
(1)風險管理的成果應當盡可能重用,因此要盡量采用標準化、形式化的方式來描述風險。
(2)必須全面考慮投機風險和純粹風險。Web項目創(chuàng)新性強、開發(fā)技術更新快、與商業(yè)模式聯(lián)系緊密因素。
此對純粹技術風險和非技術投機風險的管理都非常重要。
(3)風險管理要同時圍繞部署系統(tǒng)的實際運營情況展開。因為Web軟件項目通常都要求在短時間內推向市場,并在系統(tǒng)運營的同時不斷進行功能演化。
(4)風險管理應該與Web軟件項目管理無縫集成。一來可以降低風險管理成本,二來可以減少與其他項目管理活動的沖突。
(5)應該進行持續(xù)的風險管理活動并保證頻度在可接受的成本之內。要求持續(xù)開展風險管理,是因為項目的特征總是隨時在變化。
(6)風險管理要盡可能提早識別出風險。因為已經(jīng)有無數(shù)的事實證明在項目后期改正錯誤的巨大成本。
(7)風險管理的各項活動應該構成一個具有結構性和連續(xù)性的過程整體。為達成體系的總體效果,不但要求在結構層次上保持協(xié)調一致,還應該在方法、技術和工具層面保持連續(xù)性。
基于上面的設計準則,我們在SEI的CRM模型的基礎上加以改進,提出了針對Web軟件項目的快速風險識別及控制管理模型,Web軟件項目風險管理模型所示:
在這個模型中,我們的創(chuàng)新主要在于:
(1)風險管理模型中的風險辨識和風險評估緊密銜接成為一個有機整體,在識別出風險的同時立即進行評估,并要求評估結果采用基數(shù)值以提高準確度;
(2)風險辨識采用風險源清單法與全息風險層次結構相結合的辦法。Web軟件項目開發(fā)組織維護一張全局的二維結構的風險清單,風險清單所示(由于篇幅限制