콘텐츠로 건너뛰기
Home » DO-178C란?

DO-178C란?

[vc_row][vc_column][vc_column_text]

  1. DO-178C 개요

본 문서는 RTCA 특별위원회 205 (SC-205)와 EUROCAE 실무단 71 (WG-71)이 제작하고, 2011년 12월 13일에 RTCA 프로그램관리위원회 (PMC)에서 승인하였다.

RTCA는 비영리 기업으로 공익을 위해 항공학 및 항공기술, 항공전자시스템을 발전시키고, 연방 자문위원회로서 활동 및 당대의 항공 이슈에 대한 합의기반 권고사항을 개발한다.

RTCA의 목적은 다음을 포함하지만, 이에 한정되지는 않는다.

  • 정부와 산업이 상호간의 목표와 책임을 충족할 수 있도록 도와 주는 방식으로 항공 시스템 사용자 및  공급자 기술 요건을 취합한다.
  • 높은 안전성, 시스템 가용량, 효율성을 추구하는 항공이 직면하는 시스템의 기술적인 이슈에 대해 분석하고 해결책을 권장한다.
  • 항공 지원 전자 시스템 및 장비에 대한 최소 운영 성능 표준의 개발을 포함하여, 사용자와 공급자 요구 사항을 충족하는 관련 기술 적용의 합의점을 개발한다.
  • 국제 민간 항공 기구 및 국제 전기 통신 연합, 또 다른 국제 기구에 대한 적합한 기술 자료 개발 지원이 기반이 될 수 있다.

조직의 권고사항은 많은 연방 항공 관리 기술 표준 순서에 대한 기반뿐만 아니라, 정부 및 민간 부문 의사결정에 대한 기반으로써 자주 사용된다.

RTCA는 미국 정부의 공식 기관은 아니기 때문에, 권고사항들과 관련된 어떠한 문제들에 대해 법적인 관할권을 가지는 미국 정부 조직 또는 기관에 의해 공표되지 않는 경우에는 그 권고사항들은 공식 정부 정책의 성명으로써 간주되지 않을 수도 있다.

2. 소개

1980년대 초, 항공기 소프트웨어의 사용과 항공기 엔진 및 장비의 급격한 증가가 보고됨에 따라 감항 요건의 충족에 대한 산업에서 수용되는 지침의 필요성이 생겼다. DO-178은 “항공 시스템 및 장비 인증에서의 소프트웨어 고려사항”에 대한 필요를 충족시키기 위해 쓰여졌다.

지금의 경험에 비추어 개정된 본 문서는 항공 시스템 및 장비를 소프트웨어 방식으로 감항 요건을 준수하고 있는지를 일관된 방법으로 소프트웨어 신뢰도의 허용 수준을 결정하는 지침과 항공 커뮤니티를 제공한다. 또한 소프트웨어의 사용이 증가함에 따라 기술의 발전 및 경험을 본 문서를 통해 얻을 수 있도록 본 문서를 검토하고 개정한다.

부록 A는 본 문서의 배경을 제공한다.

3. 목적

본 문서의 목적은 감항 요건을 준수하는 안전성에 대한 신뢰 수준에 의도된 기능을 수행하는, 항공 시스템 및 장비 소프트웨어 제품에 대한 지침을 제공하는 것이다. 또한 지침이 포함되어 있다.

  • 소프트웨어 수명주기의 목적(Objectives)
  • 목표를 만족 시키기 위한 수단을 제공하는 활동
  • 목표가 충족 되었는지는 알려주는 소프트웨어 수명주기 데이터 형태의 증거에 대한 설명
  • 소프트웨어 레벨의 목표, 독립성, 소프트웨어 수명주기 데이터 및 제어 카테고리의 변경
  • 어떤 응용에 적용 가능한 추가 고려사항(예를 들어 기존에 개발한 적 있는 소프트웨어)
  • 용어사전에서 제공되는 용어의 정의

위 지침과 더불어, 독자의 이해를 돕기 위해 정보 지원이 제공된다.

4. 범위

본 문서에서는 항공기, 엔진, 프로펠러 및 지역별 보조 동력 장치에 사용되는 항공기 탑재 장비 및 시스템 소프트웨어의 제품 관련 인증에 대해 설명한다. 이러한 형태의 설명은 시스템 수명주기와 소프트웨어 수명주기의 관계가 인증 프로세스의 이해를 돕기 위함이다.

반면, 시스템의 안전성 평가 및 검증 프로세스를 포함한 시스템 수명주기 프로세스 또는 인증 프로세스에 대한 자세한 설명은 포함되어 있지 않다.

