스마트 팩토리, 자율 주행, 우주, 항공 등 현대의 시스템은 과거와 비교할 수 없을 정도로 복잡해졌습니다. 단순한 부품 고장이 아니라, '시스템 컴포넌트 간의 잘못된 상호작용'이 대형 사고로 이어지는 경우가 많아졌습니다.

<복잡화 고도화되는 시스템 분석에 STPA 분석의 수요가 증가>
이러한 현대 시스템의 복잡성을 통제하기 위해 MIT에서 개발된 혁신적인 안전 분석 기법이 바로 STPA(Systems Theoretic Process Analysis)입니다. 오늘은 저희 VisualPro 소프트웨어를 이용해 '반도체 공장의 안전'을 주제로 STPA 분석을 어떻게 진행하는지 함께 진행해보려고 합니다.
※ 본 자료의 위험과 관련된 시나리오와 그 분석 내용은 AI의 도움을 받아 작성된 가상의 내용이며 실재하는 특정 단체나 개인과는 관련이 없습니다.
Step 1: 무엇을 막아야만 하는가? (손실과 위험원의 정의)
가장 먼저 해야 하는 일은 시스템에서 발생하면 안되는 상황, 손실(Loss)과 그 손실을 유발하는 시스템 상태인 위험원(Hazard)을 식별하는 것입니다. 이번 분석에서는 다음과 같은 손실들을 도출해냈습니다.
ID | 손실 | 상세 | 추적 관계 |
Loss-1 | 인명 손실 및 부상 (독성물질 가스 누출, 폭발, 직업병, 물리적 안전사고) |
| H-1, H-2, H-3, H-5 |
Loss-2 | 환경 오염 (유해 가스의 대기 확산, 독성 폐수 무단 배출, 토양 오염) |
| H-1, H-4 |
Loss-3 | 재무적 손실 및 장비 파손 (화재/폭발에 의한 고가 설비 파손, 제품 대량 폐기 및 리콜) |
| H-1, H-2, H-3, H-4, H-5 |
Loss-4 | 미션(생산) 실패 (사고로 인한 공장 전면 셧다운, 수율 확보 실패, 공급망 교란) |
| H-1, H-2, H-4, H-5 |
그리고 이러한 손실을 일으키는 원인으로 다음과 같이 위험원을 정의하였습니다.
ID | 위험원 | 상세 | 추적 관계 |
H-1 | 맹독성 및 부식성 화학물질 누출 상태 |
| Loss-1, Loss-2, Loss-3, Loss-4 |
H-2 | 인화성/폭발성 가스의 밀폐공간 체류 및 점화원 노출 상태 |
| Loss-1, Loss-3, Loss-4 |
H-3 | 고에너지원(방사선, 고온 등)의 차폐 및 인터락 무력화 상태 |
| Loss-1, Loss-3 |
H-4 | 유해 오염물질 정화 설비 우회 및 미처리 배출 상태 |
| Loss-2, Loss-3, Loss-4 |
H-5 | 위험 작업 시 에너지 차단 절차(LOTO) 미준수 및 결함 방치 상태 |
| Loss-1, Loss-3, Loss-4 |
Step 2: 시스템은 어떻게 통제되는가? (제어 구조 모델링)
시스템의 구성 요소들이 서로 어떤 명령을 내리고 피드백을 주고받는지 시각화하는 단계입니다. VisualPro를 사용하면 복잡한 다이어그램도 손쉽게 그릴 수 있습니다.
반도체 공장 제어 구조에서는 크게 4가지 컨트롤러(Controller)가 하위의 반도체 제조 공정 및 오염 방지 설비(Controlled Process)를 제어하는 구조를 가집니다.
- 정부 및 규제/표준 기관: 법규 준수를 강제하고 시정 명령을 내립니다.
- 최고 경영진 및 전사 EHS 조직: SOP(표준작업절차서)를 하달하고 작업 허가제도를 운영합니다.
- 현장 통합 시스템 및 안전 관리자: 설비 자동 Interlock 및 비상 차단(EMO)을 수행합니다.
- 현장 작업자 및 유지보수 인력: 화학장비를 매뉴얼로 조작하고 LOTO를 이행합니다.

