——基于ASPICE與ISO26262的模型質量保障深度實踐
作者 |小新
小編 |不吃豬頭肉
隨著汽車電動化與智能化的不斷深入,基于模型的開發(Model-Based Development,MBD)已成為復雜系統開發的核心范式。在此背景下,模型靜態測試憑借其早期缺陷檢測能力,以及企業對開發效率、功能安全及ASPICE合規的日益重視,在汽車電子系統開發中得到廣泛應用。
本文將從開發效率提升和行業合規實踐兩個維度,系統闡述模型靜態測試的技術必要性。通過分析其在質量保障體系中的關鍵作用,幫助開發者深入理解該技術在智能汽車開發流程中的戰略地位。

從高效 MBD 開發視角:模型質量是效率基石
在 MBD 中,模型是功能實現的載體,需求通過模型轉化為可執行邏輯,代碼由模型自動生成,且模型本身是早期測試驗證的原型。因此,保障了模型質量,MBD效率也會得到基本保障。
模型質量需從雙維度考量
設計質量:關注模型的內在結構特性,模塊化、可讀性、穩健性等等。功能質量:模型是否符合功能需求。
二者相輔相成,并且設計質量的好壞會影響功能的實現,以及后續對功能的驗證。那么我們如何確保設計質量呢?
首先我們可以通過遵循業內權威機構發布的建模規范,如MAB、MISRA AC SL/SF,這些規范源自專家專業知識的“最佳實踐”。

圖1 建模規范
其有助于提高模型的可讀性、可維護性、防止使用風險結構、避免常見錯誤、增強魯棒性和提高建模效率并能夠改進生成的代碼。
如:
db_0141-Signal flow in Simulink models 對信號流的檢測,遵守可提高可讀性。
示例:

圖2 規范db_0141示例
sdt_sc004-Strong Data Typing of Arithmetic Blocks對算數模塊涉及到的信號的數據類型的檢測:必須設置選項“Require all inputs to have the same data type”、輸入信號的縮放和最小/最大值必須一致、輸出數據類型的數據范圍必須足以容納四則運算的任何結果。遵守此規范可以改進生成的代碼,增強代碼魯棒性。示例:

圖3 規范sdt_sc004示例
另外可以通過分析模型的復雜度和耦合程度等,了解模型對于可測性和可維護性的支持程度。
上述內容均屬于模型靜態測試的范疇,所以只有通過靜態測試提前筑牢設計質量,才能實現 MBD 流程的高效運轉,避免后期因模型缺陷導致的反復返工。

從ASPICE和功能安全視角:靜態測試是合規的重要保障
2.1ASPICE 合規性
在 ASPICE SWE.4 中,明確要求對軟件單元實施靜態驗證,并建立軟件單元與靜態驗證結果之間的雙向可追溯性。盡管標準未明確提及模型靜態測試,但如前文所述,模型靜態測試可以顯著提升軟件質量、降低缺陷率,因此將其納入實踐,是確保符合 ASPICE 要求的重要保障。

圖4 ASPICE標準概覽
2.2功能安全合規性
在功能安全中明確推薦將MBD方法應用在安全關鍵型軟件的開發當中,并要求模型設計應具有一致性、可理解性、適用性、正確性、簡潔性、魯棒性和可驗證性。為實現這些模型屬性,ISO 26262:2018第6部分軟件級產品開發中提出了系統的設計原則,具體體現在三個表格中:表一,建模和編碼指南應該涵蓋的主題;表三,軟件架構設計的原則;表六,軟件單元設計和實現的設計原則。

圖5 IS0 26262系列標準概述
其中軟件架構設計原則中提到的軟件組件的有限大小和復雜性,接口的有限大小,軟件組件內的強內聚,組件間的松散耦合等等,需要了解相關的模型屬性之后才能去遵守。
示例:MXAM分析當前子系統復雜度為470,復雜程度較高。

圖6 更改前模型
經過更改之后復雜程度降為165,模型的可讀性隨之變高。

圖7 更改后模型
建模和編碼指南應該涵蓋的主題和軟件單元設計和實現的設計原則則可以通過遵循建模規范去滿足。
如建模規范jc_0642-Integer rounding mode setting對應的是表T1.1b Use of Language Subsets 的設計原則。
jc_0650-Block input/output data type with switching function符合的是表T6.1g No Implicit Type Conversions 的設計原則。
當然上述內容均屬于模型靜態測試的范疇,所以想要符合功能安全模型靜態分析是重要保障。

專業工具賦能:MXAM 助力靜態測試高效落地
面對復雜的建模規范與安全要求,手動檢查和修復模型效率低且易漏判,所以我們推薦使用靜態模型分析工具MXAM ,其可以幫您解決軟件開發過程中的痛點:
1.提供全面的定制化,支持更多來自MAB、MISRA、dSPACE、MES等行業機構發布的建模規范。
2.交互式報告頁面可指導用戶直達模型出現問題的部分,且可自動修復部分不符合規范的建模。
自動修復示例:mes_slsf_1301 Redundant Condition Actions具有相同目的地的不同轉換線不應該包含相同的條件動作。

圖8 自動修復示例
3.更豐富的模型度量指標并且包含模型重構功能,幫助您快速重構您的模型。

圖9 MXAM工作流程

總結
模型靜態測試不僅是 MBD 開發提效的 “加速器”,更是ASPICE和功能安全合規的 “關鍵基石”,通過模型靜態測試企業可在開發早期筑牢質量根基,避免后期高額返工成本。MXAM 的應用,讓靜態測試從 “人工經驗驅動” 升級為 “數據與工具驅動”,助力企業在智能化浪潮中實現高效開發與安全合規的雙重目標。
-
汽車電子
+關注
關注
3037文章
8332瀏覽量
170033 -
MBD
+關注
關注
0文章
27瀏覽量
9174 -
靜態測試
+關注
關注
0文章
30瀏覽量
6719
發布評論請先 登錄
評論