邢維艷 張治政 王康相
1.華陰兵器試驗中心,陜西省華陰市,714200
靶場測試裝備應(yīng)用軟件可靠性模型分析方法研究
邢維艷 張治政 王康相
1.華陰兵器試驗中心,陜西省華陰市,714200
針對軟件可靠性模型對軟件可靠性分析發(fā)揮的重要作用,本文提出了多種針對靶場測試裝備應(yīng)用軟件可靠性的評價指標和分析方法,通過對這些方法的分析,運用不同的評價手段,選擇出最優(yōu)的可靠性評估模型,從而能夠更加精確地得出靶場測試裝備應(yīng)用軟件可靠性評估結(jié)果,為靶場測試裝備的驗收工作奠定基礎(chǔ)。
可靠性模型;靶場測試裝備應(yīng)用軟件;分析方法
隨著信息化建設(shè)的不斷推進,靶場測試裝備在彈道測試領(lǐng)域發(fā)揮了重要的作用。由于新型測試裝備的復(fù)雜程度不斷提高,其配套應(yīng)用軟件的支撐作用更加明顯,軟件自身的規(guī)模越來越大,復(fù)雜度不斷提高。對于靶場試驗鑒定而言,裝備配套軟件必須保證使用可靠,軟件一旦失效,不僅無法及時有效地完成試驗任務(wù)保障,關(guān)鍵參數(shù)的錯誤甚至可能會引起數(shù)據(jù)錄取失敗、聯(lián)網(wǎng)測試失效,甚至可能會對人員、裝備安全造成安全威脅。我國目前多數(shù)靶場測試裝備配套應(yīng)用軟件的生產(chǎn)方式還處于計算機初級階段,其特點是“三自一包”,即自設(shè)計、自編碼、自測試、包維護[1]。其缺點主要表現(xiàn)在三個方面:一是整個開發(fā)過程透明度不高,軟件產(chǎn)品維護困難;二是軟件交付系統(tǒng)聯(lián)調(diào)前只靠自檢,缺乏必要的測試,質(zhì)量得不到保證;三是用戶對交付的軟件可靠性缺乏信心。多數(shù)所謂的“軟件測試”僅僅對幾個預(yù)先指定的用例進行一下表演就算通過。目前還沒有像硬件那樣完善的檢驗體系,交付軟件的質(zhì)量不高。典型統(tǒng)計表明,“開發(fā)階段平均每千行代碼有50~60個缺陷,交付后平均每千行代碼有15~18個缺陷”,有時會留下嚴重隱患。
因此,加強對軟件可靠性的評估是一項非常有現(xiàn)實意義的工作。在軟件可靠性評估模型的研究中,軟件可靠性模型是進行軟件可靠性分析的基礎(chǔ),選擇的可靠性評估模型是否合適對可靠性的評估結(jié)果具有重大的影響[2]。因此,加強對軟件可靠性模型分析方法的研究是一項非常必要的前提工作,對整個測試裝備配套應(yīng)用軟件的可靠性評估具有重要的意義。
現(xiàn)有軟件可靠性評估模型眾多,但至今沒有一個模型被證明為各類數(shù)據(jù)都廣泛適用,所以在對靶場測試裝備配套應(yīng)用軟件進行可靠性評估時,首先面臨著選擇可靠性評估模型的問題。在進行可靠性評估模型選擇時,主要考慮以下四個方面[3]:
(1)模型成熟度。模型成熟度(即模型使用頻度)的高低能夠直接反映出模型的認可程度,成熟度越高從一定程度上說明模型的認可程度越高。
(2)模型的理論假設(shè)。模型的理論假設(shè)是我們必須考慮的一個重要因素,是否接近于軟件的實際運行環(huán)境。如果模型的理論假設(shè)不能接近實際的運行環(huán)境,就失去了評估的意義。
(3)模型所需要的數(shù)據(jù)是否易于收集,在數(shù)據(jù)收集階段是否能比較容易地獲得模型所需要的數(shù)據(jù)。
(4)在進行數(shù)據(jù)分析和可靠性評估預(yù)測時,模型在數(shù)學(xué)上是否容易處理。如果模型在處理數(shù)據(jù)時特別繁雜、不易處理,那么,所選模型的評估預(yù)測就會失去意義。
(1)模型的能力
模型的能力是指模型在軟件工程師、軟件管理人員制定軟件項目開發(fā)計劃、管理軟件項目開發(fā)中,對所要求的量,以令人滿意的精確度進行估計的能力??煽啃粤恐蛋聪鄬χ匾耘判蛉缦拢孩佼斍暗目煽啃裕骄鶡o故障時間(MTTF);②期望達到一規(guī)定可靠性目標的日期,MTTF;③與達到規(guī)定目標有關(guān)的人力和計算機資源以及成本要求。
(2)模型的擬合性
模型擬合度是指模型估計出的失效數(shù)據(jù)與實際失效數(shù)據(jù)的吻合程度。對于失效間隔數(shù)據(jù)則通過計算Kolmogrov-Smirnov(KS)距離來度量可靠性模型對失效數(shù)據(jù)的擬合度[4]。
(3)預(yù)計的有效性
預(yù)計的有效性是模型從現(xiàn)在和過去的故障行為(即失效數(shù)據(jù))預(yù)計將來故障行為的能力,它是所有準則中唯一可以定量度量的,因此也是最重要的。通常我們采用四種靜態(tài)參量衡量模型的有效性。它們是精確性,偏差,趨勢,噪聲。
(4)假設(shè)條件的品質(zhì)
模型的基本假設(shè)條件應(yīng)該與實際工程的測試及運行環(huán)境相符。主要考慮假設(shè)條件是否能夠得到相應(yīng)的數(shù)據(jù)支持,從邏輯上考慮假設(shè)條件的合理性。
(5)模型的適應(yīng)性
模型的適用性就是模型對于不同規(guī)模、結(jié)構(gòu)和功能的軟件產(chǎn)品的適用程度。通過是否適用于不同(規(guī)模、結(jié)構(gòu))的軟件;是否適用于不同運行剖面下的軟件;是否適用于不同開發(fā)環(huán)境下的軟件;是否使用于不同測試策略下的軟件;是否適用于不完善的軟件可靠性數(shù)據(jù)等五個方面進行評價。
(6)模型的簡捷性
一個模型應(yīng)在下面三個方面具有簡捷性[5]:①最重要的是在收集模型所需要的數(shù)據(jù)時應(yīng)盡可能簡單且代價較低;②模型的概念應(yīng)該簡單明了,即模型的概念及假設(shè)條件在實際應(yīng)用中易于理解;③模型中的參數(shù)應(yīng)易于理解且估值過程簡單。
比較、選擇軟件可靠性評估模型首先要考慮的就是模型預(yù)測的準確性。預(yù)測準確性是軟件可靠性研究的熱點之一,軟件可靠性中預(yù)測準確性的評價方法主要有以下幾種:序列似然度比率(PLR)、U-結(jié)構(gòu)圖法、Y-結(jié)構(gòu)圖法等。
(1)序列似然度比率分析法(PLR)
序列似然度比率分析法認為軟件失效在軟件失效時間分布函數(shù)密度大的地方發(fā)生的可能性較大。如比較預(yù)測系統(tǒng)A和預(yù)測系統(tǒng)B的準確性,PLR的定義為:
在進行測試裝備配套軟件可靠性評估選擇可靠性評估模型時,應(yīng)用序列似然度比率(PLR)、U-結(jié)構(gòu)圖法、Y-結(jié)構(gòu)圖法等方法,根據(jù)已經(jīng)獲取的數(shù)據(jù)進行分析,選取合適的可靠性評估模型。
J-M模型的基本思想是當前的故障率正比于錯誤殘留數(shù),在一個錯誤被修改到下一個錯誤被發(fā)現(xiàn)的時間段內(nèi)故障率保持為常數(shù),每當一個錯誤被修改后,故障率都降低一固定值,即每個錯誤對故障率改善的影響是相同的。J-M模型的優(yōu)點在于它數(shù)學(xué)簡單,假設(shè)比較合乎工程直覺,數(shù)據(jù)要求也比較簡單。缺點是基本假設(shè)不夠完善;參數(shù)估計方法顯露某種不良性質(zhì),如收斂性不好,而克服此缺點的方法可能很復(fù)雜且不實用。
G-O模型與眾不同的特點是,模型將軟件的固有錯誤數(shù)視為隨機變量,認為從第i-1次錯誤到第i次錯誤發(fā)生的間隔時間依賴于第i-1次錯誤的發(fā)生時間。G-O模型的優(yōu)點表現(xiàn)在數(shù)學(xué)上簡單、優(yōu)美,不用區(qū)別缺陷與失效,假設(shè)合乎直覺。缺點主要是N(t)當作連續(xù)時間函數(shù),要求軟件失效次數(shù)很大方可保證精度。此模型的廣泛適用性尚需進一步確認。
以J-M模型為代表的馬爾可夫過程模型僅適用于對失效時間間隔作統(tǒng)計的軟件可靠性,而以G-O模型為代表的非齊次泊松過程模型可適用于對任意時間內(nèi)的故障計數(shù)作統(tǒng)計軟件可靠性分析。當故障計數(shù)是一一地遞增時,所記錄到的就是一個故障時間間隔序列。
J-M模型及Musa模型本質(zhì)上是一致的,區(qū)別僅在于采用的時間體系不同。Musa模型對時間體系的要求是:在一定的時間范圍內(nèi),可靠性估計只能以實際的執(zhí)行時間作為基礎(chǔ),而不能以平常計算逝去多少時間的日歷時間作為基礎(chǔ)。
一般來說,L-V模型預(yù)測的可靠性往往比實際低,G-O模型預(yù)測的可靠性往往比實際高,J-M模型及其眾多的推廣模型可能樂觀也可能悲觀。
針對J-M模型假設(shè)的缺點,Littlewood和Verrall提出L-V模型,該模型不再考慮錯誤總數(shù),并設(shè)故障率隨機下降。Nelson模型有著堅實的理論基礎(chǔ),這是其它許多模型無法比的,但它也存在許多實際應(yīng)用上的缺陷:①為了獲得更高的估計準確度,它需要用到大量的測試數(shù)據(jù);②它未考慮輸入域的連續(xù)性問題;③對輸入域的隨機采樣限制了它的可應(yīng)用范圍,也使它不能使用很多行之有效的測試策略,比如它不能使用邊界值測試方法,在實時控制系統(tǒng)中也無法使用;④它未考慮軟件的復(fù)雜性測度。而這些缺陷卻被其他基于輸入域的模型所克服。
所以,在實際選擇可靠性模型進行可靠性評估時,要結(jié)合測試裝備配套應(yīng)用軟件的實際情況,運用序列似然度比率(PLR)、U-結(jié)構(gòu)圖法、Y-結(jié)構(gòu)圖法等方法進行分析,從而確定出合適的評估模型。
6結(jié)論
在實際的應(yīng)用中,要根據(jù)不同裝備的實際情況,結(jié)合實際收集到的測試數(shù)據(jù),運用序列似然度比率(PLR)、U-結(jié)構(gòu)圖法、Y-結(jié)構(gòu)圖法進行分析,選擇合適的評估模型對靶場測試裝備應(yīng)用軟件進行可靠性評估,對于可靠性評估結(jié)果起著重要的作用,從而對靶場的驗收提供一定的參考。
[1]隋景輝.對提高靶場軍用軟件質(zhì)量與可靠性的探討.軍用標準化.2004(1):34-37
[2]徐利明,楊海波,張笑.提高武器裝備軟件可靠性.四川兵工學(xué)報.2009,30(5):137-139
[3]J. Tian. How to select quality models and measurements. In Proc. Of 11thth Int.Conf. on Software Engineering and Knowledge Engineering, Jun.,1999,Kaiserslautern, Germany, pp.71-75
[4]J. D. Musa and W. W. Everett.Software reliability engineering: technology for the 1990s. IEEE Software, Nov.1990,7(11):36-43
[5]Lyu Michael R. 軟件可靠性工程手冊.北京:電子工業(yè)出版社.1997
TP311
A
10.3969/j.issn.1001-8972.2011.005.035