KR20110023124A - 차량용 전자제어장치의 소프트웨어 검증 장치 및 방법 - Google Patents
차량용 전자제어장치의 소프트웨어 검증 장치 및 방법 Download PDFInfo
- Publication number
- KR20110023124A KR20110023124A KR1020090080750A KR20090080750A KR20110023124A KR 20110023124 A KR20110023124 A KR 20110023124A KR 1020090080750 A KR1020090080750 A KR 1020090080750A KR 20090080750 A KR20090080750 A KR 20090080750A KR 20110023124 A KR20110023124 A KR 20110023124A
- Authority
- KR
- South Korea
- Prior art keywords
- keyword
- ecu
- software
- test case
- extracted
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3684—Test management for test design, e.g. generating new test cases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3692—Test management for test results analysis
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Debugging And Monitoring (AREA)
Abstract
차량용 전자제어장치의 소프트웨어 검증 장치는 차량용 전자제어장치에 특화되고 파일 형태로 입력되는 요구사항으로부터 키워드를 추출하고, 추출한 키워드와 각 키워드에 대응되는 입력 값을 토대로 명세 기반의 테스트 케이스를 생성한다. 그리고, 생성된 테스트 케이스를 이용하여 차량용 전자제어장치의 소프트웨어에 대한 검증을 수행한다.
차량, ECU, 키워드, 요구사항, 응용 프로그램, 소프트웨어, 명세기반
Description
본 발명은 차량용 전자제어장치의 소프트웨어 검증 장치 및 방법에 관한 것이다.
기존의 소프트웨어 시험 검증 장치는 시험 대상 소프트웨어의 문법적 오류나 특정 규칙(예를 들어, MISRA-C 룰 등)에 대해 비교 검토한 결과를 개발자에게 보고하거나, 시험 대상 소프트웨어의 경계값, 조건/결정 등에 따라 테스트 케이스를 작성하여 소프트웨어를 시험 검증한다.
한편, 이러한 기존의 소프트웨어 시험 검증 장치는 범용의 소프트웨어에 대해 적용되는 것이 대부분이기 때문에 자동차 분야 등 특정 분야의 특성을 반영하지 못하는 경우가 발생한다.
본 발명이 이루고자 하는 기술적 과제는 차량용 전자제어장치의 소프트웨어를 효율적으로 검증하기 위한 소프트웨어 검증장치 및 그 방법을 제공하는 것이다.
상기한 목적을 달성하기 위한 본 발명의 특징에 따른 차량용 전자제어장치(Electronic Control Unit, ECU)의 소프트웨어 검증 장치는,
차량 내 장치들을 복수의 그룹으로 구분하고, 각 그룹에 포함된 장치들의 동작을 제어하는 ECU의 동작과 관련한 키워드들을 저장하는 데이터베이스; 상기 데이터베이스에 저장된 키워드들을 토대로 입력되는 요구사항으로부터 키워드를 추출하는 키워드 추출부; 상기 요구사항으로부터 추출한 키워드와 상기 추출한 키워드에 대응하는 입력 값을 토대로 명세 기반의 테스트 케이스를 생성하는 테스트 케이스 생성부; 및 상기 테스트 케이스를 토대로 상기 요구사항에 대응하는 ECU의 소프트웨어를 테스트하는 테스트부를 포함한다.
또한, 본 발명의 다른 특징에 따른 차량용 전자제어장치(Electronic Control Unit, ECU)의 소프트웨어 검증 방법은,
상기 ECU의 동작과 관련한 키워드들을 저장하는 단계; 파일 형태의 요구사항을 입력 받는 단계; 저장된 상기 키워드들을 토대로 상기 요구사항으로부터 키워드를 추출하는 단계; 상기 요구사항으로부터 추출한 키워드 및 상기 추출한 키워드에 대응하는 입력 값을 토대로 명세 기반의 테스트 케이스를 생성하는 단계; 및 상기 테스트 케이스를 토대로 상기 ECU의 소프트웨어를 테스트하는 단계를 포함한다.
본 발명의 실시 예에 따르면, 차량 전장용 ECU의 특성을 반영한 소프트웨어 검증이 가능하고, 차량 전장용 ECU 분야의 전문가가 아닌 사용자가 차량 전장용 ECU에 대한 신뢰성 검증을 수행하는 것이 가능한 효과가 있다. 또한, 요구사항 별로 소프트웨어 검증이 수행되었는지에 대한 관리가 가능한 효과가 있다.
아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
이제 아래에서는 본 발명의 실시 예에 따른 차량용 전자제어장치(Electronic Control Unit, 이하 'ECU'라 칭함)의 소프트웨어 검증장치 및 그 방법에 대하여 도면을 참고로 하여 상세하게 설명한다.
도 1은 본 발명의 실시 예에 따른 차량용 ECU의 소프트웨어 검증장치를 개략적으로 도시한 구조도이다.
도 1을 참조하면, 소프트웨어 검증장치는 데이터베이스(110), 입력부(120), 출력부(130), 키워드 추출부(140), 보정부(150), 테스트 케이스 생성부(160) 및 테스트부(170)를 포함한다.
데이터베이스(110)는 차량 내 장치들을 적어도 하나의 그룹으로 구분하고, 각 그룹 별로 대응하는 장치들의 동작을 제어하는 ECU의 동작과 관련하여 ECU로 전달되는 요구사항과 관련한 키워드를 저장한다. 또한, 각 요구사항 별로 ECU로 전달되는 기본 입력값을 저장할 수도 있다. 여기서, 차량 내 장치들은 기능 및 위치에 따라 파워트레인, 인포테인먼트(infotainment), 샤시, 바디, 차량 네트워크 등의 그룹으로 구분될 수 있다.
키워드 추출부(140)는 파일 형태의 요구사항이 입력되면, 데이터베이스(110)에 저장된 키워드들을 참조하여 입력되는 요구사항 별로 키워드를 추출한다. 여기서, 요구사항은 사용자에 의해 엑셀 등의 파일 형태로 작성되어 입력되며, 입력부(120)는 입력되는 파일 형태의 요구사항에 대한 구문분석과 단어분석을 통해 키워드를 추출한다.
보정부(150)는 입력부(120)를 통해 키워드 추출부(140)에서 추출한 키워드에 대한 보정 내용이 입력되면, 이를 토대로 키워드 추출부(140)에서 추출한 키워드를 보정한다. 또한, 보정한 키워드를 토대로 데이터베이스(110)를 업데이트 한다.
테스트 케이스 생성부(160)는 보정부(150)에서 보정된 요구사항 별 키워드와 각 키워드에 대응되는 ECU의 입력값을 토대로 명세 기반의 테스트 케이스를 생성한다. 여기서, 각 키워드에 대응되는 입력값은 데이터베이스(110)에서 읽어오거나 입력부(120)를 통해 사용자로부터 입력받은 입력값을 이용할 수 있다. 또한, 명세 기반의 테스트 케이스 생성을 위해 등가 분할, 경계값 분석, 결정 테이블 테스팅, 상태 전이 테스팅, 유즈케이스 테스팅, 조합 테스팅 등의 명세 기반 기법을 수행한 다.
테스트부(170)는 테스트 케이스 생성부(160)에서 생성한 테스트 케이스를 토대로 ECU의 소프트웨어를 테스트하고, 테스트 결과를 출력부(130)를 통해 출력한다. 또한, 테스트부(170)는 입력부(120)를 통해 테스트 예상 결과가 입력되면, 이를 실제 테스트 케이스를 이용하여 ECU의 소프트웨어를 테스트한 결과와 비교 분석함으로써 ECU의 소프트웨어에 대한 검증결과를 생성하고, 생성된 검증결과를 출력부(130)를 통해 출력한다.
도 2는 본 발명의 실시 예에 따른 소프트웨어 검증 장치의 차량용 ECU의 소프트웨어 검증 방법을 도시한 흐름도이다.
도 2를 참조하면, 소프트웨어 검증 장치의 데이터베이스(110)는 차량 내 장치들을 적어도 하나의 그룹으로 구분하고, 각 그룹 별로 대응하는 장치들의 동작을 제어하는 ECU의 동작과 관련하여 ECU로 전달되는 요구사항과 관련한 키워드를 저장한다(S101). 또한, 각 요구사항 별로 ECU로 전달되는 기본 입력값을 저장할 수도 있다.
이후, 입력부(120)를 통해 사용자로부터 파일 형태의 요구사항이 입력되면(S102), 키워드 추출부(140)는 데이터베이스(110)에 저장된 키워드들을 참조하여 입력되는 요구사항 별로 키워드를 추출한다(S103). 또한, 보정부(150)는 사용자로부터 입력부(120)를 통해 키워드 추출부(140)에서 추출한 키워드에 대한 보정 내용을 입력 받고, 이를 토대로 입력되는 요구사항으로부터 추출한 키워드를 보정한다(S104). 또한, 보정한 키워드를 토대로 데이터베이스(110)를 업데이트 한다.
이후, 테스트 케이스 생성부(160)는 보정부(150)에서 보정된 요구사항 별 키워드와 각 키워드에 대응되는 ECU의 입력값을 토대로 명세 기반의 테스트 케이스를 생성한다(S105). 이때, 각 키워드에 대응되는 입력값은 데이터베이스(110)에서 읽어오거나 입력부(120)를 통해 사용자로부터 입력받은 값을 이용할 수 있다.
테스트 케이스가 생성되면, 테스트부(170)는 이를 토대로 ECU의 소프트웨어에 대한 테스트를 실행한다(S106). 그리고, 입력부(120)를 통해 사용자로부터 테스트 예상 결과가 입력 받고, 입력받은 테스트 예상 결과와 실제 테스트 결과를 비교 분석한다(S107). 그리고, 분석 결과를 토대로 생성한 소프트웨어 검증 결과를 출력부(130)를 통해 출력한다.
전술한 바와 같이, 본 발명의 실시 예에 따른 소프트웨어 검증 장치는 차량 전장용 ECU의 특성을 반영한 소프트웨어 검증이 가능한 효과가 있다. 또한, 차량 전장용 ECU에 특화된 요구사항을 입력 받고, 이로부터 추출한 키워드를 기반으로 명세기반의 테스트 케이스를 생성함으로써 차량 전장용 ECU 분야의 전문가가 아닌 사용자가 차량 전장용 ECU에 대한 신뢰성 검증을 수행하는 것이 가능한 효과가 있다. 또한, 요구사항 별로 소프트웨어 검증이 수행되었는지에 대한 관리가 가능한 효과가 있다.
이상에서 설명한 본 발명의 실시예는 장치 및 방법을 통해서만 구현이 되는 것은 아니며, 본 발명의 실시예의 구성에 대응하는 기능을 실현하는 프로그램 또는 그 프로그램이 기록된 기록 매체를 통해 구현될 수도 있으며, 이러한 구현은 앞서 설명한 실시예의 기재로부터 본 발명이 속하는 기술분야의 전문가라면 쉽게 구현할 수 있는 것이다.
이상에서 본 발명의 실시예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속하는 것이다.
도 1은 본 발명의 실시 예에 따른 차량용 전자제어장치의 소프트웨어 검증 장치를 도시한 구조도이다.
도 2는 본 발명의 실시 예에 따른 차량용 전자제어장치의 소프트웨어 검증 방법을 도시한 흐름도이다.
Claims (11)
- 차량용 전자제어장치(Electronic Control Unit, ECU)의 소프트웨어 검증 장치에 있어서,차량 내 장치들을 복수의 그룹으로 구분하고, 각 그룹에 포함된 장치들의 동작을 제어하는 ECU의 동작과 관련한 키워드들을 저장하는 데이터베이스;상기 데이터베이스에 저장된 키워드들을 토대로 입력되는 요구사항으로부터 키워드를 추출하는 키워드 추출부;상기 요구사항으로부터 추출한 키워드와 상기 추출한 키워드에 대응하는 입력 값을 토대로 명세 기반의 테스트 케이스를 생성하는 테스트 케이스 생성부; 및상기 테스트 케이스를 토대로 상기 요구사항에 대응하는 ECU의 소프트웨어를 테스트하는 테스트부를 포함하는 소프트웨어 검증 장치.
- 제1항에 있어서,상기 데이터베이스는 상기 저장된 키워드에 대응하는 기본 입력 값을 저장하고,상기 테스트 케이스 생성부는 상기 추출한 키워드에 대응하는 입력 값으로 상기 추출한 키워드에 대응하는 상기 기본 입력 값을 이용하는 소프트웨어 검증 장치.
- 제1항에 있어서,상기 요구사항 및 상기 추출한 키워드에 대응하는 입력 값을 입력 받는 입력부를 더 포함하는 소프트웨어 검증 장치.
- 제1항에 있어서,입력되는 보정내용을 토대로 상기 추출한 키워드를 보정하여 상기 테스트 케이스 생성부로 출력하는 보정부를 더 포함하는 소프트웨어 검증 장치.
- 제1항에 있어서,상기 테스트부는 테스트 예상 결과를 입력 받고, 상기 소프트웨어를 테스트한 결과와 상기 테스트 예상 결과를 비교한 결과를 토대로 상기 소프트웨어에 대한 검증 결과를 출력하는 소프트웨어 검증 장치.
- 차량용 전자제어장치(Electronic Control Unit, ECU)의 소프트웨어 검증 방법에 있어서,상기 ECU의 동작과 관련한 키워드들을 저장하는 단계;파일 형태의 요구사항을 입력 받는 단계;저장된 상기 키워드들을 토대로 상기 요구사항으로부터 키워드를 추출하는 단계;상기 요구사항으로부터 추출한 키워드 및 상기 추출한 키워드에 대응하는 입력 값을 토대로 명세 기반의 테스트 케이스를 생성하는 단계; 및상기 테스트 케이스를 토대로 상기 ECU의 소프트웨어를 테스트하는 단계를 포함하는 소프트웨어 검증 방법.
- 제6항에 있어서,상기 저장하는 단계는,저장된 상기 키워드들에 대응하는 기본 입력 값들을 저장하는 단계를 포함하는 소프트웨어 검증 방법.
- 제6항에 있어서,상기 생성하는 단계는,기 저장된 기본 입력 값들 중에서 상기 추출한 키워드에 대응하는 기본 입력 값을 상기 입력 값으로 이용하여 상기 테스트 케이스를 생성하는 단계를 포함하는 소프트웨어 검증 방법.
- 제6항에 있어서,상기 추출한 키워드에 대응하는 입력 값을 입력 받는 단계를 더 포함하는 소프트웨어 검증 방법.
- 제6항에 있어서,상기 추출한 키워드에 대한 보정 내용을 입력 받는 단계; 및상기 보정 내용을 토대로 상기 추출한 키워드를 보정하는 단계를 더 포함하고,상기 생성하는 단계는,상기 보정 내용을 토대로 보정된 키워드를 이용하여 상기 테스트 케이스를 생성하는 단계를 포함하는 소프트웨어 검증 방법.
- 제10항에 있어서,상기 보정된 키워드를 토대로 상기 데이터베이스를 업데이트하는 단계를 더 포함하는 소프트웨어 검증 방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020090080750A KR20110023124A (ko) | 2009-08-28 | 2009-08-28 | 차량용 전자제어장치의 소프트웨어 검증 장치 및 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020090080750A KR20110023124A (ko) | 2009-08-28 | 2009-08-28 | 차량용 전자제어장치의 소프트웨어 검증 장치 및 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20110023124A true KR20110023124A (ko) | 2011-03-08 |
Family
ID=43931280
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020090080750A KR20110023124A (ko) | 2009-08-28 | 2009-08-28 | 차량용 전자제어장치의 소프트웨어 검증 장치 및 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20110023124A (ko) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102360332A (zh) * | 2011-09-28 | 2012-02-22 | 北京航空航天大学 | 一种软件可靠性加速测试与评估方法及其计算机辅助工具 |
KR101419646B1 (ko) * | 2013-02-19 | 2014-07-15 | 강원대학교산학협력단 | 복합 컴포넌트 테스트를 위한 예상 결과 값 자동 생성 방법 및 장치 |
KR20150116530A (ko) * | 2014-04-07 | 2015-10-16 | 경북대학교 산학협력단 | 운영체제의 자동 테스트 생성 장치 및 방법 |
KR20190029170A (ko) * | 2017-09-12 | 2019-03-20 | 현대자동차주식회사 | 테스트 장치 및 테스트 방법 |
KR20190136673A (ko) * | 2018-05-31 | 2019-12-10 | 현대오트론 주식회사 | 차량용 소프트웨어 진단 시스템 및 그것의 동작 방법 |
KR102122884B1 (ko) * | 2018-12-28 | 2020-06-15 | 슈어소프트테크주식회사 | 차량 내 제어기와 통신하는 테스트 케이스 생성 장치 및 테스트 케이스 생성 장치의 테스트 케이스 생성 방법 |
KR102335401B1 (ko) * | 2021-07-08 | 2021-12-08 | 비티에스테크놀로지스(주) | 테스트 계획 자동 생성 |
-
2009
- 2009-08-28 KR KR1020090080750A patent/KR20110023124A/ko not_active Application Discontinuation
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102360332A (zh) * | 2011-09-28 | 2012-02-22 | 北京航空航天大学 | 一种软件可靠性加速测试与评估方法及其计算机辅助工具 |
CN102360332B (zh) * | 2011-09-28 | 2013-11-13 | 北京航空航天大学 | 一种软件可靠性加速测试与评估方法及其计算机辅助工具 |
KR101419646B1 (ko) * | 2013-02-19 | 2014-07-15 | 강원대학교산학협력단 | 복합 컴포넌트 테스트를 위한 예상 결과 값 자동 생성 방법 및 장치 |
KR20150116530A (ko) * | 2014-04-07 | 2015-10-16 | 경북대학교 산학협력단 | 운영체제의 자동 테스트 생성 장치 및 방법 |
KR20190029170A (ko) * | 2017-09-12 | 2019-03-20 | 현대자동차주식회사 | 테스트 장치 및 테스트 방법 |
KR20190136673A (ko) * | 2018-05-31 | 2019-12-10 | 현대오트론 주식회사 | 차량용 소프트웨어 진단 시스템 및 그것의 동작 방법 |
US11352018B2 (en) | 2018-05-31 | 2022-06-07 | Hyundai Autron Co., Ltd. | System for diagnosing software for vehicle and operating method thereof |
KR102122884B1 (ko) * | 2018-12-28 | 2020-06-15 | 슈어소프트테크주식회사 | 차량 내 제어기와 통신하는 테스트 케이스 생성 장치 및 테스트 케이스 생성 장치의 테스트 케이스 생성 방법 |
KR102335401B1 (ko) * | 2021-07-08 | 2021-12-08 | 비티에스테크놀로지스(주) | 테스트 계획 자동 생성 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10025696B2 (en) | System and method for equivalence class analysis-based automated requirements-based test case generation | |
KR20110023124A (ko) | 차량용 전자제어장치의 소프트웨어 검증 장치 및 방법 | |
US6591403B1 (en) | System and method for specifying hardware description language assertions targeting a diverse set of verification tools | |
US10152406B2 (en) | Software program repair | |
US9965252B2 (en) | Method and system for generating stateflow models from software requirements | |
US9589087B2 (en) | Verification environments utilizing hardware description languages | |
JP2014203314A (ja) | Ecuシミュレーション装置 | |
US20120167045A1 (en) | Apparatus and method for evaluating autosar meta file-based basic software properties | |
Cheah et al. | Formalising systematic security evaluations using attack trees for automotive applications | |
JP4951416B2 (ja) | プログラム検証方法、プログラム検証装置 | |
CN109614107B (zh) | 一种软件开发工具包的集成方法和装置 | |
Lee et al. | Requirements modeling and automated requirements-based test generation | |
US9043746B2 (en) | Conducting verification in event processing applications using formal methods | |
Yao et al. | Formal modeling and systematic black-box testing of sdn data plane | |
US8140315B2 (en) | Test bench, method, and computer program product for performing a test case on an integrated circuit | |
US8510692B2 (en) | Verification system and method using constrained random test parameter selection | |
KR101334806B1 (ko) | 테스트 케이스 자동 생성 시스템에서 테스트 케이스를 구성하는 입력값의 집합을 자동으로 산출하는 방법 | |
KR100650866B1 (ko) | 논리 셀 라이브러리 검증 시스템 및 방법 | |
JP2016031622A (ja) | ソフトウェア検証システムおよび制御装置 | |
US8683454B1 (en) | Reducing redundancy in source code | |
US8954307B1 (en) | Chained programming language preprocessors for circuit simulation | |
CN114153435A (zh) | 一种用于智能合约代码设计生成的eb2s系统及使用方法 | |
EP3608786B1 (en) | Systems and methods of requirements chaining and applications thereof | |
KR101665962B1 (ko) | 모델링 코드 검증 방법, 이를 수행하는 모델링 코드 검증 장치 및 이를 저장하는 기록매체 | |
Pitchford | Embedded software quality, integration, and testing techniques |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WITN | Withdrawal due to no request for examination |