<반도체 공장의 제어 구조 다이어그램(Control Structure Diagram)>
이 Master 구조를 도식화 하면 다음과 같습니다.
1. Human
현장 작업자 및 유지보수 인력 |
유형 | Human | Level | 1 |
책임 | 프로세스 모델 |
|
|
제어 명령 | 제어 명령 대상 | 피드백 | 피드백 대상 |
화학장비 매뉴얼 조작 및 LOTO 이행 | 반도체 제조 공정 및 오염 방지 설비 | 안전 사각지대 및 위험(아차사고) 제보 | 최고 경영진 및 전사 EHS 조직 |
2. Controller
최고 경영진 및 전사 EHS 조직 |
유형 | Controller | Level | 1 |
책임 | 프로세스 모델 |
|
|
제어 명령 | 제어 명령 대상 | 피드백 | 피드백 대상 |
SOP 하달 및 작업 허가제도 운영 | 현장 작업자 및 유지보수 인력 | 환경영향지표(ESG) 보고 및 단기 사고 신고 | 정부 및 규제/표준 기관 |
안전 목표 하달 및 현장 감독 지시 | 현장 통합 시스템 및 안전 관리자 |
|
|
현장 통합 시스템 및 안전 관리자 |
유형 | Controller | Level | 1 |
책임 | 프로세스 모델 |
|
|
제어 명령 | 제어 명령 대상 | 피드백 | 피드백 대상 |
설비 자동 Interlock 및 비상 차단(EMO) | 반도체 제조 공정 및 오염 방지 설비 | 현장 진단 데이터 및 안전 지출 현황 보고 | 최고 경영진 및 전사 EHS 조직 |
3. Controlled Process
반도체 제조 공정 및 오염 방지 설비 |
유형 | Controlled Process | Level | 1 |
제어 명령 | 제어 명령 대상 | 피드백 | 피드백 대상 |
정화 폐수 및 배기가스 외부 배출 | 인근 생태계 외부 요인 및 지역사회 | 물리적 압력 게이지 지시 및 비상 사이렌 알람 | 현장 작업자 및 유지보수 인력 |
|
| 실시간 데이터 스트리밍 (가스 농도, 진동 등) | 현장 통합 시스템 및 안전 관리자 |
4. External Controller
정부 및 규제/표준 기관 |
유형 | External Controller | Level | 1 |
제어 명령 | 제어 명령 대상 | 피드백 | 피드백 대상 |
법규 준수 강제 및 시정 명령 | 최고 경영진 및 전사 EHS 조직 |
|
|
Step 3: 어떤 제어 명령이 위험을 만드는가? (UCA 도출)
이제 UCA(Unsafe Control Action, 불안전한 제어 행동)를 찾을 차례입니다. 제어 명령이 제공되지 않거나, 잘못 제공되거나, 타이밍이 맞지 않을 때 발생하는 위험을 분석합니다. VisualPro를 통해 아래와 같은 치명적인 UCA들을 식별할 수 있었습니다.
- (UCA-N-1): 최고 경영진/EHS 조직이 사전 위험성 평가 필수 작업 허가를 미발급하여, 작업자가 위험 방치 상태로 점검하게 되는 경우 (Not providing).
- (UCA-P-2): 가스 차단이 끝나지 않았는데, 생산 일정 압박으로 임의로 허가를 오승인하는 경우 (Providing).
- (UCA-N-9): 현장 작업자가 유해 에너지 밸브를 물리적으로 잠그지(LOTO) 않고 장비 개방을 진행하는 경우.
전체 UCA 도출 내역을 도식화 하면 아래와 같습니다.
제어 명령 | Level | UCA | Flag | 해석 | 가정 |
SOP 하달 및 작업 허가제도 운영
최고 경영진 및 전사 EHS 조직 -> 현장 작업자 및 유지보수 인력 | 1 | Not providing causes hazard | (UCA-N-1) 사전 위험성 평가 필수 작업 허가를 미발급하여 작업자가 위험 방치 상태로 점검 [H-1, H-2] |
|
|
|
Providing causes hazard | (UCA-P-2) 가스차단이 안 끝났으나 생산일정 압박으로 임의로 허가를 오승인 [H-1, H-2] |
|
|
|
Too early, too late, out of order | (UCA-T-3) 잔류 독성 가스 퍼지(Purge) 완료 전 너무 일찍 진입을 허가 [H-1] |
|
|
|
SOP 하달 및 작업 허가제도 운영
최고 경영진 및 전사 EHS 조직 -> 현장 작업자 및 유지보수 인력 | 1 | Stopped too soon, applied too long | (UCA-S-4) 위험 환경 변동에도 재평가 없이 기존 허가 승락 상태를 너무 오래 방치 [H-1] |
|
|
|
법규 준수 강제 및 시정 명령
정부 및 규제/표준 기관 -> 최고 경영진 및 전사 EHS 조직 | 1 | Not providing causes hazard |
|
|
|
|
Providing causes hazard |
|
|
|
|
Too early, too late, out of order |
|
|
|
|
법규 준수 강제 및 시정 명령
정부 및 규제/표준 기관 -> 최고 경영진 및 전사 EHS 조직 | 1 | Stopped too soon, applied too long |
|
|
|
|
설비 자동 Interlock 및 비상 차단(EMO)
현장 통합 시스템 및 안전 관리자 -> 반도체 제조 공정 및 오염 방지 설비 | 1 | Not providing causes hazard | (UCA-N-5) 가스 누출 징후 감지 후에도 Interlock/EMO 비상 제어를 제공하지 않아 누출 방치 [H-1, H-2] |
|
|
|
Providing causes hazard | (UCA-P-6) 공정 중 센서 오작동으로 무리하게 EMO를 작동, 필수 냉각까지 차단 [H-1] |
|
|
|
Too early, too late, out of order | (UCA-T-7) 누출 알림 릴레이 지연 등으로 비상 작동이 너무 늦어 치명적 농도 초과 [H-1] |
|
|
|
설비 자동 Interlock 및 비상 차단(EMO)
현장 통합 시스템 및 안전 관리자 -> 반도체 제조 공정 및 오염 방지 설비 | 1 | Stopped too soon, applied too long | (UCA-S-8) 위험 인자 미해결 상태에서 안전 차단을 너무 일찍 해제하여 2차 유출 초래 [H-1] |
|
|
|
안전 목표 하달 및 현장 감독 지시
최고 경영진 및 전사 EHS 조직 -> 현장 통합 시스템 및 안전 관리자 | 1 | Not providing causes hazard |
|
|
|
|
Providing causes hazard |
|
|
|
|
Too early, too late, out of order |
|
|
|
|
안전 목표 하달 및 현장 감독 지시
최고 경영진 및 전사 EHS 조직 -> 현장 통합 시스템 및 안전 관리자 | 1 | Stopped too soon, applied too long |
|
|
|
|
정화 폐수 및 배기가스 외부 배출
반도체 제조 공정 및 오염 방지 설비 -> 인근 생태계 외부 요인 및 지역사회 | 1 | Not providing causes hazard |
|
|
|
|
Providing causes hazard |
|
|
|
|
Too early, too late, out of order |
|
|
|
|
정화 폐수 및 배기가스 외부 배출
반도체 제조 공정 및 오염 방지 설비 -> 인근 생태계 외부 요인 및 지역사회 | 1 | Stopped too soon, applied too long |
|
|
|
|
화학장비 매뉴얼 조작 및 LOTO 이행
현장 작업자 및 유지보수 인력 -> 반도체 제조 공정 및 오염 방지 설비 | 1 | Not providing causes hazard | (UCA-N-9) 유해 에너지 밸브를 물리적(LOTO)으로 잠그지 않고 장비 개방 진행 [H-3, H-5] |
|
|
|
Providing causes hazard | (UCA-P-10) 엉뚱한 밸브에 LOTO를 체결하거나 환풍이 필수인 스크러버 배기 밸브를 잘못 잠금 [H-3, H-5] |
|
|
|
Too early, too late, out of order | (UCA-T-11) 작업 환경에 투입된 한참 뒤에 늦게 LOTO 잠금을 실시하여 초기 방출 가스 노출 [H-5] |
|
|
|
화학장비 매뉴얼 조작 및 LOTO 이행
현장 작업자 및 유지보수 인력 -> 반도체 제조 공정 및 오염 방지 설비 | 1 | Stopped too soon, applied too long | (UCA-S-12) 동료가 체류 중이고 주변 확인 전인데 LOTO 잠금을 너무 일찍 풀어버려 가스/전력 누출 [H-5] |
|
|
|
Step 4: 어째서 그런 UCA가 발생했는가? (손실 시나리오 발굴)
불안전한 제어 행동(UCA)이 왜 발생할 수밖에 없었는지 원인(시나리오)을 추적합니다. 시스템의 결함이나 센서 오류, 작업자의 착각 등을 모두 포함합니다.
- 시스템 오판 (LS-1): 전날 불산 가스 미세 누출 정황이 있었음에도, EHS 시스템이 이를 인지하지 못하고 '단순 조명/필터 교체'로 판단하여 위험성 평가 허가를 누락합니다.
- 심리적 압박 (LS-4): 배기가스 장치 고장 알람과 생산팀의 긴급 정비 독촉이 동시 다발로 들어오면서, 심리적 압박을 느낀 관리자가 생산팀을 우선시하여 허가 절차를 패스해버립니다.
- 모델 불일치 (LS-8): 작업자 피드백을 수신했음에도 참조 중인 도면이 구형이어서, 새롭게 우회(Bypass)된 배관의 가스 누출 위험성을 알지 못하고 방치하게 됩니다.
전체 UCA와 관련된 손실 시나리오(Loss Scenario)의 목록은 아래와 같습니다.
제어 명령 | SOP 하달 및 작업 허가제도 운영 |
Level | 1 |
UCA-N-1 | 사전 위험성 평가 필수 작업 허가를 미발급하여 작업자가 위험 방치 상태로 점검 |
ID | 손실 시나리오 |
LS-1 | [Class 1/Case 6] 예외 상황을 무시하는 룰 기반 로직의 맹점으로 인한 허가 누락 |
LS-1-1 | EHS 시스템은 '단순 조명/필터 교체'를 사전 위험성 평가가 필요 없는 일반 작업으로 판단합니다. 전날 불산 가스 미세 누출 정황이 있었음에도 시스템이 인지하지 못하고 허가를 누락합니다. |
LS-2 | [Class 1/Case 20] 피드백 부재 시 과거 안전 상태 기본값을 맹신하여 허가 생략 |
LS-2-1 | 통신 단절로 가스 농도 센서가 동작하지 않자, 관리자가 어제 퍼지를 했으니 안전할 것이라 과거를 맹신하고 허가 없이 구두 진행합니다. |
LS-3 | [Class 1/Case 23] 서버가 시뮬레이션 모드 상태로 방치되어 실제 현장 허가 발송 실패 |
LS-3-1 | 주말 점검 후 EHS 서버가 '진단 모드'에 남아있어, 실란 배관 보수 허가 요청을 테스트 데이터로 오인하고 실제 현장에는 발급을 생략합니다. |
LS-4 | [Class 1/Case 30] 다중 입력 충돌 시 생산팀 긴급 요청을 우선시하여 위험성 평가 무시 |
LS-4-1 | 배기가스 장치 고장 알람과 생산팀의 긴급 정비 독촉이 동시 다발로 들어와, 심리적 압박을 느낀 관리자가 생산팀을 우선시하여 허가 절차를 패스합니다. |
LS-5 | [Class 1/Case 18] 압력 강화 피드백을 가스가 비었다고 곡해하여 위험성 평가 대상 제외 |
LS-5-1 | 가스 캐비닛 압력이 훅 떨어지는 것을 가스 누출이 아니라 '작업자가 이미 밸브를 닫았다'로 정반대로 곡해하여 심사 로직을 무효화합니다. |
LS-6 | [Class 2/Case 8] 알람 폭주 부하로 인해 치명적인 차폐 구역 개방 피드백 인지 실패 |
LS-6-1 | 공장 정비 기간에 수만 단위의 센서 알람 폭주로 인해 차폐 도어 개방과 같은 치명적 알람을 놓쳐 허가 발급 절차가 개시되지 않습니다. |
LS-7 | [Class 2/Case 11] 기계 수치를 과도하게 맹신하여 현장의 모호한 이상 징후 신고 묵살 |
LS-7-1 | 현장 작업자의 암모니아 냄새 무전과 시스템 데이터 0%가 서로 상충할 때, 기계적 수치를 절대 맹신하여 현장 판단을 묵살하고 사람을 보냅니다. |
LS-8 | [Class 2/Case 7] 낡은 프로세스 모델(구형 도면)을 적용하여 우회 배관 가스 누출 위험 간과 |
LS-8-1 | 작업자 피드백을 수신했으나 참조 중인 도면이 구형 프로세스 모델이어서, 우회(Bypass)된 새 배관의 가스 누출 위험성을 알지 못하고 방치합니다. |
LS-9 | [Class 3/Case 9] 서로 다른 출처의 제어 명령이 현장 단말기에서 충돌하며 둘 다 기각됨 |
LS-9-1 | 스마트 패드의 '출입 통제' 명령과 중앙의 '정비 허가' 메시지가 도어 단말기에서 충돌하며 둘 다 기각 처리되어 통제 공백이 생깁니다. |
LS-10 | [Class 3/Case 5] 무선 통신망에서 브로드캐스트 메시지에 덮어써져 허가 패킷이 소실됨 |
LS-10-1 | 구체적 작업 지침 패킷을 전송하는 순간 공장 전역에 배포된 펌웨어 업데이트 브로드캐스트가 통신망을 먹어버려 데이터 소실이 일어납니다. |
LS-11 | [Class 3/Case 7] 통신 버퍼 딜레이로 과거의 '취소' 명령이 최신 '허가' 뒤에 도착해 역전 |
LS-11-1 | 어제 묵혀있던 '허가 취소' 패킷이 버퍼 딜레이 탓에, 방금 발급 승인한 최신 신호 뒤에 1초 간격으로 처리되어 최종적으로 현장에서 취소됩니다. |
LS-12 | [Class 4/Case 7] 차단되어야 할 스크린도어 제어 칩이 대기 모델 고착으로 도어 개방 허용 |
LS-12-1 | 에러 시 구역 락다운이 Default여야 하나 도어 제어 칩셋이 대기 모드에 고착되어 시스템상 접근 차단 명령을 통신 무시하고 프리패스시킵니다. |
LS-13 | [Class 4/Case 6] 부식성 가스로 인한 래치(부품) 손상으로 중앙의 통제 논리 외 물리적 잠금 해제 |
LS-13-1 | 중앙 서버는 허가 발급을 안 했으니 잠겨있을 거라 논리를 돌리나 실제 현장 잠금 래치는 화공 흄에 다 녹슬어 덜커덩 열리게 됩니다. |
LS-14 | [Class 4/Case 13] 고주파(RF) 전자기파 노이즈 간섭으로 인한 허가 데이터 수신 파손(Corrupted) |
LS-14-1 | 고출력 플라즈마 식각 장비 구동 중 생긴 강한 노이즈로 현장 패드의 허가 데이터 패킷이 깨집니다. 작업자는 대기 지연인 줄 알고 임의 분해를 시작합니다. |
LS-15 | [Class 4/Case 4] 내부 센서 고장 등 오류로 비상 배기 자체 트리거가 작동해 대기조 피폭 |
LS-15-1 | 중앙 검토 대기 중, 캐비닛 내 보조 센서가 고장나 혼자 비상 배기를 자가 구동해버려 역류한 가스가 허가를 기다리던 문 밖 작업팀을 가격합니다. |
Step 5: 어떻게 안전하게 만들 것인가? (대응방안 수립)
마지막으로 발굴된 시나리오들을 원천 차단할 수 있는 대응방안(Countermeasure)을 시스템 요구사항으로 수립합니다.
- [CM-1] 교차 검증 인터락 로직: 가스 누출 예외 징후 모니터링을 연동하여, 오류 시 진입 자동 승인을 완전히 차단합니다.
- [CM-4] 하드코딩된 계층적 안전 인터럽트: 배기장치 고장 등 생명과 직결된 알람 발생 시 최상위 권한을 부여하고, 작업을 무기한 일시정지시킵니다.
- [CM-8] 디지털 트윈 배관 인식 강제 잠금: 신규 추가 밸브의 RFID 정보가 중앙 도면과 불일치할 경우, 시스템 차원에서 허가 락(Lock)을 발동합니다.
전체적인 대응방안의 예시는 아래와 같습니다.
ID | 중요도 | 대응방안 | 상세 | 추적 관계 |
CM-1 | 1 | 교차 검증 인터락 로직 | 가스 누출 예외 징후 모니터링 연동, 오류 시 진입 자동 승인 완전 차단 | LS-1 |
CM-2 | 1 | 페일 세이프 기본값 하드 설계 | 센서 피드백 단절 시 이전 상태 무시하고 즉각 '위험(접근 금지)' 상태로 디폴트 전환 | LS-2 |
CM-3 | 1 | 진단 모드 강제 망분리 및 자동 리부트 | 테스트 모드 타이머 적용으로 초과 시 실시간 운영 모드로 무조건 강제 복귀 | LS-3 |
CM-4 | 1 | 하드코딩된 계층적 안전 인터럽트 | 생명 관련 알람(배기장치 고장 등)에 스케줄링 최상위 권한 부여 및 작업 무기한 일시정지 | LS-4 |
CM-5 | 1 | 다중 변수 센서 퓨전(AND Gate) 결합 | 단일 압력센서가 아닌 퍼지/펌프 등 복합 조건 충족 시에만 '안전' 로직 승인 | LS-5 |
CM-6 | 1 | 알람 트리아지 및 독립 릴레이 표시망 | 중대 위험 신호는 일반 모니터와 격리된 하드웨어 경광등 할당, 작업자 음소거 불가 처리 | LS-6 |
CM-7 | 1 | 수동 오버라이드 락다운 | 비상버튼 등 현장 수동 신고 시 기존 디지털 센서 0% 수치를 무시하고 최우선 강제 락다운 제어 | LS-7 |
CM-8 | 1 | 디지털 트윈 배관 인식 강제 잠금 | 신규 추가 밸브 RFID 정보가 중앙 도면과 불일치 시 시스템 차원 허가 락(Lock) 발동 | LS-8 |
CM-9 | 1 | 결정론적 충돌 중재(Arbiter) 게이트 | 기기에서 상충된 복수 명령 수신 시 하드웨어 조합으로 무조건 보수적 대책(전체 잠김) 출력 | LS-9 |
CM-10 | 1 | 안전 전용 독립 Fieldbus망 분할 할당 | 일반 펌웨어 등 대용량 트래픽 통신 방해 방지를 위해 안전 허가 패킷망 물리적 분리 | LS-10 |
CM-11 | 1 | 타임스탬프 시퀀싱 폐기(TTL) | 통신 버퍼 딜레이로 인한 명령 역전을 막기 위해 타임아웃 경과 패킷 도착 시 페일세이프 강제 폐기 | LS-11 |
CM-12 | 1 | 상시 닫힘(NC) 릴레이 결합 와치독 | 칩셋 대기모드 뻗음 시 생존 하트비트 누락으로 간주해 전력 차단, 강제로 문닫힘 유지 | LS-12 |
CM-13 | 1 | 물리적 장력 기반 위치 피드백 센서 장착 | 도어 닫힘 센서 외에 래치 실제 부식/마찰력을 측정해 풀림/이격 발생 가능성 증가 시 즉각 락다운 | LS-13 |
CM-14 | 1 | 노이즈 차폐 Optical 라인 변경/CRC 강화 | 고주파 방해 공정 구역 광케이블 설계 및 파손 수신 데이터 패킷 즉시 차단 구조 장착 | LS-14 |
CM-15 | 1 | 하드웨어 격리형 체크 밸브 강제 벤트구축 | 부품 내부 S/W 센서가 미쳐서 역회전해도 기계식 댐퍼(Check Valve)에 완전 막혀서 가스 역류 불능 설계 | LS-15 |
STPA는 이처럼 시스템의 큰 그림을 그리고, 요소들 간의 상호작용에서 발생할 수 있는 맹점을 집요하게 파고들어 가장 확실한 안전 대책을 도출해 냅니다.

