本文將探討為什麼驗證(Verification)與確認(Validation)對 ADAS 至關重要、工程師在測試這些系統時所面臨的挑戰,以及來自 Parasoft 的測試自動化工具如何提升 V&V 的效率與準確性。
汽車產業在先進駕駛輔助系統(ADAS)領域已取得重大進展。這些系統涵蓋智慧限速輔助、自動車距控制巡航、車道維持輔助、自動緊急煞車等功能,旨在輔助駕駛者並提升汽車安全性。
儘管 ADAS 對提升汽車安全性具有關鍵作用,但確保這些系統的可靠性與開發新功能同樣重要。因此,在 ADAS 開發中,驗證與確認(V&V)流程不可或缺。它們協助工程師確認系統在各種情境下皆能正常運作。若缺乏嚴謹測試,ADAS 可能在實際路況中失效,導致安全風險與法規違規問題。
認識「驗證與確認」
在軟體與系統開發中,驗證與確認是兩個不同但相互關聯的流程。
「驗證」是指從開發初期即對產品、服務或系統進行評估,以判定是否符合既定的法規、需求與規格。這是一種內部流程,著重於審查文件、設計、程式碼與程式,以確認是否依據定義標準正確建構。
由於驗證無需執行程式碼,因此通常被稱為靜態測試。常見的驗證活動包括文件審查、逐步檢視、稽核與人工分析。
「確認」是指確保軟體產品在預期的環境中能滿足其目標使用者的需求與期望。與驗證不同,確認是一種外部流程,需實際執行產品進行測試,以驗證其功能正確且符合使用者需求。由於確認需執行程式碼,因此通常被稱為動態測試。常見的確認技術包括黑箱測試、白箱測試及各類非功能性測試。
ADAS 驗證與確認的挑戰
儘管驗證與確認對 ADAS 至關重要,但由於技術複雜性、安全標準與即時效能要求,ADAS 的 V&V 面臨諸多挑戰。以下列出工程師在測試 ADAS 時常見的幾項主要挑戰。
軟體與演算法的複雜性
ADAS 仰賴多種感測器(雷達、光達(LiDAR)、攝影機)、即時資料處理、機器學習模型與控制演算法等組件共同運作。這些元件需無縫整合,準確解讀環境並輔助駕駛者。由於 ADAS 必須在不同天候、光照與交通狀況下運作,工程師需模擬並測試數千種情境,確保其效能穩定。
由於系統行為的複雜度極高,無法靠人工驗證每一種可能的狀況。因此,多家車廠(OEM)、一級供應商及研究機構合作制訂了標準 ISO/PAS 21448,即所謂的 SOTIF(預期功能安全)。
該標準解決 ADAS 中超出傳統功能安全(ISO 26262)範疇的安全議題。不同於 ISO 26262 著重於預防硬體與軟體故障所造成的失效,SOTIF 著眼於即使系統無故障,卻因設計限制、感測器誤判或意料之外的操作情境所導致的風險。
工程師也需要軟體測試工具來:
- 管理系統複雜度。
- 有效率地針對大量情境進行測試。
- 在車輛實際上路前發現潛在失效。
遵循車用標準與法規
ADAS 的法規遵循仰賴多項標準:
- SOTIF — 預期功能安全
- ISO 26262 — 功能安全
- Automotive SPICE — 軟體開發成熟度
ISO 26262 要求嚴格的 V&V 流程,並導入以風險為基礎的車用安全完整性等級(ASIL)。然而,隨著自動化技術的發展與自駕系統(ADS)的普及,新法規不斷出現。
例如,自 2024 年 9 月起生效的 UN R171,適用於 59 個國家的駕駛控制輔助系統(DCAS),著重於駕駛員參與度與系統表現,並對駕駛監控、系統介入與操作安全性訂定明確要求。
面對眾多標準與法規,符合法規是一項高度複雜且耗時的任務,需進行詳實文件管理與大量測試。工程師可透過將持續測試整合進 CI/CD 流程,並運用以下測試自動化工具以提升合規效率:
- 靜態分析
- 單元測試
- 結構性程式碼覆蓋率分析
- 需求可追溯性
每項標準皆有特定要求,但在安全分析、軟體成熟度與風險緩解等面向存在重疊。完善的文件資料,如安全計畫、技術性安全需求與軟體安全案例,以及從需求到測試結果的可追溯性,都是不可或缺的。
以下為確保符合法規所需的關鍵作法:
- 全開發階段維持詳實文件與可追溯性。
- 採用有結構的 V 模型流程,結合敏捷式開發方法。
- 定期進行安全稽核與獨立評估。
多樣化情境下的即時效能表現
ADAS 系統需即時運作,並處理大量感測資料以做出即時決策。若在偵測汽車、行人或路面危險物時延遲,可能導致事故。因此,確認階段必須在各種情境下測試 ADAS,例如:
- 交通繁忙的市區道路
- 速度變化與匯流頻繁的高速公路
- 行人突發穿越道路
- 嚴峻天候條件,如濃霧、豪雨與降雪
要建立一個能準確重現真實駕駛情境的健全測試框架相當具有挑戰性。ADAS 工程師仰賴模擬式確認與 HIL(硬體在環測試)方式,無需耗費數百萬公里的道路測試,即可建立接近真實的測試環境。
Parasoft C/C++test 支援 HIL 測試,也可稱為跨平台測試。雖然 HIL 測試可視為整合測試的一環,但並非所有整合測試皆涉及 HIL。
軟體整合測試可以完全在虛擬環境中進行,而 HIL 測試則必須讓實體硬體與模擬環境互動。此能力可實現 shift-left 的目標測試、提升程式碼覆蓋率,並能整合進 CI/CD 流程中。
此外,從目標系統收集測試結果與程式碼覆蓋率資料,對於確認與法規符合性至關重要。但由於目標硬體的實體連接能力可能受限,資料回收難度提高。幸好,Parasoft 的 C 與 C++ 測試解決方案支援從多種介面(如串列埠、Ethernet、JTAG 等)擷取資料。
ADAS 中 AI 與機器學習的挑戰
許多 ADAS 功能,例如自動車距控制巡航、車道偏移警示與物體偵測,均透過 AI/ML 技術來強化決策能力。AI 能即時處理大量感測器資料,使其成為現代汽車不可或缺的技術。
例如,自駕系統需依賴 AI 解讀來自 LiDAR、攝影機與雷達的輸入,以在複雜環境中導航。除了自駕應用外,AI 也強化了預測性維護、個人化座艙體驗與電動車的能源效率。然而,AI 雖提升了汽車的感知與自動化能力,也帶來了在安全性、資訊安全與認證需求上的新挑戰。
然而,像 Waymo 此類公司已成功展現 AI 的應用成果,並克服 AI 非確定性所引發的安全疑慮、資安風險、即時限制與認證相關挑戰。
目前,Waymo 的自駕車隊正在全球擴展。由 AI 驅動的功能如自動車距巡航與車道維持輔助已成為主流,反映出消費者對更智慧、更安全汽車的高度需求。
為因應這些挑戰,工程師必須理解 AI 在軟體測試中的應用方式,以及在 ADAS 中導入 AI 與機器學習時,如何滿足嚴格的安全性與資安合規要求。
Parasoft 的測試解決方案如何確保 ADAS 驗證與確認
Parasoft 的測試解決方案透過以下方式確保 ADAS 驗證與確認(V&V):
- 自動化關鍵測試流程。
- 提升軟體品質。
- 確保符合 ISO 26262、ISO 21448(SOTIF)及 Automotive SPICE 等產業標準。
ADAS 軟體極為複雜,必須經過嚴謹的測試來處理真實世界的駕駛情境、邊界情況以及安全關鍵功能。
Parasoft 的靜態分析工具有助於強制遵循 MISRA、AUTOSAR C++14 及 CERT C 等程式碼規範,並可在開發初期即找出潛在缺陷。透過偵測與記憶體管理、並行處理以及未定義行為相關的問題,靜態分析能降低因軟體錯誤影響 ADAS 效能的風險。
單元測試與程式碼結構覆蓋率可進一步強化 V&V,確保各元件功能正確並符合安全要求。Parasoft 支援自動化測試產生、錯誤注入測試以及變異測試,有助於提升軟體韌性。
針對整合與系統層級的驗證,Parasoft 提供需求追蹤與合規報告功能,確保從需求到測試執行皆具備完整可追溯性。這對於滿足 ISO 26262 所定義的 ASIL 要求尤為關鍵。此外,透過 HIL(Hardware-in-the-Loop)整合,可在模擬環境中驗證 ADAS 演算法,避免直接部署到實車環境中產生風險。
Parasoft 的方案亦支援將測試自動化整合至 CI/CD 流程中,使 ADAS 軟體能在開發期間持續驗證。此整合可快速偵測回歸錯誤,協助團隊維持高軟體品質,同時加速產品上市時程。
ADAS 開發團隊透過完整的自動化測試解決方案、合規驗證機制及風險導向的測試策略,可提升系統安全性、降低驗證工作負擔,並加速先進駕駛輔助系統的上市進度。
結論
為了維持 ADAS 系統的安全性、標準化與大眾信任,驗證與確認(V&V)扮演關鍵角色。然而,傳統測試方法難以因應 ADAS 驗證日益增加的複雜度。
ADAS 團隊可透過如 Parasoft 等自動化測試方案來簡化並強化驗證流程,提前發現缺陷、提升合規程度,並全面加強系統效能。
本文由parasoft提供