徐軍,虞飛
(工業(yè)和信息化部電子第五研究所,廣州 510610)
作為通信導(dǎo)航識別系統(tǒng)中的通信管理設(shè)備中安裝的嵌入式軟件,機載通信管理軟件主要用于實現(xiàn)通信導(dǎo)航識別系統(tǒng)中由地面?zhèn)鱽淼某滩ā⒍滩?、衛(wèi)通、ACARS數(shù)據(jù)鏈的消息及協(xié)議處理,將四條鏈路上的消息和協(xié)議進行解析和處理后,上傳至飛機的航電系統(tǒng)進行顯示,為飛行員飛行提供可靠的參數(shù)信息;處理由航電系統(tǒng)下達的航電命令,解析處理后生成各種消息下發(fā)至地面或者同一編隊內(nèi)的飛機,以實現(xiàn)航電系統(tǒng)鏈路信息及航電信息的處理。機載通信管理設(shè)備軟件質(zhì)量的好壞對通信導(dǎo)航識別系統(tǒng)的影響重大。
軟件質(zhì)量是指軟件產(chǎn)品滿足規(guī)定的(隱含的)與需求能力有關(guān)的全部特征和特性,軟件不僅要“符合需求”還要“適于使用”。軟件質(zhì)量的評價,首先要建立一個適用的指標(biāo)體系,即由一系列的指標(biāo)組合形成的具有相互關(guān)聯(lián)的有機共同體,以此指標(biāo)體系作為評價軟件質(zhì)量優(yōu)劣的執(zhí)行手段。
依據(jù)GB/T 30961-2014對軟件質(zhì)量的評價,定義了外部質(zhì)量、內(nèi)部質(zhì)量以及使用質(zhì)量的質(zhì)量模型,質(zhì)量模型從功能性、可靠性、易用性、效率、維護性、可移植性六個特性來度量和評價軟件,為清楚的評價和衡量這六個特性,對每個特性細(xì)分為若干個子特性。
結(jié)合機載通信管理軟件特點,從GB/T 30961-2014選擇適合被度量軟件的度量特性和度量子特性,并對每個子特性規(guī)定可量化的度量元,建立適合本軟件的質(zhì)量度量模型,對每個度量元進行適用于本度量軟件的說明,具體見下表。
作為定制軟件,軟件與硬件設(shè)備無需在多種系統(tǒng)環(huán)境中移植,故可移植性不作為本軟件的評價特性之選。
表1中度量元的量化可以通過以下三種情況進行分類統(tǒng)計計算:①計算該功能中順利通過的用例數(shù)占該功能總執(zhí)行用例的比率;②計算源代碼中滿足要求(如包含更改注釋)的行數(shù)占代碼總行數(shù)的比率;③計算軟件完整實現(xiàn)需求文檔的功能占總的軟件功能數(shù)量的比率;④計算軟件占用的硬件資源率;⑤計算軟件響應(yīng)需求所需時間占軟件文檔規(guī)定時間的比率;⑥分析軟件的模塊之間的調(diào)用關(guān)系,計算模塊代碼變更后影響的功能數(shù)量占總功能的比率[2],且有的度量元越接近0代表越好,有的度量元越接近1代表越好,為實現(xiàn)軟件評價的度量指標(biāo)的一致性和合理性,需將度量元實行趨一化處理。
表1 質(zhì)量模型關(guān)系表
通過數(shù)據(jù)收集與分析,整理出軟件度量元的測試數(shù)據(jù)值,再依據(jù)度量元的趨一化處理過程生成度量元的計數(shù)值;根據(jù)子特性分配給其所屬度量元的權(quán)重比例和每個度量元的測試數(shù)據(jù)計算出子特性的加權(quán)平均值,從而獲得子特性的計數(shù)值;根據(jù)特性分配給其所屬子特性的權(quán)重比例和每個子特性的計數(shù)值計算每個特性的加權(quán)平均值,從而獲得該特性的計數(shù)值;最后根據(jù)分配給特性的權(quán)值比例和特性計數(shù)值,計算出的加權(quán)平均值將作為本軟件的質(zhì)量評價得分值。
軟件依據(jù)其安裝環(huán)境的要求和用戶使用特性的不同,對每個質(zhì)量特性和子特性的評價權(quán)重也將不同,如對實時通信軟件,對其功能性、可靠性、效率的評價權(quán)重會高于移植性、維護性;對基礎(chǔ)版本的雛形軟件,對其移植性的評價權(quán)重會高于其他質(zhì)量特性;對設(shè)備自我檢測和診斷能力較高的軟件,對其維護性的評價權(quán)重高于其他質(zhì)量特性。故為確定被評價軟件的各級度量指標(biāo)間的權(quán)重,需要綜合考量被評價軟件的使用場景、用戶要求等方面。
機載通信管理軟件是一個實時交互的嵌入式數(shù)據(jù)處理管理類軟件,故對其功能性、可靠性、效率的要求較高,綜合專家經(jīng)驗和用戶需求的分級分類,確定機載通信管理軟件的各級權(quán)重數(shù)據(jù)如下:
一級指標(biāo)的權(quán)重為:W=(功能性,可靠性,易用性,效率,維護性)=(w1,w2,w3,w4,w5)=(0.25,0.24,0.16,0.21,0.14)
二級指標(biāo)的權(quán)重為:
W1=(適合性,準(zhǔn)確性,互操作性,安全性)=(w11,w12,w13,w14)=(0.36,0.21,0.20,0.23)
W2=(容錯性,成熟性,規(guī)范性)=(w21,w22,w23)=(0.35,0.45,0.20)
W3=(顯見性,易理解性)=(w31,w32)=(0.44,0.56)
W4=(時間特性,數(shù)據(jù)處理特性,資源利用率)=(w41,w42,w43)=(0.38,0.45,0.17)
W5=(容錯性,成熟性,規(guī)范性)=(w51,w52,w53)=(0.35,0.45,0.20)
三級指標(biāo)的權(quán)重為:
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)
軟件質(zhì)量子特性評估結(jié)果解釋如表2所示。
表2 子特性計算結(jié)果說明
本文選取兩個機載通信管理軟件X、Y,它們?yōu)橥粡S家開發(fā)的從屬于兩個型號的功能相同、代碼結(jié)構(gòu)相似的兩個軟件。得到研制單位的配合后,通過問卷調(diào)查和采集實際的測試數(shù)據(jù)等方式獲得上述兩個軟件的度量元測試數(shù)據(jù),結(jié)合度量舉證的權(quán)重比例,計算被度量軟件的綜合質(zhì)量評分。對兩個軟件的綜合質(zhì)量評分進行系統(tǒng)性的分析,從型號項目管理、研制單位的開發(fā)能力、管理水平、技術(shù)手段等層面解析,提出切實可行的提高軟件質(zhì)量的方法的手段。
表3 度量元測試結(jié)果
上述有的度量元是直接取數(shù)據(jù)比率、有的是對數(shù)據(jù)比率取歸一化處理后的結(jié)果區(qū)間的取值,上表的數(shù)據(jù)結(jié)果均以實際的測量數(shù)據(jù)為基礎(chǔ),能夠真實反映軟件的部分狀態(tài)。
依據(jù)映射矩陣計算得軟件的質(zhì)量度量結(jié)果如表4。
表4
依據(jù)最后軟件總的質(zhì)量得分,將質(zhì)量評價等級劃分為以下四級:優(yōu)秀[1,0.95]、良好(0.95,0.80]、合格(0.80,0.60]、不合格(0.60,0][3]。A、B均屬于良好區(qū)域,反應(yīng)出廠家具有良好的軟件開發(fā)和管理能力,屬于優(yōu)良的軟件供應(yīng)商;A、B質(zhì)量評分差異性較小,但是A軟件在功能性、可靠性、易用性、維護性上比B軟件略有優(yōu)勢。
結(jié)合A、B軟件在軟件研制和測試中組織開展的內(nèi)部評審和外部評審活動中專家對兩個軟件所提的問題,綜合看來A軟件在研制和管理過程中,研制總體和研制單位都從頂層設(shè)計角度對A軟件提出更高的品質(zhì)要求,且廠家對A軟件的研發(fā)團隊配備的人員都是擁有豐富的行業(yè)經(jīng)驗和良好的代碼編寫的規(guī)范從業(yè)人員,因此A軟件最后的綜合得分稍高。
對比A、B軟件的研制和管理過程,提出切實可行的提升軟件質(zhì)量的手段和方法,①加強對軟件開發(fā)人員的職業(yè)能力的培訓(xùn),形成良好的代碼編寫規(guī)范和習(xí)慣,盡量模塊化軟件代碼,加強對代碼注釋的維護;②加強對軟件版本的管理,區(qū)分產(chǎn)品庫和受控庫并做好版本控制工作,避免因管理不善導(dǎo)致代碼混亂問題;③加強軟件在各階段的評審工作的落實,確保專家所提問題均閉環(huán);④從研制總體到研制廠家再到軟件測試方,確保從上層架構(gòu)層面對軟件質(zhì)量引起足夠重視并投入精力、財力保障軟件質(zhì)量。
依據(jù)GB/T 30961-2014軍用軟件質(zhì)量度量標(biāo)準(zhǔn),按照機載通信管理軟件對功能、可靠、易用、效率、維護等方面?zhèn)戎爻潭鹊牟煌?,分配不同的?quán)重系數(shù);同樣的邏輯處理流程處理度量子特性和度量元的權(quán)重系數(shù),如此構(gòu)建符合機載通信管理軟件特性的質(zhì)量度量模型。工程實踐方面,選了同一廠家的功能相同、結(jié)構(gòu)相似的兩個軟件進行度量,最后依據(jù)度量得分結(jié)合軟件評審中的表現(xiàn)、人員投入、日常管理規(guī)范等,總結(jié)出提高軟件質(zhì)量得分的有效手段。
本文的研究對象是機載通信管理軟件,后續(xù)可以擴大質(zhì)量評價對象的范圍,對更多的軟件開展質(zhì)量評價活動,得出的質(zhì)量評分對軟件的整個研制及管理過程具有一定的反思作用,在后續(xù)軟件開發(fā)中,提出適用性更強的提高軟件質(zhì)量的方法和手段。