<MIT 인증 공식 STPA 분석 도구 VisualPro>
VisualPro와 함께 차근차근 분석을 수행하시면 복잡해보이는 STPA 분석도 손쉽게 누락 없이 따라서 하실 수 있습니다. 직관적인 UI와 자동화된 추적 관리를 통해 누구나 전문가 수준의 STPA 분석을 수행할 수 있습니다. 최근에는 AI Chat 기능도 추가되어 훨씬 더 쉽고 정확하게 STPA 분석을 보조해줍니다.
VisualPro와 함께 알기 쉬운 STPA 분석을 경험해보세요.
스마트 팩토리, 자율 주행, 우주, 항공 등 현대의 시스템은 과거와 비교할 수 없을 정도로 복잡해졌습니다. 단순한 부품 고장이 아니라, '시스템 컴포넌트 간의 잘못된 상호작용'이 대형 사고로 이어지는 경우가 많아졌습니다.
<복잡화 고도화되는 시스템 분석에 STPA 분석의 수요가 증가>
이러한 현대 시스템의 복잡성을 통제하기 위해 MIT에서 개발된 혁신적인 안전 분석 기법이 바로 STPA(Systems Theoretic Process Analysis)입니다. 오늘은 저희 VisualPro 소프트웨어를 이용해 '반도체 공장의 안전'을 주제로 STPA 분석을 어떻게 진행하는지 함께 진행해보려고 합니다.
※ 본 자료의 위험과 관련된 시나리오와 그 분석 내용은 AI의 도움을 받아 작성된 가상의 내용이며 실재하는 특정 단체나 개인과는 관련이 없습니다.
Step 1: 무엇을 막아야만 하는가? (손실과 위험원의 정의)
가장 먼저 해야 하는 일은 시스템에서 발생하면 안되는 상황, 손실(Loss)과 그 손실을 유발하는 시스템 상태인 위험원(Hazard)을 식별하는 것입니다. 이번 분석에서는 다음과 같은 손실들을 도출해냈습니다.
ID
손실
상세
추적 관계
Loss-1
인명 손실 및 부상 (독성물질 가스 누출, 폭발, 직업병, 물리적 안전사고)
H-1, H-2, H-3, H-5
Loss-2
환경 오염 (유해 가스의 대기 확산, 독성 폐수 무단 배출, 토양 오염)
H-1, H-4
Loss-3
재무적 손실 및 장비 파손 (화재/폭발에 의한 고가 설비 파손, 제품 대량 폐기 및 리콜)
H-1, H-2, H-3, H-4, H-5
Loss-4
미션(생산) 실패 (사고로 인한 공장 전면 셧다운, 수율 확보 실패, 공급망 교란)
H-1, H-2, H-4, H-5
그리고 이러한 손실을 일으키는 원인으로 다음과 같이 위험원을 정의하였습니다.
ID
위험원
상세
추적 관계
H-1
맹독성 및 부식성 화학물질 누출 상태
Loss-1, Loss-2, Loss-3, Loss-4
H-2
인화성/폭발성 가스의 밀폐공간 체류 및 점화원 노출 상태
Loss-1, Loss-3, Loss-4
H-3
고에너지원(방사선, 고온 등)의 차폐 및 인터락 무력화 상태
Loss-1, Loss-3
H-4
유해 오염물질 정화 설비 우회 및 미처리 배출 상태
Loss-2, Loss-3, Loss-4
H-5
위험 작업 시 에너지 차단 절차(LOTO) 미준수 및 결함 방치 상태
Loss-1, Loss-3, Loss-4
Step 2: 시스템은 어떻게 통제되는가? (제어 구조 모델링)
시스템의 구성 요소들이 서로 어떤 명령을 내리고 피드백을 주고받는지 시각화하는 단계입니다. VisualPro를 사용하면 복잡한 다이어그램도 손쉽게 그릴 수 있습니다.
반도체 공장 제어 구조에서는 크게 4가지 컨트롤러(Controller)가 하위의 반도체 제조 공정 및 오염 방지 설비(Controlled Process)를 제어하는 구조를 가집니다.
<반도체 공장의 제어 구조 다이어그램(Control Structure Diagram)>
이 Master 구조를 도식화 하면 다음과 같습니다.
1. Human
현장 작업자 및 유지보수 인력
유형
Human
Level
1
책임
프로세스 모델
제어 명령
제어 명령 대상
피드백
피드백 대상
화학장비 매뉴얼 조작 및 LOTO 이행
반도체 제조 공정 및 오염 방지 설비
안전 사각지대 및 위험(아차사고) 제보
최고 경영진 및 전사 EHS 조직
2. Controller
최고 경영진 및 전사 EHS 조직
유형
Controller
Level
1
책임
프로세스 모델
제어 명령
제어 명령 대상
피드백
피드백 대상
SOP 하달 및 작업 허가제도 운영
현장 작업자 및 유지보수 인력
환경영향지표(ESG) 보고 및 단기 사고 신고
정부 및 규제/표준 기관
안전 목표 하달 및 현장 감독 지시
현장 통합 시스템 및 안전 관리자
현장 통합 시스템 및 안전 관리자
유형
Controller
Level
1
책임
프로세스 모델
제어 명령
제어 명령 대상
피드백
피드백 대상
설비 자동 Interlock 및 비상 차단(EMO)
반도체 제조 공정 및 오염 방지 설비
현장 진단 데이터 및 안전 지출 현황 보고
최고 경영진 및 전사 EHS 조직
3. Controlled Process
반도체 제조 공정 및 오염 방지 설비
유형
Controlled Process
Level
1
제어 명령
제어 명령 대상
피드백
피드백 대상
정화 폐수 및 배기가스 외부 배출
인근 생태계 외부 요인 및 지역사회
물리적 압력 게이지 지시 및 비상 사이렌 알람
현장 작업자 및 유지보수 인력
실시간 데이터 스트리밍 (가스 농도, 진동 등)
현장 통합 시스템 및 안전 관리자
4. External Controller
정부 및 규제/표준 기관
유형
External Controller
Level
1
제어 명령
제어 명령 대상
피드백
피드백 대상
법규 준수 강제 및 시정 명령
최고 경영진 및 전사 EHS 조직
Step 3: 어떤 제어 명령이 위험을 만드는가? (UCA 도출)
이제 UCA(Unsafe Control Action, 불안전한 제어 행동)를 찾을 차례입니다. 제어 명령이 제공되지 않거나, 잘못 제공되거나, 타이밍이 맞지 않을 때 발생하는 위험을 분석합니다. VisualPro를 통해 아래와 같은 치명적인 UCA들을 식별할 수 있었습니다.
전체 UCA 도출 내역을 도식화 하면 아래와 같습니다.
제어 명령
Level
UCA
Flag
해석
가정
SOP 하달 및 작업 허가제도 운영
최고 경영진 및 전사 EHS 조직 -> 현장 작업자 및 유지보수 인력
1
Not providing causes hazard
(UCA-N-1)
사전 위험성 평가 필수 작업 허가를 미발급하여 작업자가 위험 방치 상태로 점검 [H-1, H-2]
Providing causes hazard
(UCA-P-2)
가스차단이 안 끝났으나 생산일정 압박으로 임의로 허가를 오승인 [H-1, H-2]
Too early, too late, out of order
(UCA-T-3)
잔류 독성 가스 퍼지(Purge) 완료 전 너무 일찍 진입을 허가 [H-1]
SOP 하달 및 작업 허가제도 운영
최고 경영진 및 전사 EHS 조직 -> 현장 작업자 및 유지보수 인력
1
Stopped too soon, applied too long
(UCA-S-4)
위험 환경 변동에도 재평가 없이 기존 허가 승락 상태를 너무 오래 방치 [H-1]
법규 준수 강제 및 시정 명령
정부 및 규제/표준 기관 -> 최고 경영진 및 전사 EHS 조직
1
Not providing causes hazard
Providing causes hazard
Too early, too late, out of order
법규 준수 강제 및 시정 명령
정부 및 규제/표준 기관 -> 최고 경영진 및 전사 EHS 조직
1
Stopped too soon, applied too long
설비 자동 Interlock 및 비상 차단(EMO)
현장 통합 시스템 및 안전 관리자 -> 반도체 제조 공정 및 오염 방지 설비
1
Not providing causes hazard
(UCA-N-5)
가스 누출 징후 감지 후에도 Interlock/EMO 비상 제어를 제공하지 않아 누출 방치 [H-1, H-2]
Providing causes hazard
(UCA-P-6)
공정 중 센서 오작동으로 무리하게 EMO를 작동, 필수 냉각까지 차단 [H-1]
Too early, too late, out of order
(UCA-T-7)
누출 알림 릴레이 지연 등으로 비상 작동이 너무 늦어 치명적 농도 초과 [H-1]
설비 자동 Interlock 및 비상 차단(EMO)
현장 통합 시스템 및 안전 관리자 -> 반도체 제조 공정 및 오염 방지 설비
1
Stopped too soon, applied too long
(UCA-S-8)
위험 인자 미해결 상태에서 안전 차단을 너무 일찍 해제하여 2차 유출 초래 [H-1]
안전 목표 하달 및 현장 감독 지시
최고 경영진 및 전사 EHS 조직 -> 현장 통합 시스템 및 안전 관리자
1
Not providing causes hazard
Providing causes hazard
Too early, too late, out of order
안전 목표 하달 및 현장 감독 지시
최고 경영진 및 전사 EHS 조직 -> 현장 통합 시스템 및 안전 관리자
1
Stopped too soon, applied too long
정화 폐수 및 배기가스 외부 배출
반도체 제조 공정 및 오염 방지 설비 -> 인근 생태계 외부 요인 및 지역사회
1
Not providing causes hazard
Providing causes hazard
Too early, too late, out of order
정화 폐수 및 배기가스 외부 배출
반도체 제조 공정 및 오염 방지 설비 -> 인근 생태계 외부 요인 및 지역사회
1
Stopped too soon, applied too long
화학장비 매뉴얼 조작 및 LOTO 이행
현장 작업자 및 유지보수 인력 -> 반도체 제조 공정 및 오염 방지 설비
1
Not providing causes hazard
(UCA-N-9)
유해 에너지 밸브를 물리적(LOTO)으로 잠그지 않고 장비 개방 진행 [H-3, H-5]
Providing causes hazard
(UCA-P-10)
엉뚱한 밸브에 LOTO를 체결하거나 환풍이 필수인 스크러버 배기 밸브를 잘못 잠금 [H-3, H-5]
Too early, too late, out of order
(UCA-T-11)
작업 환경에 투입된 한참 뒤에 늦게 LOTO 잠금을 실시하여 초기 방출 가스 노출 [H-5]
화학장비 매뉴얼 조작 및 LOTO 이행
현장 작업자 및 유지보수 인력 -> 반도체 제조 공정 및 오염 방지 설비
1
Stopped too soon, applied too long
(UCA-S-12)
동료가 체류 중이고 주변 확인 전인데 LOTO 잠금을 너무 일찍 풀어버려 가스/전력 누출 [H-5]
Step 4: 어째서 그런 UCA가 발생했는가? (손실 시나리오 발굴)
불안전한 제어 행동(UCA)이 왜 발생할 수밖에 없었는지 원인(시나리오)을 추적합니다. 시스템의 결함이나 센서 오류, 작업자의 착각 등을 모두 포함합니다.
전체 UCA와 관련된 손실 시나리오(Loss Scenario)의 목록은 아래와 같습니다.
제어 명령
SOP 하달 및 작업 허가제도 운영
Level
1
UCA-N-1
사전 위험성 평가 필수 작업 허가를 미발급하여 작업자가 위험 방치 상태로 점검
ID
손실 시나리오
LS-1
[Class 1/Case 6] 예외 상황을 무시하는 룰 기반 로직의 맹점으로 인한 허가 누락
LS-1-1
EHS 시스템은 '단순 조명/필터 교체'를 사전 위험성 평가가 필요 없는 일반 작업으로 판단합니다. 전날 불산 가스 미세 누출 정황이 있었음에도 시스템이 인지하지 못하고 허가를 누락합니다.
LS-2
[Class 1/Case 20] 피드백 부재 시 과거 안전 상태 기본값을 맹신하여 허가 생략
LS-2-1
통신 단절로 가스 농도 센서가 동작하지 않자, 관리자가 어제 퍼지를 했으니 안전할 것이라 과거를 맹신하고 허가 없이 구두 진행합니다.
LS-3
[Class 1/Case 23] 서버가 시뮬레이션 모드 상태로 방치되어 실제 현장 허가 발송 실패
LS-3-1
주말 점검 후 EHS 서버가 '진단 모드'에 남아있어, 실란 배관 보수 허가 요청을 테스트 데이터로 오인하고 실제 현장에는 발급을 생략합니다.
LS-4
[Class 1/Case 30] 다중 입력 충돌 시 생산팀 긴급 요청을 우선시하여 위험성 평가 무시
LS-4-1
배기가스 장치 고장 알람과 생산팀의 긴급 정비 독촉이 동시 다발로 들어와, 심리적 압박을 느낀 관리자가 생산팀을 우선시하여 허가 절차를 패스합니다.
LS-5
[Class 1/Case 18] 압력 강화 피드백을 가스가 비었다고 곡해하여 위험성 평가 대상 제외
LS-5-1
가스 캐비닛 압력이 훅 떨어지는 것을 가스 누출이 아니라 '작업자가 이미 밸브를 닫았다'로 정반대로 곡해하여 심사 로직을 무효화합니다.
LS-6
[Class 2/Case 8] 알람 폭주 부하로 인해 치명적인 차폐 구역 개방 피드백 인지 실패
LS-6-1
공장 정비 기간에 수만 단위의 센서 알람 폭주로 인해 차폐 도어 개방과 같은 치명적 알람을 놓쳐 허가 발급 절차가 개시되지 않습니다.
LS-7
[Class 2/Case 11] 기계 수치를 과도하게 맹신하여 현장의 모호한 이상 징후 신고 묵살
LS-7-1
현장 작업자의 암모니아 냄새 무전과 시스템 데이터 0%가 서로 상충할 때, 기계적 수치를 절대 맹신하여 현장 판단을 묵살하고 사람을 보냅니다.
LS-8
[Class 2/Case 7] 낡은 프로세스 모델(구형 도면)을 적용하여 우회 배관 가스 누출 위험 간과
LS-8-1
작업자 피드백을 수신했으나 참조 중인 도면이 구형 프로세스 모델이어서, 우회(Bypass)된 새 배관의 가스 누출 위험성을 알지 못하고 방치합니다.
LS-9
[Class 3/Case 9] 서로 다른 출처의 제어 명령이 현장 단말기에서 충돌하며 둘 다 기각됨
LS-9-1
스마트 패드의 '출입 통제' 명령과 중앙의 '정비 허가' 메시지가 도어 단말기에서 충돌하며 둘 다 기각 처리되어 통제 공백이 생깁니다.
LS-10
[Class 3/Case 5] 무선 통신망에서 브로드캐스트 메시지에 덮어써져 허가 패킷이 소실됨
LS-10-1
구체적 작업 지침 패킷을 전송하는 순간 공장 전역에 배포된 펌웨어 업데이트 브로드캐스트가 통신망을 먹어버려 데이터 소실이 일어납니다.
LS-11
[Class 3/Case 7] 통신 버퍼 딜레이로 과거의 '취소' 명령이 최신 '허가' 뒤에 도착해 역전
LS-11-1
어제 묵혀있던 '허가 취소' 패킷이 버퍼 딜레이 탓에, 방금 발급 승인한 최신 신호 뒤에 1초 간격으로 처리되어 최종적으로 현장에서 취소됩니다.
LS-12
[Class 4/Case 7] 차단되어야 할 스크린도어 제어 칩이 대기 모델 고착으로 도어 개방 허용
LS-12-1
에러 시 구역 락다운이 Default여야 하나 도어 제어 칩셋이 대기 모드에 고착되어 시스템상 접근 차단 명령을 통신 무시하고 프리패스시킵니다.
LS-13
[Class 4/Case 6] 부식성 가스로 인한 래치(부품) 손상으로 중앙의 통제 논리 외 물리적 잠금 해제
LS-13-1
중앙 서버는 허가 발급을 안 했으니 잠겨있을 거라 논리를 돌리나 실제 현장 잠금 래치는 화공 흄에 다 녹슬어 덜커덩 열리게 됩니다.
LS-14
[Class 4/Case 13] 고주파(RF) 전자기파 노이즈 간섭으로 인한 허가 데이터 수신 파손(Corrupted)
LS-14-1
고출력 플라즈마 식각 장비 구동 중 생긴 강한 노이즈로 현장 패드의 허가 데이터 패킷이 깨집니다. 작업자는 대기 지연인 줄 알고 임의 분해를 시작합니다.
LS-15
[Class 4/Case 4] 내부 센서 고장 등 오류로 비상 배기 자체 트리거가 작동해 대기조 피폭
LS-15-1
중앙 검토 대기 중, 캐비닛 내 보조 센서가 고장나 혼자 비상 배기를 자가 구동해버려 역류한 가스가 허가를 기다리던 문 밖 작업팀을 가격합니다.
Step 5: 어떻게 안전하게 만들 것인가? (대응방안 수립)
마지막으로 발굴된 시나리오들을 원천 차단할 수 있는 대응방안(Countermeasure)을 시스템 요구사항으로 수립합니다.
전체적인 대응방안의 예시는 아래와 같습니다.
ID
중요도
대응방안
상세
추적 관계
CM-1
1
교차 검증 인터락 로직
가스 누출 예외 징후 모니터링 연동, 오류 시 진입 자동 승인 완전 차단
LS-1
CM-2
1
페일 세이프 기본값 하드 설계
센서 피드백 단절 시 이전 상태 무시하고 즉각 '위험(접근 금지)' 상태로 디폴트 전환
LS-2
CM-3
1
진단 모드 강제 망분리 및 자동 리부트
테스트 모드 타이머 적용으로 초과 시 실시간 운영 모드로 무조건 강제 복귀
LS-3
CM-4
1
하드코딩된 계층적 안전 인터럽트
생명 관련 알람(배기장치 고장 등)에 스케줄링 최상위 권한 부여 및 작업 무기한 일시정지
LS-4
CM-5
1
다중 변수 센서 퓨전(AND Gate) 결합
단일 압력센서가 아닌 퍼지/펌프 등 복합 조건 충족 시에만 '안전' 로직 승인
LS-5
CM-6
1
알람 트리아지 및 독립 릴레이 표시망
중대 위험 신호는 일반 모니터와 격리된 하드웨어 경광등 할당, 작업자 음소거 불가 처리
LS-6
CM-7
1
수동 오버라이드 락다운
비상버튼 등 현장 수동 신고 시 기존 디지털 센서 0% 수치를 무시하고 최우선 강제 락다운 제어
LS-7
CM-8
1
디지털 트윈 배관 인식 강제 잠금
신규 추가 밸브 RFID 정보가 중앙 도면과 불일치 시 시스템 차원 허가 락(Lock) 발동
LS-8
CM-9
1
결정론적 충돌 중재(Arbiter) 게이트
기기에서 상충된 복수 명령 수신 시 하드웨어 조합으로 무조건 보수적 대책(전체 잠김) 출력
LS-9
CM-10
1
안전 전용 독립 Fieldbus망 분할 할당
일반 펌웨어 등 대용량 트래픽 통신 방해 방지를 위해 안전 허가 패킷망 물리적 분리
LS-10
CM-11
1
타임스탬프 시퀀싱 폐기(TTL)
통신 버퍼 딜레이로 인한 명령 역전을 막기 위해 타임아웃 경과 패킷 도착 시 페일세이프 강제 폐기
LS-11
CM-12
1
상시 닫힘(NC) 릴레이 결합 와치독
칩셋 대기모드 뻗음 시 생존 하트비트 누락으로 간주해 전력 차단, 강제로 문닫힘 유지
LS-12
CM-13
1
물리적 장력 기반 위치 피드백 센서 장착
도어 닫힘 센서 외에 래치 실제 부식/마찰력을 측정해 풀림/이격 발생 가능성 증가 시 즉각 락다운
LS-13
CM-14
1
노이즈 차폐 Optical 라인 변경/CRC 강화
고주파 방해 공정 구역 광케이블 설계 및 파손 수신 데이터 패킷 즉시 차단 구조 장착
LS-14
CM-15
1
하드웨어 격리형 체크 밸브 강제 벤트구축
부품 내부 S/W 센서가 미쳐서 역회전해도 기계식 댐퍼(Check Valve)에 완전 막혀서 가스 역류 불능 설계
LS-15
STPA는 이처럼 시스템의 큰 그림을 그리고, 요소들 간의 상호작용에서 발생할 수 있는 맹점을 집요하게 파고들어 가장 확실한 안전 대책을 도출해 냅니다.
<MIT 인증 공식 STPA 분석 도구 VisualPro>
VisualPro와 함께 차근차근 분석을 수행하시면 복잡해보이는 STPA 분석도 손쉽게 누락 없이 따라서 하실 수 있습니다. 직관적인 UI와 자동화된 추적 관리를 통해 누구나 전문가 수준의 STPA 분석을 수행할 수 있습니다. 최근에는 AI Chat 기능도 추가되어 훨씬 더 쉽고 정확하게 STPA 분석을 보조해줍니다.
VisualPro와 함께 알기 쉬운 STPA 분석을 경험해보세요.