張曉梅 張集成
(金航數(shù)碼科技有限責(zé)任公司 北京市 100028)
隨著航空工業(yè)的飛速發(fā)展,航空產(chǎn)品的安全性與穩(wěn)定性已經(jīng)成為研制單位進(jìn)行市場抗衡的重要砝碼,而軟件研制過程能力的高低往往對其起著決定性的作用。[1]隨著航空工業(yè)技術(shù)的不斷發(fā)展,飛機(jī)系統(tǒng)的集成化、模塊化、系列化、平臺化程度越來越高,越來越多的飛機(jī)系統(tǒng)功能是由標(biāo)準(zhǔn)化的組件和機(jī)載軟件實(shí)現(xiàn)的。因此,機(jī)載軟件對航空產(chǎn)品的作用和價(jià)值也越來越大[2][3]。
傳統(tǒng)機(jī)載軟件采用單機(jī)電腦進(jìn)行軟件研發(fā)和存儲、以光盤和U 盤等存儲設(shè)備作為媒介進(jìn)行機(jī)載軟件傳輸。由于機(jī)載軟件數(shù)量和復(fù)雜度不斷增加,當(dāng)前機(jī)載軟件的數(shù)據(jù)管理模式,已無法滿足當(dāng)前航空產(chǎn)品對機(jī)載軟件的管理發(fā)展要求。本文基于DO-178B、GJB5000AIII 和CMMI 對機(jī)載軟件開發(fā)和灌裝過程的配置管理進(jìn)行關(guān)鍵技術(shù)研究,提出基于PDM 系統(tǒng)的機(jī)載軟件配置管理體系,為航空機(jī)載軟件配置管理相關(guān)信息系統(tǒng)建設(shè)提供技術(shù)幫助和參考。
圖1為機(jī)載軟件研發(fā)全過程,包括機(jī)載軟件研發(fā)項(xiàng)目管理、需求定義、架構(gòu)定義、設(shè)計(jì)定義、系統(tǒng)分析、實(shí)施、集成、驗(yàn)證、運(yùn)行和維護(hù)。軟件配置管理是軟件研發(fā)過程中最重要的一個(gè)環(huán)節(jié),包括計(jì)劃制定、標(biāo)示配置項(xiàng)、基線管理、變更控制、配置審計(jì)、配置記錄、歸檔。[4]GJB5000A-2008 提出配置管理的目的是利用配置標(biāo)識、配置控制、配置狀態(tài)記實(shí)和配置審核建立和維護(hù)工作產(chǎn)品的完整性。[5]因此,我們需要從軟件研發(fā)團(tuán)隊(duì)、執(zhí)行過程和質(zhì)量控制等方面對軟件配置進(jìn)行管控。
CCB(變更控制委員會)是軟件配置管理的組織機(jī)構(gòu),負(fù)責(zé)定義軟件配置管理工作內(nèi)容,包括配置管理的軟硬件資源的配置項(xiàng)標(biāo)識、變更控制、變更審核、變更記錄和報(bào)告等。[6]軟件配置項(xiàng)包括項(xiàng)目開發(fā)過程中產(chǎn)生的任務(wù)書、計(jì)劃、需求、設(shè)計(jì)、代碼、測試數(shù)據(jù)等與產(chǎn)品相關(guān)的各類工程文檔及數(shù)據(jù),使用維護(hù)過程中產(chǎn)生的文檔、數(shù)據(jù),以及項(xiàng)目所使用的工具、采用的第三方軟件等。軟件開發(fā)過程是一個(gè)不斷迭代不斷完善的過程,針對軟件開發(fā)過程中產(chǎn)生的數(shù)據(jù)通過軟件配置庫進(jìn)行管理,軟件配置庫通常是開發(fā)庫、受控庫、產(chǎn)品庫的三庫管理模式,[7]開發(fā)庫負(fù)責(zé)收集所有軟件研發(fā)過程中的電子數(shù)據(jù),受控庫保存用基線管理的受控?cái)?shù)據(jù),產(chǎn)品庫保存用基線管理發(fā)布的軟件產(chǎn)品數(shù)據(jù)。[8]基線是對軟件開發(fā)過程中不同階段的軟件數(shù)據(jù)版本進(jìn)行管理,通常軟件配置基線可以分為功能基線、配置基線、設(shè)計(jì)基線、代碼基線、測試基線、產(chǎn)品基線。[9]
航空工業(yè)各主機(jī)廠所中各類研制數(shù)據(jù)在PDM 系統(tǒng)中一般通過BOM 進(jìn)行組織和管理,包括管理設(shè)計(jì)數(shù)據(jù)的EBOM(結(jié)構(gòu)視圖和系統(tǒng)視圖)、管理工藝數(shù)據(jù)的PBOM、以及管理制造數(shù)據(jù)的MBOM。機(jī)載軟件是沒有實(shí)體的,它必須依托于硬件(系統(tǒng)設(shè)備)才能在飛機(jī)上使用;機(jī)載軟件不包含工藝、制造過程,其生命周期包括需求、研發(fā)、測試、灌裝等等。機(jī)載軟件在PDM 系統(tǒng)中,其產(chǎn)品結(jié)構(gòu)的定義需要具備以下特點(diǎn):
(1)為了便于建立機(jī)載軟件與機(jī)載設(shè)備的關(guān)系,機(jī)載軟件需要建立與BOM 類似的產(chǎn)品結(jié)構(gòu),通過BOM 對全機(jī)的機(jī)載軟件進(jìn)行統(tǒng)一管理;
(2)由于機(jī)載軟件沒有工藝、制造過程,所以機(jī)載軟件僅包含EBOM,沒有PBOM 和MBOM;
(3)由于機(jī)載軟件與系統(tǒng)設(shè)備之間存在著緊密的關(guān)聯(lián)關(guān)系,所以機(jī)載軟件相關(guān)的數(shù)據(jù)也需要按照系統(tǒng)設(shè)備進(jìn)行組織和管理,同時(shí)可以支持建立軟件BOM 與EBOM(系統(tǒng)視圖)間的關(guān)聯(lián)關(guān)系。
結(jié)合機(jī)載軟件的特點(diǎn),其產(chǎn)品結(jié)構(gòu)的數(shù)據(jù)模型如圖2所示。

