精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

民機機載軟件中的開發和驗證工具

上海控安 ? 來源:上海控安 ? 作者:上海控安 ? 2023-02-24 13:34 ? 次閱讀

作者 |蔡喁 上海控安可信軟件創新研究院副院長

版塊 |鑒源論壇 · 觀擎

01工具鑒定

現代軟件工程中,工具已經出現在軟件研制過程中的各個環節中。在常見的軟件研制環節中,使用工具包括軟件需求工具、軟件設計工具、軟件架構工具和軟件測試工具等。這些工具的使用可以提高軟件的開發效率,并且在正確使用相關工具的條件下還有望能提高軟件的質量。當然,如果工具中存在錯誤或未能正確的使用工具,也將會帶來負面的影響。并且由于工具的功能日益強大,人類有時已經無法對工具的輸出進行直接的判斷。

正如前文不斷提及的那樣,民用飛機時刻以安全性為最高要求。為了保證達到預期的安全水平往往不惜犧牲效率和其它性能。就民機機載軟件研制過程中使用的工具來說,風險也是顯而易見的,主要原因在于:

● 相比純手工開發,工具的輸出中隱藏的錯誤往往更加分散難以被發現;

● 工具生成的軟件中含有的缺陷往往難以通過手工的方式排查并加以修正;

● 相比人工活動,工具產生的錯誤不再是偶然的。當同樣的工具被用于多個項目中時,同樣的錯誤將被成批的復制。

為了規避工具的應用給民機機載軟件帶來的風險,適航審定過程中通常采取將機載軟件的要求延伸到相關工具中的方法,這一方法也可以稱之為“鑒定”。工具鑒定正是DO-178C第十二章第二節所描述的內容。為了區別工具鑒定與機載軟件的適航要求,RTCA組織在DO-178C標準推出之時也同步頒布了DO-330文件。將工具鑒定要求和方法分開處理的出發點是將基于軟件過程管理技術和方法的工具鑒定這一思路運用于各類可能需要用于證明工具自身功能或者性能的領域。

02DO-178C的工具鑒定要求

2.1 何時需要進行工具鑒定?

“Qualification of a tool is needed when processes of this document are eliminated, reduced or automated by the use of a software tool without its output being verified as specified in section 6.” (RTCA DO-178C 12.2)

“當使用軟件省略、減少或自動化了本文所要求的過程,并且沒有采用本文件第六章的要求對輸出進行驗證,則工具需要鑒定。”(RTCA DO-178C第12.2節)

上文描述了工具鑒定的兩個基本條件,分別是“省略、減少或自動化了本文所要求的過程”以及“沒有采用本文第六章的要求對輸出進行驗證。”

我們先來看看什么是“省略、減少和自動化”。從字面上來看,“省略”自然就是因為軟件工具的使用而可以省去不再執行的軟件生命周期過程,或過程中的某些步驟;“減少”則是DO-178C要求的過程依然執行,但是減少了過程中所包含部分活動;“自動化”顧名思義是原先標準要求的過程原先由人工執行,現在被工具自動化地實現了。由此可以看出,“省略、減少、自動化”是工具影響到軟件過程或活動做多少和由誰做的置信度問題。下面我們通過一個例子來仔細分析上面三者間的區別。

例如,我們假設某軟件研制過程中工具A能直接從低級需求和系統架構設計文件轉換并且生成全部的源代碼文件,在研制過程中無需進行人工編碼。我們看到,在這一過程中源代碼是被工具編寫出來的,所以實質上DO-178C所描述的軟件編碼過程(Software Coding Process)是被“自動化”了。但是由于這一工具的出色性能,研制單位認為在自動轉換過程中不可能引入錯誤,從而決定不再進行對低級需求和源代碼一致性的驗證,則DO-178B第六章的驗證工作在對源代碼和目標代碼一致性驗證這點上被“省略”了。我們不妨再假設,研制單位對工具的信心非常足,以至于決定將原先執行一類構型控制的源代碼由于工具的使用降為二類。可見,在這一過程中,構型管理過程及其活動依然保留,并且還是由人工進行,但部分過程將被“減少”。

從DO-178C的要求中我們也不難看出,如果軟件工具的使用沒有省略、減少或自動化DO-178C標準所要求的過程,則不需要對工具進行鑒定。這類工具常見的例子如構型管理(也稱配置管理)工具。構型管理工具協助研制團隊實現DO-178C第七章所要求的目標和活動,但如果它們僅僅對軟件研制過程起到輔助作用而沒有起到上文中所描述的“省略、減少或自動化”某一過程的效果,則這種工具不需要鑒定,可以在機載軟件項目中直接使用。當然,所有使用的工具都應該在相應的軟件研制環境計劃中描述,同時也需要將這一計劃放入構型管理的范圍內。

另外,還需要重點關注DO-178C關于工具鑒定條件的第二條。如果存在工具,雖然滿足上面所提的條件,即“省略、減少或自動化”了DO-178C所要求的某項活動。但如果研制單位能夠通過對工具的輸出進行全面的驗證,且驗證活動按照DO-178C第六章的要求進行,滿足第六章的目標、活動和數據要求。則這個工具也可以不進行鑒定。

