자율주행, 빅데이터, 인공지능, 클라우드, 5G는 미래 자동차의 필수 기술입니다. LG전자 VS(Vehicle component Solutions, 전장부품솔루션) 사업본부는 자동차에서 누릴 수 있는 새로운 고객경험을 위해 오늘도 달리고 있습니다. VS사업본부 연구원이 직접 전하는 미래 모빌리티 경험, 『모빌리티 인사이드』에서 만나보세요.
“왜 아직도 매일 연습하시나요?” 기자가 물었습니다. “요새 내가 실력이 느는 거 같아서요.” 세계적인 첼리스트 파블로 카살스가 90세에 한 말입니다.
소프트웨어는 반복적인 테스팅을 통해 오류를 미리 찾는 것이 최신 트렌드입니다. 개발을 끝낸 후 마지막 테스팅 때 심각한 오류나 중요한 문제를 발견한다면 수정을 해야 하는 개발 범위가 너무 크기 때문에 일정 등에 악영향을 미칠 수 있거든요. 게다가 해결할 방법을 찾거나 실제로 해결하는 것도 시간, 노력, 비용이 많이 듭니다. 이미 개발 산출물의 몸집도 커졌고 여러 컴포넌트 간 관련성도 높은 상태니까요.
그런데 만약, 개발 초기에 오류를 찾았더라면 어땠을까요? 더 짧은 시간, 더 작은 노력, 더 경제적인 비용으로 오류를 없앨 수 있었을 겁니다.
SDV* 시대, 차량용 소프트웨어 역시 마찬가지입니다. 현재 차량용 소프트웨어는 차량을 구성하는 수많은 부품 중 양적으로나 기능적으로 차지하는 비중이 높아졌고 차량이 동작하는 과정에서도 중요한 역할을 담당합니다. 게다가 차량용 소프트웨어는 반복적 테스팅을 통해 개발 초기에 오류를 찾아내 개선하고, 개선된 소프트웨어를 차량에 적용하면서 발전해 나가고 있습니다.
*SDV (Software Defined Vehicle) :소프트웨어로 하드웨어를 제어하고 관리하는 자동차
이렇게 차량용 소프트웨어의 양도 많아졌고 중요도도 높아졌기 때문에 완성차 업체들의 요구사항도 많아졌을 뿐 아니라 그 눈높이도 높아졌습니다. 그래서 소프트웨어에 대한 테스팅 전략도 진화하고 있습니다. 이에 발맞춰 LG 전자도 SDV 시대에 맞춘 테스팅 전략으로 소프트웨어를 검증하고 있죠.
그럼 SDV시대에 맞춘 LG전자의 테스팅 전략을 살펴볼까요?
소프트웨어 중심의 테스팅 환경
소프트웨어 테스팅은 왜 할까요? 고객의 요구사항과 기대 수준에 맞게 소프트웨어가 구현되었는지 확인하는 것이 가장 큰 목적이죠.
LG전자는 하드웨어에만 집중하지 않습니다. 하드웨어 안에 들어가는 소프트웨어를 테스팅할 수 있도록 다양한 환경, 조건, 시스템, 툴을 갖추고 있습니다.
또한, 소프트웨어 구현에 이어서 바로 진행되는 소프트웨어 단위 테스트 단계에서는 코드 실행 이전의 정적 분석을 통해 차량 시스템의 결함이나 내부, 외부 품질을 지표를 통해 꼼꼼하게 점검합니다.
시뮬레이션과 가상화 기술
차량용 소프트웨어 테스팅은 실제 차량 테스트 환경을 모사한 시뮬레이터 개발도 중요합니다. 테스트 케이스를 개발할 때도, 테스트를 실제로 수행할 때도, 시간과 비용 면에서 효율적이니까요. 그래서 시뮬레이터나 가상화 환경을 통한 테스트는 새로운 것을 ‘시도’하고 수시로 ‘수정’하는데 있어서 매우 효과적입니다.
자동화 테스팅
사람이 수동으로 테스트 케이스를 만들고, 테스트 환경을 구축하고, 테스트를 수행하면 시간과 비용이 많이 들뿐 아니라 단순 실수 가능성도 있습니다. 상대적으로 시스템화, 자동화된 테스팅을 하면 속도나 오류를 개선할 수 있습니다.
무엇보다 중요한 건 테스팅 결과를 비교할 때 유의미한 시사점을 얻기에 유리합니다. 동일 제품에 대해 이전 개발 시기와의 비교, 다른 제품과의 비교, 재발되는 컴포넌트 식별, 오류가 많은 검증 기법 확인, 테스트 성공률 분석이 가능합니다. 이것이 자동화 테스팅의 큰 장점입니다.
이런 경우도 있습니다. 단순하지만 양이 많은 데이터를 처리해야 하는 성격의 테스팅이 있다고 했을 때, 고난도는 아니지만 시간이 무척 많이 걸리게 됩니다. 이럴 때 자동으로 테스팅 할 수 있는 시스템을 활용하면 결과를 쉽게 얻을 수 있어 효율적입니다. 개발자들의 시간도 더 유용한 곳에 쓰일 수 있겠죠.
LG전자는 소프트웨어를 정기적으로 빌드하는, 즉 자동화 테스팅 환경을 구축하고 적용하는 업무 경험도 많습니다. 또, 새너티 테스트* 관련 지식과 경험도 내재화하고 있습니다.
*Sanity Test: 주요 테스트를 수행하기 전에, 해당 소프트웨어가 기본적으로 적합한지, 기초 동작이 되고 있는지를 판단하는 테스트 기법
무선 소프트웨어 업데이트와 유지보수
SDV 시대, 그리고 Connected Car 시대에는 OTA Update*, Telematics*, Digital Key*, AI Assistance, V2X 기능*이 많이 필요하죠. 그리고 이 기능들은 무선 소프트웨어 업데이트나 유지보수를 통해 지속적으로 차에 업데이트 되는 경우가 있어, 한 번 탑재한다고 끝이 아닙니다. 양산된 차와 소프트웨어 개발사 간의 끊임없이 연결된 ‘끈’ 이랄까요?
*OTA Update: Over The Air Update. 컴퓨터에 연결하지 않고 Wi-Fi 등을 사용하여 무선으로 펌웨어를 업데이트 하는 기술.
*Telematics: 컴퓨터 통신 이용
*Digital Key: 디지털 자동차 열쇠(근거리 자기장 통신이나 블루투스로 자동차와 스마트폰을 연결하여 스마트폰으로 차 문을 여닫는 것)
*V2X 기능: 차량·사물통신(Vehicle to Everything communication). 자동차와 모든 것을 연결하는 기술로, 차량을 중심으로 유·무선망을 통해 각종 도로 정보를 제공
그래서 차량용 소프트웨어 테스팅은 특히 이 기능들이 문제 없이 동작하도록 완성차 탑재 전에 엄격히 검증합니다. 더욱 다양한 테스트 케이스를 개발하거나, 새로운 검증 기법을 적용하거나, 검증 기간을 늘리거나, 검증하는 환경, 시간, 조건을 새롭게 조합해 보거나, 경험 기반으로 재발 방지 대책을 세우기도 합니다.
완성차에 적용하는 소프트웨어의 개발도 중요하지만 검증 또한 매우 중요합니다. 탄탄한 소프트웨어 검증 역량을 가진 LG전자의 전장 솔루션, 이제 이해가 되실까요?
2024년 올 한해 함께 모빌리티 인사이드 칼럼을 만들어 주신 모빌리티 인사이드 독자 여러분, 2025년에 더 좋은 모습으로 뵙겠습니다. 모두 건강, 건승하세요.