登錄 | 注冊 | English

新聞中心

首頁  >  新聞中心  >  產品動態

符合ISO 26262標準的模型驗證技術

        2020年,疫情影響著我們每個人的生活。
        這一年,終將被歷史記住。
        這一年,每個人戴上防護口罩,保護自己和家國。
        這一年,很多人參與線上學習,get新技能為工作加油。
        這一年,蠻多人關注汽車ISO26262,堅定踐行道路安全衛士。
 
        汽車行業,越來越多企業取得了ISO26262流程認證、產品認證。隨著軟件功能比重加大,符合ISO26262標準的軟件開發過程,借助MBD技術構建模型,軟件的驗證當然也要考慮模型的靜態驗證(基于模型的規范檢查)、模型的動態驗證(基于模型的動態測試)。
 
        這一篇,我們介紹下,符合ISO26262標準軟件要求,采用MBD開發方式,如何進行模型的驗證,如何做好軟件的“防護服”或“防護口罩”,進而提升軟件安全性。與大家分享結合模型形式的ISO 26262軟件驗證要求、驗證流程及實踐。
 
軟件驗證“口罩防護”,功能安全“綠碼通行”
 

ISO 26262 軟件驗證要求

軟件開發啟動階段建模指南要求
——摘自ISO 26262-6:2018,Table1
 
•  1a執行低復雜性:通過多個度量指標,來度量模型的復雜性,比如:
    ♦  Number of subsystems(子系統個數)
    ♦  Number of blocks(模塊個數)
    ♦  Number of linked library(鏈接庫的個數)
    ♦  Number of charts(Chart個數)
    ♦  Number of all objects in the chart(Chart中對象個數)
    ♦  Number of states(狀態個數)
    ♦  Number of transitions(轉移個數)
    ♦  Number of MATLAB function(ML函數個數)
    ♦  Number of stateflow code lines(SF代碼行數)
    ♦  Effective lines of MATLAB function code metric(ML代碼有效行數)
    ♦  Subsystem depth(子系統深度)
    ♦  Data and structure layer separation(數據和結構分層)
    ♦  Cyclomatic Complexity (Local, Global)(圈復雜度)
 
        其中,圈復雜度是備受企業關注的模型度量指標,它表征著模型中獨立路徑的個數。該指標的閾值約束,能夠指導模型優化,有利于降低模型的負載率。
 
•  1b使用語言子集、1c使用強數據類型、并發(2018版新增)等其他要求,更多細節展示,請關注5月21日在線研討會,將為大家一一闡述。
 

ISO 26262 軟件驗證流程

        軟件驗證分為靜態驗證、動態驗證2個方面,我們重點來看看如何對模型進行靜態驗證、動態驗證。
•  模型靜態驗證,概要理解為模型規范檢查。
    ♦  模型靜態驗證要求:
 
靜態驗證方法
——摘自ISO 26262-6:2018,Table7
 
        1b結對編程(2018版新增),可以通過2人組合方式火花碰撞解決潛在問題。
 
        1d半形式驗證,通過語法分析,借助自動化工具,快速進行模型規范檢查,修改。更多細節展示,請關注5月21日在線研討會,將為大家一一闡述。
 
    ♦  模型靜態驗證工作流程:
Step1:定建模規范集合,借助企業經驗/行業標準規范/第三方推薦,定制出符合項目/產品要求的建模規范。行業標準規范,比如MAAB/HIS/MISAR_AC_SLSF等。
Step2:搭建建模規范自動化工具,把Step1中定義的建模規范集合,通過靜態的模型語法分析進行自動化分析。規范檢查工具,比如用戶自定義開發腳本/第三方專業工具如MI等。
Step3:發布及應用,導出模型規范檢查報告。
Step4:根據報告追溯模型不符合規范之處,變更模型。
Step5:重復Step2,最終按Step3終版報告。
 
模型靜態驗證—工作流
 
