?

無人飛行器任務規劃系統軟件測試方法研究*

2023-12-11 12:11孫文川吳延軍聶熾巖
艦船電子工程 2023年9期
關鍵詞:航路軟件測試飛行器

孫文川 吳延軍 聶熾巖

(91550部隊 大連 116023)

1 引言

隨著現代武器裝備信息化水平的飛速提升和計算機硬件可靠性水平的提高,裝備的智能化水平主要通過軟件的設計進行體現[1]?,F代戰爭中,無人作戰裝備的任務規劃系統是連接作戰指揮和武器裝備應用的紐帶。其使用貫穿于武器參與作戰的全作戰周期,已逐漸成為表達作戰意圖、發揮武器效能和影響戰場態勢的關鍵技術手段[2~3]。據統計,目前我國裝備系統中約2/3 的失效是由軟件錯誤引起的[4]。

本文對任務規劃系統軟件測試工作中的關鍵問題進行研究,立足無人飛行器任務規劃系統軟件功能性能特點,探討定型階段軟件測試工作的關鍵問題,并提出有針對性的軟件測試策略,研究結果可為任務規劃系統進行全面、規范化的試驗考核提供支撐。

2 軟件質量與航天軟件測試

2.1 軟件質量

軟件質量主要涵蓋以下三個方面內容:1)與所確定的功能和性能需求相一致;2)與所成文的開發標準相一致;3)與所有專業開發的軟件所期望的隱含特性相一致[5~6]。

在武器裝備軟件開發過程中,軟件開發的各個階段均同步進行著軟件測試工作,主要包括代碼走查、單元測試、軟件集成測試、軟/硬件系統測試、驗收測試等內容[1]。航天軟件不同于商用軟件,對其質量的評定除要涵蓋通常對軟件質量定義所包含的內容外,還必須要保證軟件的功能實現能充分滿足未來作戰使用需求、有利于提高武器裝備作戰的效能。因此,航天軟件測試工作具有一定的特殊性。

2.2 航天軟件測試現狀

現役武器裝備軟件在研制階段的測試目的是確保軟件各項技術指標可以達到預先的設計指標要求。其測試重點在軟件本身存在的故障特性,而并不關注軟件實現形式對裝備實際作戰效能的影響。即通過軟件測試不能保證裝備具有較高的作戰效能[7~9]。從軍方使用者角度分析,軟件技術測試合格的武器系統并不意味著其能夠滿足實際作戰使用的要求。根本原因是研制階段的軟件測試忽略了對于裝備軟件至關重要的軟硬件配置擬合度和戰術合理性等非技術性指標的考核[10]。前IBM 系統研究院高級研究員Glenford J.Myer在其著作中闡述了“當程序無法實現其最終用戶要求的合理功能時,就發生了一個軟件錯誤?!庇^點[11]。例如,軟件設計需求過程中要求航路規劃軟件在飛行過程中,可實現備選航路切換功能,但軟件開發過程中沒有實現機器對備選航路進行自動篩選,只能通過操作人員目視進行可用航路篩選。這一設計雖然滿足了設計指標要求,但大大增加了操作人員的工作量,增加誤操作風險的同時,大大降低了任務的執行效率。

綜上所述,要解決航天軟件開發過程中只關注指標實現,不重視軟件整體效能的問題,就要在定型試驗階段針對軟件使用特點對軟件關鍵功能進行測試,形成有益于提高軟件的人機交互能力、軟件質量和作戰適用性的修改建議,從而提高武器裝備作戰效能。

3 任務規劃系統軟件特點分析

各模塊的功能及軟件特點分析如下。

圖1 任務規劃系統軟件組成結構圖

3.1 數據種類多,數據量大

數據整編工作是任務規劃系統開始運行的基礎性工作,其各項功能實現的好壞直接影響著任務規劃作業中底層數據的質量。此外,由于數據整編屬于常態化工作,要求該子系統具備較高的可靠性和較強的數據保護能力,以避免突發的系統故障對已完成的階段性工作造成損壞。

3.2 外部接口復雜,信息集中,處理效率高

任務籌劃子系統在開展飛行任務籌劃籌劃、規避區域劃分、組織電子通信協同的過程中。因為需要對各種外部資源進行協調和管理。任務籌劃子系統在設計中,存在與多個外部系統間的軟件接口。任務籌劃作為無人飛行器任務規劃的一個重要環節,其系統對數據的處理效率也將對整個系統的效能產生直接影響。

