常規的風險評估通過計算可能性和嚴重程度來實現,它的缺點是沒有能夠更具體地體現各種不同因素對風險可能性和嚴重程度的影響。如果在評估風險時考慮風險可能性和嚴重程度的影響因素,我們就可以優化風險評估公式,從而更好構建測試優先級。
風險的可能性和嚴重程度都會受到各種因素的影響。例如,對于風險發生的可能性可以考慮的因素有測試對象的復雜性、時間壓力及地理分散程度(如開發和測試不在同一個國家進行)等;對于風險的嚴重程度可以從測試對象的使用頻率及失效發生的可視性等方面考慮。
基于優化的風險級別選擇測試重點的核心思想如下。
根據組織和軟件產品的特點識別影響風險發生可能性和嚴重程度的主要因素,并根據每個因素在風險分析中的重要性設置不同的權重。
針對軟件產品的每個功能模塊,根據識別出的影響風險可能性和嚴重程度的主要因素評估風險發生的可能性和嚴重程度。
通過優化之后的風險級別計算公式得到每個功能模塊的總的風險級別。
選擇合適的測試策略,并排列不同功能模塊的測試重點。
下面是針對某個軟件產品的5個功能模塊選擇測試重點的案例。為了簡單起見,將5個功能模塊分別標識為功能模塊A~E。
基于優化的風險級別選擇測試重點
在該軟件產品的測試過程中識別的影響風險發生可能性的主要因素分別為功能的復雜性、時間壓力和地理分散程度,而影響風險嚴重程度的主要因素為功能使用頻率和失效發生的可視性。
每個功能模塊風險發生的可能性影響因素和嚴重程度影響因素分別以1~5代表從小到大的風險發生可能性和嚴重程度;同時將不同影響因素的權重分成3個等級并賦予1、3和10,分別代表權重最小、中等和最大。表1所示為基于優化的風險級別選擇測試重點的模板。
表1 基于優化的風險級別選擇測試重點的模板
|
嚴重程度的影響因素 | 發生可能性的影響因素 | 總的風險級別 | |||
功能模塊 | 使用頻率 | 失效的可視性 | 復雜性 | 時間壓力 | 地理分散程度 |
|
權重 | 3 | 10 | 3 | 10 | 1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
以基于優化的風險級別選擇測試重點的模板為基礎,開發團隊和測試團隊通過頭腦風暴的方法針對每個功能模塊風險發生嚴重程度和可能性的影響因素評估嚴重程度和可能性。如果出現較大的分歧,則需要采取其他一些措施,使得評估的結果達成一致。例如,采用團隊中建議的最高級別作為評估結果。表2所示為針對該軟件產品的5個功能模塊最后獲得的嚴重程度和可能性的評估數值。
表2 嚴重程度和可能性的評估數值
|
嚴重程度的影響因素 | 發生可能性的影響因素 | 總的風險級別 | |||
功能模塊 | 使用頻率 | 失效的可視性 | 復雜性 | 時間壓力 | 地理分散程度 |
|
權重 | 3 | 10 | 3 | 10 | 1 |
|
功能模塊A | 5 | 3 | 2 | 4 | 5 |
|
功能模塊B | 5 | 3 | 5 | 4 | 5 |
|
功能模塊C | 2 | 1 | 2 | 2 | 5 |
|
功能模塊D | 4 | 4 | 3 | 2 | 1 |
|
功能模塊E | 5 | 1 | 4 | 2 | 1 |
|