徐軍,虞飛
(工業和信息化部電子第五研究所,廣州 510610)
作為通信導航識別系統中的通信管理設備中安裝的嵌入式軟件,機載通信管理軟件主要用于實現通信導航識別系統中由地面傳來的超短波、短波、衛通、ACARS數據鏈的消息及協議處理,將四條鏈路上的消息和協議進行解析和處理后,上傳至飛機的航電系統進行顯示,為飛行員飛行提供可靠的參數信息;處理由航電系統下達的航電命令,解析處理后生成各種消息下發至地面或者同一編隊內的飛機,以實現航電系統鏈路信息及航電信息的處理。機載通信管理設備軟件質量的好壞對通信導航識別系統的影響重大。
軟件質量是指軟件產品滿足規定的(隱含的)與需求能力有關的全部特征和特性,軟件不僅要“符合需求”還要“適于使用”。軟件質量的評價,首先要建立一個適用的指標體系,即由一系列的指標組合形成的具有相互關聯的有機共同體,以此指標體系作為評價軟件質量優劣的執行手段。
依據GB/T 30961-2014對軟件質量的評價,定義了外部質量、內部質量以及使用質量的質量模型,質量模型從功能性、可靠性、易用性、效率、維護性、可移植性六個特性來度量和評價軟件,為清楚的評價和衡量這六個特性,對每個特性細分為若干個子特性。
結合機載通信管理軟件特點,從GB/T 30961-2014選擇適合被度量軟件的度量特性和度量子特性,并對每個子特性規定可量化的度量元,建立適合本軟件的質量度量模型,對每個度量元進行適用于本度量軟件的說明,具體見下表。
作為定制軟件,軟件與硬件設備無需在多種系統環境中移植,故可移植性不作為本軟件的評價特性之選。
表1中度量元的量化可以通過以下三種情況進行分類統計計算:①計算該功能中順利通過的用例數占該功能總執行用例的比率;②計算源代碼中滿足要求(如包含更改注釋)的行數占代碼總行數的比率;③計算軟件完整實現需求文檔的功能占總的軟件功能數量的比率;④計算軟件占用的硬件資源率;⑤計算軟件響應需求所需時間占軟件文檔規定時間的比率;⑥分析軟件的模塊之間的調用關系,計算模塊代碼變更后影響的功能數量占總功能的比率[2],且有的度量元越接近0代表越好,有的度量元越接近1代表越好,為實現軟件評價的度量指標的一致性和合理性,需將度量元實行趨一化處理。

表1 質量模型關系表
通過數據收集與分析,整理出軟件度量元的測試數據值,再依據度量元的趨一化處理過程生成度量元的計數值;根據子特性分配給其所屬度量元的權重比例和每個度量元的測試數據計算出子特性的加權平均值,從而獲得子特性的計數值;根據特性分配給其所屬子特性的權重比例和每個子特性的計數值計算每個特性的加權平均值,從而獲得該特性的計數值;最后根據分配給特性的權值比例和特性計數值,計算出的加權平均值將作為本軟件的質量評價得分值。
軟件依據其安裝環境的要求和用戶使用特性的不同,對每個質量特性和子特性的評價權重也將不同,如對實時通信軟件,對其功能性、可靠性、效率的評價權重會高于移植性、維護性;對基礎版本的雛形軟件,對其移植性的評價權重會高于其他質量特性;對設備自我檢測和診斷能力較高的軟件,對其維護性的評價權重高于其他質量特性。故為確定被評價軟件的各級度量指標間的權重,需要綜合考量被評價軟件的使用場景、用戶要求等方面。
機載通信管理軟件是一個實時交互的嵌入式數據處理管理類軟件,故對其功能性、可靠性、效率的要求較高,綜合專家經驗和用戶需求的分級分類,確定機載通信管理軟件的各級權重數據如下:
一級指標的權重為:W=(功能性,可靠性,易用性,效率,維護性)=(w1,w2,w3,w4,w5)=(0.25,0.24,0.16,0.21,0.14)
二級指標的權重為:
W1=(適合性,準確性,互操作性,安全性)=(w11,w12,w13,w14)=(0.36,0.21,0.20,0.23)
W2=(容錯性,成熟性,規范性)=(w21,w22,w23)=(0.35,0.45,0.20)
W3=(顯見性,易理解性)=(w31,w32)=(0.44,0.56)
W4=(時間特性,數據處理特性,資源利用率)=(w41,w42,w43)=(0.38,0.45,0.17)
W5=(容錯性,成熟性,規范性)=(w51,w52,w53)=(0.35,0.45,0.20)
三級指標的權重為:
W11=(w111,w112,w113,w114)=(0.3,0.3,0.2,0.2)
W13=(w131,w132)=(0.5,0.5)
W22=(w221,w222,w223)=(0.3,0.3,0.4)
W41=(w411,w412)=(0.5,0.5)
軟件質量子特性評估結果解釋如表2所示。