3.3 航路規劃過程靈活,飛行控制實時性強

飛行規劃子系統將飛行器的機動性能、動力航程與任務籌劃子系統下達的飛行任務進行結合,按批次對飛行器的飛行航路進行規劃。該系統形成的航路規劃結果直接用于引導無人飛行器飛行路徑。因此,要求規劃的航路既要滿足一定的安全性要求,還要保證具有較高的規劃效率。如顧及飛行器飛行過程中人在回路的干預,航路規劃結果還要具備較強的靈活性。

3.4 算法復雜,智能化水平突出

推演評估子系統主要實現對初步形成的飛行方案進行仿真推演,進行作戰效果計算與評估。該子系統主要實現對方案的推演功能,其系統核心是針對毀傷評估、方案推演和輔助決策功能進行設計的算法,較之其他子系統,具有更高的技術要求。隨著人工智能技術的應用,該模塊呈現出的智能化特點將進一步增強。

3.5 模塊間協調性要求高

如圖2所示,為任務規劃系統運行流程圖,數據整編系統為任務規劃流程提供基礎持續的數據保障。任務籌劃子系統完成任務籌劃后,將籌劃結果下發至飛行規劃子系統;飛行規劃子系統將任務分解,對飛行器飛行航路進行規劃,飛行器起飛前,規劃成果通過推演評估子系統對任務進行模擬推演進而將推演結果反饋給任務籌劃子系統進行方案的迭代優化。以此循環迭代,直至任務完成。

圖2 任務規劃系統運行流程圖

綜上所述,基于對任務規劃系統功能和運行流程的分析,可知其具備以下幾個特點:1)數據處理種類繁多、數據量大、覆蓋范圍廣,數據處理具有多任務并行特點;2)任務籌劃系統具有外接口多、數據種類多、處理量大,數據流集中的特點;3)航路規劃過程具有較強的靈活性,對軟件可靠性要求高,人在回路操作對軟件實時性要求較高;4)推演評估子系統智能化程度突出,涉及算法復雜多樣;5)任務規劃流程環環相扣,各系統銜接緊密,要求軟件系統內部接口具有高效的協調性。

4 定型階段軟件測試工作中的關鍵問題

經過開發階段的軟件測試,軟件技術指標已得到基本驗證。定型階段的軟件測試工作將重點關注軟件對系統效能的影響?;趯θ蝿找巹澫到y軟件特點的分析,對其定型階段軟件測試工作關鍵問題進行探討,以期提出有針對性的軟件測試策略。

4.1 分析研制階段軟件測試報告,評估定型階段測試重點

“二八定律”由意大利經濟學家維弗雷多·帕累托在19世紀末提出,意思是“80%的結果是由20%的時間創造的”。其主張處理事務時應分析形勢,抓住主要矛盾進行處理,就會達到事半功倍的效果。二八原則在數百年的應用中取得了巨大的成功[13~15]。同樣的規律存在于軟件開發過程中。相關研究表明:軟件缺陷分布同樣滿足二八原則,即百分之八十的缺陷集中分布在百分之二十的軟件模塊中[16~17]。因此,在定型階段,通過對研制階段軟件測試報告集進行分析評估,可以實現對測試重點的預測。預測方法可根據軟件特點進行有針對性的選取??刹捎秘惾~斯、決策樹、集成學習、神經網絡、支持向量機、邏輯回歸及字典學習等機器學習方法也可以采用樸素的統計學方法[18]。

4.2 顧及邊界條件的功能組合測試設計

任務規劃系統的軟件特點,對其邊界條件考核涉及以下幾個主要參數:

1)航程參數

(1)規劃航程:系統軟件可進行航路規劃的圖上距離。

(2)機動航程:無人飛行器可實際飛行的三維路徑。

2)機動性能

機動性能指任務規劃系統是否可以最大限度的將飛行器的機動能力在規劃中體現。主要包括轉彎半徑、爬升速度、飛行高度等。

3)航路數量

一次規劃任務中可實現的航路規劃數量。

4)航路點屬性

不同類型的航路點完成的飛行任務,包括飛行爬升、下降,轉彎等功能及其對應的數量。

5)地圖操作范圍

不同尺度范圍下的地圖數據操作能力。

