Component-Based Architecture재사용성(Reusability)이 핵심인 모듈형 아키텍처. 기존 Component들을 조합해 복잡한 시스템을 구축한다. 인터페이스는 Port, 방향은 데이터 흐름 중심, 스타일은 비동기식(Asynchronous). 상위 아키텍처 맥락은 소프트웨어 아키텍처 참고.

핵심 구조

  • SW Component — 재사용 가능한 기능 단위
  • Port — Component 간 연결점. Component들은 Port를 통해 서로 연결되고 통신
  • Application 구조에 집중 — 전체 시스템 계층을 표현하는 Layered와 달리, Application 내부의 Component 배치를 시각화

Layered Architecture가 상·하위 추상화 계층을 드러낸다면, Component-Based는 같은 계층 내 Application 구조를 Visible하게 드러낸다.

AUTOSAR Application

AUTOSAR Application Layer는 Component-Based 스타일의 대표 사례. SW Component(SW-C) 들이 Port를 통해 연결되어 Application 구조를 이룬다.

  • 각 SW-C는 재사용 가능한 단위 기능
  • Port 간 통신은 하위 RTE(Runtime Environment)가 중개
  • 차량 프로젝트 간 SW-C 재사용을 목적으로 한 구조

SW-C/Port/Runnable의 상세 구조, Client-Server vs Sender-Receiver 통신 모델, Runnable-to-Task Mapping은 AUTOSAR SW-Component / AUTOSAR RTE에서 다룬다.

특성 요약

특성
핵심 가치Reusability (재사용성)
인터페이스Port
통신 방향Data flow 중심
동작 방식Asynchronous(비동기)
시각화 범위Application 구조

비동기 통신·Pub-Sub 등의 상세는 실행·통신 아키텍처 패턴에서 다룬다.

같이 보기