1背景
隨著汽車行業復雜性的日益提升,人們加大了開發安全合規系統的力度。例如,現代汽車使用線控系統,如油門線控。司機踩油門時,踏板中的傳感器將向電子控制元件發送信號。該控制單元將分析多種因素,如引擎速度、車輛速度及踏板位置。接著,控制單元將向油門傳遞指令。對油門線控這類系統進行測試和驗證,對汽車行業造成了挑戰。ISO 26262的目標是為汽車電氣和電子系統提供統一的安全標準。
ISO 26262的國際標準草案(DIS)發布于2009年6月。自發布起,ISO 26262就獲得了汽車行業的支持。標準草案生效后,律師將ISO 26262視為技術巔峰,即特定時期內某種設備或流程的最高發展水平。德國法律規定,汽車生產商通常要對產品故障導致的人身傷害承擔賠償責任。技術巔峰都無法檢測的故障可獲得免責。
ISO 26262提供了通用的標準,用于衡量系統在使用時的安全性。同時,該標準還提供了通用的詞匯表,用戶可使用該詞匯表指代系統的特定部分。這和其他安全關鍵應用領域保持一致:即提供一個通用的標準,讓用戶可以衡量系統的安全性。
2ISO 26262的關鍵部分
ISO 26262采用分步系統,管理功能安全,并在系統、硬件及軟件層面管理產品開發。
ISO 26262標準提供規范及推薦做法,貫穿了產品開發的全過程(從概念開發到停運)。ISO 26262詳細介紹了如何為系統或組件指定可接受的風險等級,以及記錄總體測試流程的方法。總而言之,ISO 26262:提供汽車安全生命周期(管理、開發、生產、運行、服務、停運),并支持在各階段中自定義必要的活動
提供基于風險的方法,判定汽車的風險等級(汽車安全完整性等級,簡稱ASIL)
使用ASIL指定項目的必要安全要求,以達到可接受的殘余風險
提供驗證要求和確認方法,以確保實現有效且可接受的安全性
汽車安全生命周期
ISO 26262共有10卷,用于系列量產車,并包含針對汽車的章節。例如,ISO 26262的第7章對生產、運行、服務及停運提出了明確的安全要求。
ISO 26262汽車安全生命周期描述了整個生產生命周期。包括對安全管理員的需求、安全計劃的開發以及確認方法的定義(包括安全檢查、審計及評估)。這些要求用于開發電氣和電子系統及元件。
本白皮書主要介紹生命周期的開發部分。ISO 26262關于開發的部分包括定義系統、系統設計、功能安全評估以及安全驗證。
汽車安全完整性等級(ASIL)
ASIL是ISO 26262標準的關鍵部分。ASIL是在開發過程的開始階段確定的。用戶需要根據可能的危害,分析系統的預期功能。ASIL提出這樣一個問題:“如果車輛發生故障,駕駛員和相關行人會怎樣?”
為了評估風險的評估,ASIL需綜合考慮暴露的可能性、駕駛員的控制能力以及關鍵事件發生時的嚴重性。ASIL不處理系統所使用的技術,而只關注對駕駛員及其他行人造成的危害。
不同的安全要求分為ASIL的A、B、C、D級別,其中D級為最高安全關鍵流程,測試規范最為嚴格。ISO 26262標準根據組件的ASIL級別,分別規定了最低測試要求。這有助于確定測試時必須采取的方法。確定ASIL后,就決定了系統的安全目標。即確定了保證安全所需的系統行為。
例如,讓我們以雨刷系統為例。安全分析將確定喪失雨刷功能會對駕駛員的視線造成何種影響。ASIL指導如何選擇適當的方法,以達到一定程度的產品完整性。本指南旨在補充目前的安全做法。目前,汽車制造采用高安全標準,ISO 26262旨在規范行業內的特定做法。
3硬件組件認證
硬件認證有兩個主要目的:展示部件如何適應整體系統,并評估故障模式。基礎硬件組件可通過標準資格評估,但更復雜的部件要求通過ASIL分解及測試進行評估。硬件組件的認證通常是在一系列環境和操作條件下進行測試。接著,使用多種定量方法分析測試結果,并寫入資格報告,附帶測試程序、假設及輸入標準。
4軟件組件認證
認證軟件組件包括:確定功能要求、資源使用以及預測在故障和過載情況下的軟件行為。在實際應用的開發階段使用認證的軟件可大幅簡化該過程。認證的軟件組件通常是優秀的產品,可在項目中復用,包含庫、操作系統、數據庫及驅動軟件。
為了認證軟件組件,標準要求在正常操作條件下進行測試,并在系統中插入故障,以判定其如何應對非正常輸入。設計階段將分析并處理軟件錯誤,如運行時和數據錯誤。
5“在實踐中證明”的證據
硬件及軟件組件可通過“在實踐中證明”的證據,證明其符合ISO 26262要求。若組件已在其他實際應用中無故障運行,則可適用該條款。ISO 26262也適用于在實踐中得到證明的早期系統。很多情況下,若某種系統已經在幾百萬輛汽車上得到驗證,則沒有必要重新檢驗其是否符合標準。例如,目前制造的汽車中,很多系統是按照ISO 26262發布前的高級別安全標準制造的。實際應用過程中,這些安全關鍵部件運行良好。從更早期汽車就保持不變的可靠系統仍然符合ISO 26262認證。類似實際應用中的認證組件,和獲得廣泛部署的早期實際應用一起,極大地降低了總體系統復雜度。
6應用于現有流程
執行類似于ISO 26262這樣的新標準的主要挑戰之一是將其應用于現有流程。對于新標準,需要使用試驗項目展示如何實現該標準,及其對現有流程的影響。目前的結果表明,ISO 26262符合業內現有的安全理念。各公司已經開始重視在開發階段評估風險并進行危害分析,以及在各流程中進行測試。
計劃執行ISO 26262的公司需要理解,目的是在開發過程的早期階段分析風險、確立適當的安全要求,并通過開發中的測試最終達到這些要求。
7測試工具認證
測試是ISO 26262開發過程中的關鍵部分。安全關鍵系統必須合理應對測試場景,并在面對各種人為及環境輸入時保持在指定的安全范圍內。使用高質量測試系統可提高產品性能、提升質量及可靠性,并降低返修率。據估計,相比于在實際應用中,在生產中發現的錯誤導致的故障花費將降低10倍;而若在設計環節發現錯誤,則又比生產中降低10倍的花費。通過發現錯誤并收集數據,可改進設計或流程。測試為您的組織創造了價值。通過技術創新和最佳實踐方法推動流程創新,可大幅提升效率,降低花費。人們容易忽略工具,只考慮系統的設計。但實際上,工具對終端用戶的安全十分重要。
ISO 26262承認,使用廣泛應用的軟件工具可簡化或自動化開發電子、電氣及軟件元素(提供安全相關功能)開發所需的步驟及任務。介紹工具認證過程的細節前,需要定義一個工具認證的重要部分:工具置信水平。
工具置信水平
通過工具的輸入和輸出,可開發典型(或參考)用例。分析用例便可確定工具置信水平,簡稱TCL。TCL和ASIL決定軟件工具要求的認證水平。確定置信水平,需要評估一下兩種因素:
軟件工具出故障的可能性,以及錯誤輸出對開發中的安全相關項目或元素會造成何種危害
在輸出中預防或檢測該錯誤的可能性工具置信水平分為TCL1、TCL2、TCL3和TCL4,其中TCL4為最高置信水平,TCL1為最低置信水平。
工具認證過程
在ISO 26262中,認證工具有諸多要求。例如,必須已經確定了ASIL。工具必須包含用戶手冊、獨特的標識及版本號、功能描述、安裝過程以及環境(僅舉幾例)。ISO 2626要求以下認證材料:
軟件工具認證計劃
軟件工具文檔
軟件工具分類分析
軟件工具認證報告
軟件工具認證計劃
軟件工具認證計劃(STQP)是在安全相關項目開發生命周期的早期創建的。它主要關注兩個方面:計劃軟件工具的認證,以及能證明該工具符合所需置信水平的用例。
STQP必須包含的項目有:軟件工具獨特的標識及版本號、用例、環境、描述、用戶手冊以及確定好的ASIL。
軟件工具分類分析
軟件工具分類分析(STCA)的主要目的是確定工具置信水平。確定TCL有兩個主要因素。第一個因素是工具影響(TI)。第二個因素是工具錯誤檢測(TD)。根據這兩個因素,選擇合適的TCL。
工具影響分為TI1和TI2。當故障軟件工具不可能違反安全要求時,可選擇TI1。其他情況則選擇TI2。
例如,假設某工具在執行特定軟件功能時,會在文檔中產生錯誤字符。這僅僅是一個小錯誤,并不違反測試時的安全要求。該錯誤造成的是TI1類別的工具影響。若工具造成的錯誤以任何形式改變了系統行為,則選擇TI2。
工具錯誤檢測分為TD1、TD2和TD3。TD1代表對工具檢測錯誤的能力有高度的置信,而TD3則代表很低的置信水平,即只能隨機檢測出錯誤。
例如,假設某工具用于檢測設計模型的錯誤。該工具對模型執行靜態分析。當靜態分析良好時,該工具不能檢測模型中的所有可能違規行為。還有一點值得注意的是,這并不一定意味著該模型是錯誤的,而僅僅表明需要額外的測試。該例是一種中等程度的置信水平,即TD2。
根據所需置信水平,一旦確定了工具影響(TI)和工具錯誤檢測(TD),就確定了TCL的級別。多個用例可能導致不同的TCL。出現這種情況時,請使用最高級別的TCL。對每個軟件工具,用戶需進行工具分類。
軟件工具文檔
為確保正確使用軟件工具,必須提供多種信息。
功能描述
安裝過程描述
用戶手冊
操作環境
異常狀態下的預期行為
軟件工具認證報告
軟件工具認證報告包含結論以及完成認證且滿足要求的證據。任何驗證期間產生的故障或錯誤輸出都需在此進行分析和記錄。
從實踐中提升的置信
從實踐中提升置信是工具認證的一個重要方面。若能證明某工具已經符合認證要求,就無需進一步的認證。這將大幅降低開發過程中的花費及時間成本。然而,在開發該項目前,認證要求必須在每個安全相關項目或元素上得到證明。為達到該要求,該工具必須證明:
曾經為了相同的目的,在類似的用例中使用
該工具的規范保持不變
未在曾經開發的安全相關項目中違反安全要求
例如,假設工具A用于驗證汽車X的ECU(引擎控制單元)。若測試工具A未違反任何安全要求,且保持不變,那么它就可用于檢測汽車Y的ECU,只要汽車Y的ECU用途與汽車X的ECU使用方法類似。
8下一步
欲知NI測試工具如何用于測試安全相關項目,請參考 NI測試安全兼容系統最佳實踐。該白皮書包含諸如模型回路測試和硬件回路測試等技術,貫穿整個開發過程。此外,該白皮書還討論了組件重用的優勢及效率提升。