表2 子特性計算結果說明
本文選取兩個機載通信管理軟件X、Y,它們為同一廠家開發的從屬于兩個型號的功能相同、代碼結構相似的兩個軟件。得到研制單位的配合后,通過問卷調查和采集實際的測試數據等方式獲得上述兩個軟件的度量元測試數據,結合度量舉證的權重比例,計算被度量軟件的綜合質量評分。對兩個軟件的綜合質量評分進行系統性的分析,從型號項目管理、研制單位的開發能力、管理水平、技術手段等層面解析,提出切實可行的提高軟件質量的方法的手段。

表3 度量元測試結果
上述有的度量元是直接取數據比率、有的是對數據比率取歸一化處理后的結果區間的取值,上表的數據結果均以實際的測量數據為基礎,能夠真實反映軟件的部分狀態。
依據映射矩陣計算得軟件的質量度量結果如表4。

表4
依據最后軟件總的質量得分,將質量評價等級劃分為以下四級:優秀[1,0.95]、良好(0.95,0.80]、合格(0.80,0.60]、不合格(0.60,0][3]。A、B均屬于良好區域,反應出廠家具有良好的軟件開發和管理能力,屬于優良的軟件供應商;A、B質量評分差異性較小,但是A軟件在功能性、可靠性、易用性、維護性上比B軟件略有優勢。
結合A、B軟件在軟件研制和測試中組織開展的內部評審和外部評審活動中專家對兩個軟件所提的問題,綜合看來A軟件在研制和管理過程中,研制總體和研制單位都從頂層設計角度對A軟件提出更高的品質要求,且廠家對A軟件的研發團隊配備的人員都是擁有豐富的行業經驗和良好的代碼編寫的規范從業人員,因此A軟件最后的綜合得分稍高。
對比A、B軟件的研制和管理過程,提出切實可行的提升軟件質量的手段和方法,①加強對軟件開發人員的職業能力的培訓,形成良好的代碼編寫規范和習慣,盡量模塊化軟件代碼,加強對代碼注釋的維護;②加強對軟件版本的管理,區分產品庫和受控庫并做好版本控制工作,避免因管理不善導致代碼混亂問題;③加強軟件在各階段的評審工作的落實,確保專家所提問題均閉環;④從研制總體到研制廠家再到軟件測試方,確保從上層架構層面對軟件質量引起足夠重視并投入精力、財力保障軟件質量。
依據GB/T 30961-2014軍用軟件質量度量標準,按照機載通信管理軟件對功能、可靠、易用、效率、維護等方面側重程度的不同,分配不同的權重系數;同樣的邏輯處理流程處理度量子特性和度量元的權重系數,如此構建符合機載通信管理軟件特性的質量度量模型。工程實踐方面,選了同一廠家的功能相同、結構相似的兩個軟件進行度量,最后依據度量得分結合軟件評審中的表現、人員投入、日常管理規范等,總結出提高軟件質量得分的有效手段。
本文的研究對象是機載通信管理軟件,后續可以擴大質量評價對象的范圍,對更多的軟件開展質量評價活動,得出的質量評分對軟件的整個研制及管理過程具有一定的反思作用,在后續軟件開發中,提出適用性更強的提高軟件質量的方法和手段。