邢維艷 張治政 王康相
1.華陰兵器試驗中心,陜西省華陰市,714200
靶場測試裝備應用軟件可靠性模型分析方法研究
邢維艷 張治政 王康相
1.華陰兵器試驗中心,陜西省華陰市,714200
針對軟件可靠性模型對軟件可靠性分析發揮的重要作用,本文提出了多種針對靶場測試裝備應用軟件可靠性的評價指標和分析方法,通過對這些方法的分析,運用不同的評價手段,選擇出最優的可靠性評估模型,從而能夠更加精確地得出靶場測試裝備應用軟件可靠性評估結果,為靶場測試裝備的驗收工作奠定基礎。
可靠性模型;靶場測試裝備應用軟件;分析方法
隨著信息化建設的不斷推進,靶場測試裝備在彈道測試領域發揮了重要的作用。由于新型測試裝備的復雜程度不斷提高,其配套應用軟件的支撐作用更加明顯,軟件自身的規模越來越大,復雜度不斷提高。對于靶場試驗鑒定而言,裝備配套軟件必須保證使用可靠,軟件一旦失效,不僅無法及時有效地完成試驗任務保障,關鍵參數的錯誤甚至可能會引起數據錄取失敗、聯網測試失效,甚至可能會對人員、裝備安全造成安全威脅。我國目前多數靶場測試裝備配套應用軟件的生產方式還處于計算機初級階段,其特點是“三自一包”,即自設計、自編碼、自測試、包維護[1]。其缺點主要表現在三個方面:一是整個開發過程透明度不高,軟件產品維護困難;二是軟件交付系統聯調前只靠自檢,缺乏必要的測試,質量得不到保證;三是用戶對交付的軟件可靠性缺乏信心。多數所謂的“軟件測試”僅僅對幾個預先指定的用例進行一下表演就算通過。目前還沒有像硬件那樣完善的檢驗體系,交付軟件的質量不高。典型統計表明,“開發階段平均每千行代碼有50~60個缺陷,交付后平均每千行代碼有15~18個缺陷”,有時會留下嚴重隱患。
因此,加強對軟件可靠性的評估是一項非常有現實意義的工作。在軟件可靠性評估模型的研究中,軟件可靠性模型是進行軟件可靠性分析的基礎,選擇的可靠性評估模型是否合適對可靠性的評估結果具有重大的影響[2]。因此,加強對軟件可靠性模型分析方法的研究是一項非常必要的前提工作,對整個測試裝備配套應用軟件的可靠性評估具有重要的意義。
現有軟件可靠性評估模型眾多,但至今沒有一個模型被證明為各類數據都廣泛適用,所以在對靶場測試裝備配套應用軟件進行可靠性評估時,首先面臨著選擇可靠性評估模型的問題。在進行可靠性評估模型選擇時,主要考慮以下四個方面[3]:
(1)模型成熟度。模型成熟度(即模型使用頻度)的高低能夠直接反映出模型的認可程度,成熟度越高從一定程度上說明模型的認可程度越高。
(2)模型的理論假設。模型的理論假設是我們必須考慮的一個重要因素,是否接近于軟件的實際運行環境。如果模型的理論假設不能接近實際的運行環境,就失去了評估的意義。
(3)模型所需要的數據是否易于收集,在數據收集階段是否能比較容易地獲得模型所需要的數據。
(4)在進行數據分析和可靠性評估預測時,模型在數學上是否容易處理。如果模型在處理數據時特別繁雜、不易處理,那么,所選模型的評估預測就會失去意義。
(1)模型的能力
模型的能力是指模型在軟件工程師、軟件管理人員制定軟件項目開發計劃、管理軟件項目開發中,對所要求的量,以令人滿意的精確度進行估計的能力。可靠性量值按相對重要性排序如下:①當前的可靠性,平均無故障時間(MTTF);②期望達到一規定可靠性目標的日期,MTTF;③與達到規定目標有關的人力和計算機資源以及成本要求。
(2)模型的擬合性
模型擬合度是指模型估計出的失效數據與實際失效數據的吻合程度。對于失效間隔數據則通過計算Kolmogrov-Smirnov(KS)距離來度量可靠性模型對失效數據的擬合度[4]。
(3)預計的有效性
預計的有效性是模型從現在和過去的故障行為(即失效數據)預計將來故障行為的能力,它是所有準則中唯一可以定量度量的,因此也是最重要的。通常我們采用四種靜態參量衡量模型的有效性。它們是精確性,偏差,趨勢,噪聲。
(4)假設條件的品質
模型的基本假設條件應該與實際工程的測試及運行環境相符。主要考慮假設條件是否能夠得到相應的數據支持,從邏輯上考慮假設條件的合理性。
(5)模型的適應性
模型的適用性就是模型對于不同規模、結構和功能的軟件產品的適用程度。通過是否適用于不同(規模、結構)的軟件;是否適用于不同運行剖面下的軟件;是否適用于不同開發環境下的軟件;是否使用于不同測試策略下的軟件;是否適用于不完善的軟件可靠性數據等五個方面進行評價。
(6)模型的簡捷性
一個模型應在下面三個方面具有簡捷性[5]:①最重要的是在收集模型所需要的數據時應盡可能簡單且代價較低;②模型的概念應該簡單明了,即模型的概念及假設條件在實際應用中易于理解;③模型中的參數應易于理解且估值過程簡單。
比較、選擇軟件可靠性評估模型首先要考慮的就是模型預測的準確性。預測準確性是軟件可靠性研究的熱點之一,軟件可靠性中預測準確性的評價方法主要有以下幾種:序列似然度比率(PLR)、U-結構圖法、Y-結構圖法等。
(1)序列似然度比率分析法(PLR)
序列似然度比率分析法認為軟件失效在軟件失效時間分布函數密度大的地方發生的可能性較大。如比較預測系統A和預測系統B的準確性,PLR的定義為:





