作者 | 蔡喁上海控安可信軟件創(chuàng)新研究院副院長(zhǎng)
版塊 |鑒源論壇 · 觀擎
社群 |添加微信號(hào)“TICPShanghai”加入“上海控安51fusa安全社區(qū)”
01
配置管理的意義
配置管理(Configuration Management)在航空領(lǐng)域經(jīng)常又稱為構(gòu)型管理,是現(xiàn)代復(fù)雜產(chǎn)品研制的核心技術(shù)。與很多傳統(tǒng)觀念中配置管理是對(duì)文檔和版本的簡(jiǎn)單管理不同,現(xiàn)代復(fù)雜產(chǎn)品由于其內(nèi)部組成部分較多、研制分工普遍以及設(shè)計(jì)中的版本狀態(tài)以及配合關(guān)系頻繁變換的原因,往往對(duì)配置/構(gòu)型管控要求極高。
設(shè)計(jì)過程中的配置/構(gòu)型管理往往需要解決三個(gè)方面的主要問題:
· 設(shè)計(jì)對(duì)象之間的關(guān)系
軟件設(shè)計(jì)過程中的對(duì)象往往由多個(gè)程序文件、需求文檔、架構(gòu)文檔、可執(zhí)行目標(biāo)碼文件乃至測(cè)試用例和測(cè)試程序等組成。這些組成部分那些分離那些作為整體進(jìn)行版本和更改控制,特別是在產(chǎn)品研制過程中、投入使用以后還需要能保證上述對(duì)象之間的關(guān)系正確管理首先需要對(duì)產(chǎn)品的內(nèi)部設(shè)計(jì)對(duì)象的架構(gòu)進(jìn)行有效的設(shè)計(jì)。這種設(shè)計(jì)就是配置和構(gòu)型管理的早期核心工作。
配置/構(gòu)型管理架構(gòu)設(shè)計(jì)的好壞,會(huì)影響到產(chǎn)品研制過程中的分工和過程控制。特別是航空類產(chǎn)品經(jīng)常硬件成本高昂,配置/構(gòu)型框架設(shè)計(jì)也會(huì)對(duì)產(chǎn)品后續(xù)持續(xù)升級(jí)和改進(jìn)帶來明顯的影響。隨著設(shè)計(jì)成熟度的提高,越來越多的機(jī)載系統(tǒng)和設(shè)備企業(yè)采用產(chǎn)品線方法對(duì)運(yùn)用到不同型號(hào)中類似的產(chǎn)品進(jìn)行配置/構(gòu)型管理,在不同的設(shè)計(jì)對(duì)象中區(qū)分不同產(chǎn)品需要的功能和組成部分,從而組合成不同的產(chǎn)品而整個(gè)研制團(tuán)隊(duì)框架不用進(jìn)行大的調(diào)整,這將是對(duì)配置/構(gòu)型管理的終極挑戰(zhàn)。
值得注意的是,配置/構(gòu)型管理除了對(duì)產(chǎn)品設(shè)計(jì)數(shù)據(jù)進(jìn)行管控以外,還需要對(duì)用于研制、測(cè)試乃至加載相關(guān)產(chǎn)品所需的外圍工具和環(huán)境的構(gòu)型進(jìn)行管控。民用飛機(jī)領(lǐng)域強(qiáng)調(diào)生命周期數(shù)據(jù)管理與產(chǎn)品同壽,也是其中的原因之一。這就要求在所生產(chǎn)的飛機(jī)或機(jī)載系統(tǒng)全部退出使用以前,必須始終保持研制環(huán)境的可用,從而能夠隨時(shí)對(duì)產(chǎn)品中發(fā)現(xiàn)的問題進(jìn)行分析和落實(shí)更改。
· 基線和更改控制
復(fù)雜產(chǎn)品設(shè)計(jì)中,由于涉及到大規(guī)模的團(tuán)隊(duì)協(xié)作,一般來說即使是按照雙V模型或者瀑布模型也無(wú)法確保所有的需求和設(shè)計(jì)一次到位。因此根據(jù)不同研制階段和不同成熟度的產(chǎn)品開展基線控制也就顯得尤為重要。在成熟的基線管理工作中,所有并行開展的研發(fā)活動(dòng)都以基線為出發(fā)點(diǎn)和中間落腳點(diǎn),避免了不同設(shè)計(jì)對(duì)象的更改頻繁造成其他設(shè)計(jì)對(duì)象的更改聯(lián)動(dòng),也為團(tuán)隊(duì)整體控制研制節(jié)奏帶來了便利。
復(fù)雜產(chǎn)品配置/構(gòu)型管理中,更改的評(píng)估、落實(shí)以及回歸等工作是配置/構(gòu)型管理的核心之一。通常,更改控制流程中包含問題報(bào)告、更改評(píng)估、更改執(zhí)行以及更改驗(yàn)證等多個(gè)不同的作業(yè)環(huán)節(jié)(ECR/ECN等)。考慮到產(chǎn)品設(shè)計(jì)的復(fù)雜性以及專業(yè)分工和協(xié)作,在民用飛機(jī)更改控制中,更改的評(píng)估和執(zhí)行等環(huán)節(jié),往往還會(huì)涉及到不同父更改和子更改的劃分,通過不同專業(yè)的更改任務(wù)最終落實(shí)對(duì)某一問題的整體修正。
在軟件等復(fù)雜產(chǎn)品設(shè)計(jì)中,更改往往是引入錯(cuò)誤的原因之一。頻繁無(wú)序的更改必將造成軟件產(chǎn)品中錯(cuò)誤百出。在面向商業(yè)化市場(chǎng)的產(chǎn)品研制中,更改往往由某一問題引發(fā),并且需要對(duì)更改的方案結(jié)合更改的潛在影響開展深入的分析。這種分析一般必須依賴研制體系中需求-設(shè)計(jì)-代碼-測(cè)試完整的追溯鏈開展,確保不會(huì)遺留所需評(píng)估的對(duì)象,保證更改不會(huì)造成非預(yù)期的影響。同時(shí),通常配置/構(gòu)型控制委員會(huì)(CCB)會(huì)對(duì)更改請(qǐng)求進(jìn)行評(píng)估。考慮到時(shí)間、成本以及潛在的安全風(fēng)險(xiǎn),并不是每一個(gè)更改請(qǐng)求都將會(huì)得到批準(zhǔn)或者被要求立即實(shí)施。
· 配置/構(gòu)型紀(jì)實(shí)
最后,產(chǎn)品研制以及使用和后續(xù)改進(jìn)的任何階段,研制團(tuán)隊(duì)需要能隨時(shí)掌握和分析設(shè)計(jì)對(duì)象的狀態(tài)和關(guān)系,這就帶來的配置/構(gòu)型紀(jì)實(shí)的要求。要求能夠?qū)θ魏坞A段、任何組成范圍的產(chǎn)品設(shè)計(jì)數(shù)據(jù)進(jìn)行提取和分析,還要能對(duì)數(shù)據(jù)的更改歷史進(jìn)行嚴(yán)密的追蹤。
圖 1 配置/構(gòu)型管理的三個(gè)維度
02
民機(jī)機(jī)載軟件過程標(biāo)準(zhǔn)中
配置管理的要求
機(jī)載軟件研制過程標(biāo)準(zhǔn)RTCA DO-178C第7章,詳細(xì)描述了機(jī)載軟件研制過程中配置/構(gòu)型管理的活動(dòng)、目標(biāo)和相應(yīng)生命周期數(shù)據(jù)。
該過程由軟件構(gòu)型管理計(jì)劃定義,與其它軟件生命周期過程協(xié)同執(zhí)行,其主要功能包括:
·用于在軟件生命周期中提供確定的、可控的軟件構(gòu)型;
·提供可執(zhí)行目標(biāo)代碼的復(fù)制能力,當(dāng)需要檢查和修改時(shí)可快速?gòu)?fù)制;
·在軟件生命周期中提供過程輸入/輸出控制能力,保證過程活動(dòng)的一致性和可重復(fù)性;
·通過控制構(gòu)型項(xiàng)、建立構(gòu)型基礎(chǔ),提供用于走查、狀態(tài)判斷、修改控制的節(jié)點(diǎn);
·提供控制,保證所有問題都被處理,所有修改都被記錄、提交和實(shí)現(xiàn);
·通過控制軟件生命過程的輸出提供軟件的證明;
·輔助判斷軟件產(chǎn)品與需求是否兼容;
·保證構(gòu)型項(xiàng)維護(hù)了加密、恢復(fù)和控制數(shù)據(jù)等;
其中,針對(duì)機(jī)載軟件的構(gòu)型管理活動(dòng),標(biāo)準(zhǔn)中明確定義軟件構(gòu)型管理活動(dòng)包括:
·構(gòu)型標(biāo)識(shí)(7.2.1);
·基線和追蹤(7.2.2);
·問題報(bào)告跟蹤和糾正(7.2.3)
·更改控制(7.2.4)
·更改評(píng)審(7.2.5)
·更改狀態(tài)紀(jì)實(shí)(7.2.6)
·歸檔、檢索和發(fā)布(7.2.7)
同時(shí),秉承民機(jī)機(jī)載軟件標(biāo)準(zhǔn)中,根據(jù)影響和風(fēng)險(xiǎn)來確定管控級(jí)別的思路,對(duì)更改控制分為了CC1和CC2兩個(gè)級(jí)別。其中不同CC級(jí)別對(duì)構(gòu)型管理活動(dòng)的要求不同。CC1類管控要求實(shí)施上述所有構(gòu)型管控活動(dòng),相比之下CC2類管控主要對(duì)數(shù)據(jù)的版本和基本更改進(jìn)行管控。根據(jù)軟件級(jí)別和具體的生命周期數(shù)據(jù),DO-178C標(biāo)準(zhǔn)對(duì)其逐個(gè)進(jìn)行了構(gòu)型管控級(jí)別的要求定義。
圖 2 DO-178C構(gòu)型管控級(jí)別定義
圖 3 DO-178C目標(biāo)矩陣中對(duì)不同級(jí)別軟件中不同生命周期數(shù)據(jù)的構(gòu)型管控級(jí)別要求
03
支持其他研制環(huán)節(jié)的配置管理
軟件配置/構(gòu)型管理本身涉及到不同類型的數(shù)據(jù)特殊的管理方式。比如配置數(shù)據(jù)(在DO-178C中也稱為參數(shù)化數(shù)據(jù)項(xiàng)PDI),其研制過程以及與系統(tǒng)其他部分軟件的集成方式與應(yīng)用軟件差別交大,因此往往需要專門涉及配置/構(gòu)型管理活動(dòng)和要求。
實(shí)際上,軟件的配置/構(gòu)型管理只是飛機(jī)產(chǎn)品以及機(jī)載系統(tǒng)產(chǎn)品配置/構(gòu)型中的一個(gè)組成部分。民機(jī)機(jī)載軟件在飛機(jī)以及系統(tǒng)驗(yàn)證活動(dòng),生產(chǎn)制造活動(dòng)中需要與不同的產(chǎn)品配置/構(gòu)型管理進(jìn)行銜接,因此會(huì)產(chǎn)生不同環(huán)節(jié)中配置管理的不同問題。
筆者始終認(rèn)為,除去機(jī)載軟件開發(fā)技術(shù)以外,考慮到項(xiàng)目的復(fù)雜性以及研制周期和成本的嚴(yán)苛要求。過程管控與配置/構(gòu)型管控,是在民用飛機(jī)機(jī)載軟件中的核心難點(diǎn),也是今后一段時(shí)間國(guó)內(nèi)機(jī)載系統(tǒng)和軟件研制單位需要掌握和攻關(guān)的關(guān)鍵技術(shù)。
審核編輯 黃宇
-
軟件
+關(guān)注
關(guān)注
69文章
4944瀏覽量
87492 -
飛機(jī)
+關(guān)注
關(guān)注
7文章
1169瀏覽量
39624 -
配置管理
+關(guān)注
關(guān)注
0文章
6瀏覽量
6258
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論