陳光遠(yuǎn) 張晉文 滕偉
摘要 隨著軟件定義裝備慨念的產(chǎn)生,軟件在軍用裝備中所占比例與規(guī)模大幅增長,軍用已交付裝備的軟件配置狀態(tài)管理問題逐漸凸顯,如何做好已交付軍用裝備的軟件配置管理,解決需求多樣、快速響應(yīng)的交付裝備軟件狀態(tài)管理問題,提升已交付裝備軟件戰(zhàn)斗力成為當(dāng)前軍用軟件研究的熱點(diǎn)問題。本文分析了軍用交付裝備軟配置管理的特點(diǎn),提出了采用規(guī)范流程、強(qiáng)化測試以及分支管理、臺(tái)賬管理等多管齊下的方式來提升軍用交付裝備軟件配置管理效率。
【關(guān)鍵詞】軍用軟件管理 軟件工程化 配置管理 分支管理
1 引言
隨著計(jì)算機(jī)與信息技術(shù)的高速發(fā)展和戰(zhàn)爭信息化程度的不斷提高,武器裝備軟件化能力的需求也在逐步提高,軟件在軍用裝備信息系統(tǒng)中所占的比例大幅上升,復(fù)雜電子裝備系統(tǒng)80%以上能力由軟件完成。軟件定義裝備將成為未來軍用作戰(zhàn)裝備的發(fā)展方向,同時(shí)對已交付裝備的軟件升級(jí)、維護(hù)等技術(shù)狀態(tài)管理問題也逐漸凸顯,如何提升已交付裝備的軟件技術(shù)狀態(tài)管理效率,減少由于軟件狀態(tài)管理問題帶來的裝備使用,提升裝備實(shí)戰(zhàn)化已成為當(dāng)前的熱點(diǎn)問題。
2 軍用交付裝備軟件管理需求
軍用軟件是指適合軍事領(lǐng)域應(yīng)用的、能夠完成特定功能的軟件集合,是實(shí)現(xiàn)軍用裝備功能和性能的核心組成部分。軍用軟件項(xiàng)目不同于民用軟件項(xiàng)目,其在開發(fā)和維護(hù)過程中存在一些特有的問題,需要應(yīng)用配置管理去進(jìn)行解決和優(yōu)化。
2.1 軍用裝備軟件的特點(diǎn)
軍用裝備軟件具有區(qū)別于通用計(jì)算機(jī)軟件的一些特征,主要有以下方面:
2.1.1 軟件規(guī)模巨大、可靠性要求高
軍事裝備軟件開發(fā)水平和難點(diǎn)主要體現(xiàn)在軟件的復(fù)雜程度和質(zhì)量上。其中軟件復(fù)雜程度可用源代碼行數(shù)來衡量,軟件質(zhì)量則一般表現(xiàn)為清除軟件缺陷的能力。以美軍為例,一般的軍用軟件復(fù)雜程度可達(dá)到100萬~500萬行代碼;軟件的缺陷清除效率要求可達(dá)gg%。
2.1.2 領(lǐng)域?qū)S眯詮?qiáng)、嵌入式軟件多
軍用軟件都被設(shè)計(jì)成為完成某個(gè)領(lǐng)域的特定任務(wù),軟件代碼和應(yīng)用算法有機(jī)結(jié)合共同來實(shí)現(xiàn)指揮、控制、探測、通信、干擾等各類功能,應(yīng)用軟件相對來說通用性差、復(fù)用率低;另外軍用軟件一般實(shí)時(shí)性要求高,以嵌入式軟件為主,這就決定了軍用軟件對硬件的依賴性比較強(qiáng)。
2.1.3 軟件需求變化快、環(huán)境適應(yīng)性要求高
隨著軍用裝備性能指標(biāo)的不斷深入優(yōu)化,戰(zhàn)備保障的需求加深,訓(xùn)練機(jī)制越發(fā)貼近實(shí)戰(zhàn),同時(shí)未來的戰(zhàn)場環(huán)境復(fù)雜,瞬息萬變,復(fù)雜電磁環(huán)境的干擾會(huì)對武器裝備的使用產(chǎn)生一定的影響,為保證武器裝備在復(fù)雜戰(zhàn)場環(huán)境仍執(zhí)行好任務(wù),軍用軟件用戶不斷的對需求做出調(diào)整,導(dǎo)致變更的不斷出現(xiàn),版本的不斷更迭,為軍用軟件項(xiàng)目配置管理增加了極大地難度。
2.2 軍用交付裝備軟件配置管理需求
軍用軟件的這些特點(diǎn)決定了它必須具有嚴(yán)格的可靠性、實(shí)時(shí)性、安全性,因此一般軍用軟件研制階段都會(huì)從軟件工程化管理的理念出發(fā),有效保證軟件質(zhì)量,按時(shí)完成開發(fā)任務(wù),及時(shí)交付使用。然而隨著裝備的交付,交付后軟件的維護(hù)工作所面臨的問題帶來了對軟件配置管理的新需求。
(l)隨著軍用裝備研制周期的壓縮,越來越多的裝備在尚未完成系統(tǒng)定型時(shí),硬件狀態(tài)先固化,軟件狀態(tài)階段性固化,就開始批量生產(chǎn),這就造成了研制與批產(chǎn)的同步交叉,軟件技術(shù)狀態(tài)在交付用戶使用時(shí)不是最終的狀態(tài),交付后軟件維護(hù)階段存在著大量的變更;
(2)批產(chǎn)的裝備,一般臺(tái)套數(shù)量較多,并且是交付給不同地域的用戶使用,每個(gè)用戶在使用過程中又會(huì)提出不同的需求,這就會(huì)導(dǎo)致同樣的一個(gè)交付軟件版本在多個(gè)用戶使用后出現(xiàn)多個(gè)變更需求,而且這些需求可能會(huì)不兼容,最嚴(yán)重的會(huì)出現(xiàn)每個(gè)臺(tái)套加載的軟件都不一樣,這就對配置管理提出了更嚴(yán)苛的要求,管理好每一套裝備的軟件狀態(tài)不能出現(xiàn)混亂。
3 軍用交付裝備軟件配置管理方法研究
軍用軟件由于存在其固有的特點(diǎn)和交付后的特殊需求,在售后維護(hù)階段必須確保每一次的軟件變更受控,變更后的狀態(tài)受控,變更后的功能性能正常。因此有針對性的在常規(guī)配置管理要求基礎(chǔ)上,分別從規(guī)范軟件變更流程、對多狀態(tài)分支管理以及建立裝備軟件臺(tái)賬三個(gè)方面加強(qiáng)軟件狀態(tài)控制。
3.1 規(guī)范交付裝備軟件變更流程
已交付裝備的軟件功能一般已經(jīng)基本達(dá)到了用戶需求,可以完成指定的作戰(zhàn)任務(wù)需要,對于交付后的裝備軟件變更,首先從變更輸入上嚴(yán)格控制,一般可將交付裝備軟件的變更輸入分為三類:
3.1.1 用戶顯性需求
包括增加軟件新需求,修改已有需求,比如在裝備實(shí)戰(zhàn)化的作戰(zhàn)訓(xùn)練要求下需要提升裝備干擾環(huán)境下的作戰(zhàn)能力,就需要對作戰(zhàn)軟件的抗干擾功能模塊進(jìn)行升級(jí)。
3.1.2 關(guān)聯(lián)需求
系統(tǒng)硬件設(shè)備發(fā)生變化后導(dǎo)致軟件的變更,比如在武器裝備國產(chǎn)化的大趨勢下,硬件設(shè)備采用國產(chǎn)化后將原有的GPS接收系統(tǒng)改為北斗接收系統(tǒng),則需要對相關(guān)的接口軟件進(jìn)行適應(yīng)性改造。
3.1.3 軟件BUG處理
針對交付后實(shí)際試驗(yàn)或訓(xùn)練中發(fā)現(xiàn)的軟件問題進(jìn)行改進(jìn)處理,或者在其它項(xiàng)目中發(fā)現(xiàn)問題后需要在相關(guān)項(xiàng)目中舉一反三。
明確了任務(wù)的輸入,軟件變更工作就可以納入產(chǎn)品科研管理流程中統(tǒng)一協(xié)調(diào)保障資源,形成WBS計(jì)劃下達(dá)給各相關(guān)部門,按照軟件工程化管理要求開展工作。
3.2 采用分支管理
對已交付的軍用裝備軟件,如果同一項(xiàng)目中有多種軟件狀態(tài)并存,同時(shí)各狀態(tài)下又有不同的階段在開展,可以采用分支管理與基線管理相結(jié)合的方式來進(jìn)行管理,如表1所示采用分支結(jié)合基線分層管理后,軟件技術(shù)狀態(tài)清晰明了。
分支建立和管理要求包括:
(1)多狀態(tài)隸屬于同一產(chǎn)品,且由于產(chǎn)品自身硬件的改變、需求改變或產(chǎn)品使用場地、環(huán)境不同而產(chǎn)生技術(shù)狀態(tài)分支;
(2)各分支需要按各自的技術(shù)狀態(tài)單獨(dú)升級(jí)、升級(jí)狀態(tài)不能完全適用于其它分支狀態(tài)
(3)分支下掛接所有配置項(xiàng)的代碼和有關(guān)版本說明,不管配置項(xiàng)狀態(tài)與主軟件狀態(tài)是否不同,分支下要?dú)w檔的工作產(chǎn)品的最小集合為需求輸入文檔、程序和軟件版本說明;
(4)當(dāng)分支軟件需要撤銷或與主軟件合并時(shí),應(yīng)凍結(jié)該分支軟件,避免后續(xù)誤操作引起混亂。
3.3 裝備臺(tái)賬管理
在軟件實(shí)施變更并最終納入配置管理庫管理后,馬上面臨的一個(gè)問題就是,多個(gè)軟件狀態(tài)對應(yīng)了多個(gè)交付裝備,如何才能準(zhǔn)確無誤的將入庫軟件版本輻射升級(jí)到對應(yīng)的裝備上呢,因此需要建立一個(gè)交付裝備的軟件狀態(tài)臺(tái)賬,臺(tái)賬的基本內(nèi)容應(yīng)包括:
(l)交付裝備基本信息:用戶信息,使用地點(diǎn),交付時(shí)間,維護(hù)信息等;
(2)軟件狀態(tài)信息:升級(jí)日期、升級(jí)人、升級(jí)版本號(hào),包含配置項(xiàng),升級(jí)原因等。
通過臺(tái)賬的信息化管理,可以將軟件變更的輸入、軟件變更實(shí)施、軟件測試驗(yàn)證、軟件升級(jí)實(shí)施統(tǒng)一納入管理,實(shí)現(xiàn)對每一臺(tái)套交付裝備軟件的技術(shù)狀態(tài)管理。
4 總結(jié)
軟件配置管理已經(jīng)成為軍用軟件項(xiàng)目管理中的關(guān)鍵環(huán)節(jié),而作為重要功能的已交付裝備軟件版本控制,是軟件項(xiàng)目后期維護(hù)工作的關(guān)鍵。以任務(wù)輸入為驅(qū)動(dòng),基于分支管理和臺(tái)賬管理的交付裝備軟件配置管理,更具體地落實(shí)了軟件工程化配置管理思想,不僅可以消除因軟件變更導(dǎo)致的問題出現(xiàn),還可以大幅提升軟件狀態(tài)管理效率。這些方法不僅僅針對已交付裝備,在系統(tǒng)開發(fā)、聯(lián)試階段等整個(gè)軟件生命周期中亦可以推廣應(yīng)用,后續(xù)考慮將這些管理環(huán)節(jié)納入軟件全生命周期平臺(tái)管理,將軟件需求、設(shè)計(jì)、測試、維護(hù)、配置管理、臺(tái)賬管理等信息系統(tǒng)串聯(lián)形成一套完成的軟件研發(fā)管理鏈路,進(jìn)一步提升軍用軟件配置管理效率和軟件質(zhì)量。
參考文獻(xiàn)
[1] Sof tware Conf iguration ManagementProces S,WarrenMosely, TexasInstruments Resident Aff iliate at theSof tware Engineering
Inst ituteCarnegieMellonUniversity
[DB/OL]. ht tp:,/www. sweforum. net/scm/ieee_1074_cm_proces S.pdf.
[2]于宏霞等,基線技術(shù)在軟件配置管理過程中的應(yīng)用[J].計(jì)算機(jī)應(yīng)用與軟件,2006,23 (02).
[3]廖富魁,談裝備軟件配置管理流程優(yōu)化設(shè)計(jì)[J].黑龍江科技信息,2013,4(12).
[4]高紅星,對空情報(bào)雷達(dá)研制過程的技術(shù)狀態(tài)管理[J].空軍預(yù)警學(xué)院學(xué)報(bào),2015 (29):3.
[5]鄭翠芳,武器裝備軟件配置管理實(shí)施方法淺談[J].計(jì)算機(jī)科學(xué),2013,40 (11A).