소프트웨어공학 (Software Engineering)

[ASPICE 핵심 컨셉#3] 용어 "Element", "Component", "Unit", and "Item"

깡또아빠 2022. 10. 9. 23:06

해당 글은 ASPICE Annex D. Key concepts를 참고하여 작성되었습니다.


용어는 기본적으로 매우 중요하게 / 잘 알맞게 사용되어야 합니다. 

자동차 산업에서는 많은 약어 (Abbreviation)을 사용합니다. 같거나 유사한 기능도 OEM/지역 별로 다르게 부르기도 하고요.

예를들면 AEB: Autonomous Emergency Braking, FCA: Forward Collision-Avoidance Assistance 등과 같이요.

 

핵심 컨셉 3번째는 이러한 용어에 대해서 정의를 합니다. 

 

  • 엘리먼트 (Element): V model에서왼쪽 편 (Left side)의 설계 들을 말합니다.
    (ISO 26262에서도 광범위하게 사용되는 용어입니다)
  • 컴포넌트 (Component): 소프트웨어 아키텍처 (SWE.2)의 하위 엘리먼트로서 소프트웨어 상세 설계 (SWE.3) 정의를 위해 사용됩니다. 
    (현실에서는 시스템 레벨에서도 아키텍처 구성요소 부분을 컴포넌트라고 부르기도 합니다만, 오늘은 ASPICE 표준에서 말하는 용어의 정의로만 내용을 다루기로 합니다)
  • 유닛 (Unit): 더 이상 분해할 수 없는 최하위 수준의 컴포넌트를 말합니다. 즉 컴포넌트는 하나 이상의 유닛을 포함하는 구성 단계로 생각하실 수 있습니다. 
  • 아이템 (Item): V model에서 오른쪽 편 (Right side)의 요소들을 말합니다. 여기서 예시로는 Object file, Library 또는 실행가능한 파일을 말하고 있습니다.

 

ISO 26262 part 10에서는 아래와 같이 Item을 시스템 1개 또는 다수개로 정의하고 있습니다. 

또한 ISO 26262 part 1에서 Item은 아래와 같이 정의되어 있습니다.
system (3.163) or combination of systems (3.163), to which ISO 26262 is applied, that implements a
function or part of a function at the vehicle level

Note 1 to entry: See vehicle function (3.178).

 

해당 글을 쓰기 전까지만 해도 용어를 다르게 정의한 것이라고 오해할 뻔 했네요. 위 그림만 놓고 보면 설계의 왼쪽, 오른쪽 편을 나누어서 다루고 있지 않을 뿐이지 차량 레벨에서의 기능 (Function at the vehicle level), 구현된 기능 (implements a function)을 생각해보면 ASPICE와 동일한 개념이라고 이해하면 되겠네요.

 

ASPICE를 셀프 스터디 중입니다. 글을 쓰면서 과거 제가 이해한 부분들을 좀 더 명확하고 정리할 수 있는 것 같다는 생각을 해봅니다.

 

이상 읽어주셔서 감사합니다.