許多開發(fā)航空電子軟件的組織仍然受到糟糕的驗證實踐的困擾。某些驗證技術(shù)可以使那些通過避免缺陷的策略使那些尋求遵守航空電子認(rèn)證標(biāo)準(zhǔn)的人受益。
航空電子標(biāo)準(zhǔn)鼓勵采用結(jié)構(gòu)化的軟件開發(fā)方法,但許多組織并沒有很好地執(zhí)行這一點。在許多情況下,軟件團(tuán)隊面臨著開始編碼以滿足緊迫的時間框架的壓力,因此沒有完全分析和定義軟件需求和設(shè)計,跳過單元測試,并在大量軟件上進(jìn)行測試。然后,向外部公司支付費用,以根據(jù)最終軟件為審批過程生成文檔和單元測試。即使開發(fā)符合DO-178B或DO-178C等標(biāo)準(zhǔn),也會出現(xiàn)這種情況。
最后,這種方法可能會發(fā)現(xiàn)許多缺陷,但它通常不是那么有效 - 交付的軟件具有高于預(yù)期的殘余缺陷數(shù)。在測試過程中不可避免地會發(fā)現(xiàn)初始需求規(guī)范和軟件設(shè)計的問題;在測試過程中發(fā)現(xiàn)的大量缺陷可能意味著軟件集成階段需要比預(yù)期長三到四倍的時間,或者整個項目必須報廢并重新開始。所有這些都意味著開發(fā)成本遠(yuǎn)高于預(yù)期,軟件質(zhì)量低于預(yù)期。
改進(jìn)驗證過程通過縮短開發(fā)時間、顯著縮短集成時間、顯著減少軟件缺陷以及更高質(zhì)量、按時交付帶來優(yōu)勢。
航空電子標(biāo)準(zhǔn)提供定義
這些標(biāo)準(zhǔn)故意不定義特定的生命周期或方法。它們定義了明確的目標(biāo)和輸出,并且可以以不同的順序生成,從規(guī)劃、需求、設(shè)計、編碼、集成、配置管理、過程保證和驗證過程。
與其事后才產(chǎn)生輸出,不如從經(jīng)過深思熟慮的驗證計劃開始,這意味著這些輸出可以從一開始就集成到開發(fā)過程中。在生產(chǎn)時對其進(jìn)行驗證可以創(chuàng)建更高質(zhì)量的產(chǎn)品,并具有更大的成功機(jī)會。
左移以便早期驗證
一種方法是使用一種稱為左移的技術(shù)。這更加強(qiáng)調(diào)提高開發(fā)生命周期早期階段(V形開發(fā)的左側(cè),見圖1)的輸出質(zhì)量,具有更嚴(yán)格的要求和設(shè)計階段。這種技術(shù)是關(guān)于將最廣義的測試轉(zhuǎn)移到 V 模型的左側(cè)。
圖1:傳統(tǒng)的V型軟件開發(fā)生命周期。

