Feb 10, 2026
-45 mins read
자동차는 지난 10년간 엄청나게 발전한 모습을 보여주고 있습니다. 오늘날 대부분의 차량, 특히 승용차들은 엔진 출력보다는 디지털 역량으로 평가받는 경우가 많습니다.
소비자 입장에서는 자신의 자동차가 스마트폰, 스마트 홈 기기, 웨어러블 등과 함께 연결된 스마트 생태계의 또 하나의 구성 요소가 되었습니다. 바로 이러한 이유로 평균적인 자동차에는 1990년대 슈퍼컴퓨터보다 더 많은 컴퓨터와 칩이 탑재되어 있습니다.
글로벌 커넥티드 카 시장은 2028년까지 1918억 3천만 달러 이상의 가치를 지닐 것으로 예상됩니다. 소비자 측면을 보면 긍정적인 소식이지만 이러한 디지털 요구를 실현하기 위해 뒤에서 노력하는 연구원, 엔지니어, 개발자, 제품 디자이너, 검증 및 인증 전문가들에게는 그렇지 않을 수도 있습니다.
자동차 소프트웨어 개발은 차량 내 소프트웨어와 하드웨어 부품이 통합된 작업입니다. 디지털 소비자 수요를 충족시키기 위해 복잡도가 증가함에 따라 전통적인 개발 방식은 빠르고 신뢰할 수 있는 소프트웨어를 만들기에 적합하지 않습니다. 이러한 이유로 모델 기반 개발이 현재 자동차 기술 개발의 골드 스탠다드로 자리잡고 있습니다.
모델 기반 개발 (Model-based development) 방식이란 엔지니어가 소프트웨어 코드를 실제 하드웨어 부품에 배포하거나 통합하기 전에 완전한 가상 환경에서 설계, 구축, 검증할 수 있도록 하는 접근법을 말합니다. 본질적으로 시뮬레이션을 활용한 고도화된 개발 단계라고 할 수 있습니다.
역사적으로 시뮬레이션 방식은 실험 데이터의 소유권 문제라는 어려움을 겪어왔습니다. 실험 시뮬레이션 데이터에 접근하고 이를 관리하는 것은 시뮬레이션 팀의 몫이었으며 이 데이터가 실제 물리적 환경에서의 조건과 일치하는지 여부는 물리적 배치를 통해서만 확인할 수 있었습니다. 모델 기반 시스템 엔지니어링(MBSE)은 시뮬레이션과 물리적 엔지니어링을 데이터 관점에서 결합하여 모든 이해관계자가 실제 성능 데이터를 코드가 라이브 하드웨어상에서 실행되기 전에 정확히 이해할 수 있도록 합니다. 즉, 이 모델은 하드웨어-소프트웨어 통합 시 부품이 작동해야 하는 정확한 작업 흐름을 포착하며 이 작업 흐름 중심의 코드를 실제 차량에 사용되는 마이크로프로세서에 임베딩하기 위해 전달합니다.
이와 같이 모델 기반 개발은 하드웨어와 소프트웨어 간 통합을 효율적으로 수행하면서 개발 속도와 신뢰성을 높이는 핵심 기술이라고 강조할 수 있습니다.
모델 기반 개발에서 효율적이고 신뢰성 높은 소프트웨어 및 시스템 설계를 위해 다양한 전문 도구들이 핵심적인 역할을 수행하고 있습니다.
MATLAB/Simulink
MATLAB/Simulink는 엔진 동작 및 파워트레인 부품과 같은 동적 시스템 모델링에 널리 사용됩니다. 제어 시스템 설계, 신호 처리, 데이터 시각화를 지원합니다.
ANSYS
ANSYS는 구조, 열, 유체 역학에 관한 시뮬레이션에 중점을 둡니다. 엔지니어들은 이를 통해 다양한 조건 하에서 차량의 공기 역학과 소재를 시험할 수 있습니다.
CATIA
CATIA는 3D 설계와 제품 수명 주기 관리에서 뛰어나며, 팀이 복잡한 차량 부품을 설계하고 생산 워크플로를 효율화할 수 있도록 합니다.
시스템 엔지니어링용 SysML
시스템 모델링 언어(SysML)는 복잡한 차량 아키텍처와 일치하는 시스템 수준 모델을 만들기 위해 필수적이며, 모든 부품이 원활히 작동하도록 보장합니다.

