Behavioral Feature Model을 통한 AUTOSAR 컴포넌트 분류 방법 - 조은상 (The Graduate School, Ajou University, 2017)
차량용 ECU 소프트웨어의 복잡성을 관리하고, 재사용성 및 상호운용성을 향상시키기 위해 자동차 제조업체와 부품 공급업체가 공통으로 사용할 수 있도록 설계된 개방형 자동차 소프트웨어 아키텍처 표준인 AUTOSAR(AUtomotive, Open System ARchitecture)를 개발하였다. AUTOSAR는 ‘계층형 컴포넌트 기반 소프트웨어 아키텍처’를 정의하여, 분리된 계층에 의해 하드웨어와의 의존성을 낮추고, 소프트웨어를 컴포넌트 단위로 모듈화하여 재사용성을 높였다. 하지만, 기능을 적합한 컴포넌트로 분류하는 방법에 대한 대한 상세한 가이드를 제공하지 않아서 이 과정은 개발자의 경험과 직관에 의존할 수 밖에 없다. 따라서, 기능으로부터 AUTOSAR개발표준을 만족하는 컴포넌트 타입으로 분류하는 명확한 방법이 필요하다. 본 논문에서는 이와 같은 문제를 해결하고자 기능 요구사항의 Behavioral Feature 분석을 통한 AUTOSAR 소프트웨어 컴포넌트 분류 방법을 제안한다. “Behavioral Feature”의 Feature 는 피처 기반 도메인 분석 기법인 FODA(Feature-Oriented Domain Analysis)와 애자일(Agile) 소프트웨어 개발기법인 FDD(Feature-Driven Development)에서 유래하였으며, ECU 소프트웨어의 소스코드에서 전역변수나 하드웨어 레지스터에 영향을 주는 동작을 행위(Behavior)라 정의하고 이 관계를 연결하여 조합하면 ECU의 동작을 정의할 수 있다. 이러한 특성을 조합하여 Behavioral Feature를 정의하였다. 기능 요구사항을 Behavioral Feature로 분리하고, 기능 요구사항을 AUTOSAR 표준 소프트웨어 디자인 패턴의 동작 흐름인 “Sensing-Controlling-Actuation”의 관계로 분리하고, 그 동작을 Behavioral(행위기반) Feature 명세 방식으로 표현한 Behavioral Feature Modeling 과정을 통해 AUTOSAR의 Software Architecture의 최 상위 레벨인 Application Layer의 단계부터, 내부 상세 동작을 구성하는 BSW Layer의 단계까지 명세 한다. 이와 같은 Behavioral Feature Modeling순서와 방법을 제시하여 기능 요구사항을 AUTOASR 컴포넌트로 분류하는 과정을 보여주고, 그 결과를 분석함으로써, 개발자에 대한 의존도를 낮추어 일정 수준 이상의 품질이 보장된 설계가 가능할 것으로 기대한다.
학위논문(석사)--아주대학교 일반대학원 :소프트웨어특성화학과,2017. 2
Keywords: AUTOSAR; 컴포넌트 분류; 기능 요구사항 분석