2.2 如何進行工具鑒定?

“The purpose of the tool qualification process is to ensure that the tool provides confidence at least equivalent to that of the process(es) eliminated, reduced, or automated.”

“所謂工具鑒定就是為了確定工具能夠提供與其省略、減少或自動化了的過程具備同樣的適航審定置信度。”

(1)工具鑒定準則

在DO-178C中,工具被進一步根據以下三個準則分成三個類別:

準則1――“工具的輸出是機載軟件的一部分并且可能引入錯誤。”我們可以看出,這一定義與B版本中的開發工具是完全對應的。換句話說,C版中的1類工具就是B版中所謂的“開發工具”。

準則2――“將自動驗證某些過程,并可能漏檢錯誤;同時,這些輸出被用來證明對以下過程的省略和減少是合理的:a. 并沒有被工具自動化的驗證過程;b. 可能對機載軟件產生影響的開發過程。”

準則3――“在預期的使用范圍內,可能漏檢錯誤。

“事實上,準則2和準則3都是對B版本中驗證工具的進一步細分。

準則1的工具比較好分辨,就是開發過程中需求、設計、編碼或者集成過程中用到的產生軟件本體的數據的工具。準則3的工具則是用于驗證需求、設計、編碼或者可執行目標碼的工具,但是其作用較為單一,不會產生“副作用”。準則2的工具首先是驗證工具,例如檢查數組索引越界的工具,如果因為該工具的使用,使得代碼中預防數組索引越界的代碼可以不用添加,那么該驗證工具不但影響了驗證過程,而且影響了開發過程,是一種超級驗證工具,稱之為準則2的工具。準則2的工具的另外一個例子是測試用例的生成工具,其首先作用是生成測試用例,假如此時測試用例還無需人工評審或者部分減免了人工評審其與需求的追蹤性,那么這個工具同時影響了DO-178C A-6表和A-7表中的目標,產生跨表的符合性表達,也是一種準則2的工具。

(2)工具鑒定等級(Tool Qualification Level)

上世紀90年代,工具的規模和功能都與今天無法同日而語。近年來,軟件工具的功能復雜度甚至超過機載軟件產品本身,而在老版標準中對工具鑒定要求的描述過于簡單,對于驗證工具的要求甚至只有黑盒測試的要求。這與DO-178C標準中對整個機載軟件開展全面系統的研制保證管理的要求差距較大。因此,DO-178C標準在考慮上面提到的工具分類準則的基礎上,結合工具工作對象(軟件)的等級,細化了工具鑒定等級的要求。

在上述對工具分級的基礎上,DO-178C標準要求工具鑒定的過程依據DO-330標準的相應要求進行。

03工具操作要求

我們不難發現,不論是開發工具還是驗證工具,在工具鑒定中都涉及工具操作需求。常見的誤解通常認為,工具操作需求是一份類似于使用說明書的文件。我們也曾發現沒有取證經驗的研制單位因為無法提交令人信服的軟件操作需求而造成工具無法通過鑒定的情況。事實上,工具的操作需求作為工具鑒定活動中必須準備的生命周期數據,應該按照軟件生命周期數據中的軟件高級或低級需求的標準來編制。并且嚴格的執行適用的構型管理和更改控制。工具的操作需求起到機載軟件驗證過程中系統需求的作用,而工具的鑒定活動因此更加類似與我們經常進行的系統審查。我們除了對工具的操作需求其精確性和正確性進行評審之外,還需考慮工具在預期運行環境下的功能測試、魯棒性測試以及需求和結構覆蓋率分析等,而工具軟件的高級需求則被作為符合工具操作需求的軟件高級需求來對待。

審核編輯黃宇

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 軟件
    +關注

    關注

    69

    文章

    4787

    瀏覽量

    87167
  • 開發
    +關注

    關注

    0

    文章

    367

    瀏覽量

    40811
  • 驗證工具
    +關注

    關注

    0

    文章

    9

    瀏覽量

    7480