每個航空電子項目都從需求階段開始,但這并不總是做得很好。需求可能沒有足夠詳細(xì)地分析——某些需求可能存在歧義,需求之間有時存在不一致,并且可能無法完全解決錯誤情況的處理。這些條件可能會導(dǎo)致生命周期后期的問題。
關(guān)鍵實際上是從驗證計劃開始,這似乎是把最后的事情放在第一位。然而,驗證不僅僅是測試軟件。如果通過審查和分析更有效地驗證需求和設(shè)計,那么開發(fā)軟件的基礎(chǔ)就會更加穩(wěn)定。接下來,考慮如何測試源代碼,將使用哪些測試向量和激勵,以及從哪些工具和哪些環(huán)境中都有助于構(gòu)建連貫高效的設(shè)計和驗證流程。
改進(jìn)流程的一個關(guān)鍵方法是在需求和設(shè)計階段的一開始就讓經(jīng)驗豐富的測試人員參與進(jìn)來。雖然航空電子專家將匯總需求,但測試人員可以評估需求屬性,確定需求的可測試和可追溯性。測試人員還將 - 這是至關(guān)重要的 - 突出歧義和不一致。測試人員還將研究故障條件是否得到充分解決,這個問題通常沒有得到很好的覆蓋,當(dāng)在極端情況下出現(xiàn)意外故障模式時,這個問題會導(dǎo)致進(jìn)一步的重大問題。讓測試人員參與設(shè)計階段意味著軟件在設(shè)計時考慮了可測試性,設(shè)計了簡化測試的功能,并評估了需求和設(shè)計之間的可追溯性。從一開始就設(shè)計更好的軟件可以更輕松地在主機(jī)平臺上進(jìn)行測試,而不必在目標(biāo)平臺上進(jìn)行測試。此外, 結(jié)構(gòu) 測試 覆蓋 率 目標(biāo) 可以 更 容易 地 實現(xiàn), 從而 顯著 加快 測試 開發(fā) 和 問題 解決 速度。
在軟件測試方面,左移也適用。隔離測試小代碼單元可以確信它們在內(nèi)部工作,并創(chuàng)建一組經(jīng)過預(yù)先測試的構(gòu)建塊,這些構(gòu)建塊可以快速組合在一起。一個單元可能大約有 50 到 100 行代碼,因此一次可以集成 20 到 30 個單元,也可以單獨測試。測試完成后,這些較大的軟件組件可以與其他組件集集成,依此類推。這種循序漸進(jìn)的測試和集成方法避免了大爆炸集成測試遇到的困難。然而,為了最有效,分步測試需要在生命周期的早期通過更好的驗證來創(chuàng)建穩(wěn)定的要求和設(shè)計基礎(chǔ)。
采用左移概念的驗證計劃將產(chǎn)生更可預(yù)測的時間尺度,并創(chuàng)建具有較低缺陷級別的軟件,因為在生命周期的早期避免或檢測到缺陷,而不必在以后階段刪除。
未來
美國聯(lián)邦航空局于 2013 年 7 月批準(zhǔn)的新 DO-178C 規(guī)范現(xiàn)在包括有關(guān)正式方法的指南。它還闡明了高級需求、低級需求和派生需求之間的區(qū)別,并更好地定義了系統(tǒng)需求和系統(tǒng)設(shè)計之間的退出/進(jìn)入標(biāo)準(zhǔn),允許使用高級模型。用于基于模型的工程的新工具使用高級模型自動生成代碼,甚至自動生成芯片的 RTL。
形式化方法和基于模型的工程與開發(fā)生命周期中早期驗證的左移概念一致,但它們?yōu)闇y試已實現(xiàn)的軟件帶來了不同的挑戰(zhàn)。
首先避免缺陷
有一些方法可以實現(xiàn)驗證過程,這些方法不會增加開發(fā)成本,但仍能提供更高質(zhì)量的結(jié)果。使用左移過程可以顯著提高航空電子系統(tǒng)軟件的質(zhì)量。在需求和高級設(shè)計階段使用獨立、經(jīng)驗豐富的測試人員可以提高需求和設(shè)計的質(zhì)量。這種方法還使測試人員能夠盡早開始生產(chǎn)系統(tǒng)和集成測試。開發(fā)可以單獨進(jìn)行全面測試的小軟件單元,并以有條不紊、循序漸進(jìn)的方式集成軟件,簡化了復(fù)雜系統(tǒng)的集成挑戰(zhàn)。
使用此過程,驗證不再是測試期間的缺陷消除,而是在開發(fā)生命周期的所有階段避免缺陷。保證流程(如 DO-178C)所需的合規(guī)性工件是自然生成的,而無需在項目結(jié)束時返回并開發(fā)它們。集成時間的節(jié)省和質(zhì)量的提高降低了成本并增強(qiáng)了可靠性,這是任何軟件項目的關(guān)鍵考慮因素,尤其是航空電子設(shè)備。
審核編輯:郭婷
-
代碼
+關(guān)注
關(guān)注
30文章
4973瀏覽量
74181 -
航空電子
+關(guān)注
關(guān)注
15文章
499瀏覽量
46844
發(fā)布評論請先 登錄
新思科技發(fā)布全新軟件定義硬件輔助驗證解決方案
ATA-7030高壓放大器在壓電軟體機(jī)器人設(shè)計中的應(yīng)用
英業(yè)達(dá)借助西門子軟件全面提升可制造性設(shè)計效率及生產(chǎn)質(zhì)量
新芯航途榮獲SGS雙重國際權(quán)威認(rèn)可
比斯特綜合性能測試機(jī)提升電池組性能驗證效率精度
西門子EDA與Arm攜手合作加速系統(tǒng)設(shè)計驗證進(jìn)程與軟件啟動
如何驗證硬件加速是否真正提升了通信協(xié)議的安全性?
昂際航電向追夢空天科技交付載客eVTOL飛控及航電套件實驗件
單元測試工具TESSY現(xiàn)已支持ABIX HiperSIM,助力MELEXIS MLX16 汽車嵌入式系統(tǒng)的軟件驗證
新思科技如何驗證更安全的智能汽車軟件
硬件輔助驗證(HAV) 對軟件驗證的價值
西門子推出Questa One智能驗證解決方案
FPGA EDA軟件的位流驗證
左移可提升航電軟件驗證
評論