본문 바로가기 주메뉴 바로가기

기술자료

기술자료

DO-178C 표준 문서의 소프트웨어 개발 프로세스 둘러보기

Suresofttech 관리자 2024-12-09 조회수 82


안녕하세요, 슈어소프트테크입니다. 이번 포스팅에서는 DO-178C의 소프트웨어 계획 프로세스에 이어 소프트웨어 개발 프로세스에 대해 알아보겠습니다.


소프트웨어 개발 프로세스는 소프트웨어 계획 프로세스에서 작성된 개발 계획서(Software Development Plan)를 바탕으로 진행됩니다. 따라서 DO-178C의 소프트웨어 생명주기와 소프트웨어 계획 프로세스를 잘 이해하는 것이 중요합니다.



DO-178C Software Development Process란?


<그림 1> DO-178C 표준 문서 목차


위 <그림 1>은 DO-178C 표준 문서의 간략한 목차입니다. 소프트웨어 개발 프로세스는 소프트웨어 계획 프로세스 다음 순서에 위치하며, 총 5가지의 세부 항목으로 구성되어 있습니다.


소프트웨어 개발과 요구사항


본격적으로 소프트웨어 개발 프로세스를 살펴보기 전에 소프트웨어 개발에서 가장 중요한 요소를 되짚어보겠습니다. 소프트웨어를 개발할 때는 적절한 알고리즘 적용, 팀 동료와의 활발한 협업, 커피와 당 충전 간식 등 많은 요소가 필요하지만, 무엇보다 ‘요구사항’을 명확히 정의하는 것이 가장 중요합니다. 요구사항을 명확히 할수록 개발을 정확히 이해하고, 더 빠르게 구현할 수 있기 때문입니다.


DO-178C는 이러한 요구사항을 단계별로 나누어 개발하도록 가이드하고 있습니다. DO-178C에서 제시하는 요구사항의 종류를 알아보겠습니다.

<그림 2> DO-178C 요구사항 종류


  • 시스템 요구사항(System Requirements): 항공기의 전체적인 요구사항을 다루며, 소프트웨어 및 하드웨어 관련 요구사항을 포함합니다. 이 중 소프트웨어와 관련된 요구사항이 소프트웨어 개발 프로세스에 사용됩니다.


  • 상위 단계 요구사항(High-level Requirements)시스템 요구사항과 안전 요구사항, 시스템 아키텍처를 바탕으로 개발되는 소프트웨어 요구사항입니다. 기능적 요구사항을 담고 있어 소프트웨어 개발에서의 일반적인 요구사항과 유사합니다.

 

  • 하위 단계 요구사항(Low-level Requirements): 상위 단계 요구사항과 설계 제약(Design Constraints)을 바탕으로 작성된 요구사항으로, 추가적인 정보 없이도 소스 코드로 구현 가능한 수준이어야 합니다. 상위 단계와 하위 단계 요구사항을 합쳐 소프트웨어 요구사항(Software Requirements)이라고 부르며, 이는 시스템 요구사항 중 소프트웨어로 구현해야 하는 모든 요구사항을 포함합니다. 모든 요구사항은 상위 단계의 요구사항에 대해 추적성을 가지도록 개발됩니다.

 

  • 파생 요구사항(Derived Requirements):  시스템 요구사항이나 상위 단계 요구사항에 명시되지 않은 행위를 다루는 요구사항으로, 위쪽으로 직접적인 추적성은 없습니다. 생성 빈도는 낮지만, 상위 및 하위 요구사항 모두에서 생길 수 있습니다.


(후략) 


* 위의 글은 슈어소프트테크에서 제공되었습니다.

위로가기