避免重新發(fā)明輪子是高效產品開發(fā)的關鍵部分。在嵌入式編程中,這個概念始于可信庫,并已通過面向對象編程和Java等概念得到增強,這使我們能夠創(chuàng)建當今的復雜系統(tǒng)。
安全標準還促進了經過驗證的軟件元素的重用,盡管這帶來了復雜的挑戰(zhàn)。在項目中引入沒有同樣嚴格程度的元素將不可避免地導致弱點。因此,安全標準規(guī)定了驗證這些組件以用于安全項目的方法。
但是,對效率的追求可能會導致在安全關鍵系統(tǒng)中不起作用的概念。定制現貨 (COTS) 軟件是許多行業(yè)以多種方式使用的術語,盡管它在工業(yè)安全中具有非常具體的含義,但它可能成為走捷徑的借口,這在安全項目中是不可接受的。一個系統(tǒng)的強度取決于它最薄弱的地方。醫(yī)療標準IEC 62304中使用了未知血統(tǒng)/出處(SOUP)的軟件,但是有充分的理由在安全項目中沒有“未知”的東西。你可以測試它到死,但最終,當它的起源未知時,你如何在未來幾年內維護它?
斷章取義地定義安全元素
在汽車領域,ISO 26262-10中定義的安全元件脫離環(huán)境(SEooC)是在車輛中使用最初不是為該特定項目設計的組件的方法。
術語SEooC有點笨拙,但它清楚地定義了問題。您集成到系統(tǒng)中的所有軟件庫都是“脫離上下文”有效地開發(fā)的:它們旨在提供特定的功能,而不了解它將如何在目標系統(tǒng)中使用。“元素”表示這是一個具有特定功能范圍的單元或模塊;“安全”表示該模塊是在一組安全要求的背景下專門開發(fā)的。
有兩種基本類型的軟件 SEooC(源自 ISO 26262-10-9):
經驗證的使用方法。這種類型的軟件使用“已使用中證明”參數(和其他措施)來驗證 COTS 組件是否符合指定的安全級別。ISO 26262-8-14規(guī)定了如何實現這一目標,但在軟件環(huán)境中有很多爭論??捎^察錯誤的概念是關鍵 - 記錄產品的使用情況,以便可靠地記錄和匯總所有錯誤,從而準確了解軟件的可靠性。這需要考慮在特定配置中。這些結果與目標項目的相關性是復雜的,因為安全項目幾乎可以肯定在用于建立軟件可靠性的現場測試用例中具有不同的配置和工作環(huán)境。您能相信一款未按照安全標準開發(fā)的軟件能夠可靠地報告所有錯誤嗎?
ISO 26262-6方法。在汽車安全系統(tǒng)中開發(fā)軟件元件的標準方法在ISO 26262標準的第6節(jié)中定義,用于開發(fā)道路車輛的功能安全。它源自標準前面部分中定義的目標系統(tǒng)的完整 V 模型開發(fā),并且本身就是一個 V 模型。由于該要素是在上下文之外開發(fā)的(即,不是從目標項目的安全計劃中得出的),因此必須采取其他措施。主要的附加措施是創(chuàng)建一組假設,SEooC 旨在在其中工作。在集成期間,必須在目標平臺上驗證這些假設。
完整的軟件生命周期維護
這是任何安全項目開發(fā)的關鍵部分:響應開發(fā)期間或發(fā)布后提出的問題的能力。一旦項目成熟,就需要有一種方法在提出問題時可靠地修改項目。ISO 26262-6方法的一個關鍵優(yōu)勢是可以進行全面而準確的影響分析,并正確實施由此產生的更改,因為所有標準工件都是在設計,實施和測試之間具有可追溯性的。
在時間和人員方面,您離項目發(fā)布越遠,就越需要提供工件及其相關流程,以便安全地進行更改。此方法可確保將來的可維護性。
跨行業(yè)重用
在多個行業(yè)中使用許多嵌入式組件具有實際意義。例如,用于存儲數據的文件系統(tǒng)或用于通信數據的網絡堆棧不是特定于行業(yè)的,理想情況下,從一個新項目中獲得的好處應該在新項目中利用,而不管它們適用于哪個行業(yè)。從軟件的角度來看,跨不同行業(yè)開發(fā)軟件的安全要求大致相似,但根據所需的安全級別具有不同程度的嚴格性。采用根據 ISO 26262-6 開發(fā)的 SEooC 方法為跨標準映射偽影提供了堅實的基礎(例如,符合工業(yè)功能安全的 IEC 61508 或醫(yī)療設備的 IEC 62304)。
為 SEooC 定義 ASIL 級別
在所有安全標準中,都規(guī)定了安全級別。目標系統(tǒng)中故障的影響越嚴重,用于實施和驗證軟件的定義措施就越嚴格。
為 SEooC 選擇汽車安全完整性等級 (ASIL) 可能會有問題。簡單的答案是始終開發(fā)到最高ASIL級別(ASIL D),以便無需重大返工即可與任何項目集成,并且跨行業(yè)標準的映射也更容易。缺點是,它使這些 SEooC 比開發(fā)到較低 ASIL 的 SEooC 貴得多。
如何獲取 SEooC
SEooC可以提供嵌入式組件作為安全系統(tǒng)的核心部分,并降低成本。然而,設計嵌入式組件以便在安全環(huán)境中重復使用不可避免地很復雜,因此采購這些組件必須經過深思熟慮。為了獲得最佳結果,它們需要在能夠處理安全產品生命周期需求的環(huán)境中進行開發(fā)。
最佳實踐是開發(fā)完整的ISO 26262第6節(jié)安全元件,其中包含準備重復使用的假設和測試用例。這需要由項目管理系統(tǒng)支持,該系統(tǒng)允許每個客戶使用在半獨立項目中維護的 SEooC,以便整個軟件維護生命周期可以獨立應用于該項目。
審核編輯:郭婷
-
嵌入式
+關注
關注
5175文章
19979瀏覽量
324446 -
JAVA
+關注
關注
20文章
2992瀏覽量
114831
發(fā)布評論請先 登錄
嵌入式軟件測試與專業(yè)測試工具的必要性深度解析
嵌入式電力儀表在配電系統(tǒng)中的應用與選型

評論