기능안전 소프트웨어 시험 실무 — IEC 61508-3·ISO 26262-6·IEC 62279·MISRA C
과정 규격의 시험에서 판정 대상은 제품이 아니라 증거다. IEC 61508-3 부속서 A·B 기법표를 SIL별 기법 선택표와 미채택 근거로 옮기고 구조 커버리지 미도달을 네 부류로 닫는 법, ISO 26262-6 단위(구문·분기·MC/DC)·아키텍처(함수·호출) 커버리지를 요구사항 기반 시험의 완전성 확인으로 쓰고 호스트·타깃 차이와 MC/DC 독립 쌍을 증거로 만드는 법, IEC 62279·EN 50716의 역할 독립성과 T1~T3 도구 등급, MISRA C의 범주·결정 가능성·판(2012·2023·2025)과 GEP·재분류·편차·준수 요약서, ISO 26262-8 도구 신뢰 수준(TCL) 판정과 기능안전 시험성적서 구성, 그리고 Automotive SPICE 4.0의 SWE.4~6 기본 실천·정보 항목을 시험 조직의 증거로 옮기고 N·P·L·F 판정과 능력 수준 규칙으로 모의 평가하는 법, 마지막으로 UNECE R155·R156 의 CSMS·SUMS 심사 증거와 변경 영향 판정, OTA 업데이트 검증까지 다룬다.
★ 과정 규격의 시험에서 판정 대상은 제품이 아니라 증거이고, 증거를 만든 사람과 도구까지 증거의 일부다.
학습 목표
이 모듈 한 줄 요약 — "사람이 다칠 수 있는 소프트웨어는 증거를 남겨야 한다". 보통의 시험은 "동작하는가" 를 본다. 기능안전 분야에서는 그것으로 부족하다 — "제대로 시험했다는 것을 문서로 증명할 수 있는가" 까지가 요구사항이다. 자동차· 철도·공장 설비처럼 고장이 사람을 다치게 할 수 있는 곳에서, 위험이 클수록 더 엄격한 방법과 더 많은 증거를 요구한다.
그래서 이 모듈은 시험 기법보다 증거를 만드는 절차에 무게가 있다.
모듈 25가 기능안전 규격의 계보와 등급을 지도로 그렸다면, 이 모듈은 그 규격들로 실제 시험 증거를 만들고 판정하는 쪽 이다. KOLAS 소프트웨어 인정범위에 시험 방법으로 올라가는 IEC 61508-3, ISO 26262-6, IEC 62279, MISRA C를 대상으로, 제조사가 무엇을 내야 하고 시험소가 무엇을 확인하는지를 다룬다.
61508-3 부속서 A·B의 두 겹 기법표를 기법 선택표와 미채택 근거로 옮기고, 구조 커버리지 미도달을 네 부류로 분류해 닫는 법에서 시작한다. ISO 26262-6에서는 단위·아키텍처 수준 구조 커버리지의 ASIL별 권고를 요구사항 기반 시험의 완전성 확인으로 쓰고, 호스트·타깃 차이와 MC/DC 독립 쌍 증거를 만든다. 철도의 IEC 62279와 EN 50716에서는 역할 독립성과 T1~T3 도구 등급을 조직도와 도구 등록부로 증명한다. MISRA C는 범주·결정 가능성·분석 범위와 판(2012·2023·2025)을 읽은 뒤, 정적 분석 결과를 GEP·재분류 계획·편차·준수 요약서로 구조화한다. 마지막으로 ISO 26262-8의 도구 신뢰 수준(TCL)을 사용 사례로 판정하고, 모든 산출물을 기능안전 시험성적서 한 건으로 묶는다.
마지막 레슨은 같은 증거를 프로세스 평가 의 눈으로 다시 본다. Automotive SPICE 4.0의 SWE.4~6 기본 실천과 정보 항목을 시험 조직의 증거로 옮기고, 추적성과 일관성이 합쳐진 실천을 표본으로 점검하며, N·P·L·F 판정과 능력 수준 규칙으로 모의 평가를 한다.
이 모듈을 관통하는 문장은 하나다. 과정 규격의 시험에서 판정 대상은 제품이 아니라 증거이고, 증거를 만든 사람과 도구까지 증거의 일부다.
완료 후 할 수 있는 것
- 61508-3의 수명주기 절과 부속서 A·B 표를 대응시키고, A 항목이 가리키는 B 표까지 전개해 SIL별 기법 선택표를 쓸 수 있다
- HR 미채택 근거를 적고, 구조 커버리지 미도달을 시험 누락·방어 코드·죽은 코드·도구 한계로 분류해 닫을 수 있다
- ISO 26262-6의 단위(구문·분기·MC/DC)·아키텍처(함수·호출) 구조 커버리지 권고를 ASIL별로 적용하고, 커버리지를 요구사항 기반 시험의 완전성 확인으로 쓸 수 있다
- 호스트·SIL·PIL·HIL 환경 차이와 계측/비계측 빌드 차이를 분석하고, 판정별 MC/DC 독립 쌍 표를 증거로 만들 수 있다
- EN 50128·IEC 62279·KS C IEC 62279·EN 50716의 관계를 설명하고, M 표기가 있는 기법표와 역할 독립성을 역할 배치표와 문서 간 이름 대조로 확인할 수 있다
- T1~T3 도구 등급을 분류하고, 알려진 답을 가진 샘플로 도구를 확인하는 기록을 기준선과 함께 관리할 수 있다
- MISRA C의 규칙·지시, 필수·요구·권고, 결정 가능성, 분석 범위가 정적 분석 결과의 증거 강도를 어떻게 바꾸는지 설명할 수 있다
- MISRA C 판 전환으로 판정이 달라지는 코드를 짚고, "MISRA C 준수" 계약 문구를 판·언어 표준·준수 체계·대상 코드로 확정할 수 있다
- 경고를 오탐·설정 문제·수정·편차로 트리아지하고, GEP·재분류 계획·편차 허가/기록·준수 요약서를 대조 가능한 세트로 만들 수 있다
- 채택 코드를 분리해 준수 주장 범위를 정하고, 시험소 독립 재수행 결과와 제조사 결과의 차이 원인을 분류할 수 있다
- 사용 사례별로 TI·TD·TCL을 판정하고, 사용 방식 변경과 적격성 확인 방법(1a~1d) 사이의 비용을 비교할 수 있다
- 기능안전 시험성적서를 범위·검토 증거·재수행·표본 시험·발견 사항·의견·한계로 구성하고, 수행하지 않은 것을 명시할 수 있다
- Automotive SPICE 4.0 SWE.4~6의 기본 실천을 정보 항목 증거로 옮기고, 링크가 아닌 일관성을 표본으로 점검하며, N·P·L·F 판정과 능력 수준 규칙으로 모의 평가를 수행할 수 있다
채용시장에서의 위치
이 모듈의 수요처는 넷이다. 자동차 전장·철도 신호·산업 제어 기기 제조사의 소프트웨어 검증 엔지니어, 안전 관련 소프트웨어를 납품하는 협력사의 기능안전·품질 담당, 코딩 규칙·기능안전 시험을 KOLAS 인정범위로 갖춘 시험기관의 시험원, 그리고 정적 분석·커버리지 도구 벤더의 기술 지원·적격성 확인 컨설턴트 다. 공고에는 "ISO 26262 단위 검증", "MISRA C 정적 분석 및 편차 관리", "MC/DC 커버리지", "도구 적격성(TCL)", "EN 50128/50716 V&V"가 반복해서 나온다.
이 영역에서 흔한 인력은 도구를 돌릴 수 있는 사람 이다. VectorCAST·LDRA·Polyspace 같은 도구 사용 경험은 공고에 자주 적히지만, 그것만으로는 차별화되지 않는다. 드문 것은 도구 결과를 심사자가 받아들이는 증거로 구조화하는 능력 이다. 커버리지 97%를 요구사항 누락과 방어 코드로 나눠 설명할 수 있는 사람, 수천 건의 MISRA 경고를 GEP와 편차 허가로 정리할 수 있는 사람, 도구 하나를 두고 "리뷰를 남길 것인가 적격성을 확인할 것인가"를 비용으로 제안할 수 있는 사람이다.
철도 쪽은 특히 사람이 부족하다. 역할 독립성 요구 때문에 검증자·확인자를 다른 조직에서 구해야 하는 경우가 많아, 규격을 아는 외부 V&V 인력의 수요가 꾸준하다. EN 50716 전환은 유럽 사업을 하는 조직의 문서 체계 전반을 다시 쓰게 만들고 있어, 전환 대응 경험이 곧 경력이 된다.
면접에서 힘을 갖는 답변은 "ASIL D 프로젝트를 해봤다"가 아니라 "어떤 증거가 왜 반려됐고 그것을 어떻게 구조로 막았는가" 다. 커버리지 숫자를 맞추려던 케이스를 걷어내고 미도달 분석으로 대체한 이야기, 오탐과 편차가 섞인 기록을 트리아지 규칙으로 분리한 이야기, 커버리지 도구 버전 차이 하나로 대조표 전체를 다시 만든 뒤 도구 등록부를 CI 설정과 묶은 이야기가 이 모듈의 성숙도를 보여준다.
레슨 (8개)
- 고급약 30분
IEC 61508-3 부속서 A·B 기법표 읽기 — SIL별 권고를 시험 계획서로 옮기기
기능안전 소프트웨어 규격은 "이렇게 하라"가 아니라 기법 목록과 SIL별 권고 강도를 표로 준다. IEC 61508-3의 수명주기 절과 부속서 A·B의 두 겹 표 구조, HR·R·---·NR과 대체 기법 표기를 읽고, 동적 분석·구조 커버리지(B.2)와 검증(A.9) 표를 기법 선택표와 미채택 근거로 옮기는 법을 다룬다.
- 고급약 35분
ISO 26262-6 단위·통합 검증 — ASIL별 방법 조합과 구조 커버리지 증거 만들기
모듈 25는 ASIL이 오르면 테스트가 강해지는 경향을 보여줬다. 이 레슨은 그 표를 실제 증거로 바꾼다. Part 6의 검증 절 구조, 단위 수준(구문·분기·MC/DC)과 아키텍처 수준(함수·호출) 구조 커버리지의 ASIL별 권고, 커버리지를 요구사항 기반 시험의 완전성 확인으로 쓰는 법, 호스트·타깃 환경 차이와 MC/DC 독립 쌍 증거의 모양을 다룬다.
- 고급약 30분
IEC 62279와 EN 50716 — 철도 소프트웨어의 역할 독립성·기법표·도구 등급을 증거로 만들기
철도 소프트웨어 규격은 번호가 셋이다 — 국제 IEC 62279, 국가 KS C IEC 62279, 유럽 EN 50128의 후속 EN 50716. 번호 관계를 정리하고, 필수(M) 표기가 있는 기법표, SIL이 오를수록 강해지는 역할 독립성, T1~T3 도구 등급을 시험소가 확인하는 증거로 옮긴 뒤 EN 50716 전환이 시험 계획에 주는 변화를 다룬다.
- 고급약 30분
MISRA C — 지침의 범주·결정 가능성·분석 범위를 읽고 판(2012·2023·2025)을 확정하기
기능안전 규격은 코딩 표준을 요구하고, C 언어 프로젝트에서 그 표준은 대부분 MISRA C다. 규칙과 지시의 차이, 필수·요구·권고 범주, 결정 가능성과 분석 범위가 정적 분석 결과의 신뢰도를 어떻게 바꾸는지 읽고, 대표 지침을 코드로 확인한 뒤 2012판에서 개정안·2023판·2025판으로 이어지는 판 관계를 계약 문구로 확정하는 법을 다룬다.
- 고급약 30분
정적 분석 결과를 준수 증거로 — GEP·재분류 계획·편차 기록·준수 요약서 만들기
정적 분석 도구가 뱉은 수천 건의 경고는 그 자체로 증거가 아니다. MISRA Compliance 체계의 네 문서 — 지침별 확인 수단을 정한 GEP, 범주 조정을 기록한 재분류 계획, 편차 허가와 편차 기록, 지침별 준수 요약서 — 로 결과를 구조화하고, 위반 트리아지·채택 코드 분리·시험소 독립 재수행 대조표·CI 게이트까지 설계한다.
- 고급약 35분
도구 신뢰 수준과 기능안전 시험성적서 — TCL 판정부터 증거 묶음 한 건을 닫기까지
증거를 만든 도구를 믿을 수 없으면 증거도 믿을 수 없다. ISO 26262-8의 도구 영향(TI)·오류 검출(TD)·신뢰 수준(TCL) 판정과 적격성 확인 방법을 사용 사례 단위로 적용하고, 레슨 1~5의 산출물을 시험소가 발행하는 기능안전 시험성적서 한 건 — 범위, 검토한 증거, 독립 재수행, 표본 시험, 판정과 의견의 구분, 한계 — 으로 묶는다.
- 고급약 40분
Automotive SPICE 4.0 평가 대응 실습 — SWE.4~6 기본 실천을 증거로, NPLF 판정과 능력 수준 규칙까지
모듈 25에서 Automotive SPICE가 일하는 방식을 평가한다는 지도를 봤다. 이 레슨은 2023년 11월 발행된 PAM 4.0의 SWE.4·SWE.5·SWE.6 기본 실천과 정보 항목을 시험 조직의 증거로 옮기고, 추적성과 일관성이 한 실천으로 합쳐진 의미, 회귀 선택의 근거, SUP.1 품질보증 독립성과 SUP.9·SUP.10과의 연결, 과정 속성 N·P·L·F 판정 비율과 능력 수준 결정 규칙, 모의 평가와 흔한 약점을 다룬다.
- 고급약 35분
UNECE R155·R156 대응 — CSMS·SUMS 심사 증거와 OTA 업데이트 검증
모듈 25 에서 R155·R156 이 무엇을 요구하는지 봤다. 이 레슨은 그 요구를 시험 조직의 작업으로 옮긴다 — 체계 심사가 실제로 꺼내 보는 증거, RXSWIN 을 관리하기 위해 시험이 남겨야 하는 것, 승인 상태를 바꾸는 변경인지 판정하는 절차, 그리고 OTA 업데이트 자체를 검증 대상으로 설계하는 방법이다.