圖1:機(jī)載軟件研發(fā)過程

圖2:機(jī)載軟件產(chǎn)品結(jié)構(gòu)
機(jī)載軟件的產(chǎn)品結(jié)構(gòu)即EBOM(軟件視圖)如圖3,包括頂層、設(shè)備層和底層三部分結(jié)構(gòu),以機(jī)型為根節(jié)點(diǎn)進(jìn)行組織。頂層結(jié)構(gòu)與EBOM 的頂層結(jié)構(gòu)相同,包括系統(tǒng)、分系統(tǒng)、子系統(tǒng)(民機(jī)為ATA 章、ATA 節(jié)、ATA 段);設(shè)備層結(jié)構(gòu)包括設(shè)備和配置項(xiàng),設(shè)備為需要灌裝機(jī)載軟件的具體系統(tǒng)設(shè)備,對應(yīng)EBOM(系統(tǒng)視圖)中的設(shè)備/成品,配置項(xiàng)用于對同一設(shè)備可灌裝的不同狀態(tài)軟件進(jìn)行區(qū)分,是機(jī)載軟件技術(shù)狀態(tài)控制的可配置節(jié)點(diǎn),是相關(guān)基線的主要配置單元;底層結(jié)構(gòu)為機(jī)載軟件的具體數(shù)據(jù),一般包含軟件的源代碼、執(zhí)行代碼和相關(guān)的技術(shù)文件。
在EBOM(軟件視圖)的基礎(chǔ)上,為更好的對機(jī)載軟件與系統(tǒng)設(shè)備、機(jī)體結(jié)構(gòu)之間的關(guān)系進(jìn)行追蹤追溯,需要構(gòu)建EBOM(軟件視圖)與EBOM(系統(tǒng)視圖)之間的關(guān)聯(lián)關(guān)系,從而構(gòu)建機(jī)、電、軟一體化的構(gòu)型管理體系。EBOM(軟件視圖)的技術(shù)狀態(tài)管理,以及其與EBOM(系統(tǒng)視圖)、EBOM(結(jié)構(gòu)視圖)間技術(shù)狀態(tài)的一致性保障,是機(jī)載軟件數(shù)據(jù)管理的核心。
EBOM(軟件視圖)、EBOM(系統(tǒng)視圖)、EBOM(結(jié)構(gòu)視圖)之間的關(guān)系模型如圖4所示。
通過在PDM 系統(tǒng)中進(jìn)行EBOM(軟件視圖)的構(gòu)建,以型號為單位對機(jī)載軟件統(tǒng)一管理,建立機(jī)載軟件的存儲結(jié)構(gòu),是對機(jī)載軟件進(jìn)行合理有效管理的基礎(chǔ)。在此基礎(chǔ)上,還需要建立機(jī)載軟件從研發(fā)到灌裝的業(yè)務(wù)過程管理體系,從而實(shí)現(xiàn)機(jī)載軟件的一體化管控。
機(jī)載軟件具有關(guān)系復(fù)雜、變更頻繁的特點(diǎn),除了機(jī)載軟件自身的更新、升級會引起機(jī)載軟件的版本變化外,與其關(guān)聯(lián)的機(jī)載設(shè)備的變更也可能引起機(jī)載軟件的版本變化,機(jī)載軟件的版本與機(jī)載設(shè)備的版本并非一一對應(yīng)的關(guān)系。機(jī)載軟件的技術(shù)狀態(tài)管理,需要按照機(jī)載軟件研發(fā)過程的生命周期,以及不同生命周期階段的交付要求,定義機(jī)載軟件配置項(xiàng)的版本定義,并按照業(yè)務(wù)需求定義各種基線規(guī)則。
軟件數(shù)據(jù)的版本控制能夠有效地保證配置項(xiàng)的正確性和一致性,PDM 系統(tǒng)通過系統(tǒng)版本和軟件配置版本來定義軟件配置項(xiàng)。系統(tǒng)版本是配置項(xiàng)創(chuàng)建時(shí)生成的,軟件配置版本是軟件入庫和變更時(shí)生成的。系統(tǒng)版本中大版本由修訂動作產(chǎn)生,小版本由檢出、檢入動作產(chǎn)生。軟件配置項(xiàng)初始版本由入庫時(shí)指定,軟件配置版本的升版由更改時(shí)產(chǎn)生。配置項(xiàng)創(chuàng)建時(shí),只有軟件系統(tǒng)版本A.1,軟件配置版本為空。如果這時(shí)候軟件配置項(xiàng)需要變更,則系統(tǒng)版本就會升級為A.2。軟件入庫軟件配置版本為2.00A。入庫軟件進(jìn)行更改,需要走更改流程,更改申請批準(zhǔn)后,修訂軟件系統(tǒng)版本為B.1,軟件配置版本為2.01A,如圖5所示。
通過不同的基線和架次有效性對軟件技術(shù)狀態(tài)進(jìn)行控制。機(jī)載軟件管理的生命周期主要包括:需求、設(shè)計(jì)、研發(fā)、測試、裝機(jī)規(guī)劃和灌裝六個(gè)階段。其中需求、設(shè)計(jì)、研發(fā)、測試階段是在機(jī)載軟件正式數(shù)據(jù)發(fā)放前,在相關(guān)專用工具的支持下完成的。在一般情況下,PDM 系統(tǒng)不需要管理上述四個(gè)階段中產(chǎn)生的過程數(shù)據(jù),僅需要對完成軟件測試后的結(jié)果數(shù)據(jù)以及后續(xù)的裝機(jī)規(guī)劃和灌裝過程進(jìn)行管理。
為滿足機(jī)載軟件的管理要求,在機(jī)載軟件產(chǎn)品結(jié)構(gòu)的基礎(chǔ)上,定義“開發(fā)基線”、“規(guī)劃基線”和“裝機(jī)基線”。通過不同的基線對機(jī)載軟件的各生命周期階段的數(shù)據(jù)狀態(tài)進(jìn)行標(biāo)識和管理,三大基線的關(guān)系和定義規(guī)則如圖6所示。
如圖6,“開發(fā)基線”、“規(guī)劃基線”和“裝機(jī)基線”分別對具備如下特點(diǎn):

