童岳威 孫景華 / TONG Yuewei SUN Jinghua(上海飛機(jī)設(shè)計研究院,上海201210)(Shanghai Aircraft Design and Research Institute, Shanghai 201210, China)
民用飛機(jī)主制造商機(jī)載軟件更改策略研究
童岳威 孫景華 / TONG Yuewei SUN Jinghua
(上海飛機(jī)設(shè)計研究院,上海201210)
(Shanghai Aircraft Design and Research Institute, Shanghai 201210, China)
在“主制造商-供應(yīng)商”的飛機(jī)研制體系下,供應(yīng)商負(fù)責(zé)研制機(jī)載軟件并交付給主制造商,主制造商完成系統(tǒng)集成試驗和飛機(jī)級試驗。機(jī)載軟件更改會對主制造商飛機(jī)研制工作產(chǎn)生影響,包括工作量、進(jìn)度、成本等方面。首先識別了機(jī)載軟件更改起因,對不同類別的更改進(jìn)行分類,同時分析了機(jī)載軟件更改對主制造商飛機(jī)研制工作的影響,包括由機(jī)載軟件更改引起的額外工作以及研發(fā)成本,最后從機(jī)載軟件快速轉(zhuǎn)換、軟件加載以及主制造商驗證試驗方面提出了主制造商機(jī)載軟件更改策略,從而降低機(jī)載軟件更改對主制造商飛機(jī)研制活動的不利影響。
機(jī)載軟件更改;增量開發(fā);更改影響分析;更改策略
隨著信息化技術(shù)迅速地發(fā)展,電子計算機(jī)技術(shù)在民用飛機(jī)上的應(yīng)用越來越廣泛,并且由其實現(xiàn)的飛機(jī)系統(tǒng)功能復(fù)雜程度、集成程度越來越高。
機(jī)載軟件實現(xiàn)的功能很復(fù)雜、集成化程度高,它們不僅接收、存儲、處理和輸出大量與飛行安全相關(guān)的重要數(shù)據(jù),還能通過傳遞告警信息輔助飛機(jī)機(jī)組人員進(jìn)行邏輯判斷,引導(dǎo)飛機(jī)進(jìn)入正確的飛行狀態(tài),保證飛機(jī)飛行安全。機(jī)載軟件不僅在系統(tǒng)/設(shè)備上的駐留關(guān)系復(fù)雜,而且它們之間的交聯(lián)關(guān)系也異常復(fù)雜。例如,部分的環(huán)控系統(tǒng)軟件、導(dǎo)航系統(tǒng)軟件、電源系統(tǒng)軟件同時駐留在一個共用的計算機(jī)機(jī)柜中,而其它的機(jī)載軟件仍然駐留在各自系統(tǒng)/設(shè)備當(dāng)中,這種駐留關(guān)系導(dǎo)致機(jī)載軟件與系統(tǒng)/設(shè)備間映射關(guān)系很復(fù)雜。指示記錄系統(tǒng)與全機(jī)大部分系統(tǒng)都存在交聯(lián)關(guān)系,指示記錄系統(tǒng)軟件需要接受和處理來自許多系統(tǒng)的信號,因此,其影響范圍很廣,同時易受到其它系統(tǒng)的影響。
在飛機(jī)研制過程中,機(jī)載軟件更改相較于硬件更為頻繁,特別是全新研制的機(jī)載軟件,通常會存在幾版甚至幾十版機(jī)載軟件迭代過程。雖然機(jī)載軟件由供應(yīng)商承擔(dān)研制任務(wù),但其作為系統(tǒng)組成部分應(yīng)該交付給主制造商,主制造商需要完成系統(tǒng)集成試驗、飛機(jī)級試驗,試驗過程中不可避免會發(fā)現(xiàn)各類問題,其中部分會涉及機(jī)載軟件,需要對其進(jìn)行更改。
本文分析了機(jī)載軟件更改引起的原因及更改對主制造商所產(chǎn)生的影響,并研究了主制造商機(jī)載軟件更改策略。
由于機(jī)載軟件在飛機(jī)上使用廣泛、實現(xiàn)功能復(fù)雜、駐留/交聯(lián)關(guān)系復(fù)雜等原因,機(jī)載軟件在飛機(jī)研制過程中更改頻繁,特別是隨型號批準(zhǔn)的機(jī)載軟件。
在“主制造商-供應(yīng)商”的發(fā)展模式[1]下,不論是適航當(dāng)局、主制造商或供應(yīng)商提出的機(jī)載軟件更改,最終都由供應(yīng)商來實現(xiàn)。雖然主制造商不具體負(fù)責(zé)機(jī)載軟件開發(fā)以及更改任務(wù),但還是需要控制機(jī)載軟件更改,確保機(jī)載軟件更改對主制造商飛機(jī)研制工作的影響在可接受范圍之內(nèi)。
機(jī)載軟件更改實現(xiàn)過程如圖1所示,機(jī)載軟件更改實現(xiàn)過程以及驗證過程應(yīng)該嚴(yán)格遵循RTCA/DO-178B[2]的要求,所有生命周期數(shù)據(jù)都應(yīng)該符合相應(yīng)控制類別。
供應(yīng)商從向主制造商交付第一版機(jī)載軟件直到機(jī)載軟件構(gòu)型凍結(jié),機(jī)載軟件會存在多個版本的迭代過程。對于成熟產(chǎn)品,例如先前型號上獲得過局方批準(zhǔn)的產(chǎn)品或者TSOA產(chǎn)品,其所含機(jī)載軟件版本迭代次數(shù)可能相對較少;對于隨機(jī)新研產(chǎn)品,其所含機(jī)載軟件迭代次數(shù)相對較多,可能存在十幾版甚至于幾十版迭代過程。引起機(jī)載軟件更改的原因多種多樣,下面從主制造商的角度對機(jī)載軟件更改原因進(jìn)行分析。
2.1 機(jī)載軟件增量式開發(fā)
供應(yīng)商最初向主制造商交付的機(jī)載軟件可能并不是全功能版軟件,根據(jù)飛機(jī)項目階段劃分,供應(yīng)商可能分階段實現(xiàn)機(jī)載軟件功能[3]。通常,主制造商會在和供應(yīng)商簽訂的合同中定義機(jī)載軟件交付節(jié)點,包括主制造商試驗室試驗、機(jī)上地面試驗、首飛、TIA、TC等節(jié)點。例如,主制造商會定義供應(yīng)商向其交付的首版軟件用于主制造商試驗室試驗,應(yīng)實現(xiàn)哪些功能,此時交付的機(jī)載軟件可能只實現(xiàn)了30%左右的預(yù)期功能;同理,主制造商也會在合同中定義供應(yīng)商向主制造商交付的用于地面試驗、首飛、TIA及TC的機(jī)載軟件分別應(yīng)該實現(xiàn)哪些功能。
2.2 飛機(jī)級/系統(tǒng)級的需求更改
如果飛機(jī)級/系統(tǒng)級的需求發(fā)生了更改,這可能會引起機(jī)載軟件需求更改,從而導(dǎo)致機(jī)載軟件更改。從飛機(jī)級需求向軟件級需求分解的過程如圖2所示。雖然主制造商并不期望發(fā)生飛機(jī)級/系統(tǒng)級的需求變更,或者說這并非是完美的飛機(jī)研制過程,但在實際的飛機(jī)研制過程中總會發(fā)生這種情況。
2.3 系統(tǒng)ICD發(fā)生更改
如果在飛機(jī)研制過程中發(fā)生系統(tǒng)ICD更改,這可能會引起機(jī)載軟件輸入/輸出發(fā)生更改,導(dǎo)致機(jī)載軟件更改。例如,某個機(jī)載系統(tǒng)需要通過獲得其他系統(tǒng)發(fā)送過來的信號來判斷飛機(jī)狀態(tài),確定飛機(jī)在地面上還是在空中,原先設(shè)計由起落架系統(tǒng)發(fā)送WOW信號來判定,更改后的設(shè)計要求除了WOW信號外,大氣數(shù)據(jù)系統(tǒng)應(yīng)發(fā)送空速信號,根據(jù)WOW信號和空速信號來判斷飛機(jī)狀態(tài),這樣此機(jī)載系統(tǒng)ICD發(fā)生了更改,增加了與大氣數(shù)據(jù)系統(tǒng)的信號傳遞,因此機(jī)載軟件輸入信號發(fā)生了變化,需要更改機(jī)載軟件以滿足系統(tǒng)ICD更改。隨著飛機(jī)研制進(jìn)度推進(jìn),系統(tǒng)ICD會變得越來越穩(wěn)定,由此引起的機(jī)載軟件更改會變得越來越少。
2.4 試驗過程中發(fā)現(xiàn)機(jī)載軟件錯誤
主制造商在接收到供應(yīng)商交付的機(jī)載軟件后,需要完成系統(tǒng)集成試驗以及飛機(jī)級試驗。如果主制造商在試驗過程中發(fā)現(xiàn)問題,并分析確定為機(jī)載軟件相關(guān)問題,那應(yīng)要求供應(yīng)商根據(jù)發(fā)現(xiàn)的問題更改機(jī)載軟件,詳細(xì)過程如圖3所示。由此原因而引起機(jī)載軟件更改的頻度最高,這是因為機(jī)載軟件實現(xiàn)的功能非常復(fù)雜,而且各系統(tǒng)間的交聯(lián)關(guān)系也很復(fù)雜,機(jī)載軟件更改不僅影響到本系統(tǒng)功能實現(xiàn),同時也會影響到與其交聯(lián)的系統(tǒng)。
機(jī)載軟件實現(xiàn)了飛機(jī)系統(tǒng)的許多重要功能,包括信號處理、系統(tǒng)控制、機(jī)組告警、系統(tǒng)維護(hù)等功能,機(jī)載軟件更改必然給主制造商飛機(jī)研制工作帶來影響,可以從以下幾個方面考慮機(jī)載軟件更改對主制造商的影響。
3.1 機(jī)載軟件加載
機(jī)載軟件根據(jù)機(jī)載方式可分為返廠加載和現(xiàn)場加載兩類:
1)返廠加載機(jī)載軟件
由于主制造商處沒有機(jī)載軟件加載環(huán)境,需要將機(jī)載軟件所駐留的設(shè)備退返到供應(yīng)商處,供應(yīng)商完成內(nèi)部機(jī)載軟件更改,并通過試驗驗證后,將更改后的機(jī)載軟件加載到設(shè)備中,然后將設(shè)備連同機(jī)載軟件重新交付給主制造商。根據(jù)供應(yīng)商所在地不同,機(jī)載軟件返廠加載時間相差較大,從幾個星期到幾個月不等。對于國內(nèi)供應(yīng)商,由于設(shè)備不需要經(jīng)過海關(guān),通常返廠加載流程可以在幾個星期內(nèi)完成;對于國外供應(yīng)商,則通常需要幾個月的時間。
2)現(xiàn)場加載機(jī)載軟件
這類機(jī)載軟件可以在主制造商現(xiàn)場執(zhí)行加載過程,將機(jī)載軟件交付給主制造商,主制造商或供應(yīng)商按照加載流程將機(jī)載軟件加載到設(shè)備中[4]。主制造商應(yīng)該制定機(jī)載軟件加載控制程序,使得機(jī)載軟件構(gòu)型受控。對于現(xiàn)場可加載機(jī)載軟件,由于不存在設(shè)備退返流程,因此相較于返廠加載機(jī)載軟件會節(jié)省很多時間。
3.2 主制造商驗證試驗
主制造商雖然不直接參與機(jī)載軟件研制過程,但需要基于供應(yīng)商交付的機(jī)載軟件及系統(tǒng)設(shè)備完成各類系統(tǒng)集成試驗以及飛機(jī)級試驗。如果機(jī)載軟件發(fā)生更改,可能會影響主制造商已完成的系統(tǒng)集成試驗、飛機(jī)級驗證試驗結(jié)論的有效性。由于機(jī)載軟件更改后,與前版機(jī)載軟件存在構(gòu)型差異,勢必影響基于前版機(jī)載軟件完成的驗證試驗結(jié)論的有效性。
3.3 飛機(jī)研制進(jìn)度
機(jī)載軟件更改由供應(yīng)商實現(xiàn),供應(yīng)商更改機(jī)載軟件需要嚴(yán)格遵循其定義符合RTCA/DO-178B/C的機(jī)載軟件開發(fā)流程,并完成內(nèi)部驗證試驗,確定無重大問題后方可發(fā)起交付流程。供應(yīng)商從確定需要更改機(jī)載軟件到向主制造商交付機(jī)載軟件需要很長一段時間,譬如等級高、功能復(fù)雜的機(jī)載軟件可能需要半年以上的周期。由于機(jī)載軟件更改周期通常都很長,因此它對飛機(jī)研制進(jìn)度有很大的影響。在飛機(jī)研制過程中,經(jīng)常會由于某個機(jī)載軟件更改遲遲沒有完成,拖后飛機(jī)研制進(jìn)度。
3.4 飛機(jī)研制成本
由于機(jī)載軟件開發(fā)過程嚴(yán)格按照RTCA/DO-178B/C進(jìn)行開發(fā),和商用軟件相比,其過程控制非常嚴(yán)格,因此機(jī)載軟件開發(fā)周期很長、成本也非常高。即使只更改一行機(jī)載軟件源代碼,其更改成本也非常高,它需要分析需求、設(shè)計、測試用例和程序更改范圍,需要重做軟件回歸驗證工作,軟件生命周期數(shù)據(jù)更新,軟件交付/加載,主制造商補(bǔ)充試驗等。
在上一節(jié)中分析了機(jī)載軟件更改對主制造商飛機(jī)研制工作的影響,發(fā)現(xiàn)機(jī)載軟件更改不僅影響供應(yīng)商機(jī)載軟件研制工作,同時也對主制造商飛機(jī)研制工作有重大影響,本節(jié)將研究主制造商應(yīng)對機(jī)載軟件更改的策略。
4.1 機(jī)載軟件快速轉(zhuǎn)換
因主制造商要求供應(yīng)商在完成機(jī)載軟件更改后,必須先完成內(nèi)部驗證試驗,確定無重大問題后方可發(fā)起機(jī)載軟件交付流程,所以機(jī)載軟件更改周期通常都很長,使得飛機(jī)研制進(jìn)度延遲。
為了縮短機(jī)載軟件更改周期,減小軟件更改周期對飛機(jī)研制進(jìn)度的影響,主制造商可以對不同用途、不同等級的機(jī)載軟件進(jìn)行分類,對每種類型的機(jī)載軟件區(qū)別對待。
根據(jù)機(jī)載軟件的用途可以將其分為以下幾類。
機(jī)載軟件類別1:在項目早期用于確定系統(tǒng)設(shè)計合理性的快速原型機(jī)載軟件;
機(jī)載軟件類別2:用于系統(tǒng)交聯(lián)試驗的機(jī)載軟件、用于機(jī)上快速退返試驗的機(jī)載軟件;
機(jī)載軟件類別3:用于試驗室試驗和機(jī)上地面試驗的機(jī)載軟件;
機(jī)載軟件類別4:用于飛行試驗的機(jī)載軟件。
對于不同類別的機(jī)載軟件,在向主制造商交付之前,供應(yīng)商需要完成的驗證試驗工作可以有所區(qū)別。同時,考慮到不同等級機(jī)載軟件對系統(tǒng)和飛機(jī)產(chǎn)生的安全性影響不一樣,對級別較低的機(jī)載軟件可以適當(dāng)降低要求。對不同類別、不同等級的機(jī)載軟件在其交付前,供應(yīng)商應(yīng)完成的試驗驗證工作可參見表1。這可大量減少供應(yīng)商工作量,加速機(jī)載軟件更改進(jìn)程,縮短機(jī)載軟件更改周期。
表1 不同類別、等級機(jī)載軟件應(yīng)完成的供應(yīng)商驗證試驗工作
注:同一級別機(jī)載軟件,類別1~5的要求為增量式要求。譬如,A級別、類別3機(jī)載軟件需要完成需求和設(shè)計評審、代碼評審、基于需求的測試。
4.2 減少對機(jī)載軟件加載的影響
通過分析發(fā)現(xiàn),可以從優(yōu)化加載流程和主制造商對機(jī)載軟件加載方式規(guī)劃方面來減少機(jī)載軟件更改對機(jī)載軟件加載的影響。
4.2.1 機(jī)載軟件快速加載流程
對于現(xiàn)場可加載軟件,如果僅用于確定系統(tǒng)設(shè)計合理性、系統(tǒng)交聯(lián)試驗、機(jī)上快速退返試驗,可以簡化這類機(jī)載軟件的加載流程,稱為機(jī)載軟件快速加載流程。由于這類試驗為非工程研發(fā)、適航驗證類試驗,因此不會對飛機(jī)安全性產(chǎn)生影響。通過簡化機(jī)載軟件加載申請和確認(rèn)流程,可以加速加載過程,這對于任務(wù)節(jié)點緊、需要快速開展試驗的機(jī)載軟件特別重要。
4.2.2 機(jī)載軟件加載方式規(guī)劃
由于機(jī)載軟件更改相當(dāng)頻繁,特別是新研設(shè)備所含的機(jī)載軟件。為了避免由于設(shè)備退返而導(dǎo)致研制周期過度拉長,主制造商可以站在全機(jī)角度將機(jī)載軟件進(jìn)行分類,規(guī)定每類設(shè)備所含機(jī)載軟件的加載方式。從機(jī)載軟件更改頻度來分,TSOA設(shè)備所含機(jī)載軟件、先前開發(fā)機(jī)載軟件的更改量較少甚至無更改,隨機(jī)新研設(shè)備所含機(jī)載軟件更改較多,部分機(jī)載軟件甚至迭代幾十個版本之多。
為了縮短機(jī)載軟件加載周期,避免由于設(shè)備返廠影響飛機(jī)研制進(jìn)度,主制造商對機(jī)載軟件加載方式的規(guī)劃如表2所示,應(yīng)該避免在飛機(jī)驗證試驗階段出現(xiàn)隨機(jī)新研設(shè)備所含機(jī)載軟件必須返廠加載的情況。
表2 機(jī)載軟件加載方式的規(guī)劃
4.3 主制造商驗證試驗
主制造商在接收到供應(yīng)商交付的機(jī)載軟件后,首先需要分析與前版機(jī)載軟件的構(gòu)型差異,確定更改影響范圍。通過對機(jī)載軟件的構(gòu)型差異分析,確定機(jī)載軟件更改對主制造商已完成的驗證試驗結(jié)論有效性的影響、對相關(guān)系統(tǒng)已完成的驗證試驗結(jié)論有效性的影響,根據(jù)影響范圍確定需要重做哪些驗證試驗,評估過程如圖4所示。
通過分析機(jī)載軟件更改對先前已完成的試驗驗證結(jié)論有效性評估活動,主制造商可以避免重復(fù)驗證試驗工作,節(jié)約主制造商的人力和物力成本,加速推進(jìn)驗證試驗進(jìn)度。
本文介紹了在“主制造商-供應(yīng)商”模式下機(jī)載軟件更改過程,并分析了機(jī)載軟件更改原因以及更改對主制造商的影響,并研究了主制造商機(jī)載軟件更改策略。通過分析機(jī)載軟件更改原因、更改的影響、以及對主制造商機(jī)載軟件更改策略進(jìn)行研究,可以識別出引起機(jī)載軟件更改的不同類別的原因,對主制造商產(chǎn)生的影響范圍,如何降低這些不利影響,最終盡可能降低由于機(jī)載軟件更改對主制造商飛機(jī)研制的不利影響。
[1] 姚雄華. 基于“主-供”模式的我國民機(jī)產(chǎn)業(yè)發(fā)展問題分析及對策建議[J]. 航空制造技術(shù),2010,3:76-81.
[2] RTCA. DO-178B Software considerations in airborne systems and equipment certification[S]. Washington DC, 1992.
[3] 程成. 軟件工程[M]. 北京:機(jī)械工業(yè)出版社,2011.
[4] FAA. Order 811.49Chg1 Software Approval Guidelines[S]. Washington DC, 2011-9.
Research on Airborne Software Change Strategies for Civil Aircraft Manufacturer
Under the “OEM-Supplier” aircraft research and development structure, suppliers are responsible for developing airborne software and delivering to the OEM for system integration tests and aircraft tests. The airborne software change could impact on the OEM aircraft research and development, including workload, schedule and cost. This paper firstly identifies the causes of software changes, and classifies them into different categories. The airborne software change impact on the OEM is analyzed including the additional work and cost. Then this paper proposes the OEM airborne software change strategies from the aspects of airborne software quick-return, software loading and the OEM tests, in order to alleviate the adverse impact of airborne software change on the OEM aircraft research and development.
airborne software change; incremental development; change impact analysis; change strategy
10.19416/j.cnki.1674-9804.2017.02.015
V24
A
童岳威 男,碩士,高工。主要研究方向:機(jī)載軟件與電子硬件技術(shù);E-mail: tongyuewei@comac.cc
孫景華 女,碩士,高工。主要研究方向:機(jī)載軟件與電子硬件技術(shù);E-mail: sunjinghua@comac.cc