•  動態驗證方面,即我們經常會做的一項活動,動態測試。
 
    ♦  模型動態驗證要求:以模型為測試對象,通過測試要求、測試方法、測試用例、覆蓋率要求進行一些約束。以單元驗證為例,需要滿足以下要求。
 
動態驗證方法
——摘自ISO 26262-6:2018,Table7
 
        1n模型代碼間的背靠背測試,模型作為一個“背”,模型自動生成的代碼作為一個“背”,給與兩個同樣的激勵,來對比輸出結果。
 
        其他方面,1j基于需求測試、1k接口測試、1l故障注入測試 等,更多細節展示,請關注5月21日在線研討會,將為大家一一闡述。
 
動態驗證生成測試用例方法
——摘自ISO 26262-6:2018,Table8
 
        模型動態驗證,需要通過一定的方法,來分析test case。比如1c邊界值法,可以根據需求的邊界,比如有上邊界a、下邊界b,一般可以?。合逻吔缏孕?、下邊界、下邊界略大、邊界間普通值、上邊界略小、上邊界、上邊界略大值,生成test case。
 
        其他方面,1a基于需求分析、1b等價類生成與分析等,更多細節展示,請關注5月21日在線研討會,將為大家一一闡述。
 
結構覆蓋率要求
——摘自ISO 26262-6:2018,Table9
 
        評價動態驗證是否充分,首要滿足需求覆蓋率。其次,要考慮結構覆蓋率指標。如不滿足,需要提供充分的證據來說明達不到覆蓋率的原因。
 
        1b分支覆蓋,結合模型來理解,也叫判定覆蓋(DC),使得模型中每個判斷的取真分支和取假分支至少經歷一次,即判斷的真假均曾被滿足。以下圖模型為例:
 
分析模型結構覆蓋率
 
        可以通過以下測試用例,達到分支覆蓋率要求:
 
測試用例
 
        其他方面,1a 語句覆蓋、1c MC/DC覆蓋等,更多細節展示,請關注5月21日在線研討會,將為大家一一闡述。
 
    ♦  模型動態驗證工作流程:
Step1:制定測試計劃、策略
Step2:編寫測試用例
Step3:構建測試工程
Step4:導出測試報告(問題清單)
Step5:根據報告/問題修改模型
Step5:重復Step2(補充測試用例)- Step5
Step6:導出最終測試報告
 
        在模型動態驗證過程中,可以選擇不同的測試環境,來執行測試。
 
選擇不同的模型動態驗證環境
 

ISO 26262 軟件驗證實踐

        在此,也結合ISO 26262 的V流程,小編也給大家分享下模型靜態驗證+模型動態驗證的項目實踐總覽,歡迎大家圍觀。
•  幫助用戶構建模型靜態驗證規范集合及輔助環境:
 
模型靜態驗證規范集合及輔助環境
 
模型靜態驗證—工程化
 
•  幫助用戶安全功能安全要求,構建一體化基于模型動態驗證(動態測試)平臺:
 
符合功能安全的一體化基于模型動態驗證(動態測試)平臺
關于恒潤
企業簡介
企業理念
企業資質
新聞中心
恒潤在全球
誠聘英才
校園招聘
實習生招聘
社會招聘
走進恒潤
常見問題
市場活動
在線研討會
線下活動
微信課堂
用戶社區
資料下載
恒潤月刊
用戶留言
個人中心
PMT留言
相關鏈接
達索公司
IBM-中國
聯系我們
電話:010-64840808
郵箱:[email protected]
版權所有 ? 北京經緯恒潤科技有限公司 京ICP備18000642號-1 京公網安備11010802017344號 網站地圖 | 招聘信息 | 法律聲明 | 隱私保護
腾讯欢乐捕鱼礼包 山西十一选五平台 福建十一选五开奖结果爱彩乐 极速11选5的正规网站 快乐十分走势图彩经网 投资理财平台哪个最安全最赚钱 内蒙十一选五最大遗漏 幸运飞艇走势图分析技巧 辽宁35选7风采063期 澳门有几种赌博玩法 福建体彩31选7几点开奖时间