모델 기반 설계는 V-다이어그램 (V-diagram)으로 설명되는 설계 흐름을 가능하게 합니다. 프로세스의 각 단계에서는 해당 단계에 적합한 추상화 수준의 모델이 시스템 구성 요소를 나타내고 설계를 시뮬레이션하는 데 사용됩니다.
초기에는 일반적인 개념과 개념적 아키텍처 탐색을 위해 거시적 거동을 모델링하는 높은 수준의 추상 모델이 활용될 수 있습니다. 하지만 디자인 단계가 진행되어 더 구체적인 질문들이 제기될 때에는 연구 중인 설계가 점점 구체화되어 최종적으로는 생산을 검증할 수 있을 정도로 적절한 정확성을 갖춘 모델로 전체 시스템이 구현됩니다.
모델 기반 설계 흐름에서 구현 및 프로젝트 테스트 부분을 분리하여 신뢰할 수 있는 모델을 구축하는 반복 과정을 설명하는 것이 유익할 수 있습니다.
관찰된 동작과 시뮬레이션된 동작 간의 일치 정도를 평가하기 전에 모델 검증이 필요합니다. 모델 검증은 가상 프로토타입이 지정된 정확도 한도 내에서 시스템 모델을 충실히 대표함을 확인하는 과정입니다. 이를 이해하고 실현하면 관찰된 동작과 시뮬레이션된 동작 간의 일치 수준이 모델 유효성 검증 단계의 본질이 됩니다. 받아들여질 수 있고 유효한 모델로의 발전은 반복적인 절차입니다.
일반적으로 시스템 내 모든 모델은 더 복잡한 시스템 설계에 도입되기 전에 개별적으로 특성화되고 검증되며 유효성 검증을 받아야 합니다.
자동차 산업이 발전함에 따라, 소프트웨어 프로세스 최적화를 위해 모델 기반 개발(MBD)과 코드 기반 개발의 차이를 이해하는 것이 중요해졌습니다. 아래 표는 이 두 가지 방법론의 주요 차이점들을 요약하여 자동차 소프트웨어 개발 맥락에서 각각의 독특한 접근법, 장점, 과제를 강조하고 있습니다. 아래 표에서 확인할 수 있듯이, MBD는 그래픽 기반 설계와 초기 테스트를 강조하는 반면, 코드 기반 개발은 수작업 코딩의 유연성과 제어를 제공합니다.
| 모델 기반 개발 (Model-based development) | 코드 기반 개발 (Code based development) |
| 그래픽 설계 및 자동 생성 코드: Simulink와 같은 도구를 사용해 시스템을 시각적으로 설계하고, 이후 코드를 자동으로 생성합니다. | 수작업 코딩: 개발자가 C, C++ 같은 언어로 직접 코드를 작성하며 완전한 제어가 가능합니다. |
| 초기 시뮬레이션 및 테스트
: Model-in-the-Loop (MIL), Hardware-in-the-Loop (HIL) 등 초기 검증을 지원합니다. | 개발 후 테스트: 코드 대부분이 완성된 후 주로 수작업 방식으로 테스트가 이루어집니다.
|
| 고수준 추상화: 시스템 동작에 초점을 맞추어 복잡한 논리를 단순화하고 통신을 강화합니다. | 저수준 집중: 메모리, 하드웨어, 성능 최적화에 대한 세밀한 제어가 가능합니다. |
| 빠른 프로토타이핑: 모델 업데이트와 자동 코드 생성의 빠른 반복으로 개발 시간을 단축합니다. | 높은 유연성: 특정 툴체인에 얽매이지 않아 다양한 플랫폼이나 하드웨어에 맞춘 맞춤화가 가능합니다. |
| 툴 의존성: 특정 모델링 도구에 의존하므로 유연성은 제한될 수 있으나, 일관성은 향상됩니다. | 느린 프로토타이핑: 변화 시 수작업 코딩, 디버깅, 테스트가 필요해 반복 속도가 느립니다. |
자동차 소프트웨어 개발에서 모델 기반 개발은 혁신적인 전환점을 보여줍니다. 이 방식은 Simulink 같은 그래픽 설계 도구를 활용해 엔지니어가 시스템을 시각적으로 설계하고 자동으로 코드를 생성할 수 있도록 지원합니다. 그리고 MBD는 MiL(Model-in-the-Loop)과 HiL(Hardware-in-the-Loop) 같은 조기 시뮬레이션 및 테스트 기법을 통해 시스템 동작을 신속하게 검증할 수 있습니다. 또한, 높은 수준의 추상화에 집중하여 복잡한 논리를 단순화하고 팀 내 소통을 원활하게 합니다. 모델 업데이트와 자동 코드 생성으로 빠른 프로토타이핑이 가능해 개발 기간을 크게 단축할 수 있다는 점도 큰 장점입니다. 다만, 특정 모델링 도구에 의존하는 특성상 일관성은 향상되나 유연성은 다소 제한될 수 있습니다.
실제 경험 측면을 보면 MBD를 사용하는 고객은 도구 활용에 크게 의존하는 경향이 있으므로 전문적인 도구 지원팀이 함께해야 개발 지연이나 장애를 방지할 수 있습니다. 적절한 도구 관리가 이뤄진다면 모델 기반 개발은 전통적인 코드 기반 개발 방식에 비해 빠른 반복 주기와 향상된 테스트, 효율적인 작업 흐름을 구현할 수 있습니다.
한편, 코드 기반 개발은 개발자가 C, C++ 같은 언어로 직접 코딩하는 방식입니다. 이 접근법은 메모리 관리와 성능 최적화, 하드웨어와의 연동을 세밀하게 제어할 수 있다는 강점이 있지만 주요 코드가 완성된 이후에야 테스트가 진행되는 경우가 많아 문제 발견이 늦어질 수 있습니다.
또한, 특정 툴체인에 구애받지 않는 유연성이 있지만 변경 사항 발생 시 수작업 코딩과 디버깅, 테스트 과정이 길어 프로토타이핑 속도가 느린 편입니다. 이러한 차이점은 개발 방법의 선택이 전체 작업 효율성과 제품 품질에 큰 영향을 미친다는 점을 보여줍니다.
본 글에서 자동차 소프트웨어에서 모델 기반 개발의 구현에 대해 살펴보겠습니다. 고객 요구에서부터 소프트웨어 납품까지의 전형적인 작업 흐름을 개괄하며 일반적인 과제와 경험을 바탕으로 한 개선 방안을 제시합니다.
자동차 소프트웨어 개발의 전형적인 작업 흐름은 고객의 요구사항 제시로 시작하여 시스템 단계에서 초기 계획 수립과 기술 사양 정의가 이루어집니다. 이후 개발자가 이를 바탕으로 기능 소프트웨어를 구현하고 각종 테스트를 통해 소프트웨어의 성능과 품질을 검증하는 과정을 거친 뒤 최종적으로 통합 및 납품 단계로 이어집니다.
그러나 경험에 따르면, 시스템 단계에서 요구사항 수집과 변경 요청 관리 업무가 집중되면서 병목 현상이 자주 발생합니다. 특히 시스템 아키텍트가 변경 요청까지 담당하면 개발자와의 기능 조율과 설계 관련 커뮤니케이션이 지연되어 프로젝트 일정과 품질에 영향을 미칠 수 있습니다.
이를 개선하기 위해, 고객과 시스템 단계는 유지하되 시스템과 개발팀 사이에 ‘소프트웨어 리드’나 ‘기능 관리자’ 역할을 신설하는 방안을 제안합니다. 이 역할은 기능 요구사항의 명확한 전달과 이해를 책임지며 전반적인 소통을 원활하게 돕습니다.
또한 변경 요청을 검토·승인하는 변경관리위원회(Change Control Board)를 구성하여 프로젝트 우선순위와 자원 상황을 반영한 효율적인 변경 관리를 추진하는 것이 중요합니다. CCB가 변경 요청 관리 책임을 분담함으로써 시스템 단계의 부담을 덜고 이해관계자 간 협업과 소통의 질을 높일 수 있습니다.
소프트웨어 리드나 기능 관리자는 각 팀원의 전문 영역에 맞춰 업무를 분배하고 토크 제어 기능 담당자처럼 특정 기능에 대해 깊은 이해와 신속한 문제 해결을 도모할 수 있습니다. 이러한 개선된 작업 흐름은 개발 효율성을 높이고 책임 소재를 분명히 하여 궁극적으로 고품질의 자동차 소프트웨어 개발로 이어질 것입니다.

