잡談/DO-178 기본

29. SAS(Software Accomplishment Summary) (Section 11.20)

sudam 2019. 1. 7. 16:52

다른 절에서 이미 설명했지만 SASPSAC과 더불어 DO-178에서 가장 중요한 문서 중 하나이다. 인증을 받기 위해서 반드시 제출되어야 하는 최소한의 문서 중 하나라는 것도 앞서 설명한 바가 있다. 이제 구체적으로 어떤 내용이 작성되어야 하는지 세부 내용을 살펴보자.


 

해석을 보자.

 

소프트웨어 완수 요약(SAS)PSAC에 대한 준수를 보여주기 위한 주요 데이터 항목이다.

 

단 한 줄의 설명이지만 DO-178 인증을 위해서 가장 중요한 내용이 나와 있다. 바로 ‘PSAC에 대한 준수 여부를 보여준다는 점이다. 앞서 PSAC이 일종의 계약서라고 했다면 SAS는 그 계약서대로 제대로 했는지를 확인하는 문서라고 할 수 있다. 그런 의미에서 PSAC은 가장 먼저 작성되는 반면 SAS는 가장 나중에 작성되는 문서이다. 그리고 실제 SAS에 포함되는 내용을 PSAC과 비교해서 보면 아래와 같이 PSAC에 포함되는 부분이 상당부분 동일하게 포함되는 것을 확인할 수 있다.

 

PSAC에 포함되는 내용 (Section 11.1)

SAS에 포함되는 내용 (Section 11.20)

a. System overview

a. System overview

b. Software overview

b. Software overview

c. Certification considerations

c. Certification considerations

d. Software life cycle

d. Software life cycle

e. Software life cycle data

e. Software life cycle data

f. Schedule

 

g. Additional considerations

f. Additional considerations

f. Supplier oversight

g. Supplier oversight

 

h. Software identification

 

i. Software characteristics

 

j. Change history

 

k. Software status

 

l. Compliance statement

 

PSAC에 대한 준수를 보여주기 때문에 어쩌면 이는 당연하다고 할 수 있다. 그리고 준수여부를 설명하기 위한 추가 설명이 포함되는 것 역시 당연할 것이다.

 

위의 표에서 공통 부분은 PSAC에서 설명된 그대로 이해하면 된다. 다만 여기에서는 PSAC에 대한 준수 결과가 추가로 포함되기 때문에 아래와 같은 설명이 추가되어 있다. (붉은 선으로 표시된 부분)


 

붉은 선으로 표시된 부분만 해석해 보자.

 

이 섹션은 또한 PSAC에서의 시스템 개요와 다른 점들을 설명한다.

 

PSAC은 인증을 어떻게 받을지에 대한 계획을 작성하는 것이라고 했으므로 가장 이상적으로 본다면 PSAC에서 계획한 대로 수행했을 것이다. 이 경우 SASPSAC의 내용이 그대로 작성될 수도 있다. 하지만 이것은 거의 불가능하다. 현실적으로 계획과 달라지는 부분이 생길 수 밖에 없다.

 

필자가 번역한 DO-178 인증지침서에 보면 이와 관련된 재미있는 사례가 나온다.



출처: Avionics Certification: A Complete Guide to DO-178 (software), DO-254 (hardware) / Vance Hilderman, Tony Baghi

 

해석을 보자.

 

어떤 회사들은 자신들의 PSAC을 가지고는 SAS라 부르고 “will do” “have done”으로 바꾸기도 한다. 그것이 꼭 맞는 것은 아니다. 왜냐하면 그들은 모든 것을 한 것은 아니며 아마도 최소한 작은 차이점은 만들었을 것이기 때문이다.

 

SASPSAC과 별로 차이가 없을 경우에 비슷한 문서를 다시 처음부터 작성하지 않고 PSAC을 재활용(?)해서 작성하는 사례가 있음을 설명하고 있다. 하지만 위의 설명처럼 분명히 다른 점이 있을 것이기 때문에 SAS에는 그 차이점이 작성되어야 한다.

 

PSACSAS가 다를 수 밖에 없다고 했는데 그렇다면 그 차이가 어느 정도의 범위까지를 말하는 것일까? 예를 들면 계획과 전혀 다른 내용이라도 그 차이점을 정확하게 작성하기만 하면 문제가 없는 것일까? 사실 이에 대해서는 DO-178 가이드라인에서도 명확하게 그 기준을 제시하고 있지 않다. 결국 그 부분에 대해서는 상식적인 판단과 함께 감사를 수행하는 인증당국 혹은 DER의 판단에 의해서 결정할 수 밖에 없게 된다.

 