在進行測試裝備配套軟件可靠性評估選擇可靠性評估模型時,應用序列似然度比率(PLR)、U-結構圖法、Y-結構圖法等方法,根據已經獲取的數據進行分析,選取合適的可靠性評估模型。
J-M模型的基本思想是當前的故障率正比于錯誤殘留數,在一個錯誤被修改到下一個錯誤被發現的時間段內故障率保持為常數,每當一個錯誤被修改后,故障率都降低一固定值,即每個錯誤對故障率改善的影響是相同的。J-M模型的優點在于它數學簡單,假設比較合乎工程直覺,數據要求也比較簡單。缺點是基本假設不夠完善;參數估計方法顯露某種不良性質,如收斂性不好,而克服此缺點的方法可能很復雜且不實用。
G-O模型與眾不同的特點是,模型將軟件的固有錯誤數視為隨機變量,認為從第i-1次錯誤到第i次錯誤發生的間隔時間依賴于第i-1次錯誤的發生時間。G-O模型的優點表現在數學上簡單、優美,不用區別缺陷與失效,假設合乎直覺。缺點主要是N(t)當作連續時間函數,要求軟件失效次數很大方可保證精度。此模型的廣泛適用性尚需進一步確認。
以J-M模型為代表的馬爾可夫過程模型僅適用于對失效時間間隔作統計的軟件可靠性,而以G-O模型為代表的非齊次泊松過程模型可適用于對任意時間內的故障計數作統計軟件可靠性分析。當故障計數是一一地遞增時,所記錄到的就是一個故障時間間隔序列。
J-M模型及Musa模型本質上是一致的,區別僅在于采用的時間體系不同。Musa模型對時間體系的要求是:在一定的時間范圍內,可靠性估計只能以實際的執行時間作為基礎,而不能以平常計算逝去多少時間的日歷時間作為基礎。
一般來說,L-V模型預測的可靠性往往比實際低,G-O模型預測的可靠性往往比實際高,J-M模型及其眾多的推廣模型可能樂觀也可能悲觀。
針對J-M模型假設的缺點,Littlewood和Verrall提出L-V模型,該模型不再考慮錯誤總數,并設故障率隨機下降。Nelson模型有著堅實的理論基礎,這是其它許多模型無法比的,但它也存在許多實際應用上的缺陷:①為了獲得更高的估計準確度,它需要用到大量的測試數據;②它未考慮輸入域的連續性問題;③對輸入域的隨機采樣限制了它的可應用范圍,也使它不能使用很多行之有效的測試策略,比如它不能使用邊界值測試方法,在實時控制系統中也無法使用;④它未考慮軟件的復雜性測度。而這些缺陷卻被其他基于輸入域的模型所克服。
所以,在實際選擇可靠性模型進行可靠性評估時,要結合測試裝備配套應用軟件的實際情況,運用序列似然度比率(PLR)、U-結構圖法、Y-結構圖法等方法進行分析,從而確定出合適的評估模型。
6結論
在實際的應用中,要根據不同裝備的實際情況,結合實際收集到的測試數據,運用序列似然度比率(PLR)、U-結構圖法、Y-結構圖法進行分析,選擇合適的評估模型對靶場測試裝備應用軟件進行可靠性評估,對于可靠性評估結果起著重要的作用,從而對靶場的驗收提供一定的參考。
[1]隋景輝.對提高靶場軍用軟件質量與可靠性的探討.軍用標準化.2004(1):34-37
[2]徐利明,楊海波,張笑.提高武器裝備軟件可靠性.四川兵工學報.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. 軟件可靠性工程手冊.北京:電子工業出版社.1997
TP311
A
10.3969/j.issn.1001-8972.2011.005.035