鄒濤 肖嵐
摘 要:軟件的可靠性在科技發(fā)展的今天,越來越受到人們的關注。由于軟件系統(tǒng)規(guī)模的不斷加大,其復雜性也就加大,而其可靠性就很難保證,進而應用本身對系統(tǒng)運行的可靠性要求就越來越高。這是因為軟件的可靠性在計算機系統(tǒng)中起著關鍵性的作用。軟件的可靠性不僅受到軟件程序的影響,而軟件設計中的問題也對其可靠性產(chǎn)生很大的影響。
關鍵詞:計算機;軟件;可靠性
一、軟件的可靠性設計涵義分析
軟件在規(guī)定的條件與周期內(nèi),執(zhí)行其要求功能的能力決定了其可靠性。在規(guī)定的條件與規(guī)定的時間內(nèi)沒有引起系統(tǒng)的故障,沒有因為系統(tǒng)的設計而出現(xiàn)相關問題,說明軟件具有一定的可靠性。實際工作中,工作人員正確的系統(tǒng)輸入決定了整個系統(tǒng)的可靠性設計,通過具有典型性的環(huán)境測試,對軟件的規(guī)范程序進行測試。在具有代表性的環(huán)境中,對軟件進行測試,并對數(shù)據(jù)進行采集,找出錯誤數(shù)據(jù)輸入出現(xiàn)的原因,進而防止軟件出現(xiàn)類似問題。
二、軟件故障與軟件可靠性關系分析
軟件其實是把一組離散輸入變成一組離散輸出的工具,它是由一組編碼語句組合而成的。其功能是通過一個表達式將結果存儲在單元中,對下一步的執(zhí)行進行決定,同時進行輸入與輸出的控制。軟件的可靠性貫穿于軟件的整個使用期。軟件的可靠性與概率統(tǒng)計的可靠性之間有密切的關系。通過衡量一些軟件質(zhì)量的可靠性參數(shù)對軟件的可靠性進行測試,通過系統(tǒng)的平均不工作間隔時間與平均不工作時間、軟件可靠度與偶然故障率、初期故障期與故障率等方面進行測定,可以分析軟件的可靠性。
三、軟件的可靠性測試方案
不同的測試方案都能夠測試軟件的可靠性。輸入相關的數(shù)據(jù)能夠進行功能性的測試,期待值與對應的數(shù)據(jù)重合,說明軟件具有可靠性。相關數(shù)據(jù)的輸入與功能數(shù)據(jù)不合,就應實施措施。對功能需要(即對通過計算機軟件系統(tǒng)對相關輸入進行鑒別,分析其是否準確。)、定義失效等級(即通過一定的系統(tǒng)軟件來分析失效的可能性。如果出現(xiàn)相關的故障數(shù)據(jù),就會有相關的危害,根據(jù)數(shù)據(jù)及運行方式的概率偏差進行分析,確定是否需要更改相關的數(shù)據(jù)或某些功能。)及確定概率分布(即把概率分布信息輸入數(shù)據(jù)庫,并進行整理與測試,)進行分析。進行分析后,建立有關的調(diào)查報告,根據(jù)問題進行測試,從而提高其可靠性。軟件質(zhì)量指標體系中最重要的質(zhì)量指標就是軟件可靠性,其決定了軟件的使用壽命。同時,人為的因素也不能避免,因此更加需要軟件的設計人員嚴格設計。
四、軟件方便性和安全性分析
軟件的方便性與安全性是軟件的可靠性設計必須考慮的兩個問題。軟件只具備方便性沒有安全性,無疑是舍棄了軟件的根本;只具有安全性沒有方便性,軟件就不能很好的推廣。因此軟件的方便性與安全性二者缺一不可。安全性是軟件設計的前提,在軟件具有安全性的前提下,如何提高軟件的方便性對設計人員是至關重要的。時代與實踐的發(fā)展,系統(tǒng)的安全性與用戶使用的方便性是一個變化的過程,軟件設計者只有把軟件的安全性做好,用戶在方便快捷的軟件使用中,就會有一種美的享受,這是軟件設計者最愿意看到的結果。
五、軟件設計的可靠性測試分析
對軟件的結構本身進行測試,監(jiān)測其是否對輸入有回應,如果出現(xiàn)漏洞就會及時進行修復,就能保證軟件的高效運行。通過對軟件的模糊測試,把相關數(shù)據(jù)輸入系統(tǒng),監(jiān)測軟件的運用是否允許混亂數(shù)據(jù)的進入?;靵y數(shù)據(jù)遭到排斥說明運行環(huán)境正常,反之,就說明系統(tǒng)有失誤或系統(tǒng)運行錯誤。通過對軟件的屬性進行測試,有針對性的對軟件的特殊安全屬性進行測試,監(jiān)測軟件的質(zhì)量。
六、計算機網(wǎng)絡可靠性的影響因素分析
1、網(wǎng)絡設備可靠性與用戶設備的分析
計算機網(wǎng)絡的可與否,用戶的終端設備起著關鍵作用。用戶終端設備的交互能力直接影響著網(wǎng)絡的可靠性,交互能力高則可靠性就高。同時傳輸交換設備對計算機網(wǎng)絡的可靠性也有至關重要的影響。計算機的布線系統(tǒng)也直接影響者計算機的可靠性,線路出現(xiàn)故障,用戶就不能正常工作,且對線路的排查十分困難,因此線路對網(wǎng)絡的可靠性影響至關重要。
2、網(wǎng)絡可靠性與網(wǎng)絡管理的關系分析
網(wǎng)絡管理對網(wǎng)絡可靠性的影響及帶來的風險情況比較復雜。不僅涉及到管理的權限分配,而且也涉及到網(wǎng)絡安全制度的操作性。如果沒有健全及有效的管理制度,就不能在網(wǎng)絡受到攻擊時,進行有效的管理與制止,就會直接影響網(wǎng)絡的可靠性。
七、計算機軟件的可靠性設計方法分析
計算機系統(tǒng)出現(xiàn)故障的主要原因就是計算機軟件有缺陷與錯誤。在計算機軟件運行的每一個階段,對計算機軟件中的缺陷與錯誤進行有效的排除,就能提高計算機的可靠性。
1、規(guī)格說明與用戶要求要規(guī)范
規(guī)格說明書是軟件運行的依據(jù),它對軟件程的要求及使用結構、測試要求及程序語言都有規(guī)定。軟件規(guī)格說明書是軟件開發(fā)人員對軟件的程序進行設計與調(diào)試、改進與維護的主要依據(jù)。規(guī)格說明書與用戶的要求不一致,設計的軟件也一定會與用戶需求之間有偏差,進而導致軟件的可靠性降低。如果要提高軟件設計的可靠性,就必須與用戶之間進行溝通與交流。
2、軟件的有效設計方法分析
軟件設計中數(shù)據(jù)的結構、采用的模型、使用的語言等,如果考慮不當,就會影響軟件的可靠性。
把最抽象概括的系統(tǒng)功能要求,作為設計中的最高層次,依次設計出更加詳盡的子系統(tǒng),進而實現(xiàn)最高層次的要求,再對子系統(tǒng)進行延伸分支,設計更細致的功能單一的下一個子系統(tǒng),對最低的子系統(tǒng)實現(xiàn)簡單的程序語言編程。這種設計方法對復雜多級問題處理,條理清晰,簡單容易,大大提高了軟件的可靠性。
運用程結構序化設計方法,能夠?qū)碗s的軟件程序進行分解,然后對若干較小的程序模塊進行設計,這樣各個相對獨立的模塊就能提高信息隱蔽程度,就能提高軟件的可靠性。
八、結語
軟件的可靠性設計工程是處于正在發(fā)展的新工程學科,有許多的問題等待研究。對軟件的測試工作進行不斷的加強,就能產(chǎn)生良好的社會效益。(作者單位:南昌大學科學技術學院)
參考文獻:
[1] 劉邏.軟件可靠性設計技術應用研究[D].中國科學院研究生院(長春光學精密機械與物理研究所),2013.
[2] 楊凌燕.軟件可靠性技術應用研究[D].西南交通大學,2006.
[3] 王勇.軟件工程與軟件質(zhì)量管理[D].中國科學院研究生院(計算技術研究所),1997.