請輸入產(chǎn)品關(guān)鍵字:
郵編:523588
聯(lián)系人:李小姐
電話:0769-82863486
傳真:0769-82863487
手機(jī):18926849868
售后電話:18122910823
留言:發(fā)送留言
個性化:www.china-seth.com
網(wǎng)址:www.china-seth.com
商鋪:http://sorrent.com.cn/st286895/
試論軟件的可靠性及其保證(一)
點(diǎn)擊次數(shù):1653 發(fā)布時間:2015-1-29
用軟件系統(tǒng)規(guī)模越做越大越復(fù)雜,,其可靠性越來越難保證,。應(yīng)用本身對系統(tǒng)運(yùn)行的可靠性要求越來越高,,在一些關(guān)鍵的應(yīng)用領(lǐng)域,,如航空,、航天等,,其可靠性要求尤為重要,,在銀行等服務(wù)性行業(yè),,其軟件系統(tǒng)的可靠性也直接關(guān)系到自身的聲譽(yù)和生存發(fā)展競爭能力。
特別是軟件可靠性比硬件可靠性更難保證,,會嚴(yán)重影響整個系統(tǒng)的可靠性,。在許多項(xiàng)目開發(fā)過程中,對可靠性沒有提出明確的要求,,開發(fā)商(部門)也不在可靠性方面花更多的精力,,往往只注重速度、結(jié)果的正確性和用戶界面的友好性等,鹽霧試驗(yàn)機(jī)而忽略了可靠性,。在投入使用后才發(fā)現(xiàn)大量可靠性問題,,增加了維護(hù)困難和工作量,嚴(yán)重時只有束之高閣,,無法投入實(shí)際使用,。
一. 軟件可靠性與硬件可靠性的區(qū)別
軟件可靠性與硬件可靠性之間主要存在以下區(qū)別:
1.zui明顯的是硬件有老化損耗現(xiàn)象,硬件失效是物理故障,,是器件物理變化的必然結(jié)果,,有浴盆曲線現(xiàn)象;軟件不發(fā)生變化,,沒有磨損現(xiàn)象,,有陳舊落后的問題,沒有浴盆曲線現(xiàn)象,。
2.硬件可靠性的決定因素是時間,,受設(shè)計(jì)、生產(chǎn),、運(yùn)用的所有過程影響,,軟件可靠性的決定因素是與輸入數(shù)據(jù)有關(guān)的軟件差錯,鹽霧試驗(yàn)機(jī)是輸入數(shù)據(jù)和程序內(nèi)部狀態(tài)的函數(shù),,更多地決定于人,。
3.硬件的糾錯維護(hù)可通過修復(fù)或更換失效的系統(tǒng)重新恢復(fù)功能,軟件只有通過重設(shè)計(jì),。
4.對硬件可采用預(yù)防性維護(hù)技術(shù)預(yù)防故障,,采用斷開失效部件的辦法診斷故障,而軟件則不能采用這些技術(shù),。
5.事先估計(jì)可靠性測試和可靠性的逐步增長等技術(shù)對軟件和硬件有不同的意義,。
6.為提高硬件可靠性可采用冗余技術(shù),而同一軟件的冗余不能提高可靠性,。
7.硬件可靠性檢驗(yàn)方法已建立,并已標(biāo)準(zhǔn)化且有一整套完整的理論,,而軟件可靠性驗(yàn)證方法仍未建立,,更沒有完整的理論體系。
8.硬件可靠性已有成熟的產(chǎn)品市場,,而軟件產(chǎn)品市場還很新,。
9.軟件錯誤是永恒的,可重現(xiàn)的,,而一些瞬間的硬件錯誤可能會被誤認(rèn)為是軟件錯誤,。
總的說來,軟件可靠性比硬件可靠性更難保證,即使是美國宇航局的軟件系統(tǒng),,其可靠性仍比硬件可靠性低一個數(shù)量級,。
二. 影響軟件可靠性的因素
軟件可靠性是關(guān)于軟件能夠夠滿足需求功能的性質(zhì),軟件不能滿足需求是因?yàn)檐浖械牟铄e引起了軟件故障,。軟件中有哪些可能的差錯呢?
軟件差錯是軟件開發(fā)各階段潛入的人為錯誤:
1.需求分析定義錯誤,。如用戶提出的需求不完整,用戶需求的變更未及時消化,,軟件和用戶對需求的理解不同等等,。
2.設(shè)計(jì)錯誤。如處理的結(jié)構(gòu)和算法錯誤,,鹽霧試驗(yàn)機(jī)缺乏對特殊情況和錯誤處理的考慮等,。
3.編碼錯誤。如語法錯誤,,變量初始化錯誤等,。
4.測試錯誤。如數(shù)據(jù)準(zhǔn)備錯誤,,測試用例錯誤等,。
5.文檔錯誤。如文檔不齊全,,文檔相關(guān)內(nèi)容不一致,,文檔版本不一致,缺乏完整性等,。
從上游到下游,,錯誤的影響是發(fā)散的,所以要盡量把錯誤消除在開發(fā)前期階段,。
錯誤引入軟件的方式可歸納為兩種特性:程序代碼特性,,開發(fā)過程特性。
程序代碼一個zui直觀的特性是長度,,另外還有算法和語句結(jié)構(gòu)等,,程序代碼越長,結(jié)構(gòu)越復(fù)雜,,其可靠性越難保證,。
開發(fā)過程特性包括采用的工程技術(shù)和使用的工具,也包括個人的業(yè)務(wù)經(jīng)歷水平等,。
除了軟件可靠性外,,影響可靠性的另一個重要因素是健壯性,鹽霧試驗(yàn)機(jī)對非法輸入的容錯能力,。
所以提高可靠性從原理上看就是要減少錯誤和提高健壯性,。
三. 提高軟件可靠性的方法和技術(shù)
1.建立以可靠性為核心的質(zhì)量標(biāo)準(zhǔn)
在軟件項(xiàng)目規(guī)劃和需求分析階段就要建立以可靠性為核心的質(zhì)量標(biāo)準(zhǔn),。這個質(zhì)量標(biāo)準(zhǔn)包括實(shí)現(xiàn)的功能、可靠性,、可維護(hù)性,、可移植性、安全性,、吞吐率等等,,雖然還沒有一個衡量軟件質(zhì)量的完整體系,但還是可以通過一定的指標(biāo)來標(biāo)準(zhǔn)基線,。