• 2018-010

SW 안전 분야 선정기준 및 SW 안전 공통기준 도출 연구

  • 송지환SW기반정책·인재연구실 책임연구원
  • 진회승SW기반정책·인재연구실 책임연구원
  • 권영환산업정책연구실 책임연구원
날짜2019.04.25
조회수10047
글자크기
요약문 상세
    • 1. 제 목 : SW 안전 분야 선정기준 및 SW 안전 공통기준 도출 연구
    • 2. 연구의 추진 배경 및 목적
    • (1) 추진 배경
    • ㅇ SW가 중심이 되는 제4차 산업혁명 시대가 도래함
    • - 첨단 정보통신기술, 특히 SW 중심의 기술이 경제·사회 전반에 융합 되면서 혁신적인 변화(例, SW가 핵심인 자율주행차, 스마트 빌딩, 무인항공기 등의 등장)가 일어나고 있음
    • - 이러한 혁신적인 변화를 제4차 산업혁명의 시대로 규정하고 있음
    • ㅇ 이처럼 많은 곳에서 SW가 사용됨에 따라 SW의 안전이 더욱 중요시되고 있으나 이와 관련된 안전 기준 연구는 미흡함
    • - SW 오류로 인한 사고로부터 국민을 보호하고 안전을 강화하기 위해 SW 안전에 대한 충분한 연구가 필요함
    • - 그간의 연구는 철도, 항공, 자동차 분야 등 특정 영역에 한정하여 HW 중심의 시스템 수준 안전을 고려하는 데 집중함
    • - 그러나 SW 중심의 안전 등급을 분류하고 이에 대한 SW 안전 기준을 제시하는 연구는 부족하였음
    • ㅇ 이에 국민의 안전을 도모하고 생명을 보호하기 위해 SW 안전 분류 및 SW 안전 공통기준 도출의 필요성이 증대됨
    • - 지금까지 철도, 항공, 자동차 등 안전-중요(safety-critical) 분야를 중심으로 시스템 안전의 한 부분으로 SW 안전이 일부 연구되었음
    • - 이제는 제4차 산업혁명을 통해 부상하는 자율주행차, 드론과 같은 새로운 분야를 대상으로 [연구1] SW 중심의 안전 분류 기준과 [연구 2] 분류에 따른 적절한 수준의 안전을 고려하여 SW를 개발할 수 있는 기준을 도출하는 연구가 필요함
    • (2) 연구 목적
    • ㅇ SW 안전이 필요한 분야에 대해
    • - 안전 수준을 구분할 수 있는 선정기준을 마련함
    • - 안전 수준별 SW 안전성을 향상 시킬 수 있는 기법 및 활동을 제시함
    • - 궁극적으로 전부 개정 중인 소프트웨어산업진흥법의 제29조 소프트웨어 안전 확보를 위한 지침의 기초자료로 활용하고자 함
    • 제29조(소프트웨어안전 확보)
    • ① 정부는 소프트웨어안전 확보를 위한 시책을 마련할 수 있다.
    • ② 과학기술정보통신부장관은 다음 각 호의 사항을 포함하는소프트웨어안전 확보를 위한 지침을 정하여 고시할 수 있다.
    • 1. 소프트웨어안전 관련 위험 분석
    • 2. 소프트웨어안전 확보를 위한 설계 및 구현 방법
    • 3. 소프트웨어안전 검증 방법
    • 4. 운영 단계의 소프트웨어안전 확보 방안
    • 5. 그 밖에 소프트웨어안전 확보에 필요하다고 인정되는 사항
    • ③ 중앙행정기관의 장은 소관 분야의 기술기준을 수립하는 경우 제2항에 따른 지침 또는 국제표준 등을 고려하여야 한다.
    • 3. 연구의 구성 및 방법
    • (1) 연구의 구성
    • ㅇ 본 연구의 구성은 총 4장으로 구성됨
    • - 제1장은 서론으로 연구의 배경, 필요성, 목적 등을 기술함
    • - 제2장은 SW 안전 분류를 도출함 [연구 1]
    • - 제3장은 2장에서 도출된 SW 안전 분류에 따라 SW 안전성을 향상시킬 수 있는 SW 안전 공통기준을 제시함 [연구 2]
    • - 제4장은 결론으로 지금까지 내용을 정리하고 추후 연구에 대해 논함
    • (2) 연구의 방법
    • ㅇ 안전과 직결된 철도, 항공, 자동차 등의 기존 분야의 안전 관련 연구, 국제 표준 등을 종합적으로 분석하여 [연구 1] SW 안전 분류 및 [연구 2] SW 안전 공통기준을 도출하는 연구를 수행함
    • ㅇ 도출된 SW 안전 분류를 학계·산업계·연구소 등의 SW 안전 전문가들의 검토 및 검증을 받고 유효성을 확보함
    • - 적절성 및 유효성을 평가하기 위하여 국내 SW 안전 전문가 자문단을 구성·운영하여 연구의 품질을 보증함
    • ㅇ 전문가 자문단의 검토를 바탕으로 보완된 SW 안전 분류를 기존 및 신규 분야의 특정 SW에 적용하여 SW 안전 분류의 정당성을 검증함
    • 4. 연구 내용 및 결과
    • [연구 1] SW 안전 분류 도출 연구
    • (1) 분야 중심의 안전 분류 연구 분석
    • ㅇ 연구 범위 선정
    • - SW 안전 분류를 도출하기 위해 다양한 분야에서 활용되는 안전 분류를 비교·분석할 수 있도록 산업 일반, 철도, 항공, 자동차, 의료기기 분야를 연구 범위로 선정함
    • - 아래 표와 같이 영역별 대표적인 국제 안전 표준을 분석하여 분류 방법의 특징을 뽑아냄
    • SW 안전 분류 도출 연구
      분야별(산업일반, 철도, 항공, 자동차, 의료 기기) SW 안전 분류 도출 연구에 관한 표
      분야 국제 표준 설 명 분류 방법
      산업 일반 IEC 61508 시스템 수준에서 8개의 안전무결성수준(SIL*)(저 요구 동작 모드 4개 수준, 고 요구/연속동작 모드 4단계)으로 안전 분류를 제시 위험 심각도와 발생 확률을 사용
      철도 IEC 62279 시스템 수준에서 4단계의 안전무결성수준(SIL)으로 안전 분류를 제시 위험 심각도와 발생 확률을 사용
      항공 DO-178C 5단계의 Software Level로 안전 분류를 제시 위험 심각도만 사용
      자동차 ISO 26262 시스템 수준에서 5단계의 자동차안전무결성수준(ASIL*)으로 안전 분류를 제시 위험 심각도, 발생확률, 제어도를 사용
      의료 기기 IEC 62304 SW 수준에서 3단계의 클래스(Class)로 안전 분류를 제시 위험 심각도만 사용
      * Safety Integrity Level의 약자로 전기·전자기기의 안전무결성수준을 나타냄
      ** Automotive Safety Integrity Level의 약자로 자동차 분야에서 사용되는 SIL을 말함
    • ㅇ 연구 결과 정리 및 고찰
    • - 산업 일반, 철도, 자동차, 의료기기 영역의 대표적인 안전 국제 표준들은 SW 수준이 아닌 시스템 수준의 안전 분류를 제시하고 있음
    • - 이를 일반화하여 비교 분석하기에는 필요한 정보가 제공되지 않아 연구가 제한적임
    • - 제한적인 분야 중심의 안전 분류 비교 분석 연구 접근 방법에서 SW 중심의 안전 분류 연구 비교 분석 방법으로 연구 접근 방법 변경 수행함
    • (2) SW 중심 안전 분류 연구 분석
    • ㅇ 연구 대상 선정
    • - SW 중심의 안전 분류를 제시하고 있는 MIL-STD-882E와 NASA Software Safety Guidebook을 SW 안전 분류 도출 연구 대상으로 선정함(각각에 대한 설명은 아래 표 참조)
    • SW 안전 분류 도출 연구
      연구대상별(MIL-STD-882E, NASA Software Safety Guidebook) SW 안전 분류 도출 연구에 관한 표
      구 분 설 명
      MIL-STD-882E - 미 국방부 산하의 모든 군사부서 및 국방기관에서 사용이 승인된 시스템 안전 표준
      - 해당 시스템 안전 표준에는 군사용으로 개발/사용되는 SW에 대해 안전 분류 기준이 존재
      - 산업 일반, 철도, 자동차 영역의 연구와 다르게 SW 중심의 안전 분류를 수행할 수 있도록 위험 심각도와 SW 통제 등급을 이용하는 매트릭스를 제공
      NASA Software Safety Guidebook - 미 항공우주국에서 안전을 고려하여 SW를 개발할 수 있도록 고안 된 표준
      - 해당 표준에서는 일반적인 SW 개발이나 안전을 중점적으로 고려해야 하는 SW를 대상으로 모두 적용할 수 있는 SW 안전 분류를 제시
      - MIL-STD-882E와 유사하게 SW 중심의 안전 분류를 수행할 수 있도록 위험 심각도와 SW 통제 등급을 이용하는 매트릭스를 제공
    • ㅇ MIL-STD-882E 기반의 SW 안전 분류 참조 모델 제시
    • - SW 특성상 SW를 통한 위험 발생 확률을 도출하거나 예측하는 것은 매우 제한됨
    • - 최악의 경우를 고려하여 SW 안전 분류를 수행해야 함 (즉, 기본적으로 위험 심각도 기반으로 안전 분류를 수행함)
    • - MIL-STD-882E의 경우, SW 기능 실패율을 도출하기에 어렵다는 특성을 고려하여 SW 통제 등급을 사용하여 안전 분류를 수행하는 특징을 가짐
    • - MIL-STD-882E에서 제공하고 있는 SW 중심의 안전 분류 모델이 본 연구를 통해 도출해야 하는 모델에 가장 부합한다고 판단하여 SW 안전분류 모델로 참조함
    • - MIL-STD-882E 기반의 SW 안전 분류 모델은 4개의 위험 심각도 수준과 5개의 SW 통제 등급을 각 축으로 가지며, 이를 기반으로 총 5개 수준의 SW안전위험색인(SSRI, Software Safety Risk Index)을 결정함
    • ㅇ SW 안전 분류 참조 모델 개선
    • - MIL-STD-882E 기반의 SW 안전 분류 참조 모델은 국방 분야를 중심으로 고려된 위험 심각도와 SW 통제 등급을 사용하고 있어, 다양한 도메인에서 SW 안전 분류가 활용될 수 있도록 개선함
    • - 위험 심각도는 유사한 개념이 활용되고 있는 의료기기, 항공 분야의 관련 연구를 조사 및 분석하여 4단계의 위험 심각도 수준을 5단계로 재정의함
    • - SW 통제 등급은 유사한 개념이 활용되고 있는 항공, 자동차 분야의 관련 연구를 참고하여 SW 통제 등급 수준을 최종 4단계로 재정의함
    • ㅇ 전문가 자문단 검토 및 보완
    • - 학계, 산업계, 연구소 등의 국내 SW 안전 전문가로 자문단으로 구성하여 개선된 SW 안전 분류 모델을 검토함
    • - 전문가 자문단 검토를 통해 SW 안전 분류 모델의 적절성을 확인하였고 세부적으로 위험 심각도, SW 통제 등급, SW 안전 분류 모델 자체에 대해 검토 의견을 바탕으로 SW 안전 분류 모델을 보완함
    • (3) SW 안전 분류
    • ㅇ SW 안전 분류 도출
    • SW 안전 분류는 위험 심각도 및 SW 안전 통제 등급을 축으로 가지며 이를 기반으로 SW가 내포한 기능을 평가하여 아래와 같이 SW안전위험색인(SSRI, Software Safety Risk Index)을 최종 결정함
    • SW 안전 분류 1
      위험 심각도 및 SW 안전 통제 등급을 기준으로 확인하는 SW안전위험색인에 대한 표
      SW 안전 통제 등급 SW safety control level\위험 심각도 Severity 재앙적 Catastrophic 치명적 Critical 심각한 Serious 견딜만한 Tolerable 경미한 Negligible
      Full autonomy SSRI 1 SSRI 1 SSRI 3 SSRI 4 SSRI 5
      반(半)자율 Semi autonomy SSRI 1 SSRI 2 SSRI 3 SSRI 4 SSRI 5
      지원 Aid SSRI 2 SSRI 2 SSRI 3 SSRI 4 SSRI 5
      안전 제어 없음 No Safety Control SSRI 5 SSRI 5 SSRI 5 SSRI 5 SSRI 5
    • SW안전위험색인
      SW안전위험색인에 대한 설명 표
      SW안전위험색인 설 명
      SSRI 1 △SW가 보유하고 있는 위험방지 제어 기능에 대해 반(半)자율 이상의 자율성을 가지고 재앙적(catastrophic) 수준의 위험을 제어하거나 △완전자율 수준의 자율성을 가지고 치명적(critical) 수준의 위험을 제어함
      SSRI 2 △SW가 보유하고 있는 위험방지 제어 기능에 대해 지원 수준의 자율성을 가지고 재앙적(catastrophic) 수준의 위험을 제어하거나 △지원 및 반(半)자율 수준의 자율성을 가지고 치명적(critical) 수준의 위험을 제어함
      SSRI 3 △SW가 보유하고 있는 위험방지 제어 기능에 대해 자율성 가지며 심각한(serious) 수준의 위험을 제어함
      SSRI 4 △SW가 보유하고 있는 위험방지 제어 기능에 대해 자율성 가지며 견딜만한(tolerable) 수준의 위험을 제어함
      SSRI 5 △SW가 위험방지 제어 기능을 보유하지 않거나 △경미한(negligible) 수준의 위험을 제어함
    • ㅇ SW 안전 분류 정당성 검증
    • - SW 안전 분류를 기존 및 신규 SW 안전 분야를 대상으로 특정 시스템의 SW 기능에 적용하여 유효성과 정당성을 검증함
    • - 기존 SW 안전 분야의 경우, 자동차 영역에서 사용되는 자동긴급제동(AEB, Autonomous Emergency Braking) 시스템을 대상으로 SW 안전 분류를 적용하여 기존의 자동차 영역에서 부여받은 안전 분류 결과와 비교분석을 수행하여 유효성 및 정당성을 확인함
    • - 신규 SW 안전 분야의 경우, 기존의 SW 수준에서 안전을 고려하지 않았던 지하철 슬라이딩 도어와 지하철 개폐 장치의 통합 시스템을 대상으로 SW 안전 분류를 적용해 보았으며, 도출된 SW안전위험색인(SSRI)이 적절한 수준임을 확인함
    • [연구 2] SW 안전 공통기준 도출 연구
    • (1) SW 안전 공통기준 관련 연구 분석
    • ㅇ MIL-STD-882E 가이드라인 분석
    • - SW 안전 분류 도출을 위해 참조한 MIL-STD-882E를 실질적으로 활용하기 위한 가이드라인이 존재하며, 해당 가이드라인에 안전 분류 수준에 따라 SW 설계, 구현, 단위 검증, 통합 단위 검증, 시스템 통합 검증 단계별로 적용할 수 있는 안전 활동 및 기법이 제시되고 있음
    • - 특이사항으로 SW 개발 단계 중, SW 요구사항 명세 단계에 대한 활동 및 기법이 별도 제공되지 않음
    • ㅇ NASA Software Safety Guidebook 분석
    • - NASA Software Safety Guidebook에서 SW 안전 분류 수준에 따라 SW 요구사항, 설계, 구현, 검증 단계별로 적용할 수 있는 안전 활동 및 기법이 제시되고 있음
    • - 특이사항으로 SW의 검증이 IEC 12207과 같이 일반적으로 많이 사용하는 SW 단위 검증, SW 통합 검증, SW 검증 단계를 하나의 단계로 묶어 활동과 기법을 소개함
    • ㅇ SW 안전 공통기준 도출
    • - MIL-STD-882E와 NASA Software Safety Guidebook에서 사용되는 활동과 기법을 병합 및 조정 후 SW 개발 시 요구사항, 설계, 구현, 단계별 검증 단계를 모두 고려함
    • - 5개의 SW안전위험색인(SSRI)에 따라 아래 그림과 같이 적용 가능한 안전 활동을 정리하고 자동차 분야에서 활용되고 있는 기법들을 선정하여 적용 기법으로 정리함 그림 1
    • - SW 안전 공통기준에 포함된 활동 및 기법은 IEC 12207과 같이 SW 개발 과정의 일반적인 활동과 기법이 사용되는 것을 가정하고 있으며, 일반적인 활동 위에 SW 안전에 관련된 활동 및 기법을 추가 수행하면 됨
    • 5. 기대 효과
    • ㅇ 제4차 산업혁명의 도래로 기존의 SW 안전 영역뿐 아니라 융·복합을 통해 새롭게 발굴되는 산업 영역에서 SW 안전을 고려할 수 있도록 SW 안전 분류를 제시하고 분류된 안전등급에 따라 적절한 SW 안전 공통기준을 적용하여 국민의 안전을 도모할 수 있는 SW 개발 산업에 기반을 마련함
    • ㅇ SW 기술이 융합됨에 따라 국민의 신체나 생명에 위해를 발생시킬 가능성이 있는 모든 분야에서 국민 안전 강화를 위한 기술적 방향을 제시하며 소프트웨어산업진흥법 전부 개정안의 제29조 소프트웨어안전 확보를 위한 지침인 SW 일반안전기준 구현에 대한 기초자료로 활용 가능함
  • Summary
    • This study deals with the process of developing SW safety classification and SW safety common criteria so that software safety can be taken into account not only in existing software safety considerations but also in the newly created industrial sector following the advent of the 4th Industrial Revolution.
    • In order to derive the SW safety classification, related studies in various fields where safety is important were analyzed and the safety classification based on software was also analyzed. Although an industrial based safety classification study approach was applied to derive SW safety classification, the research was carried out using a software based safety classification study approach, considering that it was not suitable to derive SW safety classification.
    • SW safety classification model was defined first before SW safety classification was derived and utilized as reference to MIL-STD-882E. After selecting the SW safety classification model, the SW safety classification draft was completed by improving the SW safety classification model by analyzing relevant research in space, aviation, medical equipment and automotive fields so that SW safety classification can be utilized in various fields. The SW safety classification draft was reviewed by an expert advisory group to confirm the adequacy and appropriateness of the SW safety classification draft, and was supplemented with the draft SW safety classification to derive the SW safety classification.
    • SW safety classification can be performed using a total of 5 risk severity and a total of 4 software safety control level and defined to take account of all new industrial sectors derived from the 4th Industrial Revolution.
    • To justify the derived SW safety classification, verification was carried out on systems used in the existing software safety sector and systems in the new software safety sector, and SW safety classification was verified as appropriate.
    • Based on the software safety risk index determined through SW safety classification, SW safety common criteria was derived and studied to perform appropriate levels of safety activities and techniques. For safety activities, the U.S. national defense standards and NASA's Guide were analyzed and the applicable techniques for safety activities were derived by analyzing the standards of the automobile domain.
    • The SW safety common criteria comprises a total of 22 safety activities and 17 techniques, and the recommended safety activities and techniques are defined by differences in the software safety risk index. The applicable techniques for each safety activity and safety activity are defined for the desired utilization of the SW safety common criteria.
    • In this study, the SW safety classification and SW safety common criteria were derived from the advent of the 4th Industrial Revolution, and the basic data were prepared to present SW general safety criteria based on them.
