승코딩당당당

[A-SPICE] 안전 요구사항과 해저드 분석 본문

개발/임베디드

[A-SPICE] 안전 요구사항과 해저드 분석

승코딩당당당 2026. 1. 29. 23:20

 

자동차 소프트웨어 개발에서 안전 요구사항과 해저드 분석

사고가 발생한 이후의 대응이 아니라, 사고를 사전에 예방하기 위한 핵심 활동이다.

 

해저드 분석 및 리스크 평가는 시스템에서 발생할 수 있는 위험 요인을 식별하고,

허용 불가능한 위험(Unacceptable Risk)을 예방하거나 완화하기 위한
안전 목표(Safety Goal)를 정의하는 과정이다.

 


 

해저드 분석 및 리스크 평가 프로세스 개요

해저드 분석과 리스크 평가는 일반적으로 다음과 같은 단계로 수행된다.

 

1. 시스템 정의 (System Definition)

가장 먼저 시스템이 수행해야 할 기능(System Functions)을 정의한다.
시스템이 무엇을 하고, 어떤 환경에서 운용되는지를 명확히 이해해야 이후 단계에서 발생 가능한 위험을 식별할 수 있다.

 

2. 해저드 분석 (Hazard Analysis)

시스템 정의를 바탕으로 다음 항목들을 식별한다.

  • Malfunction 식별
    시스템이 정상적으로 동작하지 않을 경우 발생할 수 있는 오작동
  • Hazard 식별
    오작동으로 인해 발생 가능한 위험 요소
  • Hazardous Event 정의
    오작동과 운용 상황이 결합되어 실제 사고로 이어질 수 있는 상황

 

3. 리스크 평가 (Risk Assessment)

식별된 해저드에 대해 위험도를 평가한다.

  • Severity (심각도)
    사고 발생 시 인명·재산에 미치는 영향의 크기
  • Exposure (노출 빈도)
    해당 상황이 발생할 가능성
  • Controllability (제어 가능성)
    운전자 또는 시스템이 위험을 회피할 수 있는지 여부

이 세 가지 요소를 기반으로 SIL 또는 ASIL과 같은 안전 등급을 결정하고,
이를 통해 안전 목표(Safety Goal)를 정의한다.

 


 

왜 이런 분석을 개발 초기에 수행할까?

해저드 분석과 리스크 평가는 개발 초기에 수행될수록 효과가 크다.

  • 운용 상황이 이후 테스트 단계에서 그대로 사용됨
  • 설계 전에 위험을 미리 검토 가능
  • 재작업을 줄이고, 품질 높은 테스트 결과를 도출
  • 안전을 고려한 설계가 가능

즉, 해저드 분석은 테스트를 위한 준비 단계이자 품질 확보를 위한 선행 활동이다.

 


 

SW 안전 요구사항 개발

SW 안전 요구사항은 HAZOP과 같은 위험원 분석 기법을 활용하여 도출된다.

기능 및 인터페이스 측면에서 위험원을 식별하고, 이 중 소프트웨어로 처리되어야 하는 항목을 SW 안전 요구사항으로 정의한다.

 

SW 안전 요구사항 유형

  • 결함 검출(Fault Detection)
    소프트웨어 또는 특정 컴포넌트에서 발생할 수 있는 결함을 검출하기 위한 요구사항
  • 고장 알림(Failure Alarm)
    소프트웨어 고장 발생 시 사용자에게 정확한 정보를 전달하기 위한 요구사항
  • 안전 상태 전환(Safe State Transition)
    결함 발생 시 사전에 정의된 안전 상태로 전환하기 위한 요구사항
  • 제한된 모드 운영(Degraded Mode Operation)
    즉각적인 안전 상태 전환이 어려운 경우,
    전환 시까지 제한된 기능만 수행하도록 하는 요구사항
  • 결함 허용 시간(Fault Tolerant Time)
    결함 발생 후 안전 상태로 전환되기까지 허용되는 시간에 대한 요구사항

또한 SW 설계 단계에서 FMEA, FTA 등의 안전 분석을 수행한 결과,

추가적인 대책이 필요하다고 판단되면, 이를 새로운 SW 안전 요구사항으로 도출한다.

 


 

안전 요구사항 검증의 중요성

안전 요구사항은 정의하는 것만으로 끝나지 않는다.
이해당사자의 기대사항이 의도한 대로 요구사항에 반영되었는지
반드시 검증해야 한다.

 

요구사항 검토 시 주요 항목

  • 완전성(Completeness)
    필요한 모든 정보를 포함하고 있는가
  • 명확성(Unambiguous)
    하나의 의미로 해석 가능한가
  • 실현 가능성(Feasible)
    기술적·자원적 제약 내에서 구현 가능한가
  • 추적 가능성(Traceable)
    상·하위 문서들과 연결되어 있는가

안전 요구사항은 설계, 구현, 테스트 단계의 기준이 되므로
모호하거나 검증 불가능한 요구사항은 곧 안전 리스크가 된다.

 


 

📝 정리

안전 요구사항과 해저드 분석은 자동차 소프트웨어 개발에서 선택이 아닌 필수 요소이다.

사전에 위험을 식별하고, 이를 요구사항으로 명확히 정의함으로써
이후 설계·구현·테스트 전 단계에서 일관된 안전 기준을 유지할 수 있다.