FMEA 실무 ⑤: 고쳤다고 끝이 아니다, 시험과 종결까지
고장·리스크 분석 · FMEA 실무 시리즈 5/5 처음 읽는 분은 ① FMEA 첫걸음 부터 차례로 따라오세요. 앞선 글에서 용어와 SW 한 행, 현재 관리, AI 활용, 평가와 조치를 살펴봤습니다. 이제 “코드를 고쳤습니다” 다음에 무엇을 남겨야 하는지 같이 보겠습니다. 처음 맡았다면 완료 칸부터 채우기보다, 다른 사람이 그 변경을 확인할 수 있는지 생각해 보세요. 아래는 가상 냉각용 전동 펌프의 SW 일부만 다룬 교육 예제입니다. 수치·버전·관측값은 실제 차량 사양이나 실행·승인 기록이 아닙니다. 1. FMEA 한 행으로는 코드를 고칠 수 없습니다 우리 행의 문제는 ‘새 메시지가 없어도 과거 명령을 유효하다고 판단하는 것’입니다. FMEA 행은 원인·고장모드·영향과 관리, 조치를 연결하는 분석 기록 이지 상세 설계서나 시험 명세서가 아닙니다. ‘타임아웃 개선’만 적어서는 개발자와 시험자가 서로 다른 동작을 떠올릴 수 있습니다. 그래서 조치를 확인 가능한 요구사항 으로 풀어 씁니다. ms는 밀리초, 1초의 1,000분의 1입니다. 마지막 유효 수신 시각을 저장하고, 현재 시각에서 그 시각을 뺀 경과시간을 비교합니다. 메시지 개수를 세어 100ms를 대신하는 것이 아닙니다. 정상 상태: 받은 유효 명령을 선택합니다. CMD_NORMAL은 이 정상 선택을 표시하는 예제 이름이며, 고정된 회전수 값이 아닙니다. commandValid는 명령이 유효하면 1, 무효하면 0입니다. 이미 통신 무효 상태라면 메시지 하나가 들어왔다고 곧바로 정상으로 돌아가지 않습니다. 무효화: 마지막 유효 수신 후 100ms 이상이면 첫 유효성 태스크에서 commandValid=0, selectedCommand=CMD_BACKUP으로 바꿉니다. 앞 변수는 명령의 유효 여부, 뒤 변수는 실제 선택한 명령입니다. 복귀 대기: 유효 메시지 3개를 연속으로 받고, 각각의 수신 간격이 100ms 미만이어야 합니다. 그 뒤 첫 태스크에서 정상 복귀합니다. 메시지의 CRC·카운터...