자율자동차, 드론, AI 등 소프트웨어 기술 발전에 따라 소프트웨어의 복잡성이 증가하고 소프트웨어 편의성 증가로 많은 분야에서 소프트웨어 의존성이 증가하고 있다. 이로 인해 소프트웨어의 제어를 받는 시스템이 증가하게 되어서 소프트웨어 결함으로 인한 사고의 발생 확률이 증가하고 있다. 결국은 과거와 달리 소프트웨어 문제로 인해 발생하는 사고의 피해의 영향력도 같이 커지고 있기 때문에 소프트웨어 안전관리가 국민의 안전 확보에 중요한 요소가 되고 있다.
IEEE 1228 표준에 의하면 소프트웨어 안전이란 전체 시스템의 안전 보장을 위해 외부에 미치는 위험요소를 분석하고 제거하여 소프트웨어의 오류로 인한 사고를 예방하는 것을 의미한다1). 여기서 소프트웨어는 열차, 항공기, 발전소, 안전시설 등 주요 안전 분야에 사용하는 제어용 소프트웨어나 소프트웨어를 포함하는 시스템 뿐만 아니라 안전을 위해 사용하는 관련 소프트웨어를 모두 포함한다. 이러한 소프트웨어가 오류를 발생시키지 않도록 안전 활동을 수행하는 것이 국가적인 소프트웨어 안전 관리 활동이다. 4차 산업혁명으로 의해 소프트웨어가 우리의 삶과 직접적으로 연관될수록 안전관리 활동이 중요해지고 잘 작동되어야 국민의 재산과 신체의 안전을 확보할 수 있다.
따라서 본 연구의 목적은 미래 사회 안전 확보를 위해 소프트웨어 안전과 관련된 활동들을 정의하기 위한 프레임워크를 제시하는데 있다. 이를 위하여 소프트웨어 밀접하게 관련된 안전 관리 활동들을 조사하여 소프트웨어 안전 관리 프레임워크를 도출하고 이를 소프트웨어 안전 주요 분야의 안전 관리 활동들과 비교하여 소프트웨어 안전 관리 프레임워크를 검증하고 보완한다.
3. 연구 구성과 내용
본 연구는 총 4장으로 구성되어 있다. 제 1장은 서론으로 소프트웨어 안전 관리 프레임워크 연구의 배경과 연구 방법을 설명하고 연구 내용에 대해 요약한다. 제 2장은 기존의 안전 관리에 대한 기본 체계를 분석하고 소프트웨어 관리 요소를 보완함으로써 소프트웨어 안전 관리 프레임워크(안)을 도출한다. 이를 위해 안전 관리의 기본 체계에 해당하는 재난안전법을 분석하여 예방-대비-대응-복구의 단계별로 안전 관리 활동들을 도출하였다. 그리고 대표적 소프트웨어 기반 시스템 관리 법인 정보통신망법과 대표적 데이터 관리 법인 개인정보보호법을 기반으로 소프트웨어 관리 활동들을 도출한다. 그리고 이들 세 가지 법들을 비교 분석하고 전문가 자문을 통해 소프트웨어 안전 관리 프레임워크(안)을 만들었다.
[소프트웨어 안전 관리 프레임워크(안)]
제 3장은 2장에서 만들어진 소프트웨어 안전 관리 프레임워크(안)을 검증한다. 검증을 위해 소프트웨어 안전 관리가 이루어지고 있는 중요 분야를 선정하여 해당 분야의 소프트웨어 안전 관리 활동들을 소프트웨어 안전 관리 프레임워크(안)을 가지고 조사를 수행한다. 프레임워크(안)의 활동들이 개별 분야에서 실행되는지를 조사하여 프레임워크의 보완 사항을 도출한다.
이를 위해 우선적으로 소프트웨어 안전 관리가 활발히 이루어지고 있는 분야 선정을 위해 전문가 설문 조사를 수행하였다. 먼저 SW안전과 관련있는 약 30여개의 안전 관련 법안 도출하고 이를 7개 분야(재난안전, 정보통신, 제품안전, 교통, 시설물, 에너지, 기타)로 분류하였다. 그리고 선정 기준으로 소프트웨어 사고 발생 빈도, 소프트웨어 사고 사회 파급력, 소프트웨어 관련성, 소프트웨어 안전 관리 시급성을 도출하였다. 이 기준들을 가지고 2번에 걸친 전문가 설문으로 소프트웨어 안전 관리 현황 조사를 수행할 세부 분야 선정로 자동차, 철도, 항공 분야가 선정되었다.
선정된 세부 분야들에 대한 소프트웨어 안전 관리 현황 조사를 소프트웨어 안전 관리 프레임워크(안)을 가지고 조사하였다. 조사 결과 대부분의 소프트웨어 안전 관리 활동들이 이루어지고 있었다. 또한 전문가 자문을 통해 소프트웨어 안전 관리 프레임워크(안)의 한계점인 재난안전 관리 체계와 SW안전 관리의 차이점을 도출하고 개별 활동들의 중요 고려 사항들을 파악하였다.
[개선된 SW안전 관리 프레임워크]
4장은 3장에서 수행한 소프트웨어 안전 관리 현황 조사 결과와 전문가 의견들을 가지고 소프트웨어 안전 관리 프레임워크(안)을 수정하여 최종적인 소프트웨어 안전 관리 프레임워크를 제시한다. 기본 안전관리 체계의 예방-대응-대비-복구 단계를 소프트웨어 안전관리 측면에서 ① 인증단계, ② 운영단계, ③ 응급조치, ④ 사후관리로 보완하였다.
인증 단계 : 안전관리 대상 및 기준 정의, 안전 검사/인증, 자격 부여를 위한 시험/자격 획득, 위험평가를 수행하는 단계
운영 단계 : 안전 기준을 기반으로 안전 점검, 시스템 유지 및 점검 결과 공개, 이용자 보호, 사고 대응 매뉴얼/훈련 등을 수행하는 단계
응급 조치 : 사고 발생 시 신고, 사고에 대응
사후 관리 : 사고 조사, 사고 재발 방지, 손해 배상, 분쟁 조정 등
그리고 해외 안전 관리 개선 사례로 자율주행차 기술 발전을 위한 안전 기준의 개정 사례인 비엔나 협약 변경과 미국 캘리포니아의 제도 개선 사례를 소개하고 사고 재발 방지를 위한 미국과 호주의 교통안전 사고 조사 체계에 대해 소개한다.
마지막으로 제 4장은 결론으로 연구의 요약, 연구의 한계점 등에 대해 기술한다.
4. 정책적 활용
내용 본 연구는 미래 사회 안전 확보를 위해 소프트웨어 안전 관리 프레임워크를 제시한다. 4차 산업혁명 시대에는 소프트웨어 기반 자동화 기술이 널리 활용될 것이기에 안전 확보를 위핸 소프트웨어 안전 관리가 중요해지고 있다. 정부의 소프트웨어 안전 관리 체계 마련을 위한 정책을 개발할 때 본 연구 결과는 활용될 수 있다. 특히 소프트웨어 안전 관련 법 제도 정비와 소프트웨어 안전 관련 세부 정책 과제 도출에 기초 자료로 활용될 수 있다.
5. 기대효과
본 연구는 소프트웨어 안전 확보를 위한 정책 마련의 기초 자료로 활용될 것이기에 소프트웨어 중심의 미래 사회의 국가적 안전 역량 강화에 기여를 할 것이다. 이는 곧 국민들이 보다 안전한 미래를 누리를 수 있을 것이며 미래 신산업을 보다 위험 없이 맞이 할 수 있을 것으로 생각된다.
Summary
1. Title
A Study on SW Safety Management Framework
Recently, ships have evolved into e-navigation and autonomous navigation beyond smart. E-navigation will be introduced in earnest from 2020, and the International Maritime Organization has begun work on reviewing regulations on autonomous operation of ships from May 2018.
2. Study Purpose and Necessity
Software becomes more complicated because of the development of software technologies such as autonomous vehicles, drones, and AI, and many fields increase their software dependency due to increased software convenience. As a result, the number of software controlled systems increases and the probability of accident occurrence increases because of software defects. Eventually, unlike the past, the impact of accidents caused by software problems is also increasing, so software safety management becomes an important factor in securing public safety.
According to the IEEE 1228 standard, software safety means preventing accidents caused by software errors by analyzing and removing external risk factors to ensure the safety of the entire system. Here, the software includes not only a system including controlling software or used software in major safety fields such as trains, aircraft, power plants, and safety facilities, but also all related softwares used for safety. These are national software safety management activities to perform safety activities to ensure that such software does not cause errors. As the software is directly related to our lives by the 4th Industrial Revolution, software safety management activities become important and work well to ensure the safety of people's property and body.
Therefore, the purpose of this study is to present a framework for defining software safety activities to secure future social safety. To this end, a software safety management framework is proposed by examining safety management activities related to software, and the software safety management framework is verified and supplemented by comparing safety management activities in major software safety areas.
3. Study Composition and Contents
This study consists of 4 chapters. Chapter 1 introduces the background and method of the software safety management framework study and summarizes the research contents.
Chapter 2 derives a software safety management framework proposal by analyzing the basic framework for existing safety management and supplementing software management elements. To do this, the Disaster Safety Law of the Republic of Korea, which is the basic safety management system, was analyzed to derive the safety management activities in each stage of prevention-preparation-response-recovery. In addition, software management activities are derived based on the representative software-based system management law, Information and Communication Network Law, and the representative data management law, Personal Information Protection Law. Then, a comparative analysis of these three laws and expert consultations resulted in a software safety management framework proposal.
Chapter 3 verifies the software safety management framework proposal of Chapter 2. For verification, important fields of software safety management are selected, and software safety management activities in the fields are investigated with the software safety management framework proposal. Supplements of the framework are derived by investigating whether each activity of the framework is implemented in individual fields.
To do this, expert surveys were conducted in order to select a field in which software safety management is actively conducted. First, about 30 safety-related laws related to SW safety were drawn and classified into 7 fields (Disaster Safety, Information and Communications, Product Safety, Transportation, Facilities, Energy, Etc.). In addition, the frequency of software accidents, the social impact of software accidents, the software relevance, and the urgency of software safety management were derived as selection criteria. The automotive, rail, and aviation sectors were selected as detailed fields for conducting investigations on the status of software safety management through two expert surveys with these criteria.
The current status of software safety management for selected sub-fields was investigated based on the software safety management framework (proposal). As a result of this investigation, most software safety management activities were conducted. In addition, through the expert consultation, the difference between the disaster safety management system and software safety management, which is the limitation of the the derived software safety management framework proposal and important considerations of individual activities were identified.
Chapter 4 presents the final software safety management framework by revising the software safety management framework proposal with the investigations of the software safety management conducted in Chapter 3 and expert opinions. The prevention-response-preparation-recovery phase of the basic safety management system was supplemented with ① Certification phase, ② Operation phase, ③ Emergency phase, and ④ Follow-up in terms of software management.
Certification phase : defining the obejct of safety management, Safety Test/Certification, Test/Qualification, and Risk Evaluation
Operational phase : Performing Safety Inspection, Safety Maintenance and Resual Opening, User Protection, and Manual/Training based on Safety Guide
Emergency : Accident and Damage Report, Accident Response
In addition, as examples of overseas safety management improvement, the Vienna Convention revision and legal system change in California, USA are introduced to enhance the development of autonomous vehicle technology and then the traffic safety accident investigation system in the United States and Australia to prevent accidents from reoccurring do.
Finally, Chapter 4 describes the summary and the limitations of the study.
4. Policy utilization
This study proposes a software safety management framework to secure future social safety. In the era of the 4th Industrial Revolution, software-based automation technology will be widely used, so software safety management for securing safety is becoming more and more important. The results of this study can be used when developing policies for the government's software safety management system. In particular, it can be used as a basic reference for the maintenance of software safety-related legal systems and the deduction of detailed policy tasks related to software safety.
5. Expected effect
Since this study will be used as the basic reference for policy preparation to secure software safety, it will contribute to strengthening the national safety capacity of the software-oriented future society. It is expected that sooner or later, people will enjoy a safer future and will be able to meet new industries in the future without risk
1 소프트웨어정책연구소(2016), 『이슈리포트-자동차 산업의 SW안전 이슈와 해결 과제』, 제2016-016호, p7에 나온 내용을 인용한 것으로 표준은 IEEE 1228:1994 ‘IEEE Standard for Software Safety Plans’을 말함