모델 기반 개발 (MBD)은 기능 중심 관점에서 시스템과 구성 요소를 가상으로 설계할 수 있기 때문에 엔지니어들은 하드웨어 및 소프트웨어의 구조적 복잡성에 덜 얽매이면서 핵심 기능 개발에 집중할 수 있습니다. 초기부터 기능별 설계가 진행되므로 복잡한 시스템 통합 과정에서 발생할 수 있는 오류와 비효율을 미리 방지할 수 있습니다. 특히 자동차 분야처럼 높은 안전성과 신뢰성이 요구되는 환경에서 매우 중요한 요소로 작용합니다.
MBD는 Model-in-the-Loop(MIL), Hardware-in-the-Loop(HIL) 등 다양한 시뮬레이션 기법을 활용해 실제 하드웨어와 연동된 상태에서 조기에 기능을 검증할 수 있습니다. 이 과정에서 소프트웨어 및 하드웨어 간 인터페이스 문제, 설계 오류 등을 초기에 발견하여 수정함으로써 나중에 발생할 수 있는 치명적인 결함을 예방합니다. 결과적으로 제품 신뢰성 향상 뿐 아니라 개발 후반 후기 단계에서의 리워크 비용 (Rework cost)도 크게 줄입니다.
반복 테스트와 수정이 초기 단계에서 가능한 만큼, 전체 개발 주기가 단축됩니다. 코드 자동 생성과 시뮬레이션 기반 검증을 통합하여 불필요한 재코딩과 디버깅 시간을 크게 줄일 수 있으며 결함 발견 시점이 앞당겨지면서 비용 효율이 올라갑니다. 이로 인해 프로젝트 예산이 안정되고 시장 출시에 필요한 시간 역시 단축되어 비즈니스 경쟁력이 강화됩니다.
신뢰할 만한 모델을 기반으로 자동 생성되는 코드는 인간의 실수에 의한 버그 가능성을 줄여줍니다. 일관되고 체계적인 코딩이 이루어지며 이는 최적화된 성능과 시스템 내구성 향상에 기여합니다. 고품질 소프트웨어는 최종 소비자에게 제공되는 자동차의 전반적인 경험과 안전성을 눈에 띄게 높입니다.
기능 단위로 설계된 컴포넌트와 테스트 시나리오는 하드웨어 종류가 달라도 반복 활용이 가능합니다. 이는 개발 시 맞춤화에 소요되는 자원을 절감하고 여러 제품이나 프로젝트 간 빠른 확장을 가능하게 합니다. 또한, 다양한 기능에 적용 가능한 테스트 절차가 컨트롤되고 관리되어 품질 관리가 보다 용이해집니다.
MBD의 빠른 프로토타이핑과 재사용 가능한 코드, 설계의 일관성은 신규 기능과 제품 출시에 소요되는 시간을 크게 줄입니다. 자동차 산업과 같이 치열한 경쟁 환경에서는 출시 시점이 곧 시장 점유율과 직결되므로, 신속한 대응은 기업의 수익 증대와 브랜드 가치 향상에 직접적인 영향을 미칩니다. 또한, 빠른 시장 대응은 소비자 요구 변화에 즉각적으로 대응하는 R&D 역량 강화로 이어집니다.

