史亭文 趙琳
摘要:航空軟件的技術(shù)狀態(tài)管理是保證軟件技術(shù)狀態(tài)正確性,提高軟件質(zhì)量的有效技術(shù)保障。為了更好地管理軟件技術(shù)狀態(tài),做好軟件工程化工作,該文基于GJB5000A三級標(biāo)準(zhǔn),提出了一種適用航空軟件項目的軟件技術(shù)管理方法,該方法經(jīng)項目實踐證明,有效提高了軟件技術(shù)狀態(tài)的正確性,保證了軟件質(zhì)量。
關(guān)鍵詞:GJB5000A;技術(shù)狀態(tài)管理
中圖分類號:TP311? ? ? ? 文獻(xiàn)標(biāo)識碼:A
文章編號:1009-3044(2019)24-0082-02
開放科學(xué)(資源服務(wù))標(biāo)識碼(OSID):
1 引言
在航空軟件的整個研制過程中,為了確定和維護(hù)各個階段的軟件功能特性、性能特性和用戶要求的一致性,技術(shù)狀態(tài)管理活動必不可少。技術(shù)狀態(tài)管理主要內(nèi)容包括技術(shù)狀態(tài)標(biāo)識、技術(shù)狀態(tài)控制、技術(shù)狀態(tài)紀(jì)實和技術(shù)狀態(tài)審核四個過程[1]。隨著航空軟件重要性日趨增大,規(guī)模日益擴(kuò)大及研制周期越來越復(fù)雜,其研制周期內(nèi)的技術(shù)狀態(tài)管理工作顯得非常重要。
GJB5000A規(guī)定了軟件開發(fā)和維護(hù)活動中主要軟件管理過程和工程過程的實踐[2]。配置管理是GJB5000A三級體系中的一個支持類過程域,與質(zhì)量保證過程一起保證軟件的技術(shù)狀態(tài)管理活動,配置管理過程通過建立基線、變更控制以及維護(hù)基線的完整性來對軟件的技術(shù)狀態(tài)進(jìn)行管理,確保軟件的質(zhì)量。
本文提出一套基于GJB5000A三級的軍用軟件技術(shù)狀態(tài)管理方案,詳細(xì)描述了技術(shù)狀態(tài)管理的各個活動。
2 航空軟件研制特點及存在問題
近年來,隨著航空事業(yè)的發(fā)展,航空軟件研制特點及問題日益顯著,主要體現(xiàn)在如下幾個方面:
1)研制階段時間長。航空軟件項目的研制階段包括需求獲取和策劃、軟件需求分析、軟件設(shè)計、軟件實現(xiàn)、軟件測試、軟件驗收與確認(rèn)、軟件交付以及軟件維護(hù)。對于一個軟件配置項來說,時間越長,中間的產(chǎn)生的技術(shù)狀態(tài)就會越多,航空軟件有時候一個項目包括幾十個甚至幾百個配置項,這樣會導(dǎo)致產(chǎn)生的軟件技術(shù)狀態(tài)呈指數(shù)增加,控制其整個過程的技術(shù)狀態(tài)難度大大增大。
2)部門協(xié)作多。一個軟件項目,需要多個科室之間相互合作,這樣子容易導(dǎo)致溝通不充分,造成技術(shù)狀態(tài)混亂,不好管理。
3)需求變化多,其變更控制難度增加。在航空軟件的研制過程中,往往用戶需求前期不明確,屬于邊研制邊更改的過程,這樣會導(dǎo)致技術(shù)狀態(tài)經(jīng)常發(fā)生變化,軟件項目技術(shù)狀態(tài)管理困難。
4)時間進(jìn)度緊。航空的軟件研制都是有周期的,由于前期需求不明確,往往到軟件研制后期,會有頻繁的現(xiàn)場研制及調(diào)試工作,容易導(dǎo)致項目軟件的技術(shù)狀態(tài)不穩(wěn)定。
綜上所述,急需一種實施合理且有效的技術(shù)狀態(tài)管理方案,來解讀上述問題,否則會引發(fā)軟件狀態(tài)多、版本管理混亂、變更控制不到位、文檔與源程序不符等問題,最終導(dǎo)致產(chǎn)品技術(shù)狀態(tài)失效。
3 基于GJB5000A三級的技術(shù)狀態(tài)管理方法
本文基于GJB5000A三級標(biāo)準(zhǔn)結(jié)合航空軟件開發(fā)特點,提出了一種技術(shù)狀態(tài)管理方案。從配置庫建立、階段審核控制、基線管理、變更控制幾個方面具體闡述了該方法的具體方法。
3.1 配置庫建立
軟件項目負(fù)責(zé)人在項目剛開始時,依據(jù)項目信息,申請建立配置管理庫,由所級配置管理人員負(fù)責(zé)創(chuàng)建,并根據(jù)項目情況設(shè)置相應(yīng)人員權(quán)限。本方案采取開發(fā)庫、受控庫、產(chǎn)品庫物理隔離的策略進(jìn)行管理。
在實施配置庫管理的時候,需要注意如下方面:
1)開發(fā)庫和受控庫的目錄盡量保持一致,因為受控庫中存放的內(nèi)容是開發(fā)庫中項目達(dá)到指定狀態(tài)后,平移到受控庫中,這樣有助于項目CM入受控庫時審核。
2)項目成員向開發(fā)庫公共區(qū)域提交的工作產(chǎn)品應(yīng)當(dāng)可以供項目質(zhì)量保證人員進(jìn)行符合性檢查,且已完成評審缺陷的修改。
3)項目開展過程中產(chǎn)生的評審記錄、配置管理記錄、驗證及測試記錄、測量分析記錄等過程數(shù)據(jù),應(yīng)當(dāng)及時入開發(fā)庫進(jìn)行管理,待項目結(jié)項時,辦理受控庫入庫手續(xù)。
4)項目的工作產(chǎn)品完成相應(yīng)的驗證工作后,及時辦理相應(yīng)的受控庫入庫手續(xù),文檔需經(jīng)過評審且評審問題已歸零,源程序需通過項目規(guī)定的測試或產(chǎn)品用戶認(rèn)可。
3.2 階段審核
在項目的生存期內(nèi),依據(jù)適用的標(biāo)準(zhǔn)、過程和規(guī)程,按照質(zhì)量保證計劃審核項目的過程活動和工作產(chǎn)品,向項目組和相關(guān)領(lǐng)導(dǎo)提供審核結(jié)果,標(biāo)識并文檔化不符合項,進(jìn)行跟蹤,直至不符合項得到解決[2]。在該過程中,應(yīng)當(dāng)注意如下事項:
1) 項目質(zhì)量保證人員應(yīng)獨立于項目的開發(fā)和管理活動。
2) 項目質(zhì)量保證人員對過程的審核可以采用評審或驗收的方式進(jìn)行。
3) 對審核中發(fā)現(xiàn)的不符合項,應(yīng)當(dāng)及時記錄且文檔化,并進(jìn)行跟蹤處理,直至不符合項關(guān)閉。
4) 項目質(zhì)量保證人員在每月末或每周末、里程碑點處統(tǒng)計所發(fā)現(xiàn)過程和產(chǎn)品的不符合項總數(shù)及其關(guān)閉情況,總結(jié)質(zhì)量保證活動,進(jìn)行分析,通過郵件發(fā)送給項目相關(guān)人員。
3.3 基線管理
基線是正式通過復(fù)審和批準(zhǔn)的某規(guī)約或產(chǎn)品,它可作為進(jìn)一步開發(fā)的基礎(chǔ),并且只能通過正式的變化控制過程改變[3]?;€建立的前提條件是基線配置項均已納入受控庫受控,且建立基線的審批手續(xù)已通過。軟件項目開發(fā)過程中可能形成的基線主要有:功能基線、分配基線、代碼基線和產(chǎn)品基線[2]。
航空軟件產(chǎn)品的生存周期一般分為方案階段(F)、初樣階段(C)、試驗階段(S)、定型階段(D)、批產(chǎn)階段(P)。該管理過程應(yīng)注意如下幾個方面:
1)C階段轉(zhuǎn)S階段前,應(yīng)已經(jīng)形成功能基線和分配基線。在此基礎(chǔ)上,建立產(chǎn)品基線,通過轉(zhuǎn)段評審后,產(chǎn)品基線內(nèi)容直接轉(zhuǎn)入產(chǎn)品庫并按照要求歸檔。
2)S階段轉(zhuǎn)D階段前,同樣應(yīng)已經(jīng)形成功能基線和分配基線,完成項目規(guī)定的軟件測試,才能建立產(chǎn)品基線,通過轉(zhuǎn)段評審后,產(chǎn)品基線內(nèi)容直接轉(zhuǎn)入產(chǎn)品庫并按照要求歸檔。
3)定型前或者定型前轉(zhuǎn)入批產(chǎn),應(yīng)按照要求完定型測評,形成功能基線、分配基線和產(chǎn)品基線,通過轉(zhuǎn)段評審后產(chǎn)品基線內(nèi)容轉(zhuǎn)入產(chǎn)品庫并按照歸檔要求歸檔。
4)代碼基線雖然只包含源程序和可執(zhí)行程序,但是必須有與當(dāng)前代碼基線版本一致的軟件任務(wù)書、需求、設(shè)計等文檔。
5)代碼基線主要是為了解決項目聯(lián)試時間緊張,未及時完成相應(yīng)的回歸測試工作而建立的狀態(tài),待狀態(tài)確定后,應(yīng)及時完成對應(yīng)的回歸測試工作,形成相應(yīng)版本的產(chǎn)品基線,凍結(jié)狀態(tài)。
3.4 變更控制
實施軟件變更控制時需要注意如下問題:
1)變更的原因需明確,且在問題報告單中描述清楚;若是由于用戶需求變化導(dǎo)致軟件配置項變更,則需有用戶簽訂完成的技術(shù)協(xié)調(diào)單或協(xié)調(diào)紀(jì)要;或是由于軟件自測試或者三方測試問題修改發(fā)起的變更,則需在軟件問題單后附上測評機(jī)構(gòu)提出的軟件問題報告,說明問題的來源、類別、級別和詳細(xì)內(nèi)容;若由于外場聯(lián)試需發(fā)起變更,則需聯(lián)試版本的產(chǎn)品庫出庫手續(xù)完成后,才可辦理版更手續(xù)。
2)受控級別不同,審批級別不同。需要根據(jù)所變更配置項的級別,確定需審批的力度,審批人員應(yīng)當(dāng)重點關(guān)注變更的必要性、可行性及影響域,并權(quán)衡其他的變更策略和方法,變更所需的資源是否合理、充分,發(fā)起變更是否會對整個項目進(jìn)度有影響[5]。
3)變更入庫時,確保待入庫版本正確;變更審批通過后,軟件項目負(fù)責(zé)人應(yīng)確定待入庫的軟件版本是否正確,更改是否正確,確認(rèn)版本無誤后,方可辦理入庫。
4)若重新建立基線,需詳細(xì)記錄;項目的配置管理員利用配置管理臺帳記錄軟件項目的變更、出入庫及建立基線情況,如果變更后需要重新建立基線,則需要項目配置管理員在臺賬上記錄清楚該基線修改的原因、內(nèi)容及重新建立時間。重新建立基線后,應(yīng)當(dāng)及時通知項目成員知悉。
變更控制指的是在軟件生命周期中,被更改的配置管理項必須正式取自配置管理的受控庫、產(chǎn)品庫[4]。為了準(zhǔn)確把控軟件技術(shù)狀態(tài),需要規(guī)范軟件配置項的變更流程,變更控制的流程如圖1所示。
4 結(jié)束語
本文基于GJB5000A三級標(biāo)準(zhǔn)對技術(shù)狀態(tài)管理過程進(jìn)行明細(xì)化,通過嚴(yán)格規(guī)范配置庫建立、階段審核控制、基線管理和變更控制過程等四個過程,確保軟件技術(shù)狀態(tài)正確、清晰;在航空軟件項目中,實施本文的軟件技術(shù)狀態(tài)管理方案后,軟件項目在管理力度和質(zhì)量保證方面均有了明顯提高。
參考文獻(xiàn):
[1] GJB3206A-2010. 技術(shù)狀態(tài)管理[S].北京:中國人民解放軍總裝備部, 2010: 1.
[2] 衛(wèi)一芃.基于GJB5000A 三級的軟件配置管理技術(shù)研究[J].航空計算技術(shù),2017,47(2):101-104.
[3] 韓萬江.軟件項目管理案例教程[M].北京:機(jī)械工業(yè)出版社, 2012: 173.
[4] 周艷會,劉海,丁皓.軟件配置管理簡化實施方法[J].電子技術(shù)與軟件工程, 2016(6): 51.
[5] 仇雯鈺,朱宏濤,楊羅蘭,等.基于GJB5000A的軟件技術(shù)狀態(tài)管理方法探討[J].遙測遙控,2018(2):39.
【通聯(lián)編輯:代影】