CPN 모델의 역방향 안전성 분석 도구 개발

원자력 발전소 계측 제어 시스템, 의료 관련 시스템, 항공 관련 시스템 등 실생활과 밀접한 시스템에 소프트웨어의 사용이 점차 증가하고 있다. 이러한 시스템에서 소프트웨어 오류는 예기치 않는 사고를 유발하여 인명, 재산상의 심각한 타격을 줄 수 있다. 그러므로 고신뢰도 소프트웨어의 개발 시에는 반드시 시스템의 안전성을 보장해 주어야 한다. 역방향 안전성 분석 방법은 시스템의 안전성을 분석하는 한가지 방법으로서 시스템의 위험 상태를 정의하고 그 위험의 원인들을 추적, 분석함으로써 안전성에 대한 효율적인 분석을 수행할 수 있는 장점을 갖는다. 이 논문에서는 소프트웨어 개발 초기 단계에서 안전성을 분석할 수 있는 방법으로 Colored Petri Nets(CPN)에 기반을 둔 역방향 안전성 분석 방법을 제시한다. 또한 CPN 역방향 안전성 분석 도구인 SAC(Safety Analyzer for CPN)의 설계 및 구현에 대해 언급한다. SAC은 기존의 상용 CPN 모델링 도구인 Design/CPN과 연계하여 사용될 수 있으므로 CPN으로 모델링된 시스템의 안전성을 분석할 수 있다는 장점이 있다. 이 논문에서는 예제로 자동 교통 제어 시스템의 일부를 CPN으로 모델링하고 SAC을 이용한 분석 과정을 기술한다.