張 航 曹睿婷 楊帆 楊宏
(中航工業(yè)自控所,陜西 西安 710065)
民機(jī)機(jī)載軟硬件過(guò)程對(duì)比分析及系統(tǒng)設(shè)計(jì)思考
張 航 曹睿婷 楊帆 楊宏
(中航工業(yè)自控所,陜西 西安 710065)
從標(biāo)準(zhǔn)本身出發(fā),選取重點(diǎn)過(guò)程,橫向比較DO-178B和DO-254 兩份標(biāo)準(zhǔn)在設(shè)計(jì)保證等級(jí)C級(jí)層面的主要差異點(diǎn),并對(duì)兩份標(biāo)準(zhǔn)中的重點(diǎn)差異方面進(jìn)行分析,最后提出了系統(tǒng)總體設(shè)計(jì)時(shí)應(yīng)考慮的方面。
民機(jī);機(jī)載軟硬件;DO-178B;DO-254
近年來(lái),隨著可編程邏輯器件等硬件技術(shù)的不斷發(fā)展,在開(kāi)發(fā)成本和研發(fā)周期的優(yōu)勢(shì)下,硬件技術(shù)越來(lái)越多地應(yīng)用于機(jī)載系統(tǒng)的開(kāi)發(fā)中。例如,波音公司在B787飛機(jī)設(shè)計(jì)中,將飛控系統(tǒng)伺服監(jiān)控的部分功能放在了遠(yuǎn)程電子單元REU的硬件FPGA中進(jìn)行實(shí)現(xiàn)。
其實(shí),上述實(shí)例中將軟件功能通過(guò)硬件邏輯器件實(shí)現(xiàn)的現(xiàn)象,實(shí)際上是由于民機(jī)軟硬件的研制指南DO-178B《機(jī)載系統(tǒng)設(shè)備適航審定的軟件考慮》(以下簡(jiǎn)稱(chēng)DO-178B)和DO-254《機(jī)載復(fù)雜硬件設(shè)計(jì)保證指南》(以下簡(jiǎn)稱(chēng)DO-254)中的要求不一致所造成的,并且已經(jīng)引起了多方的關(guān)注。Honeywell公司早在2001年DO-254頒布不久,就已經(jīng)組織相關(guān)軟硬件專(zhuān)家對(duì)DO-178B和DO-254 執(zhí)行過(guò)程中的不一致進(jìn)行分析,并已經(jīng)指導(dǎo)系統(tǒng)工程師應(yīng)用于后續(xù)的系統(tǒng)架構(gòu)設(shè)計(jì)中。同時(shí),歐洲適航局EASA近年來(lái)也收到了很多公司和個(gè)人有關(guān)DO-178B應(yīng)用的咨詢(xún),其中相當(dāng)大一部分是咨詢(xún)有關(guān)軟件開(kāi)發(fā)指南DO-178B和硬件開(kāi)發(fā)指南DO-254相關(guān)要求不一致的問(wèn)題。
在EASA網(wǎng)站公布的問(wèn)題答疑文件中,“Koch AvionicCert”公司曾咨詢(xún):“DO-178B和DO-254工具鑒定的要求不一致。DO-254的 D級(jí)硬件沒(méi)有工具鑒定的要求?;诎踩缘目紤],這些差異很難以理解。”就此問(wèn)題,EASA答復(fù):“EASA已經(jīng)注意到這些相關(guān)的問(wèn)題,EASA目前并無(wú)意愿去更改相關(guān)指南?!?/p>
在上述背景下,近期EASA也委托AIS宇航國(guó)際服務(wù)公司,對(duì)上述問(wèn)題進(jìn)行分析。從標(biāo)準(zhǔn)層面研究能否通過(guò)將部分軟件功能在硬件平臺(tái)上實(shí)現(xiàn),也就是使用DO-254的審查方法來(lái)替換DO-178B,可以實(shí)現(xiàn)審查工作量的減少。
1.1 DO-178B概述
DO-178B的目的是為機(jī)載系統(tǒng)和設(shè)備的軟件制造提供指南。上述指南以下列形式存在:
● 軟件生命周期活動(dòng)的目標(biāo);
● 為了滿(mǎn)足這些目標(biāo)而產(chǎn)生的一系列活動(dòng)的描述和設(shè)計(jì)考慮;
● 目標(biāo)被滿(mǎn)足的證據(jù)的描述。
DO-178B包含了下列6個(gè)生命周期過(guò)程,具體如下。
● 軟件計(jì)劃過(guò)程:涵蓋軟件合格審定方面和開(kāi)發(fā)/驗(yàn)證/構(gòu)型管理/質(zhì)量保證的計(jì)劃;
● 軟件開(kāi)發(fā)過(guò)程:涵蓋需求、設(shè)計(jì)、編碼和集成部分;
● 軟件驗(yàn)證過(guò)程:將驗(yàn)證作為評(píng)審、分析和測(cè)試的組合;
● 軟件構(gòu)型管理過(guò)程:涵蓋構(gòu)型項(xiàng)的辨識(shí),基線(xiàn)和追溯性的建立,問(wèn)題報(bào)告和更改評(píng)審的完成,軟件歸檔和軟件環(huán)境管理;
● 軟件質(zhì)量保證過(guò)程:確保在生命周期過(guò)程中沒(méi)有偏離;
● 適航聯(lián)絡(luò)過(guò)程:在整個(gè)軟件生存周期中在申請(qǐng)人和審定機(jī)構(gòu)之間建立通信和相互了解,以促進(jìn)合格審定過(guò)程。
1.2 DO-254概述
DO-254為復(fù)雜電子硬件的生產(chǎn)制造提供指南,目的是在滿(mǎn)足適航要求的基礎(chǔ)上交付一定置信度等級(jí)的復(fù)雜電子硬件產(chǎn)品。該指南由硬件生命周期過(guò)程的目標(biāo),設(shè)計(jì)考慮和滿(mǎn)足該目標(biāo)的活動(dòng)描述,以及滿(mǎn)足上述目標(biāo)的證據(jù)描述組成。
DO-254適用但不局限于下列硬件:現(xiàn)場(chǎng)可更換單元(LRUs)、電路板組件、通用微代碼部件、集成元器件和貨架產(chǎn)品部件。
DO-254的組成與DO-178B類(lèi)似,也包含了類(lèi)似DO-178B的6個(gè)生命周期過(guò)程。
2.1 總體比較
從總體上來(lái)分析,兩份標(biāo)準(zhǔn)都包含了3類(lèi)基本的過(guò)程:計(jì)劃過(guò)程、開(kāi)發(fā)過(guò)程和支持過(guò)程(包含驗(yàn)證,構(gòu)型管理,質(zhì)量保證和適航聯(lián)絡(luò)過(guò)程)。兩份標(biāo)準(zhǔn)的主要共性如下:
● 詳細(xì)的計(jì)劃過(guò)程;
● 都具有5種不同的開(kāi)發(fā)等級(jí);
● 追溯到詳細(xì)的上級(jí)需求;
● 全面覆蓋的測(cè)試要求;
● “由不符合到符合”的審查。
其主要不同之處體現(xiàn)在適用范圍上,DO-178B的對(duì)象為機(jī)載設(shè)備CPU中運(yùn)行的軟件程序,而DO-254面向硬件可編程邏輯器件(如PLD、ASIC、FPGA)上的硬件語(yǔ)言。
DO-178B與DO-254類(lèi)似,均是“目標(biāo)”引導(dǎo)的指南性標(biāo)準(zhǔn)規(guī)范。對(duì)于兩份標(biāo)準(zhǔn)來(lái)說(shuō),“目標(biāo)”比“方法”更本質(zhì)、更穩(wěn)定。達(dá)成目標(biāo)的方法可能會(huì)不盡相同,但是目標(biāo)本身是不會(huì)改變的。因此,兩標(biāo)準(zhǔn)強(qiáng)調(diào)的是一種目標(biāo)導(dǎo)向的做法。
● 要求給出明確的功能和性能目標(biāo);
● 要求給出驗(yàn)證這些目標(biāo)的方式;
● 要求給出達(dá)成目標(biāo)的指標(biāo)及證明。
2.2 差異性分析
為了更深入地比較兩份標(biāo)準(zhǔn)的差異,這里將主要以設(shè)計(jì)保證等級(jí)C級(jí)的軟件和硬件生命周期過(guò)程為出發(fā)點(diǎn),從計(jì)劃過(guò)程、開(kāi)發(fā)過(guò)程、驗(yàn)證過(guò)程、構(gòu)型管理4個(gè)主要方面進(jìn)行比較和分析。
2.2.1 計(jì)劃過(guò)程差異
計(jì)劃過(guò)程的主要目的是定義滿(mǎn)足系統(tǒng)需求和相關(guān)適航要求的軟件/硬件實(shí)現(xiàn)途徑。
表1將C級(jí)軟硬件計(jì)劃過(guò)程目標(biāo)進(jìn)行對(duì)比,從過(guò)程目標(biāo)數(shù)量分析,C級(jí)軟件計(jì)劃過(guò)程要求比硬件計(jì)劃過(guò)程嚴(yán)格,增加了兩個(gè)過(guò)程目標(biāo),同時(shí)還要求定義過(guò)程的轉(zhuǎn)換標(biāo)準(zhǔn)、內(nèi)部關(guān)系和過(guò)程順序。
表2將C級(jí)軟硬件計(jì)劃過(guò)程的交付物進(jìn)行對(duì)比,可看出硬件過(guò)程比軟件過(guò)程增加“硬件確認(rèn)計(jì)劃”,其主要規(guī)劃了硬件級(jí)衍生需求的確認(rèn)活動(dòng)。C級(jí)軟件過(guò)程較之硬件過(guò)程還要求編制質(zhì)量保證計(jì)劃和軟件需求、設(shè)計(jì)和編碼標(biāo)準(zhǔn)。
2.2.2 開(kāi)發(fā)過(guò)程對(duì)比
開(kāi)發(fā)過(guò)程的主要目的是開(kāi)發(fā)滿(mǎn)足系統(tǒng)相關(guān)需求的軟件/硬件部件。
表2同時(shí)將C級(jí)軟硬件開(kāi)發(fā)過(guò)程交付物進(jìn)行對(duì)比,可以看出C級(jí)軟件過(guò)程要求比硬件嚴(yán)格,除了各自的需求文檔,軟件開(kāi)發(fā)過(guò)程還需要生成設(shè)計(jì)描述、源代碼和可執(zhí)行目標(biāo)代碼,且后兩份交付物還是1級(jí)控制類(lèi)別(更加復(fù)雜的構(gòu)型管理過(guò)程)。
2.2.3 驗(yàn)證過(guò)程對(duì)比
驗(yàn)證過(guò)程的主要目的是確保軟硬件部件滿(mǎn)足相關(guān)設(shè)計(jì)需求和已生成的驗(yàn)證計(jì)劃。
將C級(jí)軟硬件驗(yàn)證過(guò)程的目標(biāo)數(shù)量進(jìn)行對(duì)比,得到圖1。
圖1 C級(jí)軟硬件驗(yàn)證過(guò)程的目標(biāo)對(duì)比
從過(guò)程目標(biāo)角度分析,C級(jí)軟件驗(yàn)證過(guò)程目標(biāo)數(shù)量與硬件過(guò)程對(duì)比差別懸殊,這主要是由于DO-178B將軟件的驗(yàn)證過(guò)程分配到了軟件設(shè)計(jì)的4個(gè)子過(guò)程(需求、設(shè)計(jì)、編碼、集成)。除此之外,DO-178B對(duì)于驗(yàn)證過(guò)程本身也提出了具體要求。
以DO-178B中對(duì)于測(cè)試覆蓋率的要求為例進(jìn)行詳述,測(cè)試覆蓋率需滿(mǎn)足表3中的具體要求。
(1)D級(jí)軟件測(cè)試要求:需求覆蓋
對(duì)于D級(jí)軟件測(cè)試來(lái)說(shuō),需要保證測(cè)試基礎(chǔ)與測(cè)試用例間的追溯性,也就是需要確認(rèn)測(cè)試用例100%的覆蓋到設(shè)計(jì)需求。
(2)C級(jí)軟件測(cè)試要求:語(yǔ)句覆蓋
表1 C級(jí)軟硬件計(jì)劃過(guò)程目標(biāo)對(duì)比
表2 C級(jí)軟硬件計(jì)劃過(guò)程、開(kāi)發(fā)過(guò)程交付物對(duì)比
表3 DO-178B中對(duì)于測(cè)試覆蓋率的要求
對(duì)于C級(jí)軟件測(cè)試來(lái)說(shuō),需要達(dá)到100%的語(yǔ)句覆蓋的要求。以圖2左半部分的程序?yàn)槔?,如果把每一行語(yǔ)句作為一個(gè)節(jié)點(diǎn),可以生成中間部分的程序流程圖,要達(dá)到100%的語(yǔ)句覆蓋,至少需要圖中右下角的兩條語(yǔ)句。
圖2 語(yǔ)句覆蓋的要求
(3)B級(jí)軟件測(cè)試要求:判定覆蓋的要求
對(duì)于B級(jí)軟件測(cè)試來(lái)說(shuō),需要達(dá)到100%的判定覆蓋的要求(Decision Coverage)。判定覆蓋是指測(cè)試需要覆蓋所有可能的輸出結(jié)果,也就是true (value 1) 或false (value 0)。如果以一條簡(jiǎn)單的邏輯(A and(B or C))為例,則需要生成如表4的兩條用例,才能滿(mǎn)足B級(jí)軟件判定覆蓋的要求。
(4)A級(jí)軟件測(cè)試要求:修改條件/判定覆蓋 MC/DC
對(duì)于A(yíng)級(jí)軟件測(cè)試來(lái)說(shuō),需要達(dá)到100%的修改條件/判定覆蓋的要求(Modified Condition / Decision Coverage)。判定覆蓋是指一個(gè)程序中,一種輸入輸出至少出現(xiàn)一次,在程序中每一個(gè)條件必須產(chǎn)生所有可能的輸出結(jié)果至少一次,并且每一個(gè)判定中的每一個(gè)條件必須能夠獨(dú)立影響一個(gè)判定的輸出,即在其他條件不變的前提下僅改變這個(gè)條件的值,而使判定結(jié)果改變。如果以相同的邏輯(A and(B or C))為例,則需要生成如表5的6條用例,才能滿(mǎn)足A級(jí)軟件判定覆蓋的要求。
表4 判定覆蓋DC的覆蓋率要求
然而從DO-254中可以看到,硬件語(yǔ)言還沒(méi)有形成上述具體分級(jí)別的驗(yàn)證覆蓋率要求,在許多情況下,它取決于DER(委任工程代表)或者認(rèn)證機(jī)構(gòu)來(lái)決定。目前通常要求需求覆蓋和語(yǔ)句覆蓋,偶有特別要求做到了判定覆蓋。但是,軟件和硬件語(yǔ)言是明顯不同的,其覆蓋率機(jī)制和指標(biāo)也是不盡相同的。
表5 MC/DC的覆蓋率要求
2.2.4 構(gòu)型管理過(guò)程對(duì)比
構(gòu)型管理過(guò)程的主要目的是確保構(gòu)型項(xiàng)的更改和管理始終在受控制的狀態(tài)。DO-178B和DO-254規(guī)定了兩種構(gòu)型管理狀態(tài):1級(jí)構(gòu)型管理(CC1/ HC1)和2級(jí)構(gòu)型管理(CC2/HC2),其中1級(jí)構(gòu)型管理主要針對(duì)受控嚴(yán)格的重要文件,較為復(fù)雜。與DO-178B相比,DO-254中的1級(jí)構(gòu)型管理活動(dòng)缺少“更改評(píng)估”和“構(gòu)型狀態(tài)記錄”兩個(gè)活動(dòng)。
更改評(píng)估的主要目標(biāo)是確保所有的問(wèn)題和更改均已被評(píng)估、批準(zhǔn)或否決。批準(zhǔn)的更改確保執(zhí)行,且通過(guò)問(wèn)題報(bào)告和相關(guān)更改控制方法報(bào)告受影響的相關(guān)過(guò)程。構(gòu)型狀態(tài)記錄的主要目標(biāo)是為構(gòu)型管理活動(dòng)提供關(guān)于構(gòu)型辨識(shí)、基線(xiàn)、問(wèn)題報(bào)告、更改歷史和更改控制的數(shù)據(jù)。
2.2.5 C級(jí)軟硬件總體過(guò)程對(duì)比
“目標(biāo)”是DO-178B和DO-254的基礎(chǔ),是必須滿(mǎn)足的最低要求。將C級(jí)的軟硬件過(guò)程目標(biāo)數(shù)量進(jìn)行對(duì)比分析,可得表6。
表6 C級(jí)軟硬件生命周期過(guò)程目標(biāo)數(shù)量
從表中可以看到,C級(jí)軟件的總體目標(biāo)數(shù)量為55個(gè),C級(jí)硬件目標(biāo)數(shù)量為31個(gè),同時(shí)可以看出,C級(jí)軟件質(zhì)量保證過(guò)程的兩個(gè)目標(biāo)還需要進(jìn)行獨(dú)立驗(yàn)證。
經(jīng)過(guò)上述針對(duì)DO-178B和DO-254的對(duì)比可以發(fā)現(xiàn),民機(jī)機(jī)載軟硬件研制過(guò)程在以下幾個(gè)方面要求有較大的差異。
過(guò)程目標(biāo)數(shù)量及要求;
交付物數(shù)量;
驗(yàn)證過(guò)程要求及復(fù)雜程度;
1級(jí)構(gòu)型管理活動(dòng)。
基于上述差異,建議系統(tǒng)工程師在系統(tǒng)總體設(shè)計(jì)過(guò)程中,尤其是架構(gòu)分配時(shí)考慮如下原則:
同等條件,硬件優(yōu)先。
在民機(jī)系統(tǒng)設(shè)計(jì)中,在可行性相同的條件下,對(duì)于成熟的功能模塊,盡量采用硬件實(shí)現(xiàn)。
復(fù)雜功能,軟件復(fù)用。
盡量復(fù)用已經(jīng)成熟的、經(jīng)適航驗(yàn)證和審核過(guò)的模塊,可大大減少開(kāi)發(fā)、驗(yàn)證、適航認(rèn)證的成本。
新研功能,模塊劃分。
對(duì)于復(fù)雜系統(tǒng)功能設(shè)計(jì)必須采用軟件實(shí)現(xiàn)時(shí),應(yīng)充分考慮今后的可復(fù)用性,從系統(tǒng)級(jí)就應(yīng)開(kāi)始考慮軟件的模塊化設(shè)計(jì)。成熟模塊可復(fù)用至后續(xù)型號(hào),減少開(kāi)發(fā)和適航成本,同時(shí)將相同設(shè)計(jì)保證等級(jí)的軟件模塊一同處理考慮,避免了驗(yàn)證和認(rèn)證的復(fù)雜性。
[1] DO-178B. Software Considerations in Airborne Systems and Equipment Certification [S]. Washington, D. C: RTCA. Issued 12-1-92.
[2] DO-254. Design Assurance Guidance for Airborne Electronic Hardware [S]. Washington, D. C.: RTCA. Issued 4-19-00.
[3] EASA. FAQS file for the software certification standard [DB/OL]. CM-SWCEH-002 Issue 1 – Software Aspects of Certification – Comment Response Document. http://www.easa.eu.int/.
[4] DO-178B / DO-254 deliverables templates content summary [DB/OL]. http://www.faaconsultants. com/.
(編輯:雨晴)
V271
C
1003–6660(2014)04–0053–04
10.13237/j.cnki.asq.2014.04.014
[收修訂稿日期] 2014-04-02