四、風險辨識
識別風險是系統(tǒng)化地識別已知的和可預測的風險,在可能時避免這些風險,且當必要時控制這些風險。根據(jù)風險內(nèi)容,我們可以將風險分為:
(1)產(chǎn)品規(guī)模風險:與軟件的總體規(guī)模相關(guān)的風險。
(2)商業(yè)影響風險:商業(yè)風險影響到軟件開發(fā)的生存能力。商業(yè)風險包含的五個主要的風險是:
l 市場風險:開發(fā)了一個沒有人真正需要的優(yōu)秀產(chǎn)品或系統(tǒng);
l 策略風險:開發(fā)的產(chǎn)品不符合公司的整體商業(yè)策略;
l 銷售風險:開發(fā)了一個銷售部門不知道如何去賣的產(chǎn)品;
l 管理風險:由于重點的轉(zhuǎn)移或人員的變動而失去了高級管理層的支持的風險;
l 預算風險:沒有得到預算或人力上的保證。
(3)客戶特性風險:與客戶的素質(zhì)以及開發(fā)者和客戶溝通能力相關(guān)的風險。
(4)過程定義風險:與軟件過程定義相關(guān)的風險。
(5)開發(fā)環(huán)境風險:與開發(fā)工具的可用性及質(zhì)量相關(guān)的風險。
(6)技術(shù)風險:技術(shù)風險是指在設計、實現(xiàn)、接口、驗證、維護、規(guī)約的二義性、技術(shù)的不確定性、陳舊的技術(shù)等方面存在的風險。技術(shù)風險威脅到軟件開發(fā)的質(zhì)量及交付的時間,如果技術(shù)風險變成現(xiàn)實,則開發(fā)工作可能變得很困難或根本不可能。
(7)人員數(shù)目及經(jīng)驗帶來的風險:與參與工作的軟件工程師的總體技術(shù)水平及項目經(jīng)驗相關(guān)的風險。
在進行具體的軟件項目風險識別時,可以根據(jù)實際情況對風險分類。但簡單的分類并不是總行的通的,某些風險根本無法預測。在這里,我們介紹一下美國空軍軟件項目風險管理手冊中指出的如何識別軟件風險。這種識別方法要求項目管理者根據(jù)項目實際情況標識影響軟件風險因素的風險驅(qū)動因子,這些因素包括以下幾個方面。
(1)性能風險:產(chǎn)品能夠滿足需求和符合使用目的的不確定程度。
(2)成本風險:項目預算能夠被維持的不確定的程度。
(3)支持風險:軟件易于糾錯、適應及增強的不確定的程度。
(4)進度風險:項目進度能夠被維持且產(chǎn)品能按時交付的不確定的程度。
每一個風險驅(qū)動因子對風險因素的影響均可分為四個影響類別——可忽略的、輕微的、嚴重的及災難性的。
五、風險分析
在進行了風險辨識后,我們就要進行風險估算,風險估算從以下幾個方面評估風險清單中的每一個風險:
(1)建立一個尺度,以反映風險發(fā)生的可能性;
(2)描述風險的后果;
(3)估算風險對項目及產(chǎn)品的影響;
(4)標注風險預測的整體精確度,以免產(chǎn)生誤解。
對辨識出的風險進行進一步的確認后分析風險,即假設某一風險出現(xiàn)后,分析是否有其他風險出現(xiàn),或是假設這一風險不出現(xiàn),分析它將會產(chǎn)生什么情況,然后確定主要風險出現(xiàn)最壞情況后,如何將此風險的影響降低到最小,同時確定主要風險出現(xiàn)的個數(shù)及時間。進行風險分析時,最重要的是量化不確定性的程度和每個風險可能造成損失的程度。為了實現(xiàn)這點,必須考慮風險的不同類型。識別風險的一個方法是建立風險清單,清單上列舉出在任何時候可能碰到的風險最重要的是要對清單的內(nèi)容隨時進行維護,更新風險清單,并向所有的成員公開,應鼓勵項目團隊的每個成員勇于發(fā)現(xiàn)問題并提出警告。建立風險清單的一個辦法是將風險輸入缺陷追蹤系統(tǒng)中,建立風險追蹤工具,缺失追蹤系統(tǒng)一般能將風險項目標示為已解決或尚待處理狀態(tài),也能指定解決問題的項目團隊成員,并安排處理順序。風險清單給項目管理提供了一種簡單的風險預測技術(shù),下表事一個風險清單的例子:
風險 類別 概率 影響
資金將會流失 商業(yè)風險 40% 1
技術(shù)達不到預期效果 技術(shù)風險 30% 1
人員流動頻繁 人員風險 60% 3
在風險清單中,風險的概率值可以由項目組成員個別估算,然后加權(quán)平均,得到一個有代表性的值。也可以通過先