CppDepend
기능 안전 — 자동차

CppDepend를 통한 자동차 C/C++ ISO 26262 컴플라이언스

CppDepend가 자동차 팀이 ISO 26262 목표를 충족하도록 돕는 방법: 정적 분석, MISRA 컴플라이언스, 아키텍처 제어, ASIL 준비 증거 및 감사 보고서.

CppDepend가 기본으로 지원하는 것. CppDepend는 다음에 대한 내장 규칙 세트를 제공합니다: MISRA C/MISRA C++, CWE, CERT C/CERT C++ 및 AUTOSAR C++14 — 다른 표준은 없습니다. 이 표준을 포함한 다른 모든 표준은 다음을 통해 적용됩니다: 사용자 정의 CQLinq 규칙 팀이 작성하고(필요시 당사 지원), 아키텍처 검증 및 CI 품질 게이트를 추가합니다.

ISO 26262 은 도로 차량의 전기 및 전자 시스템에 대한 국제 기능 안전 표준입니다. 개념부터 폐기까지의 안전 수명 주기를 정의하고 소프트웨어를 자동차 안전 무결성 수준(ASIL A~D)으로 분류합니다. C 및 C++로 작성된 소프트웨어 단위의 경우 표준은 정적 코드 분석, 코딩 지침(MISRA) 및 제어된 소프트웨어 아키텍처를 명시적으로 권장합니다.

ISO 26262가 C/C++ 코드베이스에 기대하는 것

  • 코딩 지침 적용: ISO 26262 파트 6은 언어 하위 집합 제어를 위해 MISRA C/C++를 권장 — 더 높은 ASIL은 체계적 적용의 증명을 요구합니다.
  • 정적 분석: 결함, 데드 코드, 초기화되지 않은 변수 및 복잡성은 수동 리뷰만으로가 아니라 도구 기반 분석으로 탐지되어야 합니다.
  • 아키텍처 제약: 소프트웨어 구성 요소 간 간섭으로부터의 자유 — 파티셔닝 및 제어된 인터페이스.
  • 추적성 및 증거: 모든 요구 사항에는 감사자가 검토할 수 있는 검증 가능하고 반복 가능한 증거가 필요합니다.

CppDepend가 ISO 26262 워크플로를 지원하는 방법

  • 내장 MISRA C/C++ 규칙 세트 심각도 매핑, 기준선 관리 및 정당화가 있는 억제 기능 — 파트 6의 코딩 표준 기둥.
  • 사용자 정의 CQLinq 규칙 프로젝트별 안전 규칙을 인코딩하기 위해: 금지 함수, 재귀 금지, 동적 메모리 제한, 명명 및 계층화 규칙.
  • 아키텍처 검증: 구성 요소 파티셔닝을 적용하고 ASIL 등급과 QM 코드 간의 금지된 결합이 차량에 도달하기 전에 탐지합니다.
  • 기술 부채 및 품질 게이트: 위반, 복잡성 및 커버리지 임계값으로 CI 시점에 안전하지 않은 코드를 차단합니다.
  • 감사 준비 보고서: 안전 사례 문서화 요구에 맞춘보내기 가능한 타임스탬프 분석 보고서.

관련 산업 및 사례 연구

관련 코딩 표준

MISRA C++ · AUTOSAR C++14 · IEC 61508 · ISO 21434

CppDepend가 코드베이스에서 무엇을 발견하는지 확인하세요

자체 프로젝트에서 분석 실행: 코딩 표준, 아키텍처 검증, 기술 부채 및 품질 게이트 — 몇 분 만에.