何謂小說家?畢飛宇有個有趣的說法,他說小說家就是身體倍兒棒的人,他的眼力好,旁人能看厘米,他能看毫米;旁人能聽十米,他能聽一里;旁人能辨五味,他能辨千滋百味。他說的是莫言,是作家那超人的感受力。不過,黃金明并不是莫言式的作家,他不是那種用身體寫作的人,他是用思想寫作的小說家。他沒有用耳目口鼻讓世界變得五光十色、五味雜陳萬花筒般旋轉起來,但他始終探索一種必須用宏大的思想坐標和敏銳的心智結構才能理解的先鋒性十足的智性小說。

顧及對軟件功能測試的覆蓋性,以上參數值的上下界,均應作為測試用例設計過程中的組成要素。不同于商用軟件測試工作對測試效率的追求,航天軟件測試更關注提高測試覆蓋性和軟件質量。因此,在考核邊界條件的功能組合測試設計過程中,在人力和時間允許的條件下應盡量增加測試用例的覆蓋性。如圖3所示,為航路點數量與航程兩要素組合下的邊界值測試用例設計,為提高軟件測試效率,軟件開發階段測試通常只對圖中白色點對應的的測試用例進行測試,而忽略了兩個因素同時在參數邊界附近變化的組合情況(黑色點對應的)。而在實際使用過程中,往往此類測試用例會造成系統出現異常。

圖3 樣本覆蓋缺失及其測試用例分析

圖4 基于因果圖的邊界組合測試用例設計

為避免此類問題發生,建議在測試用例設計過程中采用基于因果圖的邊界組合測試方法[19]。該方法可以有效實現對邊界條件組合的測試用例全覆蓋,避免樣本覆蓋缺失的失誤發生。

4.3 基于任務剖面的軟件性能測試設計原則

通過對任務規劃系統軟件特點分析可知,航天軟件系統的可靠性和對事件的響應效率對武器系統的作戰使用至關重要,直接影響著裝備效能的發揮。因此,通過設計典型使用場景下的任務剖面,將復雜的功能模塊進行有機融合,可實現對系統進行全流程、全要素的功能驗證。針對任務規劃系統軟件特點提出以下軟件測試任務剖面設計原則:

1)突出功能測試重點

基于前期對任務規劃軟件測試重點的評估,對軟件的重點測試模塊進行定位,在任務剖面設計過程中,盡可能遍歷重點測試模塊的各項功能。

2)多層次分解測試軟件功能

任務規劃軟件系統具有構成復雜的特點,各大子系統均由多個功能模塊構成,因此,在其任務剖面設計過程中,應按照模塊級、子系統級和任務級三個不同層次設計任務剖面。

針對任務規劃軟件系統與外系統接口復雜的問題,任務剖面設計過程中,應顧及對各個外部接口有效性的驗證,該部分內容可結合全任務流程設計進行。

4)覆蓋任務規劃全流程

任務剖面作為對系統功能全面的驗證,其內容必須涵蓋對任務規劃的全流程的設計,即規劃從上級下達的規劃任務輸入開始,完成相應的信息準備工作,到規劃出無人飛行器航路作為階段性成果,末端延伸至飛行過程中對武器的管控。此外,設計過程中還應考慮規劃時間、規劃空間和規劃尺度等要素的融入。

5)完備的標準測試數據集

飛行器的任務規劃流程依據作戰區域保障信息進行。因此,任務規劃系統軟件測試過程中,為保證系統對各類保障數據的適應額能力,在進行測試數據準備時,必須充分考慮標準測試數據集的覆蓋性。以地理信息保障數據的準備為例,應考慮其對不同數據格式、不同尺度、不同地形地貌、不同經緯度等分類差異的覆蓋性和多樣性。此外,還需準備存在數據結構損壞、數據不完整等的缺陷數據集,用來驗證系統對輸入錯誤數據辨識的有效性。

5 結語

針對任務規劃系統軟件測試問題,在分析了任務規劃系統軟件特點的基礎上,針對定型階段軟件測試工作中的關鍵問題進行研究。分別針對鑒定階段軟件測試重點評估、功能組合測試設計和性能測試方法進行研究,提出了基于功能驗證的任務剖面設計原則,為無人飛行器任務規劃系統鑒定階段軟件測試工作提供了參考。

猜你喜歡
航路軟件測試飛行器
高超聲速飛行器
基于OBE的軟件測試課程教學改革探索
EXCEL和VBA實現軟件測試記錄管理
復雜飛行器的容錯控制
關于軟件測試技術應用與發展趨勢研究
基于交叉航路影響的航路容量模型研究
軟件測試工程化模型及應用研究
應召反潛時無人機監聽航路的規劃
托勒密世界地圖與新航路的開辟
神秘的飛行器
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合