검색 상세

메모리 갱신 순차 패턴 발견을 통한 차량용 소프트웨어의 결함 위치 추정 기법

A Fault Localization Method by Discovering Memory Updated Sequential Pattern for Automotive Software

초록/요약

자동차 전자 제어 장치의 통합 테스트 단계에서는 다양한 하드웨어 및 소프트웨어 시스템을 통합하여 전체 시스템의 요구사항 검증을 수행한다. 차량용 소프트웨어의 개발 생명주기 표준인 ISO 26262에서는 통합 테스트 시 HiL (Hardware-in-the-loop) 테스트 기법을 이용하는 것을 권장한다. 그러나 HiL 테스트는 테스트의 입출력만을 고려하는 블랙박스 테스트이다. 따라서 테스트 수행 중 결함 발생 시 결함의 위치를 알 수 있는 정보 수집에 제약이 있다. 결함 관련 정보의 부재로 인해 결함 지역화에 많은 시간이 소요되고, 이는 개발 중 테스트 기간의 증가로 이어진다. 본 연구에서는 HiL 테스트 중 발생한 결함의 지역화를 위해, 시계열 메모리 정보를 분석하여 결함 위치와 관련된 프로그램의 실행 순서 정보를 제공하는 기법을 제안한다. 해당 기법은 먼저 HiL 테스트 수행 중의 시계열 메모리 정보를 획득한다. 그리고 테스트 입력 업데이트 사이의 시간 간격을 기반으로 테스트 수행 기능과 관련된 메모리 심볼의 업데이트 순차 패턴을 발견한다. 마지막으로, 정상 상태와 결함 발생 상태의 업데이트 순차 패턴을 비교하여 결함 원인으로 의심되는 심볼과 결함이 발생하는 업데이트 순차 패턴을 제공한다. 실제 차량 네트워크를 구성하여 발견되는 패턴의 정확도와 회수율, 결함 지역화의 효과에 대해 검증하였다. 실험 결과 패턴 탐색에서는 100%의 정확도, 58%의 재현율을 보였다. 그리고 결함 지역화는 최대 98%의 후보 축소율을 보여주었다. 이를 통해 HiL 테스트 중 테스트 대상 기능과 관련된 시스템 동작의 단서를 획득 할 수 있었다. 그리고 획득한 단서를 기반으로 결함 발생시의 패턴과 그 때의 심볼을 제시할 수 있었다.

more

초록/요약

In the integrated test phase of the automotive electronic control units, the development group integrates hardware and software systems to verify the requirements of the entire system. ISO 26262, which includes software development life cycle standard for passenger vehicles, recommends the usage of hardware-in-the-loop (HiL) testing for integration testing. However, the HiL test is a black box test techniques that considers only the input and output of the test. Therefore, there is a limitation in collecting information that can identify the locations of defects when defects are occurred during the test. The lack of defect-related information made developers to take a majority of time to localize the defects, leading to an increase in the test period during development. In this paper, we propose an approach to analyze the time series memory information and to provide the execution order information of the program related to the defect location in order to localize the defects during the HiL test. The approach first obtains time series memory information during HiL test execution. Then it finds a sequential update pattern of memory symbols associated with the target function of the test based on the time interval between test input updates. Finally, it compares the sequential update patterns between the normal condition and the condition of fault occurrence to provide suspected symbols and sequential update patterns in which faults occur. We verified the accuracy the recall, and the effect of defect localization in the vehicle network with embedded devices. The experiment results showed 100% in accuracy and 58% in recall on pattern discovery. Then, the defect localization experiment showed a reduction rate of 98.0% in maximum. This allowed us to obtain clues as to system operation related to the function being tested during the HiL test. Based on the obtained clues, we could present patterns and symbols at the time of defect occurrence.

more

목차

1. 서론 1
2. 관련연구 4
2.1. 차량용 소프트웨어 테스트 중 결함 지역화 기법 4
2.2. Program Spectra를 이용한 결함 지역화 기법 5
2.3. 순차 패턴을 이용한 결함 검출 기법 7
3. 메모리 데이터 수집 및 전처리 9
3.1. 메모리 데이터 및 업데이트 정보 9
3.1.1. 메모리 데이터 정보 9
3.1.2. 메모리 수집 11
3.2. 메모리 데이터 전처리 13
4. 메모리 업데이트 순차 패턴 탐색을 이용한 결함 위치 추정 기법 16
4.1. 메모리 업데이트 순차 패턴 탐색 16
4.1.1. 메모리 업데이트 순차 패턴 정의 16
4.1.2. 메모리 순차 패턴 발견 기법 17
4.1.3. 테스트 입력 및 심볼 업데이트 간격 획득 19
4.1.4. 관심 심볼 목록 획득 21
4.1.5. 관심 패턴 탐색 24
4.2. 결함 영향 패턴 및 심볼 구분 26
5. 실험 및 검증 31
5.1. 실험 환경 구성 31
5.2. 실험 준비 34
5.3. 실험 결과 38
6. 결론 44

more