목차 상세
    • 제1장 서론
    • 제1절 연구의 배경 및 목적
    • 1. 연구의 배경
    • 2. 연구의 목적
    • 제2절 연구의 구성 및 방법
    • 1. 연구의 구성
    • 2. 연구의 방법
    • 제2장 클라우드 정책 추진현황
    • 제1절 분야 중심 안전 분류 연구 분석
    • 1. 산업일반 분야의 안전 표준
    • 2. 철도 분야의 안전 표준
    • 3. 항공 분야의 안전 표준
    • 4. 자동차 분야의 안전 표준
    • 5. 의료기기 분야의 안전 표준
    • 6. 분야 중심의 안전 분류 연구 고찰
    • 제2절 SW 중심 안전 분류 연구 분석
    • 1. MIL-STD-882E
    • 2. NASA Software Safety Guidebook
    • 제3절 SW 안전 분류 모델
    • 1. SW 안전 분류 모델 제안
    • 2. SW 안전 분류 모델 개선
    • 3. 전문가 자문단 검토 및 SW 안전 분류 보완
    • 제4절 SW 안전 분류 도출 및 검증
    • 1. SW 안전 분류 도출
    • 2. SW 안전 분류 정당성 검증
    • 제3장 국내 클라우드 컴퓨팅 활성화를 위한 전략
    • 제1절 SW 안전 공통기준 관련 연구 분석
    • 1. MIL-STD-882E 관련 가이드
    • 2. NASA Software Safety Guidebook
    • 제2절 SW 안전 공통기준 도출
    • 1. 안전 활동 및 기법 선정
    • 2. SW 안전 공통기준
    • 3. SW 안전 분류 및 SW 안전 공통기준 활용 방법
    • 제4장 결 론
  • Contents
    • Chapter 1. Introduction
    • Chapter 2. Derivation of SW Safety Classification
    • Chapter 3. Derivation of SW Safety Common Criteria
    • Chapter 4. Conclusion