軟件可靠性介紹(中)
2.保證軟件可靠性的工程方法 為了保證軟件的可靠性,應在軟件壽命周期的各個階段千方百計地減少缺陷。軟件開發周期錯誤和軟件故障分類的百分數分別如表1和表2所示。
表1 軟件開發周期各階段錯誤的百分數
表1 軟件開發周期各階段錯誤的百分數
表1 軟件開發周期各階段錯誤的百分數
軟件開發周期各階段 需求分析 設 計 編碼與單元試驗 綜合與試驗 運行與維護 錯誤百分數(%) 55 17 13 10 5 表2 軟件故障分類的百分數故障分類 需求變化 邏輯設計 數 據 相 互 環 境 人的因素 計 算 文件提供 其 他 軟件故障分類百分數(%) 36 28 6 6 5 5 5 2 7 由表1、表2的統計數據表明,在軟件壽命周期的各個階段都可能發生軟件錯誤或故障。而需求分析和軟件設計階段發生錯誤或故障的比重占多數。 同時,統計數據同樣表明,軟件錯誤的改正所需費用也是越晚越高。 為保證軟件可靠性,在其壽命周期各個階段需要采取如下的措施。
(1)需求分析階段 本階段主要措施是,全面理解用戶的使用要求、使用條件和軟件功能,在全面分析和與用戶充分交換意見的基礎上,制訂出軟件的技術規格書。該規格書要說明測試軟件的方法,有完整的軟件技術要求,用語要準確和規范。
(2)設計階段 在軟件設計階段,要把軟件的技術要求轉換成設計方案。此時,可采取如下的方法。
1)自頂向下設計;
2)采用結構化程序設計;
3)容錯設計;
4)設計評審;
5)(標準)模塊化設計;
6)制訂和貫徹軟件可靠性設計準則。