차량용 SW 통합 테스팅을 위한 메모리 갱신 패턴 기반 결함 위치 추정 및 시각화 - 황규본 (The Graduate School, Ajou University, 2019)
최근 자동차의 다양한 기능들은 전자 장치와 소프트웨어로 구현된다. 차량용 소프트웨어의 결함은 치명적인 사고의 원인이 되므로 시스템의 품질 보장을 위한 검증은 매우 중요하다. 차량용 소프트웨어의 개발 단계 중 소프트웨어와 하드웨어 통합 단계에서 Hardware-in-the-Loop(HiL) 테스트를 통해 검증이 이루어진다. 하지만 HiL 테스트는 블랙박스 테스트이므로 결함 발생 시 디버깅을 위한 시스템 내부의 동작 정보를 얻기 어렵다. 또한 자동차 시스템은 주문자상표부착생산 (Original Equipment Manufacturer, OEM) 방식에 따라 개발된다. 이 때문에 부품 개발과 통합 검증은 서로 분리된 독립적인 환경에서 수행된다. 따라서 결함에 대한 한정적인 정보는 개발자가 결함 위치를 파악하고 디버깅하는 데 많은 시간이 소요되게 한다. HiL 테스트 환경에서 디버깅 정보 제공 방법 중에는 메모리 정보를 활용한 결함 위치 정보 제공 방법이 있다. 메모리 정보는 프로그램의 동작 이력을 파악하는 중요한 단서가 될 수 있다. 또한 자동차 시스템의 엄격한 실시간성 때문에 특정 기능의 동작 중 애플리케이션의 메모리 사용은 언제나 같은 양상을 보인다. 이를 이용해 위의 방법에서는 단위 테스트와 통합 테스트의 메모리 갱신 정보를 비교하여 결함 위치를 추정한다. 하지만 메모리 정보를 해석하기 위해서는 SW 개발자 수준의 사전 지식이 필요하며 결함과 관련된 메모리 주소가 많을수록 정보 분석에 대한 직관성이 떨어진다는 단점이 있다. 따라서 본 논문에서는 메모리 갱신 패턴을 이용하여 통합 테스트 중 동작한 단위기능을 자동으로 식별하고 결함 정보를 기능별로 시각화하는 방법을 제안한다. 제안하는 방법은 3개의 ECU를 CAN 네트워크로 연결한 모형자동차에 실제 구현 후 통합 테스트 환경에 적용하여 평가하였다. 12가지 결함에 대해 실험한 결과, 메모리 갱신 패턴 시각화를 기반으로 전체 사용된 메모리 주소의 평균 3.47% 이내로 결함 후보를 축소할 수 있음을 확인하였다.
학위논문(석사)--아주대학교 일반대학원 :전자공학과,2019. 2