收藏 人收藏

    評論

    相關推薦

    云計算開發工具包括什么

    云計算開發工具種類繁多,包括IDE、虛擬化軟件、容器化平臺、自動化部署工具和云平臺等。
    的頭像 發表于 11-22 10:11 ?96次閱讀

    電機方案開發工具QE For Motor的使用教程

    QE For Motor是專門為電機方案開發而設計的工具,支持從電機控制軟件的執行到驗證的整個開發過程。QE For Motor鏈接電機方案
    的頭像 發表于 11-14 15:12 ?852次閱讀
    電機方案<b class='flag-5'>開發工具</b>QE For Motor的使用教程

    FPGA仿真工具軟件EasyGo Vs Addon介紹

    EasyGo Vs Addon是一款領先的FPGA仿真工具軟件,它強大地連接了VeriStand軟件與Matlab/Simulink,為實時測試和驗證領域帶來了前所未有的便利和效率,
    的頭像 發表于 10-24 15:55 ?245次閱讀
    FPGA仿真<b class='flag-5'>工具</b>包<b class='flag-5'>軟件</b>EasyGo Vs Addon介紹

    深度解析:機載SDI攝像頭的技術優勢與應用前景

    機載SDI攝像頭作為現代航空偵察與監控的重要工具,其技術優勢與應用前景備受關注。
    的頭像 發表于 09-18 17:13 ?357次閱讀
    深度解析:<b class='flag-5'>機載</b>SDI攝像頭的技術優勢與應用前景

    安森美圖像傳感器開發工具DevWareX介紹

    在配置、控制和驗證圖像傳感器的過程開發者可能會面臨一系列挑戰。為此,安森美(onsemi)提供了一款強大的多功能工具DevWareX,旨在幫助
    的頭像 發表于 08-20 16:47 ?421次閱讀
    安森美圖像傳感器<b class='flag-5'>開發工具</b>DevWareX介紹

    【電磁兼容技術案例分享】某民機產品磁影響測試FAIL問題案例

    【電磁兼容技術案例分享】某民機產品磁影響測試FAIL問題案例
    的頭像 發表于 08-02 08:17 ?298次閱讀
    【電磁兼容技術案例分享】某<b class='flag-5'>民機</b>產品磁影響測試FAIL問題案例

    聚焦嵌入式開發的合規性工具、項目管理工具、版本迭代工具應用

    ,就嵌入式開發與管理領域的最新趨勢、工具選擇以及DevSecOps實踐應用等方面展開了深入探討。 本期對話龍智資深DevSecOps顧問徐晨暉, 分享嵌入式開發的合規性
    的頭像 發表于 07-29 15:15 ?479次閱讀

    工具工具——映射與調度、模擬與驗證開發與測試工具

    本篇文章將重點介紹工具鏈的工具相關知識,我們將從工具鏈的基本概念出發,重點介紹工具的映射和調度工具
    的頭像 發表于 05-16 14:30 ?2549次閱讀
    <b class='flag-5'>工具</b>鏈<b class='flag-5'>工具</b>——映射與調度、模擬與<b class='flag-5'>驗證</b>、<b class='flag-5'>開發</b>與測試<b class='flag-5'>工具</b>

    嵌入軟件單元測試工具的作用

    可測試單元進行測試,來驗證其是否按照設計要求正常工作。 嵌入軟件單元測試工具能夠提高開發人員的工作效率和軟件質量。首先,它可以幫助
    的頭像 發表于 04-23 15:31 ?410次閱讀
    嵌入<b class='flag-5'>軟件</b>單元測試<b class='flag-5'>工具</b>的作用

    fpga開發一般用什么軟件

    此外,還有一些其他的輔助工具,如用于數字信號處理開發的System Generator,以及用于HDL語言仿真的ModelSim等。這些工具可以配合上述的主要FPGA開發軟件使用,提高
    的頭像 發表于 03-27 14:54 ?3823次閱讀

    fpga開發一般用什么軟件

    FPGA(現場可編程門陣列)開發通常使用一系列專門的軟件工具,這些工具涵蓋了從設計、仿真到編譯和調試的整個流程。
    的頭像 發表于 03-15 14:43 ?3345次閱讀

    蘋果準備推出AI軟件開發工具

    近日,有知情人士透露,蘋果公司正在全力加碼人工智能,準備推出一款新的軟件開發工具。這款工具將利用生成式人工智能技術,幫助開發者自動完成編碼工作,預計將加劇與微軟在人工智能方面的競爭。
    的頭像 發表于 02-20 14:35 ?853次閱讀

    eda工具軟件有哪些 EDA工具有什么優勢

    和預測提供基礎。在進行EDA過程,使用合適的工具軟件可以顯著提升效率和準確性。本文將介紹幾種常見的EDA工具軟件。 Python和其相關的庫 Python是一種廣泛使用的編程語言,擁有豐富的庫和
    的頭像 發表于 01-30 13:57 ?1105次閱讀

    CodeArts五年磨一劍,深耕信創軟件開發工具

    在今年的QCon全球軟件開發大會(上海站),華為云開發工具和效率領域首席專家、華為軟件開發生產線 CodeArts首席技術總監王亞偉作為「智能化信創軟件IDE」專題的出品人,帶領他的專
    的頭像 發表于 12-15 15:55 ?955次閱讀
    CodeArts五年磨一劍,深耕信創<b class='flag-5'>軟件開發工具</b>

    民機機載軟件的配置管理

    配置管理(Configuration Management)在航空領域經常又稱為構型管理,是現代復雜產品研制的核心技術。與很多傳統觀念配置管理是對文檔和版本的簡單管理不同,現代復雜產品由于其內部組成部分較多、研制分工普遍以及設計的版本狀態以及配合關系頻繁變換的原因,往
    的頭像 發表于 12-01 16:15 ?795次閱讀
    <b class='flag-5'>民機</b><b class='flag-5'>機載</b><b class='flag-5'>軟件</b>的配置管理