圖3:軟件產(chǎn)品結(jié)構(gòu)的定義

圖4:EBOM 軟件視圖、系統(tǒng)視圖、結(jié)構(gòu)視圖的關(guān)系模型

圖5:軟件版本管理

圖6:機(jī)載軟件基線定義規(guī)則
(1)開發(fā)基線:機(jī)載軟件承辦單位完成軟件開發(fā)、測試后,開發(fā)人員通過入庫申請將機(jī)載軟件相關(guān)數(shù)據(jù)提交機(jī)載軟件配置和管理單位。機(jī)載軟件配置和管理單位各專業(yè)管理人員接收數(shù)據(jù)并完成入庫,入庫的同時(shí)創(chuàng)建開發(fā)基線。開發(fā)基線基于系統(tǒng)/分系統(tǒng)固化軟件配置項(xiàng)版本。開發(fā)基線沒有版本控制,可通過創(chuàng)建新的開發(fā)基線替代原有的開發(fā)基線。開發(fā)基線作為規(guī)劃基線創(chuàng)建和升版的基礎(chǔ)。
(2)規(guī)劃基線:規(guī)劃基線由機(jī)載軟件配置和管理單位軟件配置管理人員創(chuàng)建,基于科研計(jì)劃建立的規(guī)劃全機(jī)軟件版本或用于成品設(shè)備和全機(jī)鑒定版本合集。規(guī)劃基線具備批架次有效性,不同規(guī)劃基線的架次允許重疊。規(guī)劃基線將作為裝機(jī)基線新建或升版的依據(jù)。
(3)裝機(jī)基線:裝機(jī)基線由機(jī)載軟件配置和管理單位軟件配置管理人員創(chuàng)建,是用于建立需要裝機(jī)的所有軟件版本的合集。裝機(jī)基線單架次有效,每一架飛機(jī)的裝機(jī)基線只能有一個(gè)。裝機(jī)基線的創(chuàng)建或升版時(shí)必須以某一條規(guī)劃基線為基準(zhǔn),并允許修改。裝機(jī)基線審批發(fā)布后,可以根據(jù)裝機(jī)基線對規(guī)劃基線進(jìn)行“反哺”,用裝機(jī)基線的內(nèi)容和架次更新規(guī)劃基線。機(jī)載軟件的裝機(jī)基線(以及裝機(jī)基線相關(guān)的機(jī)載軟件數(shù)據(jù))審批發(fā)布后,將由機(jī)載軟件配置和管理單位發(fā)往負(fù)責(zé)軟件灌裝的制造廠、試飛單位、用戶等單位,并作為軟件灌裝的依據(jù)。
在規(guī)劃基線和裝機(jī)基線中,其架次有效性的定義規(guī)則必須與EBOM(系統(tǒng)視圖)中有效性的定義規(guī)則相同。通過架次有效性過濾,以及EBOM(軟件視圖)中的設(shè)備與EBOM(系統(tǒng)視圖)中機(jī)載設(shè)備的對應(yīng)關(guān)系,實(shí)現(xiàn)EBOM(系統(tǒng)視圖)中軟件版本與EBOM(系統(tǒng)視圖)機(jī)載設(shè)備版本的對應(yīng),從而實(shí)現(xiàn)機(jī)、電、軟相關(guān)數(shù)據(jù)技術(shù)狀態(tài)的一體化管理。
機(jī)載軟件的生命周期管理過程中,包括需求、開發(fā)、入庫、更改、配置、出庫、灌裝等多個(gè)業(yè)務(wù)場景。PDM 系統(tǒng)除了要對機(jī)載軟件相關(guān)數(shù)據(jù)進(jìn)行管理外,還需要通過流程任務(wù),對各個(gè)業(yè)務(wù)場景的開展進(jìn)行支持,從而在數(shù)據(jù)流和業(yè)務(wù)流兩個(gè)維度對機(jī)載軟件的整個(gè)研制體系進(jìn)行支撐。
機(jī)載軟件管理的總體業(yè)務(wù)流程如圖7所示(流程圖中白色的流程節(jié)點(diǎn)是不納入PDM 系統(tǒng)中管理的節(jié)點(diǎn))。
如圖7所述,機(jī)載軟件管理業(yè)務(wù)流程中,主要的業(yè)務(wù)場景如下:
(1)機(jī)載軟件產(chǎn)品結(jié)構(gòu)規(guī)劃:機(jī)載軟件產(chǎn)品結(jié)構(gòu)規(guī)劃即EBOM(軟件視圖)的頂層結(jié)構(gòu)、設(shè)備層結(jié)構(gòu)規(guī)劃。EBOM(軟件視圖)的頂層結(jié)構(gòu)是基本不變的,通過同步EBOM(系統(tǒng)視圖)的頂層結(jié)構(gòu)完成搭建(或手工搭建、導(dǎo)入)。設(shè)備層結(jié)構(gòu)由機(jī)載軟件配置和管理單位的機(jī)載軟件管理人員參照EBOM(系統(tǒng)視圖)進(jìn)行手工搭建,同時(shí)建立EBOM(軟件視圖)中設(shè)備與EBOM(系統(tǒng)視圖)中機(jī)載設(shè)備的關(guān)聯(lián)關(guān)系。機(jī)載軟件產(chǎn)品結(jié)構(gòu)規(guī)劃以“機(jī)載軟件產(chǎn)品結(jié)構(gòu)規(guī)劃單”為載體,由機(jī)載軟件管理人員創(chuàng)建并提交審批,經(jīng)審批發(fā)布后,PDM 系統(tǒng)將自動創(chuàng)建EBOM(軟件視圖)的頂層結(jié)構(gòu)、設(shè)備層結(jié)構(gòu)。
(2)機(jī)載軟件入庫:機(jī)載軟件入庫流程是當(dāng)機(jī)載軟件完成開發(fā)與測試后,由設(shè)計(jì)機(jī)載軟件承辦單位的機(jī)載設(shè)備主管人員將機(jī)載軟件相關(guān)的數(shù)據(jù)(含代碼包、測試報(bào)告、驗(yàn)收文檔等)以“機(jī)載軟件入庫申請”為載體上傳至PDM 系統(tǒng)。每一份“機(jī)載軟件入庫申請”對應(yīng)EBOM(軟件視圖)中設(shè)備的一個(gè)“配置項(xiàng)”,代表該設(shè)備中的一個(gè)可用的機(jī)載軟件狀態(tài)。“機(jī)載軟件入庫申請”經(jīng)審批后發(fā)布,PDM 系統(tǒng)將自動在EBOM(軟件視圖)中創(chuàng)建 “配置項(xiàng)”及其對應(yīng)的底層結(jié)構(gòu)。在完成“機(jī)載軟件產(chǎn)品結(jié)構(gòu)規(guī)劃流程”和所有設(shè)備的“機(jī)載軟件入庫流程”后,PDM 系統(tǒng)中將完成整個(gè)EBOM(軟件視圖)的結(jié)構(gòu)搭建。
(3)基線創(chuàng)建及審簽:基線創(chuàng)建及審簽流程包括開發(fā)基線、規(guī)劃基線、裝機(jī)基線的創(chuàng)建及審簽三個(gè)子流程。三大基線的流程中均包含基線創(chuàng)建、基線審批和基線發(fā)布三個(gè)子流程。其中規(guī)劃基線創(chuàng)建時(shí),需要以裝機(jī)基線作為基礎(chǔ);裝機(jī)基線創(chuàng)建時(shí),需要以規(guī)劃基線作為基礎(chǔ)。
(4)機(jī)載軟件更改:機(jī)載軟件更改流程是基于配置項(xiàng)(或新增配置項(xiàng))對機(jī)載軟件版本進(jìn)行更改及審簽的流程。機(jī)載軟件的更改流程包括更改申請和更改執(zhí)行兩個(gè)子流程,均由機(jī)載軟件承制單位軟件設(shè)計(jì)人員發(fā)起。更改申請流程以“更改申請單”為載體,描述需更改軟件的更改依據(jù)(協(xié)調(diào)單、試飛問題、需求、升級反饋等),以及軟件名稱、所屬系統(tǒng)/分系統(tǒng)、更改前后的軟件版本等。“更改申請單”創(chuàng)建完成后,由創(chuàng)建者提交審簽,審簽通過后啟動更改執(zhí)行流程。更改執(zhí)行流程以“更改單”為載體,描述具體的更改內(nèi)容,并上傳改后數(shù)據(jù)。“更改單”創(chuàng)建完成后,由創(chuàng)建者提交審簽,審簽通過后重新執(zhí)行機(jī)載軟件入庫流程,更新機(jī)載軟件狀態(tài)。
(5)機(jī)載軟件出庫流程:機(jī)載軟件出庫流程是在執(zhí)行軟件灌裝前,由機(jī)載軟件灌裝執(zhí)行單位(生產(chǎn)、試飛、特設(shè)、用戶等)相關(guān)技術(shù)人員發(fā)起,用于在申請機(jī)載軟件灌裝所需的軟件代碼及相關(guān)文檔。機(jī)載軟件出庫流程以“機(jī)載軟件出庫單”為載體,填寫架次有效性、所需設(shè)備等信息,并根據(jù)架次有效性在裝機(jī)基線中篩選出符合要求的數(shù)據(jù)。機(jī)載軟件出庫單創(chuàng)建完成后,由其編制者提交審簽,審簽完成后發(fā)布。
(6)機(jī)載軟件灌裝狀態(tài)反饋:生產(chǎn)、試飛或外廠的軟件灌裝人員在執(zhí)行軟件灌裝時(shí),通過機(jī)載軟件灌裝狀態(tài)反饋流程,將機(jī)載軟件的灌裝情況向機(jī)載軟件承制單位進(jìn)行反饋。機(jī)載軟件升級反饋流程以“機(jī)載軟件升級反饋單”為載體,描述機(jī)載軟件灌裝情況信息,并在生產(chǎn)、總裝、試飛或外廠單位內(nèi)完成審簽后,發(fā)往機(jī)載軟件承制單位。機(jī)載軟件承制單位相關(guān)人員接收“機(jī)載軟件升級反饋單”并根據(jù)其內(nèi)容進(jìn)行答復(fù)和相關(guān)的處理。生產(chǎn)、總裝、試飛或外廠的軟件灌裝人員接收答復(fù)和處理結(jié)果,對軟件灌裝進(jìn)行相應(yīng)的處理。
圖8是某航空主機(jī)所和主機(jī)廠軟件協(xié)同研制的案例介紹。主機(jī)所負(fù)責(zé)軟件的開發(fā),在軟件三庫管理系統(tǒng)實(shí)現(xiàn)軟件的三庫管理,將產(chǎn)品庫數(shù)據(jù)發(fā)布到PDM 系統(tǒng),在PDM 系統(tǒng)實(shí)現(xiàn)軟件出入庫和更改管理,軟件數(shù)據(jù)基于軟件產(chǎn)品結(jié)構(gòu)進(jìn)行管理,每架次軟件是通過基線發(fā)布給主機(jī)廠。主機(jī)廠接收來自主機(jī)所某一架次的軟件數(shù)據(jù)基線,在自己的PDM 系統(tǒng)建立軟件產(chǎn)品結(jié)構(gòu),并基于軟件產(chǎn)品結(jié)構(gòu)管理軟件數(shù)據(jù),按某一架次基線的軟件數(shù)據(jù)實(shí)現(xiàn)軟件灌裝,并將軟件灌裝信息反饋給主機(jī)所,形成軟件研制的閉環(huán)。
主機(jī)所在軟件三庫管理系統(tǒng)實(shí)現(xiàn)軟件的三庫管理,產(chǎn)品庫數(shù)據(jù)通過在PDM 系統(tǒng)提交入庫申請單,走審簽流程才可以入PDM 系統(tǒng)。PDM 系統(tǒng)參照飛機(jī)的EBOM 結(jié)構(gòu)過濾出帶有軟件的設(shè)備形成整機(jī)的軟件產(chǎn)品結(jié)構(gòu),基于軟件產(chǎn)品結(jié)構(gòu)管理軟件數(shù)據(jù)。軟件產(chǎn)品結(jié)構(gòu)是由飛機(jī)->系統(tǒng)->分系統(tǒng)->設(shè)備->軟件配置項(xiàng)自頂向下的軟件產(chǎn)品結(jié)構(gòu)關(guān)系,產(chǎn)品結(jié)構(gòu)樹記錄型號所有可用軟件配置項(xiàng)的集合。
PDM 系統(tǒng)以配置項(xiàng)為管理單元管理軟件數(shù)據(jù),軟件基本信息(名稱、編號、軟件版本、研制單位等)作為屬性進(jìn)行管理。同時(shí),通過數(shù)據(jù)的關(guān)聯(lián)信息,將入庫單、出庫單、配置項(xiàng)更改申請(更改單)與配置項(xiàng)進(jìn)行關(guān)聯(lián);目標(biāo)代碼包作為入庫單的主要內(nèi)容,源代碼包、測試文檔、驗(yàn)證報(bào)告等作為入庫單的附件進(jìn)行管理。
軟件數(shù)據(jù)的版本控制能夠有效地保證配置項(xiàng)的正確性和一致性,PDM 系統(tǒng)通過系統(tǒng)版本和軟件配置版本來定義軟件配置項(xiàng)。系統(tǒng)版本是配置項(xiàng)創(chuàng)建時(shí)生成的,軟件配置版本是軟件入庫和變更時(shí)生成的。系統(tǒng)版本中大版本由修訂動作產(chǎn)生,小版本由檢出、檢入動作產(chǎn)生。軟件配置項(xiàng)初始版本由入庫時(shí)指定,軟件配置版本的升版由更改時(shí)產(chǎn)生。
軟件產(chǎn)品結(jié)構(gòu)通過配置項(xiàng)管理軟件產(chǎn)品的所有版本數(shù)據(jù),XXX主機(jī)所需要發(fā)放數(shù)據(jù)給YYY 主機(jī)廠時(shí),針對某一具體架次飛機(jī)創(chuàng)建該架次飛機(jī)的基線,基線里包括有該架次飛機(jī)所有軟件對應(yīng)版本的軟件配置項(xiàng),及該對應(yīng)版本的軟件配置項(xiàng)下的軟件數(shù)據(jù)。XXX主機(jī)所通過出庫單將該架次飛機(jī)對應(yīng)的軟件數(shù)據(jù)基線發(fā)放給YYY主機(jī)廠。
YYY 主機(jī)廠接收到XXX 主機(jī)所的出庫單及打包的軟件基線數(shù)據(jù)后,將數(shù)據(jù)還原到PDM 系統(tǒng),形成YYY 主機(jī)廠的軟件配置管理結(jié)構(gòu)樹,并基于軟件配置管理結(jié)構(gòu)樹對軟件數(shù)據(jù)進(jìn)行管理。YYY主機(jī)廠通過出庫單將需要灌裝的軟件基線數(shù)據(jù)包分發(fā)給相關(guān)單位,如:庫房、質(zhì)檢處、特設(shè)處、總裝廠、試飛站等,相關(guān)人員在自己的系統(tǒng)里完成軟件數(shù)據(jù)和版本核查及相關(guān)的軟件灌裝工作。
庫房管理:PDM 系統(tǒng)向庫房管理系統(tǒng)發(fā)放軟件清單、更改數(shù)據(jù)和軟件灌裝任務(wù),庫房管理人員對成品信息進(jìn)行核查、接受軟件灌裝任務(wù)。庫房管理員可以在PDM 系統(tǒng)中直接登陸庫存管理系統(tǒng),查看成品件在庫房中的存貨數(shù)量,以及成品出庫記錄,獲得成品出庫狀態(tài)信息,以便追蹤到成品所在單位,進(jìn)行軟件升級灌裝。庫房管理系統(tǒng)向PDM系統(tǒng)傳輸成品首次入廠首檢信息和灌裝反饋信息,在PDM 系統(tǒng)保存成品完整信息。
質(zhì)量管理:PDM 系統(tǒng)向質(zhì)量管理系統(tǒng)發(fā)放軟件清單、更改數(shù)據(jù)和軟件灌裝任務(wù),檢驗(yàn)和特設(shè)人員在質(zhì)量管理系統(tǒng)完成成品信息核查工作、接受軟件灌裝任務(wù)。檢驗(yàn)和特設(shè)人員在PDM 系統(tǒng)中可以直接登陸質(zhì)量管理系統(tǒng),查看現(xiàn)場成品信息,獲得成品軟件版本信息,以便進(jìn)行軟件升級。質(zhì)量管理系統(tǒng)向PDM 系統(tǒng)反饋灌裝反饋信息。
MES 系統(tǒng):PDM 系統(tǒng)向MES 系統(tǒng)發(fā)放軟件清單、更改數(shù)據(jù)和灌裝任務(wù),總裝廠和試飛站在MES 系統(tǒng)完成成品信息核查工作和接受軟件灌裝任務(wù)。總裝和試飛人員在PDM 系統(tǒng)中可以直接登陸總裝廠和試飛站的MES 系統(tǒng),查看現(xiàn)場成品信息,獲得成品庫存信息和裝機(jī)信息,以便進(jìn)行軟件升級。MES 系統(tǒng)向PDM 系統(tǒng)反饋灌裝反饋信息。
各個(gè)制造部門若有問題就在出庫單審簽過程中,將問題反饋給特設(shè)處,由特設(shè)處落實(shí)問題處理意見,若問題需要XXX 主機(jī)所解答,特設(shè)處會將問題基于流程自動反饋給XXX 主機(jī)所,XXX 主機(jī)所接收到相關(guān)問題后落實(shí)問題處理方法,將相關(guān)信息基于流程自動反饋給YYY 主機(jī)廠特設(shè)處,由特設(shè)處將問題的處理意見傳遞給相關(guān)部門的相關(guān)人員,形成軟件灌裝現(xiàn)場問題處理閉環(huán)。