본 문서에 포함된 지침은 인증 과정에서 인증 기관의 관여 수준을 정의하거나 의미하는 것이 아니다. 인증 기관의 관여를 이해하기 위해 신청자는 적용되는 규칙과 관련된 인증 기관에서 발급된 지침문서를 참고해야 한다. 인증 문제는 오직 소프트웨어 수명주기와 관해서만 논의되기 때문에,​​ 소프트웨어의 결과의 운영적 측면에 대해서는 논의되지 않는다. 예를 들어, 사용자의 변경 데이터의 인증 부분은 본 문서에 해당되지 않는다.

또한, 본 문서에서는 펌웨어(Firmware) 정의는 하지 않는다. 펌웨어는 하드웨어 또는 소프트웨어로 분류되어야 하며, 적용 가능한 프로세스에 의해 처리되어야 한다. 본 문서는 시스템 정의, 기능들이 소프트웨어 또는 하드웨어에 할당된 것을 가정한다. 이 문서 외의 다른 문서는 하드웨어 구현에 할당된 기능의 개발 안전에 대한 지침을 제공한다. 본 문서는 소프트웨어에 할당된 기능에 대한 지침만을 제공한다.

Note: 이것은 시스템이 명시되고 기능 할당되는 시점에서 결정되기 위해 구현의 효율적인 방법 및 개발 보장을 허용한다. 모든 당사자는 할당이 이루어진 시점에서 이 시스템 결정에 동의해야 한다.

추가로, 신청자의 조직 구조에 관한 사항이나 신청자와 그 공급업체 및 직원의 자격 기준 사이의 상업 관계는 본 문서의 범위에 해당되지 않는다.

5. 다른 문서와의 관계

항공 요건과 더불어, 소프트웨어에 대한 다양한 국내 및 국제 표준은 이용 가능하다. 일부 커뮤니티에서는 이러한 표준에 대한 적합성이 요구될 수 있다. 하지만 특정 국가 또는 국제 표준을 적용하는 것 또는 이러한 표준들이 대안으로써 사용되고, 또는 본 문서와 더불어 사용될 수 있는 수단을 제안하는 것은 본 문서의 범위 밖이다.

예를 들어, 프로젝트가 계약 또는 다른 수단을 통해 엔진 또는 항공기 제조사에 의해 적용되는 추가적인 표준을 준수하는 것이 의무가 될 수 있다고 인식된다. 이러한 표준은 그 활동을 위해 제조사에 의해 생성되거나 채택된 일반 규격으로부터 파생될 수도 있다. 공급 업체의 감독을 적용 할 때 적절하게 이러한 표준은 계획 프로세스에 의해 고려되고, 간주 되어야 한다.

6. 문서 사용방법

본 문서를 사용할 경우에는 다음과 같은 점에 유의해야 한다.

a. 본 문서는 국제 항공 커뮤니티(international aviation community) 에서 사용되는 것으로 의도된다. 이러한 사용을 지원하기 위해, 특정 국가 규정과 절차에 대한 참조가 최소화된다. 대신, 일반적인 용어가 사용된다. 예를 들어, 용어 “certification authority”는 조직 또는 제품 (예시: 항공기, 엔진)의 인증을 담당하는 국가 대신에 승인을 주는 사람을 나타내는 데 사용된다. 두 번째 국가 또는 국가의 그룹이 확인(Validation) 또는 이 인증(Certification)에 참여하는 경우, 본 문서는 국가간의 양자 협정 또는 관계된 국가 간의 양해각서(MOU)에 의한 소정의 인식으로 사용될 수 있다.

b. 본 문서는 본 문서의 지침이 법으로 의무화되지는 않지만 항공 커뮤니티의 합의를 나타낸다는 것을 인식한다. 또한 본 문서에 서술된 방법에 대한 대안 방법이 신청자에 적용 가능할 수도 있다는 점을 인식한다. 이러한 이유로 인해 ” shall ” 또는 ” must “등의 단어를 사용은 피하고 있다.

c. 신청자는 적합성의 목적으로 본 문서를 사용하는 경우에 신청자는 해당하는 모든 목표를 만족해야 한다. 본 문서는 소프트웨어 수명주기 프로세스 또는 본 문서에 서술된 프로세스들의 산출물과 연관된 신청자와 그의 공급업체들에 적용해야 한다. 신청자는 그 공급업체의 모든 감독을 총괄하고 있다.

d. 신청자는 목적을 충족시키기 위해 활동을 계획해야 한다. 본 문서에서는 이러한 목표를 달성하기 위한 활동을 설명한다. 신청자는 계획하고 인증 기관의 승인을 조건으로, 본 문서에 기재되어있는 것들을 대체하는 활동을 할 수 있다. 신청자는 또한 추가로 필요하다고 결정된 활동을 계획하고 수행할 수도 있다.

e. 신청자는 해당 소프트웨어의 계획과 표준에서 추가 고려 사항들을 다루어야 한다.

