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