DO-178 인증이 단순히 최종 단계에서의 결과만을 가지고 평가하는 것이 아니기 때문에 사실 위의 예는 현실적으로는 일어날 수 없는 부분이다. PSAC에 작성된 계획대로 진행되는지에 대해 중간 과정에서 지속적으로 체크하고 그 증빙을 남기기 때문이다. 여기서 만약 PSAC과 다른 형태로 진행해야 하는 상황이 오면 그때는 형상관리 계획(SCMP)에 작성한 대로 PSAC 자체를 수정하고 승인하는 절차를 거치기 때문에 PSACSAS가 완전히 별개의 내용이 될 수 없는 구조라고 할 수 있다. 따라서 SAS가 작성되는 시점에서는 PSAC과의 아주 작은 차이점만 존재하게 되며 그 차이점을 포함해서 전체적인 계획 진척 사항을 작성하게 된다.

 

여기서 PSAC과 달리 SAS에만 추가로 작성되는 내용에 대해서 알아보자.

 

h. 소프트웨어 구분(Software identification)

 

여기서 말하는 소프트웨어에 대한 구분은 파트넘버(Part Number)와 버전(Version)에 따라서 구분되는 소프트웨어 형상을 말한다.

 

i. 소프트웨어 특성(Software characteristics)

 

소프트웨어의 특성에 대해서는 아래와 같은 항목들을 작성하게 된다.

 

-       실행가능 오브젝트 코드 크기

-       최악의 케이스 실행 시간을 포함하는 타이밍 허용범위

-       리소스 제한사항

-       각각의 특성을 측정하기 위해 사용된 방법

 

j. 변경 히스토리(Change history)

 

변경 히스토리에 대해서 DO-178 가이드라인에서는 아래와 같이 설명하고 있다.


 

해석을 보자.

 

j. 변경 히스토리: 해당하는 경우, 이 섹션은 안전성에 영향을 주는 실패로 인해서 만들어진 변경에 주의해서 소프트웨어 변경의 요약을 포함하고 이전 승인 이후 소프트웨어 라이프 사이클 프로세스로부터의 어떠한 변경과 개선을 구분한다.

 

이 부분에 대한 설명은 여기에서는 DO-178 가이드라인의 설명을 소개하는 정도로 마무리한다. 기본적으로 SASPSAC의 최종 승인된 버전과 대비해서 변경된 부분이 있을 경우 그 변경된 경과를 적는 것이지만 실질적으로 PSAC의 최종 승인 버전을 어디에 두어야 하는지에 대한 명확한 기준이 제시된 부분은 없다. 추후 실전 사례나 DER을 통한 확인을 거쳐서 추가 설명을 업데이트 할 예정이다.

 

k. 소프트웨어 상태(Software status)

 

여기에 작성하는 내용은 인증을 받는 시점에서 미해결로 남아 있는 문제점(Problem Reports)의 요약이다. 원칙적으로는 인증을 받는 시점에서 문제점이 남아 있으면 안된다. 모두 다 수정되어야 한다. 하지만 상황에 따라서 수정하지 못하거나 수정을 하지 않고 소위 오픈(open)’ 상태로 그대로 두는 경우가 있다. 물론 그런 경우에는 반드시 그에 대한 타당한 이유가 있어야 하며 인증당국의 허가가 있어야 한다. 만약 그런 조건이 갖추어 진 문제점에 대해서는 다음과 같은 항목들을 포함해서 자세한 내용을 작성하게 된다.

 

-       각 문제점에 대한 설명

-       관련된 에러

-       기능적인 제약사항

-       운영상의 제한사항

-       안전성에 대한 잠재적인 부작용

-       문제점을 오픈상태로 두는 이유

-       영향을 감소시키기 위해 수행되어야 할 활동

 

l. 준수 의견(Compliance statement)

 

여기에 작성될 내용에 대해서 가이드라인에서는 다음과 같이 설명하고 있다.


 

해석을 보자.

 

l. 준수 의견: 이 섹션은 이 문서(참고: DO-178 가이드라인)를 준수하는 지에 대한 의견과 소프트웨어 계획에 명시된 기준에 대한 준수를 보여주기 위해 사용된 방법의 요약을 포함한다. 이 섹션은 또한 인증 당국에 의해서 만들어진 추가적인 결정과 계획, 표준, 그리고 SAS가 아닌 다른 곳에서는 커버되지 않는 이 문서와의 차이를 설명한다.

 

복잡한 설명이 나오지만 결국 인증에 대한 종합적인 의견을 작성하는 것이며 특히 기존 계획 및 표준과 DO-178 가이드라인과의 차이점이 있을 경우에는 그에 대해서도 여기서 작성하게 된다.

 

사실 필자는 아직까지 SAS를 작성해 본 적이 없어서 장담할 수는 없지만 결국 SAS 역시 인증당국 혹은 DER의 확인과 승인을 받아야 한다는 점에서 위의 내용들이 잘 이해가 가지 않는다면 그런 부분을 인증당국 혹은 DER에게 물어보고 도움을 받아서 작성할 수 있을 것이다.