f. 신청자는 목적(Objectives)이 충족 되었는지를 입증하기 위해 Section 11에서 보여주는 것처럼 계획된 활동을 수행해야 하고, 증거를 제공해야 한다.

g. 주석(Explanatory text)의 경우 논의중인 주제를 독자가 이해하는 것을 돕기 위해 포함되어 있다. 예를 들어, Section 2는 시스템 수명주기와 소프트웨어 수명주기 사이의 상호작용을 이해하는 데 필요한 정보를 제공한다. 마찬가지로, Section 3은 소프트웨어 수명주기, Section 10은 인증 프로세스에 대한 개요를 설명한다.

h. Section 11은 일반적으로 인증 프로세스에서 소프트웨어를 지원하기 위해 작성된 데이터가 포함되어 있고 데이터의 이름은 각 단어의 첫 글자를 대문자로 표시하고 있다. (예를 들어, Source Code)

i. Section 12는 이전에 개발된 소프트웨어를 사용하기 위한 지침 tool qualification 및 Section 2부터 Section11까지에서 설명된 것들을 대체하는 방법에 대해 설명한다. Section 12는 모든 프로젝트에 사용되지 않을 수도 있다.

j. Annex A는 각 소프트웨어 레벨에 대한 독립성과 제어 카테고리(control categories)의 차이뿐만 아니라, 각 소프트웨어 레벨에 대한 목적, 활동, 및 소프트웨어 수명주기 데이터의 적용을 명시한다. 완전한 지침을 이해하기 위해서는 본 문서의 전체를 파악해야 한다.

K 도표 또는 서술을 통해 지침이 적용될 수 있는 방법을 나타내기 위해 예제가 사용되는 경우, 그 예제는 선호되는 방법으로 해석되는 것이 아니다. 이러한 경우 예제는 정보지원이 고려된다.

l. 항목의 목록이 모든 목록을 포함하고 있다는 뜻은 아니다.

m. 본 문서에 기재되어있는 주의사항은 설명되어 있는 자료로 정보를 지원하는 점을 강조하며 문맥 내에서 완전하지 않은 항목에 주목하고 있다.

n. 주요 Section은 본 문서를 통해서 X. 0으로 번호가 정해져 있다. 전체 Section 에 대한 참조는 ” Section X”로 나타내고 있다. 한편, Section 헤더의 X. 0과 X. 1 사이의 내용에 대한 참조는 ” Section X. 0″로 참조된다.

o. 본 문서에는 하나 이상의 부록이 존재한다. 그리고 특정 기술 문서가 있는 경우에는 지침이 추가된다. 또한 부록은 문서와 관련하여 서로 함께 사용할 수 있으며 또 다른 문서와 사용할 수 있다. 대안이 사용되지 않는 경우에는 (see 1.4.i), 부록이 있으면 부록의 추가, 삭제, 또는 다른 목적, 활동, 설명 텍스트를 수정하는 데 사용 되며 문서에서의 각 부록의 적절한 사용이 소프트웨어 수명주기 데이터의 문제를 해결한다. 인증기관에 따른 적절한 부록의 사용은 신청자의 권한이다. 부록의 사용은 소프트웨어 계획 프로세스의 일부로써, 신청자는 잠재적으로 모든 관련 부록의 사용을 고려하여 적절히 사용되는 부록들을 선택해야 한다. 부록의 정보는 문서와 동일한 방식으로 표기되어 있으며, Annex A는 본 문서의 목적이 부록에 의해 제시된 특정한 기술이 어떻게 수정되어 있는지 확인할 수 있다.

p. 모든 적용 가능한 목적은 모든 계획 활동과 관련 증거를 수집하면서 충족되었을 경우에 적합성이 달성된다.

7. 문서 개요

그림 1-1은 본 문서의 Section들과 서로의 관계에 대한 그림 설명이다.

Section 2: 소프트웨어 개발과 관련된 시스템 측면

Section 3: 소프트웨어 수명주기

소프트웨어 수명주기 프로세스에 포함된 단계

Section 4: 소프트웨어 계획 단계

 Section 5: 소프트웨어 개발계단계 / 소프트웨어 요구사항 단계 / 소프트웨어 설계 단계 / 소프트웨어 구현 단계 / 통합 단계

전체 필수 프로세스

Section 6: 소프트웨어 검증 프로세스

Section 7: 소프트웨어 형상관리 프로세스

Section 8: 소프트웨어 품질보증 프로세스

Section 9: 인증 프로세스

Section 10: 인증 (Certification Liaison) 프로세스 개요

Section 11: 소프트웨어 수명주기 데이터

Section 12: 추가 고려사항

 

[/vc_column_text][/vc_column][/vc_row]