요구사항 기반 소프트웨어 신뢰성 인증의 국내 군용 항공기 적용방안 연구 Research on Application of Requirements-based Software Reliability Verification to Domestic Military Aircraft원문보기
최근에 미국 또는 유럽 등에서 개발되거나 해당 국가의 영공에 취항하기 위한 민간 항공기에는 RTCA (radio technical commission for aeronautics)에서 발표하고 미연방항공국 (Federal Aviation Administration)에서 인정한 DO-178에 따른 탑재 소프트웨어 신뢰성 검증이 요구된다. 이는 각 분야에서 소프트웨어에 대한 의존이 날로 심화되는 가운데 사고 발생시 경제적, 사회적으로 치명적인 영향이 발생하는 민간 항공 분야에서 먼저 소프트웨어 신뢰도 향상을 위한 노력이 진행되었기 때문이다. 이 논문에서는 소프트웨어 신뢰도 향상을 위해 DO-178에서 요구하고 있는 요구사항 기반의 신뢰성 검증을 위해 선결되어야 할 요건들을 파악하고, 현재 방위사업청의 무기체계 획득 절차에 기반 하여 각 획득 단계에 맞는 점검 요소들을 분석하여 제시하였다. 또한 해외에서 축적된 정보를 바탕으로 식별된 주요 점검요소를 국내 항공기 개발 사업에 적용하고 적용결과를 분석하였다. 본 연구 결과 현재의 무기체계 획득 절차에 개발 단계별 소프트웨어 점검 요소를 추가하고 객관적 점검 기준을 제시하는 것으로 DO-178에 따른 요구사항 기반 소프트웨어 신뢰성 점검에 대한 개발관리가 가능한 것으로 확인되었다.
최근에 미국 또는 유럽 등에서 개발되거나 해당 국가의 영공에 취항하기 위한 민간 항공기에는 RTCA (radio technical commission for aeronautics)에서 발표하고 미연방항공국 (Federal Aviation Administration)에서 인정한 DO-178에 따른 탑재 소프트웨어 신뢰성 검증이 요구된다. 이는 각 분야에서 소프트웨어에 대한 의존이 날로 심화되는 가운데 사고 발생시 경제적, 사회적으로 치명적인 영향이 발생하는 민간 항공 분야에서 먼저 소프트웨어 신뢰도 향상을 위한 노력이 진행되었기 때문이다. 이 논문에서는 소프트웨어 신뢰도 향상을 위해 DO-178에서 요구하고 있는 요구사항 기반의 신뢰성 검증을 위해 선결되어야 할 요건들을 파악하고, 현재 방위사업청의 무기체계 획득 절차에 기반 하여 각 획득 단계에 맞는 점검 요소들을 분석하여 제시하였다. 또한 해외에서 축적된 정보를 바탕으로 식별된 주요 점검요소를 국내 항공기 개발 사업에 적용하고 적용결과를 분석하였다. 본 연구 결과 현재의 무기체계 획득 절차에 개발 단계별 소프트웨어 점검 요소를 추가하고 객관적 점검 기준을 제시하는 것으로 DO-178에 따른 요구사항 기반 소프트웨어 신뢰성 점검에 대한 개발관리가 가능한 것으로 확인되었다.
In recent years, It is required to verify software reliability according to DO-178, which announced by radio technical commission for aeronautics (RTCA) and recognized by the Federal Aviation Administration (FAA), for civil aircraft developed or intended to fly in the United States or Europe. This i...
In recent years, It is required to verify software reliability according to DO-178, which announced by radio technical commission for aeronautics (RTCA) and recognized by the Federal Aviation Administration (FAA), for civil aircraft developed or intended to fly in the United States or Europe. This is because the reliance on software in each field is deepening, and the efforts for improvement of software reliability have been made first in civil aviation field where economic and social impacts are catastrophic in the event of an accident. In this paper, we have identified some issues to be considered for requirements-based reliability verification required by DO-178 to improve software reliability and present the major elements of the present weapon system acquisition procedure of DAPA for each stage. In addition, we analyzed the results of applying the identified main check factors to a domestic aircraft development project based on the information accumulated in overseas aircraft development projects. As a result, we have shown that it is possible to verify requirements-based software reliability according to DO-178 by adding key checkpoints to the current weapon system acquisition procedure and providing objective inspection criteria.
In recent years, It is required to verify software reliability according to DO-178, which announced by radio technical commission for aeronautics (RTCA) and recognized by the Federal Aviation Administration (FAA), for civil aircraft developed or intended to fly in the United States or Europe. This is because the reliance on software in each field is deepening, and the efforts for improvement of software reliability have been made first in civil aviation field where economic and social impacts are catastrophic in the event of an accident. In this paper, we have identified some issues to be considered for requirements-based reliability verification required by DO-178 to improve software reliability and present the major elements of the present weapon system acquisition procedure of DAPA for each stage. In addition, we analyzed the results of applying the identified main check factors to a domestic aircraft development project based on the information accumulated in overseas aircraft development projects. As a result, we have shown that it is possible to verify requirements-based software reliability according to DO-178 by adding key checkpoints to the current weapon system acquisition procedure and providing objective inspection criteria.
* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.
문제 정의
본 논문에서는 입력 자료를 선정하고 충분성을 검증하는 다양한 방법 중, 선진국의 민간 항공기 소프트웨어 신뢰성 확보방안의 가이드라인으로 활용되는 DO-178 (software considerations in airborne systems and equipment certification)에서 제안하는 요구사항 기반 (requirementsbased)의 신뢰성 시험 방법론을 국내 항공기 소프트웨어 개발 사업에 적용한 사례를 바탕으로 개발관리 절차의 개선안을 제시하였다.
본 논문은 항공기 개발 및 획득 과정에서 소프트웨어 신뢰성시험을 국제 기준인 DO-178에 따라 요구사항 기반으로 수행하여야 한다는 것을 전제로 현행 군용항공기 획득 절차를 개선하여 각 개발 단계별로 추가적으로 수행되고 검토되어야 할 행위들을 식별하고 기준이 되는 수행 방안을 제시하였다.
본 연구는 국내 항공기 무기체계 획득에 도움이 되기 위해 기술적인 한계를 떠나 무기체계 개발관리 기관의 실질적, 현실적인 어려움을 낮추어 소프트웨어 인증업무를 돕기 위한 노력의 일환이다. 그러나 이러한 연구에도 불구하고 개선된 절차 및 관리 중점이 관련기관의 업무에 적용되기 위해 충분히 검토되지 못하고 그 결과가 전파되지 못한다면 현행 소프트웨어 개발 수준의 향상을 기대하기 힘들 것이다.
소프트웨어개발계획 수립 단계에서는 항공기 전체에 공통적으로 요구되는 소프트웨어 신뢰도 기준과 계통 또는 각각의 장비에 할당될 개별적인 신뢰도 기준이 결정되고 명시적으로 기술되어야 한다. 이를테면, model B 항공기 개발 사업에 있어서 항공기 전반에 걸쳐 DO-178B를 준용하여 소프트웨어 신뢰성을 확보하는 것을 목표로 하였다. 이렇게 전제된 신뢰성 기준과 각 계통 또는 구성품의 안전등급(design assurance level)을 기준으로 각각의 장비는 고유한 소프트웨어 신뢰성 요구도를 갖게 된다[4],[5].
가설 설정
소프트웨어시험설계의 시험 설정과 시험 시나리오대로 수행하여 그 결과를 확인한다. 신뢰성 시험 측면에서는 상술한 과정대로 수립된 시험시나리오를 모두 수행 했다는 가정 하에 testcase의 예상 출력값과 실제 출력값의 일치여부를 확인하고 코드 실행률이 요구도를 만족하는지를 확인한다. 만약 코드 실행률이 요구도를 만족하지 못할 경우 그림 6과 같이 step 2 단계로 돌아가 파생 요구도의 추가 할당 후 상응하는 testcase를 추가로 작성한다.
제안 방법
개발단계에서는 이러한 제한점을 극복하기 위한 방법으로 신뢰성 확인을 위해 사용 가능한 모든 입력 상태 중 선정된 충분한 수의 샘플을 활용하여 해당 샘플에 대해 정상적인 출력이 생성되는지 시험하게 된다. 본 논문에서는 소프트웨어 신뢰성 또는 신뢰도를 식(1)로 표현할 수 있는 소프트웨어 실패율(failure rate)의 역수 개념으로 정량화하여 다루었다.
성능/효과
민간항공기의 경우 미국 유럽 등에 취항하기 위해서는 해당 국가에서 개발된 항공기가 아니라 할지라도 상기한 사항과 동일한 기준을 충족하여야 하는 반면, 군용 항공기의 경우 국내에서 개발되는 군용 항공기의 경우 OO년 까지 항공기 획득 사업에서 소프트웨어 신뢰성에 검증은 명시적으로 요구되지 않았으며, 기능시험을 통해 간접적으로 소프트웨어의 신뢰성을 확인하는 것으로 탑재 소프트웨어에 대한 신뢰도 확인을 갈음하였다. 최근에 들어서 이러한 과거의 개발 및 관리기준에 따라 획득된 무기체계의 소프트웨어 신뢰도 향상의 필요성이 인지되었고 OO년 이후의 무기체계 획득 시에는 소프트웨어 신뢰성 검증을 위한 최소한의 요구사항이 명시적으로 관련 규정에 반영되었고, 특히, 항공 분야에서는 계약 건에 따라 민간 기준에 상응하는 수준의 신뢰성 시험을 요구하기도 한다.
기존의 무기체계 개발 및 획득 절차는 방사청 및 관련 기관이 다년간의 경험을 통해 국내 무기체계 획득환경에 맞춰 특화한 것이다. 우리는 본 연구를 통해 기존의 획득절차와 주요 마일스톤을 유지하면서 국제 기준에 맞는 소프트웨어 신뢰성 확보를 위해 각 마일스톤에 맞는 신뢰성 확보 준비사항, 시험계획수립, 절차 작성방안, testcase의 구성요소 및 시험결과 판정 방법에 이르기까지 실제 개발관리를 수행하는데 필요한 사항이 빠짐없이 포함되도록 무기체계 획득과정 전반에 걸쳐 개선안을 수립하였다. 그림7는 개선된 무기체계 획득 절차 별산출물을 하드웨어 개발의 흐름과 견주어 비교할 수 있도록 작성한 모식도이다.
후속연구
그러나 인증기관은 개발기관과 달리 사업에 참여하는 깊이나 빈도가 제한되고 객관적인 판단지표 없이는 각 단계별 산출물의 완성도를 파악하는 것에 많은 제한이 따른다. 본 연구를 통해 상술한 제한사항을 극복하면서도 선진국 수준의 항공기 소프트웨어 신뢰성 기준을 만족하면서 동시에 기존의 국내 무기체계 획득 절차에 적용 가능한 객관적인 관리방안을 제시하게 되어 그 활용을 기대한다.
그러나 이러한 연구에도 불구하고 개선된 절차 및 관리 중점이 관련기관의 업무에 적용되기 위해 충분히 검토되지 못하고 그 결과가 전파되지 못한다면 현행 소프트웨어 개발 수준의 향상을 기대하기 힘들 것이다. 우리는 후속연구와 관계 기관의 노력을 통해 본 논문에서 제시하는 개선된 소프트웨어 검토 절차가 보다 정교화 되어 관련업무의 수행에 실질적인 도움이 되기를 기대한다.
질의응답
핵심어
질문
논문에서 추출한 답변
소프트웨어 신뢰성이란 무엇인가?
소프트웨어 신뢰성이란 일반적으로 소프트웨어가 지정된 환경에서 주어진 시간 동안 제대로 동작 할 확률을 뜻한다. 그러나 소프트웨어의 완성 후 실 운용 전에 이러한 특성을 경험적으로 도출하는 것은 현실적으로 제한된다.
소프트웨어 신뢰성 시험 수준은 어떤 요소로 인해제한적인가?
일반적으로 소프트웨어 신뢰성 시험 수준은 비용 및 개발일정과 같은 사항으로 인해 제한된다. 소프트웨어의 신뢰성을 산출하려면 시험 대상이 되는 소프트웨어 전체에 대해 출력 가능한 모든 출력 공간 (output space)을 확인하여야 하며 이를 위해서 입력 가능한 모든 입력 공간(input space)을 대상으로 시험을 하는 것이 충분조건이나, 효율성 측면에서 상술한 바와 같이 제한된다[1].
기체계의 verification과 validation 절차 중 인증기관의 문제점은?
소프트웨어의 충분한 validation을 위해서는 요구도 선정 단계에서부터의 준비가 필요하며 이는 개발단계에 인증기관이 밀접하게 참여하지 않으면 사업 후기에 막대한 금전적, 시간적 비용이 발생하게 됨을 의미한다. 그러나 인증기관은 개발기관과 달리 사업에 참여하는 깊이나 빈도가 제한되고 객관적인 판단지표 없이는 각 단계별 산출물의 완성도를 파악하는 것에 많은 제한이 따른다. 본 연구를 통해 상술한 제한사항을 극복하면서도 선진국 수준의 항공기 소프트웨어 신뢰성 기준을 만족하면서 동시에 기존의 국내 무기체계 획득 절차에 적용 가능한 객관적인 관리방안을 제시하게 되어 그 활용을 기대한다.
참고문헌 (9)
H. Pham, System Software Reliability, London, UK: Springer -Verlag, pp. 1-7, 2006.
United States. Federal Aviation Administration. RTCA, Inc., Document RTCA/DO-178C, Washington, D.C.: Dept. of Transportation, Federal Aviation Administration, 2011.
M. Lyu, Handbook of Software Reliability Engineering, Hightstown, NJ: McGraw-Hill, pp. 26-23, 1996.
United States. Federal Aviation Administration. RTCA, Inc., Document RTCA/DO-254, Washington, D.C.: Dept. of Transportation, Federal Aviation Administration, 2000.
S. Vestal, "Preemptive scheduling of multi-criticality systems with varying degrees of execution time assurance," in Proceeding of the 28th Annual International Symposium on Real-Time Systems, Tucson: AZ, pp. 239-243, 2007.
M. Chen, “Effect of code coverage on software reliability measurement,” IEEE Transactions on Reliability, Vol. 50, No. 2, pp. 165-170, Jun. 2001.
P. Bieber, "DALculus-theory and tool for development assurance level allocation," in International Conference on Computer Safety, Reliability, and Security, Naples: Italy, pp. 43-56, 2011.
White paper, DO-178B's Top Mistakes (And How to Avoid Them), NV: HighRely systems, pp. 1-2, 2009.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.