摘要:對于雷達軟件測試來說,安全性測試是其中的難點和關鍵。目前,我國雷達軟件的安全性測試仍存在一些問題,本文在此背景下,從需求分析和測試設計兩方面,對軟件安全性測試進行了分析,并將故障樹分析法結合在其中,該方法經實驗證明簡捷、可行。
關鍵詞:軟件安全性;雷達軟件安全性測試;風險分析;故障樹分析
1、雷達系統(tǒng)軟件的安全性測試需求分析
安全完整性可從硬件和軟件兩方面進行解讀,包括硬件和系統(tǒng)性兩種安全完整性。軟件安全完整性起到基礎作用,其它相關軟件或想實現其完整性,都要借助于軟件安全完整性方可完成。就某雷達天線轉動控制事故風險這一事件來說,如事故按預計情況發(fā)生,則后果不堪設想,如人員受傷,可能傷勢為十分嚴重;如硬件損壞,可能損壞的程度甚為嚴重。如若在天線中加入安全保護的軟件,將天線出現事故的可能性降到極其微小,此時的風險等級為不期望發(fā)生風險,如欲將風險的等級降低一級,則會大幅提高科研方面的費用,此時的安全風險等級為可容忍發(fā)生風險。
雷達從其自身角度來說,他并沒有給人類造成威脅,但當軟、硬件結合,并執(zhí)行指揮、監(jiān)控功能時,就會產生對系統(tǒng)和操作人員的不利影響。雷達系統(tǒng)的安全性分析是其它安全性分析的基礎,若要對雷達軟件進行安全性分析,首先,應對雷達系統(tǒng)進行安全性分析。雷達軟件安全性分析包括以下幾點:首先,對系統(tǒng)的安全性需求進行深入了解,查找其安全性軟件的主要特征,如找出軟件頂層的不安全模式,則應予以標記,并對失效可能性的大小進行相應排序;其次,對軟件設計是否科學、合理,軟件適用環(huán)境等信息進行分析,在測試軟件后,將其覆蓋與整體要求作對比,檢查其吻合程度,并對軟件的不安全因素進行排查,測試其完整程度;最后,將測試結果進行匯總,通過對比分析,得到軟件危險的風險級別。
2、雷達系統(tǒng)軟件的安全性測試設計
根據上文對安全性測試需求的相關分析,下面利用故障樹分析法(FTA)對安全性測試進行用例分析。下面以FMEA表為基礎,將其中的潛在失效模式作為頂層事件,開展安全性測試工作。
當前,雷達軟件在一般情況下,包含多個配置項,配置項目又由能實現數據處理、雷達控制等各種功能的軟件所構成,并且各種軟件的代碼數量均不相同,少則幾萬,多則幾十萬。從關鍵故障的軟件角度來看,應從代碼這一級別開始建立故障樹,在語句級別建立故障樹,則大大增加了工作難度和工作量,而且不太現實,在實際操作時,可使用分層的方式,首先查找具有獨立功能的模塊,將其作為最底層事件,在此基礎上建立故障樹。此外,軟件中的功能模塊數量繁多,為了使查找功能模塊的工作操作簡單,在測試過程中可結合利用最小割集法,對類似的關鍵功能模塊進行合并。
將故障樹進行一定的分析處理,可得到一份測試用例集,這份經過原始測試而得到的例集屬于邏輯用例集。邏輯用例集,顧名思義是一種概念層面的、比較抽象的用例,雖其中包含測試用例的過程和輸入,但從測試對象所處的環(huán)境和可行性方面考慮,還需對測試過程進行實例化,以便將邏輯用例進行轉化。通過這一轉化,雷達軟件的故障樹模型得到了分離,用例集也形成了獨立的數據,方便了測試用例的日后使用。
為了進一步提高測試執(zhí)行效率,本文引入關聯風險剖面來優(yōu)化用例設計。操作剖面是指軟件測試數據輸入域以及各種輸入數據的組合使用概率,其具有如下形式:{OPi/OPi=(Oi,Pi,i=1,2…m}。其中,m為軟件操作剖面中的運行總數;Oi第i個操作;Pi為第i個獨立操作發(fā)生的概率∑Pi=1。而關聯風險剖面是以操作剖面為基礎,以FTA中的原因事件為檢索項將各個獨立操作與對應失效代價相關聯起來的一種操作剖面。建立了關聯風險剖面,就可按照引起失效的安全性相關操作的風險的大小來確定測試執(zhí)行優(yōu)先級,優(yōu)化測試步驟設計。
3、結語
綜上所述,通過雷達軟件的安全性測試可有效提升軟件的安全性,在系統(tǒng)設計之初,就應明確軟件的安全性需求,并進行充分分析,然后得出構成軟件安全性的主要成分和相關事件,以先進的軟件技術為依托,組建一支水準高、穩(wěn)定性強的軟件人才隊伍,將先進的可靠性與安全性分析技術進行結合利用,設計性能更加優(yōu)異的軟件產品,這樣才能從根本上提高雷達軟件的安全性能。