자동차용 모델 기반 개발(MBD)이 많은 장점을 지니고 있는 반면 비용과 시간을 효과적으로 절감하기 위해서는 해결해야 할 여러 과제가 존재합니다. 이번 글에서는 자동차 MBD 분야에서 가장 큰 3 가지 도전 과제를 살펴보고 시장에서 적용 가능한 해결책을 제안하고자 합니다.
자동차 시스템은 점차 복잡해져 2025년에는 차량 내 코드 라인이 1억 줄을 넘을 것으로 예상됩니다. 이에 전통적인 문서 중심 개발 방식은 한계에 다다랐고 이를 극복하기 위해 많은 완성차 업체와 Tier 1 협력사가 MBD를 도입하고 있습니다.
혼다 유럽 R&D 센터의 안토넬로 체라볼라는 “가장 복잡한 시스템 개발 경험으로 개발 단계마다 복잡성이 증가하므로 모든 과정에 MBD가 필요하다”며 MBD 프레임워크는 대규모 시스템 통합을 가능하게 했으나 디버깅이 어려워, 최신 소프트웨어 업데이트를 뉴스 저널 형식으로 추적하는 보고 시스템을 도입해 버그 위치 파악에 큰 도움이 되었다고 밝혔습니다.
앞서 언급한 바와 같이, MBD는 자동차 기능 개발 및 소프트웨어 개발 방식의 근본적인 패러다임 변화를 요구합니다. 과거에는 처음부터 코딩하며 결과물을 문서화했지만 이제는 SysML, UML 등 모델링 언어로 설계한 모델을 바탕으로 모델 기반 환경에서 자동으로 코드를 생성합니다.
기능 개발자들은 이제 이런 모델을 작성하고 프로세스 후반부 단계와 이를 공유해야 합니다. 이 과정은 대부분의 개발자에게 근본적인 사고 방식의 전환이며 기존 개발 방식에 익숙한 이들의 저항감이 수반될 수 있습니다. 이 문제는 기술적 문제라기보다 변화 관리 측면의 도전과제라 할 수 있습니다.
이러한 과제를 극복하기 위해서 다음 네 단계는 개발팀이 중요한 개발 요소를 통제하며 안전하게 프로젝트를 진행할 수 있도록 돕는 절차일 수 있습니다.
자동차 안전 관련 소프트웨어 개발에서 기능 안전 표준인 ISO 26262 준수는 매우 중요한 과제로 여겨집니다. 특히 안전이 중요한 시스템에 대해 ISO 26262 규격에 맞게 개발하는 것은 그 자체로 큰 도전입니다.
모델 기반 개발(MBD)에서 자동 생성된 코드는 점점 더 안전 관련 및 안전 중요 자동차 애플리케이션에 적용되고 있습니다. 따라서 품질과 기능 안전을 보장하기 위해, 모델과 자동 생성 소프트웨어 구성요소는 다양한 품질 보증 절차를 거쳐야 하며, 안전 표준 준수가 명확히 입증되어야 합니다. 그러나 지금까지 ISO 26262 준수를 검증하는 과정은 주로 수작업으로 이뤄져 시간이 많이 소요되고 비용 부담도 큽니다.
자동화된 검증 절차가 부족해 발생한 핵심 난제는 형식 기법(formal methods)을 활용함으로써 특정 컨텍스트 내에서 해결되었습니다. 이 기술은 ISO 26262 맥락에서 적용되었으며 실제 프로젝트에 도입할 때 발생하는 비용, 편익, 위험 요소를 주요 경영진이 판단할 수 있도록 영향을 분석하고 평가했습니다.
프로세스는 시스템 단계에서 SysML을 통합하고 소프트웨어 단계에서는 Simulink와 Stateflow를 이용해 C 코드로 자동 생성하는 통합 모델 기반 절차를 따랐습니다. 또한 이 새로운 개발 접근법은 상용 파트너들이 이미 사용 중인 ISO 26262 준수 프로세스를 기반으로 하면서 형식 기법을 이용해 수정·개선된 것입니다.
경적 제어 시스템을 위한 MATLAB 모델
과제
해결 방안
업무 범위
자동차 분야의 모델 기반 개발(Model-Based Development, MBD)은 엔지니어들이 실제 하드웨어에 배포하거나 통합하기 전에 완전한 가상 환경에서 소프트웨어 코드를 설계하고 구축하며 검증할 수 있는 개발 방식입니다. 본질적으로 시뮬레이션을 활용하는 고도화된 개발 단계로, 이를 통해 소프트웨어 품질을 높이고 개발 과정의 효율성을 극대화할 수 있습니다.
모델 기반 개발은 가상 환경에서 시스템을 설계하고 시뮬레이션할 수 있게 해 개발 초기부터 오류를 미리 발견하고 수정할 수 있도록 돕습니다. 이로 인해 개발 기간이 단축되고 개발 비용이 절감되며 최종 제품의 품질과 안전성이 크게 향상됩니다. 특히 자동차처럼 복잡한 시스템에서는 다양한 하드웨어와 소프트웨어 간의 상호작용을 통합적으로 검증할 수 있어 필수적인 방법론으로 자리 잡았습니다.
코드 기반 개발은 개발자가 직접 코드를 작성하는 방식으로, 저수준 제어가 가능하지만 변경 시 재작업과 테스트에 많은 시간이 소요됩니다. 반면 모델 기반 개발은 그래픽 모델링 도구를 사용해 시스템을 시각적으로 설계하고, 자동으로 코드를 생성하여 초기 단계부터 시뮬레이션과 검증을 수행합니다. 이 덕분에 반복적인 수정이 효율적이고, 오류 발생을 최소화하며, 개발 속도가 빨라집니다.
현대 자동차 소프트웨어 개발의 성공은 디지털 실험을 효과적으로 검증하고 성공적으로 모델링된 설계를 기반으로 시스템을 엔지니어링하는 능력에 크게 의존합니다. 이는 개발 활동의 디지털화를 원활하게 진행하여 자동차 제조사가 앞서 언급한 다양한 이점을 처음부터 누릴 수 있도록 돕습니다.
그러나 이와 관련해 가장 중요한 점은 현대 자동차 시스템의 예상 결과와 일치하는 모델과 설계를 테스트하고 검증하는 능력입니다. 이 부분에서 경험이 풍부한 자동차 소프트웨어 테스트 파트너인 LTS Group은 혁신적인 역할을 할 수 있습니다. 보다 자세한 내용을 원하시면 언제든지 문의해 주시기 바랍니다.
Share
"한국 시장의 IT 분야에 대한 콘텐츠 제작자인 민서를 만납시다 그분은 정보기술 분야에 깊게 관심을 갖고 특히 신규 기술 분야에서 한국과 베트남 협력관계 및 IT 솔루션에 대한 정보를 독자들에게 신속하게 전할 수 있습니다. 유익한 IT 지식으로 독자와 함께 친한 친구가 되고 재미있는 기술여정 완전히 즐길 수 있음을 믿습니다. minseo.kang@ltsgroup.tech 이메일로 연락하세요. "




이메일:contact@ltsgroup.tech
전화:(+84) 96-238-7474
본사:베트남, 하노이, 68 Nguyen Co Thach 길, MHDI빌딩 17층
일본 사무소:일본, 108-0023 도쿄도, 미나토구, 시바우라 3-20-10, 이와모토빌딩 5층
미국 사무소:25787 Rawley Springs Dr, Chantilly, VA 20152
한국 사무실:서울시 강남구 테헤란로 146 현익빌딩 12층