圖7:機(jī)載軟件管理總體業(yè)務(wù)流程

圖8:XXX 主機(jī)所和YYY 主機(jī)廠軟件研制過程配置管理

圖9:YYY 主機(jī)廠軟件配置管理
軟件配置管理是保證軟件質(zhì)量的關(guān)鍵,也是保證軟件產(chǎn)品交付的重要手段。本文以DO-178B 和GJB5000A 三級為指導(dǎo),結(jié)合CMMI 三級關(guān)鍵過程域?qū)嵺`,利用配置標(biāo)識、配置控制、配置狀態(tài)記錄和配置審計(jì),從軟件數(shù)據(jù)管理、構(gòu)型管理、業(yè)務(wù)過程管理的角度出發(fā),提出基于PDM 系統(tǒng)的機(jī)載軟件配置管理解決方案,為機(jī)、電、液、軟等各類數(shù)據(jù)統(tǒng)一的技術(shù)狀態(tài)管理和多學(xué)科協(xié)同產(chǎn)品研制提供了軟件配置管理的技術(shù)保障。未來航空產(chǎn)品研制將向模型化、組件化、集成化、智能化、網(wǎng)絡(luò)化方向發(fā)展,會對軟件研發(fā)提出越來越高的要求,軟件配置管理的研究工作也將任重而道遠(yuǎn)。