KR102066868B1 - Method and apparatus for simulating safety of automotive software to obtain a goal reliability index - Google Patents

Method and apparatus for simulating safety of automotive software to obtain a goal reliability index Download PDF

Info

Publication number
KR102066868B1
KR102066868B1 KR1020180032859A KR20180032859A KR102066868B1 KR 102066868 B1 KR102066868 B1 KR 102066868B1 KR 1020180032859 A KR1020180032859 A KR 1020180032859A KR 20180032859 A KR20180032859 A KR 20180032859A KR 102066868 B1 KR102066868 B1 KR 102066868B1
Authority
KR
South Korea
Prior art keywords
safety
category
code module
software code
index
Prior art date
Application number
KR1020180032859A
Other languages
Korean (ko)
Other versions
KR20190110871A (en
Inventor
박지환
천선일
Original Assignee
(주)씽크포비엘
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by (주)씽크포비엘 filed Critical (주)씽크포비엘
Priority to KR1020180032859A priority Critical patent/KR102066868B1/en
Publication of KR20190110871A publication Critical patent/KR20190110871A/en
Application granted granted Critical
Publication of KR102066868B1 publication Critical patent/KR102066868B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3604Software analysis for verifying properties of programs

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)

Abstract

컴퓨터에 의해 수행되는, 표준 플랫폼에 기반하여 작성된 전장용 소프트웨어 코드 모듈의 안전성이 목표 신뢰성 지수를 만족하도록 시뮬레이션하는 방법이 제공된다. 본 발명의 방법은, 소프트웨어 코드 모듈과, 상기 소프트웨어 코드 모듈의 작성에 관련된 표준 플랫폼 식별 정보를 입력받고, 분석 머신을 이용해서, 상기 소프트웨어 코드 모듈의 위험 여부를 결정하여, 상기 소프트웨어 코드 모듈이 위험하다고 결정된 경우, 데이터베이스로부터 상기 소프트웨어 코드 모듈의 안전성 정보를 획득하는 단계 - 상기 안전성 정보는, 상기 표준 플랫폼 식별 정보에 기초하여 획득됨 -; 상기 소프트웨어 코드 모듈이 분류되는 카테고리 각각에 대해 카테고리 표지자 지수(category indicator index)를 산출하는 단계; 및 목표 신뢰성 지수를 입력받고, 각 카테고리 표지자 지수가 목표 신뢰성 지수를 달성할 수 있게 하는 안전 메카니즘 집합을 계산하는 단계를 포함한다. A method is provided for simulating the safety of an electronic software code module built on a standard platform, performed by a computer, to meet a target reliability index. The method of the present invention receives a software code module and standard platform identification information related to the creation of the software code module, and uses an analysis machine to determine whether the software code module is at risk, so that the software code module is at risk. Obtaining safety information of the software code module from a database, wherein the safety information is obtained based on the standard platform identification information; Calculating a category indicator index for each category into which the software code module is classified; And receiving a target reliability index, and calculating a set of safety mechanisms that allow each category marker index to achieve the target reliability index.

Figure R1020180032859
Figure R1020180032859

Description

목표 신뢰성 지수를 만족하도록 전장용 소프트웨어 안전성을 시뮬레이션하는 방법 및 장치{METHOD AND APPARATUS FOR SIMULATING SAFETY OF AUTOMOTIVE SOFTWARE TO OBTAIN A GOAL RELIABILITY INDEX}METHOD AND APPARATUS FOR SIMULATING SAFETY OF AUTOMOTIVE SOFTWARE TO OBTAIN A GOAL RELIABILITY INDEX}

본 발명은, 차량 전장용 소프트웨어 안전성 분석에 관한 것으로, 보다 구체적으로는 표준 플랫폼을 기초로 개발된 차량 전장용 소프트웨어의 안전성을 시뮬레이션하여 목표 신뢰성 지수를 만족하도록 하는 방법 및 장치에 관한 것이다.The present invention relates to software safety analysis for vehicle electronics, and more particularly, to a method and apparatus for simulating safety of vehicle electronics software developed based on a standard platform to satisfy a target reliability index.

최근에는, 차량 전장용 소프트웨어의 다양화 및 고도화와 함께 자동차 전장품 시장도 급격하게 성장하고 있는 추세에 있다. 또한 차량 전장용 소프트웨어의 제조 효율 향상과 결함 방지를 위한 표준화 노력이 지속되고 있다. 특히, 많은 자동차 회사들이 ISO 26262 자동차 전기/전자 시스템의 안전인증 규격 및 AUTOSAR BSW 개발 플랫폼에 기초하여 각각 전장용 소프트웨어 개발에 나서고 있다.Recently, with the diversification and advancement of vehicle electronics, the automotive electronics market is also rapidly growing. In addition, efforts are being made to improve the manufacturing efficiency of vehicle electronics software and to prevent defects. In particular, many automotive companies are developing electronic software for electronics based on the ISO 26262 automotive electrical / electronic system safety certification standard and the AUTOSAR BSW development platform.

한편, 전장용 소프트웨어는 그 특성상 오류 발생시 회복할 수 없는 피해를 야기할 수 있게 된다. 그리고 전장용 소프트웨어의 오류로 인한 각종 사고 및 사건들은 꾸준히 발생하고 있는데, 그에 따라 전장용 소프트웨어의 안전성에 대한 관심은 날로 증대되어 가고 있다. 또, 전장용 소프트웨어의 고도화 및 다양화에 따라 소프트웨어의 결함 또는 장애로 인한 피해는 점점 더 심각한 수준에 이르고 있는바, 소프트웨어 결함에 의한 사고는 고객의 안전과 자동차 회사의 이미지에 치명적 손상을 줄 수 있다. 따라서, 전장용 소프트웨어의 결함 가능성을 해당 소프트웨어의 수명 초기에 예측하고 이를 신속하게 수정할 수 있도록 하는 것이 중요하며, AUTOSAR BSW 개발 플랫폼 등에 기초하여 작성된 소프트웨어의 경우에도 이러한 결함 가능성의 예측 및 검증은 매우 중요한 이슈이다.On the other hand, electronic software is capable of causing irreparable damage in the event of an error. In addition, various accidents and events caused by errors in the electronic software have been steadily occurring, and as a result, interest in safety of the electronic software is increasing day by day. In addition, due to the advancement and diversification of electronic software, the damage caused by defects or failures of the software is becoming more serious. Accidents caused by software defects can damage the safety of customers and the image of the automobile company. have. Therefore, it is important to predict the defect potential of electronic software early in the life of the software and to be able to fix it quickly.In the case of software written based on the AUTOSAR BSW development platform, the prediction and verification of such defect potential is very important. It is an issue.

그런데, 차량용 소프트웨어를 비롯한 각종 소프트웨어의 결함을 분석하고 예측하는 작업은 지금까지 통상적으로 사람의 손에 의해 수동으로 행하여져 왔다. 예를 들어, 전장용 소프트웨어의 경우, 주로 소프트웨어 전문가가 수동으로 각 소프트웨어 모듈에 대해 MISRA(Motors Industry Software Reliability Association) 지정의 코딩 룰 준수 여부를 확인하는 수준에 머물러 왔다. 그러나 이러한 수동으로 이루어지는 분석 방법은, 전장용 소프트웨어의 코드 구조의 복잡성이 날로 증가하고 있는 현재 상황에서, 분석 정확도가 낮고 분석의 안정성을 기대하기 어려운 문제가 있다. 또한, 이와 같이 수동으로 행하여진 분석의 결과는 단순 목록 나열식으로만 제공될 뿐이어서, 실제 소프트웨어 개발자/보수자 등으로서는 대규모의 전장용 소프트웨어 중에 어느 부분의 결함 보수가 시급한지 식별하는 것이 어려운 문제가 있으며, 소프트웨어 개발/보수 부분에서의 한정된 자원의 효율적 배분(예컨대, 개발/보수 인력의 배분)에 어려움이 있다. By the way, the work of analyzing and predicting the defects of various software including the vehicle software has conventionally been performed manually by human hands. For example, in the field of electronics, software specialists have mostly been manually checking for compliance with coding rules of the Motors Industry Software Reliability Association (MISRA) designation for each software module. However, such a manual analysis method has a problem that the analysis accuracy is low and the stability of the analysis is difficult to expect in the current situation where the complexity of the code structure of the electronic software is increasing day by day. In addition, the results of such manual analysis are only provided in a simple list form, which makes it difficult for real software developers / maintenants to identify which parts of a large-scale electronic software are urgently needed. In addition, there is a difficulty in efficiently allocating limited resources (eg, distribution of development / maintenance personnel) in the software development / maintenance part.

한편, 한국 등록특허 제10-1834247호에서는 정확하고 안정성 있는, 자동화된 전장용 소프트웨어의 안전성을 분석하고 그 분석 결과를, 사용자가 직관적으로 인식할 수 있고 이를 즉각적으로 활용하여 추후 전장용 소프트웨어의 결함 보수를 위한 작업의 우선순위 결정 등에 있어서 참고할 수 있도록 하는 방식으로 제공하는 방법이 개시되어 있나, 소프트웨어 코드 분석 결과의 단순 목록 나열이 아닌, 개발자가 결과를 보고 판단하여 결정할 수 있도록 정보를 보다 상세히 분석하여 주는 기능이 필요하다.On the other hand, Korean Patent No. 10-1834247 analyzes the safety of the automated and secure electronic software for accurate and stable, and the results of the analysis can be intuitively recognized by the user, and immediately utilized it, and later defects of the electronic software for the future. The method is provided in a way that can be referred to in order to prioritize the work for repair, but the information is analyzed in more detail so that the developer can see and judge the result instead of simply listing the software code analysis result. Function is needed.

KRKR 10-183424710-1834247 BB

따라서, 본 개시에서는 전장용 소프트웨어 코드의 안전성을 위한 위험도 분석 결과에 대하여 개발자가 무엇부터 접근하여 수정하고, 한정된 자원을 투입할 수 있을지 우선순위를 결정하는 의사결정에 도움이 될 수 있도록 안전 메카니즘 룰 정보를 모델링하는 방법을 제공하고자 한다. Therefore, in the present disclosure, a safety mechanism rule may be used to assist the decision maker to determine the priority of the risk analysis result for the safety of the electronic software code, and to decide whether to access and modify the limited resources. We want to provide a way to model information.

또한, 본 개시에서는 현재 위험지수 및 달성하고자 하는 목표 신뢰성 지수의 값을 이용하여 사용자(개발자)가 목표 달성을 위해 어느 안전 메카니즘 룰부터 개선해야 하는지, 얼마만큼의 노력비용(시간)이 필요한지에 대한 시뮬레이션하는 방법을 제공하고자 한다. In addition, in the present disclosure, using the value of the current risk index and the target reliability index to be achieved, which safety mechanism rules should be improved by the user (developer) to achieve the target, and how much effort cost (time) is required. We want to provide a way to simulate it.

본 발명의 일 특징에 의하면, 컴퓨터에 의해 수행되는, 표준 플랫폼에 기반하여 작성된 전장용 소프트웨어 코드 모듈의 안전성이 목표 신뢰성 지수를 만족하도록 시뮬레이션하는 방법이 제공된다. 본 발명의 방법은, 소프트웨어 코드 모듈과, 상기 소프트웨어 코드 모듈의 작성에 관련된 표준 플랫폼 식별 정보를 입력받고, 분석 머신을 이용해서, 상기 소프트웨어 코드 모듈의 위험 여부를 결정하여, 상기 소프트웨어 코드 모듈이 위험하다고 결정된 경우, 데이터베이스로부터 상기 소프트웨어 코드 모듈의 안전성 정보를 획득하는 단계 - 상기 안전성 정보는, 상기 표준 플랫폼 식별 정보에 기초하여 획득됨 -; 상기 소프트웨어 코드 모듈이 분류되는 카테고리 각각에 대해 카테고리 표지자 지수(category indicator index)를 산출하는 단계; 및 목표 신뢰성 지수를 입력받고, 각 카테고리 표지자 지수가 목표 신뢰성 지수를 달성할 수 있게 하는 안전 메카니즘 집합을 계산하는 단계를 포함한다. According to one aspect of the present invention, there is provided a method for simulating a computer implemented by a computer, the safety of the electronic software code module written based on the standard platform to meet the target reliability index. The method of the present invention receives a software code module and standard platform identification information related to the creation of the software code module, and uses an analysis machine to determine whether the software code module is at risk, so that the software code module is at risk. Obtaining safety information of the software code module from a database, wherein the safety information is obtained based on the standard platform identification information; Calculating a category indicator index for each category into which the software code module is classified; And receiving a target reliability index, and calculating a set of safety mechanisms that allow each category marker index to achieve the target reliability index.

본 발명의 일 실시예에 의하면, 상기 카테고리 표지자 지수는 카테고리별 글로벌 지표, 노력 비용, 코드 크지, 코드 모듈의 위험 레벨을 기초로 산출된다. According to an embodiment of the present invention, the category marker index is calculated based on the global index for each category, labor cost, code size, and risk level of the code module.

본 발명의 일 실시예에 의하면, 표준 플랫폼은 AUTOSAR BSW일 수 있고, 표준 플랫폼 식별 정보는 AUTOSAR BSW의 모듈 ID일 수 있다.According to an embodiment of the present invention, the standard platform may be an AUTOSAR BSW, and the standard platform identification information may be a module ID of an AUTOSAR BSW.

본 발명의 일 실시예에 의하면, 데이터베이스는, 표준 플랫폼 식별 정보를 SAFE(Safe Automotive soFtware archiTecture) ISO 26262에서 정의된 복수의 안전 메커니즘 중 하나의 안전 메커니즘에 맵핑하는 정보를 저장할 수 있다. 데이터베이스는, 맵핑된 하나의 안전 메커니즘에 대응하여 미리 정의된 하나 이상의 안전성 정보를 더 저장할 수 있다.According to an embodiment of the present invention, the database may store information for mapping standard platform identification information to one safety mechanism among a plurality of safety mechanisms defined in Safe Automotive soFtware archiTecture (SAFE) ISO 26262. The database may further store one or more predefined safety information corresponding to one mapped safety mechanism.

본 발명의 일 실시예에 의하면, 맵핑된 하나의 안전 메커니즘에 대응하여 미리 정의된 하나 이상의 안전성 정보는 갱신 가능할 수 있다.According to one embodiment of the present invention, one or more predefined safety information corresponding to one mapped safety mechanism may be updatable.

본 발명의 일 실시예에 의하면, 맵핑된 하나의 안전 메커니즘에 대응하여 미리 정의된 하나 이상의 안전성 정보는, 결함보수의 우선순위, 구현 난이도, 및 투입 노력 시간 중 적어도 하나를 포함할 수 있다.According to an embodiment of the present invention, the one or more safety information predefined in correspondence with the mapped one safety mechanism may include at least one of priority of defect repair, difficulty of implementation, and input effort time.

본 발명의 일 실시예에 의하면, 결함보수의 우선순위 및 구현 난이도는 각각 소정의 복수의 레벨 중 각 하나의 레벨에 대응할 수 있다.According to an embodiment of the present invention, the priority of defect repair and the difficulty of implementation may respectively correspond to one of a plurality of predetermined levels.

본 발명의 일 실시예에 의하면, SAFE ISO 26262에서 정의된 복수의 안전 메커니즘은 소정 수의 카테고리로 분류되고, 맵핑된 하나의 안전 메커니즘은 소정 수의 카테고리 중 하나의 카테고리에 속할 수 있다.According to one embodiment of the present invention, a plurality of safety mechanisms defined in SAFE ISO 26262 may be classified into a predetermined number of categories, and one mapped safety mechanism may belong to one category of the predetermined number of categories.

본 발명의 일 실시예에 의하면, 보고서는, 맵핑된 하나의 안전 메커니즘의 명칭, 맵핑된 하나의 안전 메커니즘에 관한 설명, 맵핑된 하나의 안전 메커니즘의 카테고리, 맵핑된 하나의 안전 메커니즘의 결함보수의 우선순위, 맵핑된 하나의 안전 메커니즘의 구현 난이도, 맵핑된 하나의 안전 메커니즘의 투입 노력 시간 중 적어도 하나를 포함할 수 있다.According to one embodiment of the present invention, the report includes a name of one mapped safety mechanism, a description of one mapped safety mechanism, a category of one mapped safety mechanism, and a defect repair of one mapped safety mechanism. It may include at least one of a priority, a difficulty of implementing one mapped safety mechanism, and an input effort time of one mapped safety mechanism.

본 발명의 다른 특징에 의하면, 컴퓨터 장치로서, 전술한 방법들 중 어느 하나의 방법을 실행하도록 동작 가능한 컴퓨터 장치가 제공된다.According to another feature of the invention, there is provided a computer device, which is operable to carry out any of the methods described above.

본 발명의 또 다른 특징에 의하면, 하나 이상의 명령어가 저장된 컴퓨터 판독 가능한 저장 매체로서, 하나 이상의 명령어는 컴퓨터에 의해 실행되는 경우, 컴퓨터로 하여금 전술한 방법들 중 어느 한 항의 방법을 실행하게 하는, 컴퓨터 판독 가능한 저장 매체가 제공된다.According to another feature of the invention, a computer readable storage medium having one or more instructions stored thereon, wherein the one or more instructions, when executed by a computer, cause the computer to execute the method of any one of the preceding methods. A readable storage medium is provided.

본 발명에 의하면, 전장용 소프트웨어 개발자가 코드의 위험 분석 결과 안전성을 확보하기 위한 소프트웨어 코드 측면에서 확보할 가이드라인 중, 구현 난이도, 투입 노력 시간, 결함 보수 우선순위에 따라 무엇부터 먼저해야 할 지 의사결정에 있어서 참고할 수 있도록 하는 방식이 제공될 수 있다.According to the present invention, among the guidelines to be secured by the software developer in terms of software analysis to secure safety as a result of the risk analysis of the code, the intention of the first to be made according to the implementation difficulty, input effort time, defect repair priority Ways to refer to the decision may be provided.

본 발명에 의하면, 전장용 소프트웨어 개발분야 뿐 아니라, 소프트웨어 코드의 룰 기반 정적 분석을 수행하는 전 붙야에 적용하여 활용가능한 방법이 제공될 수 있다. According to the present invention, a method that can be applied to not only the field of software development in the field of electronics but also to the field to perform rule-based static analysis of software code can be provided.

도 1은, 본 발명의 일 실시예에 따른, 전장용 소프트웨어의 신뢰도 및 안전성 자동 분석을 위한 분석 머신의 생성 및 활용 과정을 개략적으로 보여주는 흐름 블록도이다.
도 2는, 본 발명의 일실시예에 따른, 분석 머신의 생성 및 훈련에서 입력 값으로서 이용될 위험 데이터 메트릭들의 예시적 집합을 도시한 도면이다.
도 3은, 본 발명의 일 실시예에 따른, 소프트웨어 신뢰도 및 안전성 분석 머신(300)의 기능 블록도이다.
도 4는, 본 발명의 일 실시예에 따른 우선순위와 구현 난이도의 관계에 따라 적용할 안전 메카니즘을 그룹화하여 도시한 도면이다.
1 is a flow block diagram schematically illustrating a process of generating and utilizing an analysis machine for automatic analysis of reliability and safety of electronic software according to an embodiment of the present invention.
2 illustrates an exemplary set of risk data metrics to be used as input values in the creation and training of an analysis machine, in accordance with an embodiment of the present invention.
3 is a functional block diagram of a software reliability and safety analysis machine 300, in accordance with an embodiment of the present invention.
4 is a diagram illustrating a group of safety mechanisms to be applied according to a relationship between priority and implementation difficulty according to an embodiment of the present invention.

이하, 첨부 도면을 참조하여 본 발명의 실시예에 관하여 상세히 설명한다. 이하에서는, 본 발명의 요지를 불필요하게 흐릴 우려가 있다고 판단되는 경우, 이미 공지된 기능 및 구성에 관한 구체적인 설명을 생략한다. 또한, 이하에서 설명하는 내용은 어디까지나 본 발명의 일 실시예에 관한 것일 뿐 본 발명이 이로써 제한되는 것은 아님을 알아야 한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings. In the following, when it is determined that there is a risk of unnecessarily obscuring the gist of the present invention, a detailed description of the known functions and configurations will be omitted. In addition, it should be understood that the following description only relates to one embodiment of the present invention, but the present invention is not limited thereto.

본 명세서에서 사용되는 용어는 단지 특정한 실시예를 설명하기 위해 사용되는 것으로 본 발명을 한정하려는 의도에서 사용된 것이 아니다. 예를 들면, 단수로 표현된 구성요소는 문맥상 명백하게 단수만을 의미하지 않는다면 복수의 구성요소를 포함하는 개념으로 이해되어야 한다. 또한, 본 발명의 명세서에서, '포함하다' 또는 '가지다' 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것일 뿐이고, 이러한 용어의 사용에 의해 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 배제하려는 것은 아니다.The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. For example, a component expressed in the singular should be understood as a concept including a plurality of components unless the context clearly indicates the singular. In addition, in the specification of the present invention, terms such as 'comprise' or 'have' are merely intended to designate that the features, numbers, steps, operations, components, parts, or combinations thereof described in the specification exist. The use of the term is not intended to exclude the presence or addition of one or more other features or numbers, steps, actions, components, parts or combinations thereof.

본 명세서에 기재된 실시예에 있어서 '블록' 또는 '부'는 적어도 하나의 기능이나 동작을 수행하는 기능적 부분을 의미하며, 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다. 또한, 복수의 '블록' 또는 '부'는, 특정한 하드웨어로 구현될 필요가 있는 '블록' 또는 '부'를 제외하고는, 적어도 하나의 소프트웨어 모듈로 일체화되어 적어도 하나의 프로세서로 구현될 수 있다.In the embodiments described herein, 'block' or 'unit' refers to a functional part that performs at least one function or operation, and may be implemented in hardware or software or a combination of hardware and software. In addition, a plurality of 'blocks' or 'units' may be integrated into at least one software module and implemented as at least one processor, except for 'blocks' or 'units' that need to be implemented with specific hardware. .

덧붙여, 달리 정의되지 않는 한 기술적 또는 과학적인 용어를 포함하여, 본 명세서에서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의된 용어들은, 관련 기술의 문맥상 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 발명의 명세서에서 명백하게 달리 정의하지 않는 한 과도하게 제한 또는 확장하여 해석되지 않는다는 점을 알아야 한다.In addition, all terms used herein, including technical or scientific terms, unless otherwise defined, have the same meaning as commonly understood by one of ordinary skill in the art. It is to be understood that generally defined terms used should be construed as having a meaning consistent with the contextual meaning of the related art, and shall not be construed as being excessively limited or extended unless expressly defined otherwise in the specification of the present invention. You should know

이하, 첨부된 도면을 참조하여, 본 발명의 실시예에 대해 구체적으로 설명하기로 한다.Hereinafter, with reference to the accompanying drawings, it will be described in detail an embodiment of the present invention.

도 1은, 본 발명의 일 실시예에 따른, 전장용 소프트웨어의 신뢰도 및 안전성 자동 분석을 위한 분석 머신의 생성 및 활용 과정을 개략적으로 보여주는 흐름 블록도이다.1 is a flow block diagram schematically illustrating a process of generating and utilizing an analysis machine for automatic analysis of reliability and safety of electronic software according to an embodiment of the present invention.

도시된 바에 의하면, 블록(102)에서는, 전장용 소프트웨어 분석 머신의 생성을 위한 기초 과정으로서, 차량 기능 안전에 관련된 요소들, 예컨대 ISO 26262에서 정의된 기능 안전성 요소나 AUTOSAR에서 정의된 기능 안전성 요소들을 포함한 각종 차량 기능 안전성에 관한 요소들이 수집되고, 그에 따라 추후 분석 머신의 생성 및 훈련에서 입력으로서 이용될 기능 안전성 요소의 위험 데이터 메트릭들이 선택될 수 있다. 이러한 기능 안전성에 관한 위험 데이터 메트릭들의 선택은 다양한 방식으로 이루어질 수 있으며, 예컨대 도메인 전문가의 활용이나 인터뷰 등의 방식에 의해 이루어질 수도 있다. As shown, in block 102, as a basic procedure for the creation of a battlefield software analysis machine, elements related to vehicle functional safety, such as functional safety elements defined in ISO 26262 or functional safety elements defined in AUTOSAR Various vehicle functional safety factors are collected, such that risk data metrics of the functional safety factor may be selected to be used as input in the generation and training of the analysis machine. The selection of risk data metrics related to functional safety can be made in a variety of ways, for example, by the use of a domain expert or by an interview.

본 발명의 일실시예에 따른, 분석 머신의 생성 및 훈련에서 입력 값으로서 이용될 위험 데이터 메트릭들의 예시적 집합이 도 2에 도시되어 있다. 도 2에 도시된 바에 의하면, 분석 머신의 생성 및 훈련을 위한 입력 값은 코드 모듈에 관한 22개의 위험 데이터 메트릭들을 포함한 것일 수 있다.An exemplary set of risk data metrics to be used as input values in the creation and training of an analysis machine, according to one embodiment of the invention, is shown in FIG. 2. As shown in FIG. 2, the input values for generation and training of the analysis machine may include 22 risk data metrics relating to the code module.

구체적으로, 도시된 바에 의하면, 분석 머신의 생성 및 훈련에 이용될 위험 데이터 메트릭들로는, 예컨대 총 코드 라인 수(loc), McCabe 순환 복잡도(v(g)), McCabe 필수 복잡도(ev(g)), McCabe 설계 복잡도(iv(g)), Halstead 연산자 및 피연산자 전체 수(n), Halstead 프로그램 볼륨(v), Halstead 프로그램 길이(l), Halstead 프로그램 난이도(d), Halstead Intelligent content(i), Halstead 프로그래밍 노력(e), Halstead 에러 추정(b), Halstead 구현시간 추정(t), Halstead 라인 카운트(lOCode), Halstead 주석 줄 수(lOComment), Halstead 빈 줄 수(lOblank), 코드와 주석을 모두 갖는 라인 수(IOCodeANDComment), 고유한 연산자 수(uniq_Op), 고유한 피연산자 수(uniq_Opnd), 전체 연산자(total_Cp), 전체 피연산자(tatal_Opand), 그래프 흐름 수(branchCount), 및 코드 모듈 위험 레벨(Risk Level)의 위험 데이터 메트릭이 포함될 수 있다. 본 발명의 실시예에 따르면, 위험 레벨이란, 주어진 각 코드 모듈의 명세에 따라 정의되는 위험 레벨로서, 예컨대 각 코드 모듈의 오류가 얼마나 심각한 피해를 발생시키는지를 나타내는 심각도 레벨, 그러한 코드 모듈의 오류에 의한 피해가 발생할 확률이 얼마나 되는지를 나타내는 발생 확률, 해당 코드 모듈을 구현하는데 있어서의 난이도 레벨 등에 의해 미리 정의되어 있는 값일 수 있다. 코드 모듈의 특성상 해당 코드 모듈의 오류가 발생할 경우 발생할 수 있는 피해가 심각한 생명의 위험을 일으키는 경우라면, 오류가 발생하더라도 사소한 피해나 경상을 일으키는데 그치는 코드 모듈에 비해서는 심각도 레벨이 높은 값일 수 있다. 또, 심각도 레벨이 높은 값을 갖는 코드 모듈이라도 그러한 코드 모듈의 발생 확률이 매우 낮은 경우라면 전체 위험 레벨은 낮은 값일 수 있다. 아래 표는 위험 레벨을 구분하는 방법을 예시적으로 보여주기 위한 것일 뿐, 본 발명이 이로써 제한되는 것은 아니다. 당업자라면, 각 코드 모듈의 특성을 고려하여 다양한 형태로 위험 레벨을 분류하는 방법을 생각해낼 수 있을 것이다.Specifically, as shown, the risk data metrics to be used in the creation and training of the analysis machine include, for example, the total number of code lines (loc), McCabe cyclic complexity (v (g)), McCabe required complexity (ev (g)). , McCabe design complexity (iv (g)), total number of Halstead operators and operands (n), Halstead program volume (v), Halstead program length (l), Halstead program difficulty (d), Halstead Intelligent content (i), Halstead With programming effort (e), Halstead error estimation (b), Halstead implementation time estimation (t), Halstead line count (lOCode), Halstead comment lines (lOComment), Halstead blank lines (lOblank), code and comments Number of lines (IOCodeANDComment), number of unique operators (uniq_Op), number of unique operands (uniq_Opnd), total operators (total_Cp), total operands (tatal_Opand), graph flow count (branchCount), and code module risk level The risk data metric may be included. According to an embodiment of the present invention, a risk level is a risk level defined in accordance with a given specification of each code module, for example, a severity level indicating how serious a failure of each code module causes damage, and a failure of such a code module. It may be a value defined in advance by the probability of occurrence of the damage caused by the damage, the level of difficulty in implementing the code module. If the damage caused by the error of the corresponding code module causes a serious life risk, the code module may have a higher severity level than the code module which causes only minor damage or minor injury even if the error occurs. In addition, even in a code module having a high severity level, if the probability of occurrence of such a code module is very low, the overall risk level may be a low value. The table below is only illustrative of how to classify risk levels, and the invention is not so limited. Those skilled in the art will be able to come up with ways to classify risk levels in various forms, taking into account the characteristics of each code module.

D1D1 D2 D2 D3D3 S1


S1


E1E1 00 00 00
E2E2 00 00 00 E3E3 00 00 1One E4E4 00 1One 22 S2


S2


E1E1 00 00 00
E2E2 00 00 1One E3E3 00 1One 22 E4E4 1One 22 33 S3


S3


E1E1 00 00 1One
E2E2 00 1One 22 E3E3 1One 22 33 E4E4 22 33 44 <심각도 레벨>
S1=경상; S2=중상; S3=심각한 생명의 위험

<발생 확률>
E1=매우 낮은 확률; E2=낮은 확률; E3=중간 확률; E4=높은 확률

<구현 난이도>
D1=쉬움; D2=중간; D3=어려움
<Severity level>
S1 = normal; S2 = medium phase; S3 = Serious Danger

<Probability>
E1 = very low probability; E2 = low probability; E3 = medium probability; E4 = High Probability

<Implementation difficulty>
D1 = easy; D2 = medium; D3 = Difficult

당업자라면, 전술한 위험 레벨 이외에, 도 2에 도시된 그 외 다른 위험 데이터 메트릭 각각의 의미에 대해 잘 알 것이며, 여기서는 구체적인 설명을 생략하기로 한다. 또한, 당업자라면, 도 2에 도시된 데이터 메트릭은 본 발명의 일 실시예일뿐이며, 본 발명이 이로써 제한되는 것은 아님을 알 것이다. 본 발명의 다른 실시예에 의하면, 분석 머신의 설계 기준에 따라 더 많거나 적은 다양한 위험 데이터 메트릭들이 분석 머신의 생성 및 훈련에 이용될 수 있음을 알아야 한다. 다시 도 1로 돌아가서, 블록(104)에서는, 블록(102)에서 정의된 각 위험 데이터 메트릭의 정의에 기초하여, 분석 머신의 생성에 이용될 구체적인 학습 및 훈련 데이터가 준비될 수 있다. 본 발명의 일 실시예에 의하면, 예컨대 NASA 제공의 시험 데이터 집합이 이용될 수 있으나, 본 발명이 이로써 제한되는 것은 아니다.Those skilled in the art will be familiar with the meaning of each of the other risk data metrics shown in FIG. 2 in addition to the risk levels described above, and a detailed description thereof will be omitted herein. In addition, those skilled in the art will appreciate that the data metrics shown in FIG. 2 are only one embodiment of the invention, and the invention is not so limited. In accordance with another embodiment of the present invention, it should be appreciated that more or less various risk data metrics may be used to generate and train the analysis machine, depending on the design criteria of the analysis machine. Returning back to FIG. 1, at block 104, specific learning and training data may be prepared for use in generating an analysis machine based on the definition of each risk data metric defined at block 102. According to one embodiment of the present invention, for example, a test data set provided by NASA may be used, but the present invention is not limited thereto.

블록(106)에서는, 전장용 소프트웨어의 신뢰도 및 안전성 자동 분석을 위한 분석 머신(딥러닝 머신)이 초기 설계되고, 블록(104)에서 준비된 학습 데이터를 이용하여 분석 머신이 초기 학습될 수 있다. 본 발명의 일 실시예에 의하면, 인공 신경망(ANN)이나 서포트 벡터 머신(SVM) 기법에 따라 분석 머신이 설계될 수 있으나, 본 발명이 이로써 제한되는 것은 아니다. 당업자라면, 그 외 다양한 딥러닝 방식에 의하여 분석 머신이 구현될 수 있음을 알 것이다. At block 106, an analysis machine (deep learning machine) for automated analysis of reliability and safety of the electronics for the electronics is initially designed, and the analysis machine may be initially trained using the training data prepared at block 104. According to an embodiment of the present invention, an analysis machine may be designed according to an artificial neural network (ANN) or support vector machine (SVM) technique, but the present invention is not limited thereto. Those skilled in the art will appreciate that analytical machines can be implemented by a variety of other deep learning schemes.

블록(108)에서는, 초기 학습 완료된 분석 머신이, 블록(104)에서 준비된 테스트 데이터를 이용하여 테스트되고 테스트 결과에 따른 분석 머신의 오차율 분석이 행하여지며, 오차율 분석 결과는 다시 블록(106)으로 피드백 입력될 수 있다. 이와 같이, 블록(108)에서의 분석 머신의 테스트 결과는 블록(106)의 머신 설계 및 학습 단계로 반복하여 피드백 입력될 수 있고 그에 따라 분석 머신이 수정될 수 있다. 이러한 블록(106) 및 블록(108)에 따른 반복적 머신 수정의 과정이 행하여짐에 따라 코드 안전성 분석 머신의 작성이 완료될 수 있다.In block 108, the initially trained analysis machine is tested using the test data prepared in block 104 and error rate analysis of the analysis machine according to the test result is performed, and the error rate analysis result is fed back to block 106. Can be entered. As such, the test results of the analysis machine at block 108 may be fed back repeatedly to the machine design and learning phase of block 106 so that the analysis machine may be modified accordingly. As the process of iterative machine modification in accordance with these blocks 106 and 108 is performed, the creation of the code safety analysis machine can be completed.

블록(110)에서는, 분석 머신을 이용한 전장용 소프트웨어의 안전성 분석이 수행된다. 구체적으로 도시되지는 않았으나, 본 발명의 일 실시예에 의하면, 블록(108)에서의 소프트웨어의 안전성 분석 결과는 블록(106)으로 피드백 입력되어 분석 머신을 업데이트할 수 있다. 구체적인 전장용 소프트웨어의 안전성 분석 과정에 대해서는, 이하 도 3을 참조하여 좀 더 자세히 설명하기로 한다.In block 110, a safety analysis of the electronic software using the analysis machine is performed. Although not specifically illustrated, according to an embodiment of the present invention, the safety analysis result of the software at block 108 may be fed back to block 106 to update the analysis machine. A detailed safety analysis process of the electronic software will be described in detail later with reference to FIG. 3.

도 3은, 본 발명의 일 실시예에 따른, 소프트웨어 신뢰도 및 안전성 분석 머신(300)의 기능 블록도이다. 도시된 바에 의하면, 분석 머신(300)은 분석 코드 정보 입력부(302), 위험 데이터 메트릭 측정부(304), 위험 분석부(306), 코드 모듈 안전성 특징 획득부(308), 카테고리 표지자 계산부(310) 및 목표 지수 시뮬레이션부(312)를 포함한다. 3 is a functional block diagram of a software reliability and safety analysis machine 300, in accordance with an embodiment of the present invention. As shown, the analysis machine 300 includes an analysis code information input unit 302, a risk data metric measurement unit 304, a risk analysis unit 306, a code module safety feature acquisition unit 308, a category marker calculation unit ( 310 and the target exponent simulation unit 312.

본 발명의 일 실시예에 의하면, 분석 코드 정보 입력부(302)에서는, 작성된 전장용 소프트웨어의 코드와 해당 코드 개발의 기초가 된 플랫폼 정보(예컨대, AUTOSAR BSW 기반의 개발 소프트웨어의 경우 각 소프트웨어 코드 모듈의 각 대응 AUTOSAR BSW 모듈 ID 등)가 수신될 수 있다. 이때 입력되는 소프트웨어는 작성 완료된 것이거나 개발 중에 있는 전장용 소프트웨어일 수 있다. 소프트웨어는 하나 또는 둘 이상의 코드 모듈을 포함하는 것일 수 있다. 분석 코드 정보 입력부(402)에서는 또한 입력된 소프트웨어가 하나 또는 둘 이상의 코드 모듈, 예컨대 하나 또는 둘 이상의 함수 등으로 분할될 수 있다. According to one embodiment of the present invention, the analysis code information input unit 302, the code of the generated electrical equipment software and the platform information (for example, in the case of development software based on AUTOSAR BSW based on each software code module based on the code development) Each corresponding AUTOSAR BSW module ID, etc.) may be received. In this case, the input software may be completed or electronic equipment under development. The software may include one or more code modules. The analysis code information input unit 402 may also divide the input software into one or more code modules, such as one or more functions.

본 발명의 일 실시예에 의하면, 위험 데이터 메트릭 측정부(304)에서는, 분석 코드 정보 입력부(302)에서 입력되고 분할된 소프트웨어의 각 코드 모듈(예컨대, 각 함수 단위)에 대하여, 도 1의 블록(102)에서 선택되어 분석 머신 작성에 이용된 기능 안전 요소의 위험 데이터 메트릭들 각각의 값(또는 분석에 사용될 위험 데이터 메트릭들이 소정의 데이터들로 제한 선택된 경우에는 그러한 제한 선택된 메트릭 데이터들의 값)이 측정될 수 있다. 예컨대, 위험 데이터 메트릭 측정부(304)에서는, 입력된 소프트웨어의 각 코드 모듈에 대한, 총 코드 라인 수(loc), McCabe 순환 복잡도(v(g)), McCabe 필수 복잡도(ev(g)), McCabe 설계 복잡도(iv(g)), Halstead 연산자 및 피연산자 전체 수(n), Halstead 프로그램 볼륨(v), Halstead 프로그램 길이(l), Halstead 프로그램 난이도(d), Halstead Intelligent content(i), Halstead 프로그래밍 노력(e), Halstead 에러 추정(b), Halstead 구현시간 추정(t), Halstead 라인 카운트(lOCode), Halstead 주석 줄 수(lOComment), Halstead 빈 줄 수(lOblank), 코드와 주석을 모두 갖는 라인 수(IOCodeANDComment), 고유한 연산자 수(uniq_Op), 고유한 피연산자 수(uniq_Opnd), 전체 연산자(total_Cp), 전체 피연산자(total_Opand), 그래프 흐름 수(branchCount), 및 위험 레벨(Risk Level) 등의 위험 데이터 메트릭 값들 중 하나 이상의 값이 자동으로 측정될 수 있다. According to one embodiment of the invention, the risk data metric measurement unit 304, for each code module (e.g., each function unit) of the software input and divided by the analysis code information input unit 302, the block of Figure 1 The value of each of the risk data metrics of the functional safety factor selected at 102 and used to create the analysis machine (or the value of such limited selected metric data if the risk data metrics to be used for analysis are limited to predetermined data) is selected. Can be measured. For example, in the risk data metric measuring unit 304, for each code module of the input software, the total number of code lines (loc), McCabe cyclic complexity (v (g)), McCabe required complexity (ev (g)), McCabe design complexity (iv (g)), total number of Halstead operators and operands (n), Halstead program volume (v), Halstead program length (l), Halstead program difficulty (d), Halstead Intelligent content (i), Halstead programming Effort (e), Halstead error estimation (b), Halstead implementation time estimation (t), Halstead line count (lOCode), Halstead comment lines (lOComment), Halstead blank lines (lOblank), lines with both code and comments Risks such as number (IOCodeANDComment), number of unique operators (uniq_Op), number of unique operands (uniq_Opnd), total operators (total_Cp), total operands (total_Opand), graph flow count (branchCount), and risk level One or more of the data metric values may be measured automatically.

본 발명의 일 실시예에 의하면, 위험 분석부(306)에서는, 각 코드 모듈에 대해 측정된 위험 레벨 값을 비롯한, 위험 데이터 메트릭 측정부(304)에서 측정된 각 코드 모듈의 위험 데이터 메트릭들을 이용하여 각 코드 모듈 별로 위험 여부가 분석된다. 분석된 결과는, 각 코드 모듈 별로 해당 모듈이 위험 정도를 정량화한 값으로 출력될 수 있다.According to an embodiment of the present invention, the risk analyzer 306 uses risk data metrics of each code module measured by the risk data metric measurer 304, including the risk level value measured for each code module. Each code module is analyzed for risks. The analyzed result may be output as a value in which the corresponding module quantifies the degree of risk for each code module.

한편, 본 발명의 일 실시예에 의하면, 코드 모듈 안전성 특징 획득부(308)에서는, 분석 코드 정보 입력부(302)에서 수신한 해당 코드 모듈 개발의 기초가 된 플랫폼 정보(예컨대, AUTOSAR BSW 기반의 개발 소프트웨어 코드 모듈의 경우 해당 소프트웨어 코드 모듈의 대응 AUTOSAR BSW 모듈 ID 등)를 수신하고, 이를 이용하여 해당 코드 모듈의 안전성 특징 정보를 획득할 수 있다. 구체적으로 도시되지는 않았으나, 본 발명의 일 실시예에 의하면, 각 코드 모듈 개발의 기초가 되는 플랫폼 정보는 그에 관련된 코드 모듈 안전성 특징들과 함께 미리 정의되고 저장되어 있을 수 있고, 분석 코드 정보 입력부(302)는 그러한 미리 정의되고 저장된 정보를, 주어진 플랫폼 정보에 기초하여 검색하고, 해당 코드 모듈의 안전성 특징 정보를 획득할 수 있다. 구체적으로 도시되지는 않았으나, 본 발명의 일 실시예에 의하면, 전술한 정보는, 소프트웨어 신뢰도 및 안전성 분석 머신 내부의 저장소 또는 외부 별도의 저장 장치에 기록되어 있을 수 있다.On the other hand, according to an embodiment of the present invention, the code module safety feature acquisition unit 308, the platform information (for example, AUTOSAR BSW-based development that is the basis of the corresponding code module development received from the analysis code information input unit 302) In the case of a software code module, a corresponding AUTOSAR BSW module ID, etc.) of the corresponding software code module may be received, and the safety feature information of the corresponding code module may be obtained. Although not specifically illustrated, according to an embodiment of the present invention, the platform information which is the basis of each code module development may be predefined and stored together with the code module safety features related thereto, and the analysis code information input unit ( 302 may retrieve such predefined and stored information based on the given platform information and obtain safety feature information of the corresponding code module. Although not specifically illustrated, according to an embodiment of the present invention, the above-described information may be recorded in a storage inside the software reliability and safety analysis machine or in an external separate storage device.

이와 관련하여, 유럽에서 배포한 ISO 26262 가이드라인 SAFE(Safe Automotive software architecture)의 SAFE_D3.6.b.pdf의 Deliverable D3.6.b: Safety Code Generator Specification에서는, 차량용 소프트웨어에 필요한 안전 메커니즘을 Fault Avoidance, Error Detection 및 Error Handling의 세 가지 카테고리로 구분하고, 이들 각각의 세부 요구 항목들을 열거하여 총 36가지로 정의한 바 있다. 아래 표는, SAFE ISO 26262 Safety Mechanism의 분류표이며, 단순히 본 발명의 이해를 돕기 위하여 예시적으로 제공되는 것일 뿐 본 발명을 제한하기 위한 것은 아님을 알아야 한다. 또한, 본 발명의 다른 실시예에 의하면, 안전 메커니즘을 기계 안전 분야의 표준, 예컨대 ISO 13849에서 정한 B, 1, 2, 3, 및 4 카테고리로 분류하여 정의할 수 있다. In this regard, Deliverable D3.6.b: Safety Code Generator Specification of the SAFE_D3.6.b.pdf of the ISO 26262 guideline Safety Automotive software architecture (SAFE), which is distributed in Europe, provides fault-tolerant safety mechanisms for vehicle software. It is divided into three categories, namely, Error Detection and Error Handling, and each of these detailed requirements are listed and defined as 36 in total. The following table is a classification table of the SAFE ISO 26262 Safety Mechanism, it should be understood that it is merely provided by way of example to aid the understanding of the present invention, not intended to limit the present invention. In addition, according to another embodiment of the present invention, safety mechanisms may be defined by categorizing them into B, 1, 2, 3, and 4 categories defined in standards in the field of machine safety, such as ISO 13849.

NoNo 1One Fault AvoidanceFault Avoidance Freedom From InterferenceFreedom From Interference PartitioningPartitioning 22 ReplicationReplication 33 BarrierBarrier InterlockInterlock Data InterLockData InterLock 44 Control Flow InterLockControl Flow InterLock 55 Error DetectionError Detection Stateless Error DetectionStateless Error Detection ChecksumChecksum Parity CheckerParity checker 66 CRCCRC 77 ComparisonComparison 88 Self TestSelf test Software Self TestSoftware Self Test RAM Self TestRAM Self Test 99 Hardware Self TestHardware Self Test ROM Self TestROM Self Test 1010 Range CheckRange check 1111 Challenge Response CheckChallenge Response Check 1212 Message Readback CheckMessage Readback Check 1313 Stateful Error DetectionStateful Error Detection PlausibilityPlausibility Analytic RedundancyAnalytic Redundancy 1414 Actuator MonitoringActuator Monitoring 1515 Sensor PlausibilitySensor Plausibility Sensor CorrelationSensor Correlation 1616 Sensor Reationality CheckSensor Reationality Check 1717 Gradient CheckerGradient checker 1818 Logical MonitoringLogical Monitoring Logical Control Flow MonitoringLogical Control Flow Monitoring (Logical Autosar WDM)(Logical Autosar WDM) 1919 Logical Data Flow MonitoringLogical Data Flow Monitoring Data Sequence MonitorData Sequence Monitor 2020 Temporal MonitoringTemporal monitoring Temporal Control Flow MonitoringTemporal Control Flow Monitoring Deadline SupervisionDeadline Supervision (Temporal Autosar WMD)Temporal Autosar WMD 2121 Alive SupervisionAlive supervision (Temporal Autosar WMD)Temporal Autosar WMD 2222 HearbeatHearbeat 2323 Temporal Data Flow MonitoringTemporal Data Flow Monitoring Data Timeout MonitorData Timeout Monitor 2424 Maximum AgeMaximum Age 2525 Error HandlingError Handling MaskingMasking Error FilteringError Filtering 2626 Default ValueDefault Value 2727 VotingVoting 1oo2 Voter1oo2 Voter 2828 2oo3 Voter2oo3 Voter 2929 Error CorrectionError Correction Error Correction CodeError Correction Code Hamming CodeHamming code 3030 Reed Solomon CodeReed Solomon Code 3131 Convolution CodeConvolution Code 3232 ReportingReporting (CHROMOSOME Health Monitor)(CHROMOSOME Health Monitor) 3333 (AUTOSAR_DEM)(AUTOSAR_DEM) 3434 RecoveryRecovery ResetReset Partition ResetPartition Reset 3535 Device ResetDevice Reset 3636 DegradationDegradation

본 발명의 일 실시예에 의하면, 예컨대 분석 대상이 되는 소프트웨어 코드 모듈 각각의 AUTOSAR BSW에 기초하여 개발된 것을 전제로, 각 AUTOSAR BSW 모듈 ID와 전술한 36가지 SAFE 안전 메커니즘을 서로 맵핑한 2차원 테이블이 미리 정의 및 저장되어 있을 수 있다. 예컨대, 분석 코드 모듈이 AUTOSAR BSW No. 123 ADC Driver를 이용하였다면 이는 SAFE 안전 메커니즘 중 Device Reset의 항목의 적용을 받는다고 미리 정의 및 저장되어 있을 수 있다. 이와 함께, 본 발명의 일 실시예에 의하면, 전술한 36가지 SAFE 안전 메커니즘 각각에 관한 안전성 특징, 예컨대 결함보수 우선순위, 구현 난이도, 구현 난이도에 따른 투입 노력 시간 등이 또한 별도의 표로써 미리 정의되고 저장되어 있을 수 있다. 본 발명의 일 실시예에 의하면, 예컨대 각 안전 메커니즘의 결함보수 우선순위는, 예를 들어 "매우 높음", "높음", "중간", "낮음", "매우 낮음"의 5가지로 분류될 수 있다. 본 발명의 일 실시예에 의하면, 예컨대 각 안전 메커니즘의 구현 난이도는, 예를 들어 "매우 어려움", "어려움", "중간", "쉬움", "매우 쉬움"의 5가지로 분류될 수 있다. 본 발명의 일 실시예에 의하면, 구현 난이도는, 그 구현 난이도에 따른 투입 노력 시간과 서로 관련된 정보로서, 예컨대 구현 난이도 "매우 어려움"은 투입 노력 시간 24시간, 구현 난이도 "어려움"은 투입 노력 시간 8시간, 구현 난이도 "중간"은 투입 노력 시간 2시간, 구현 난이도 "쉬움"은 투입 노력 시간 1시간, 구현 난이도 "매우 쉬움"은 투입 노력 시간 30분 등과 같이 정의될 수 있으며, 본 발명이 이로써 제한되는 것은 아니다. According to an embodiment of the present invention, a two-dimensional table in which each AUTOSAR BSW module ID and 36 SAFE safety mechanisms described above are mapped to each other, on the assumption that they are developed based on the AUTOSAR BSW of each software code module to be analyzed. This may be predefined and stored. For example, the analysis code module may be an AUTOSAR BSW No. If the 123 ADC Driver is used, it may be predefined and stored as being subject to the Device Reset item of the SAFE safety mechanism. In addition, according to one embodiment of the present invention, safety features associated with each of the 36 SAFE safety mechanisms described above, such as defect repair priority, implementation difficulty, input effort time according to implementation difficulty, etc., are also previously defined as separate tables. And may be stored. According to one embodiment of the invention, for example, the defect repair priority of each safety mechanism can be classified into five categories, for example, "very high", "high", "medium", "low", and "very low". Can be. According to one embodiment of the invention, for example, the difficulty of implementing each safety mechanism may be classified into five types, for example, "very difficult", "hard", "medium", "easy", and "very easy". . According to an embodiment of the present invention, the implementation difficulty is information related to the input effort time according to the implementation difficulty, for example, the implementation difficulty "very difficult" is the input effort time 24 hours, the implementation difficulty "difficult" is the input effort time 8 hours, implementation difficulty "medium" can be defined as the input effort time 2 hours, implementation difficulty "easy" means the input effort time 1 hour, implementation difficulty "very easy" can be defined as 30 minutes effort, such as the present invention, thereby It is not limited.

아래 표는, 상기 설명한 구현 난이도의 예시적인 분류표이며, 단순히 본 발명의 이해를 돕기 위하여 예시적으로 제공되는 것일 뿐 본 발명을 제한하기 위한 것은 아님을 알아야 한다. The following table is an exemplary classification table of the above described implementation difficulty, which is merely provided as an example to aid the understanding of the present invention and is not intended to limit the present invention.

구현 난이도Difficulty of implementation 투입 노력(분)Commitment effort (minutes) 매우 어려움Very difficult 24 h 00 m24 h 00 m 어려움difficulty 08 h 00 m08 h 00 m 중간middle 02 h 00 m02 h 00 m 쉬움facility 01 h 00 m01 h 00 m 매우 쉬움Very easy 00 h 30 m00 h 30 m

예컨대, SAFE 안전 메커니즘 중 parity checker 항목은, 개발보수의 우선순위가 총 5개 분류 중 "높음" 레벨이고, 구현 난이도가 총 5개 분류 중 "쉬움" 레벨이라고 정의될 수 있다. 여기서, 코드 모듈 개발의 기초가 되는 플랫폼 정보와, 그에 관련된 코드 모듈 안전성 특징 정보의 종류 및 정의 방법 등에 관하여 전술한 사항은 어디까지나 본 발명의 이해를 돕기 위한 것일 뿐, 본 발명이 이로써 제한되는 것은 아님을 알아야 한다. 당업자라면, 예컨대 각 코드 모듈 개발의 기초가 되는 플랫폼 정보와, 어떠한 안전성 특징 정보를 어떻게 관련시킬 것인가에 대한 다양한 변형을 구현할 수 있을 것이다. 또, 각 코드 모듈 개발의 기초가 되는 플랫폼 정보와 관련된 안전성 특징 정보가 한 번 정의되었다고 하더라도, 이후 필요에 따라 이를 적절히 변경할 수 있음은 당연하다. 또한, 본 실시예에 관하여, 분석 대상이 되는 코드 모듈은 AUTOSAR BSW를 기반으로 개발된 것으로 설명하였으나, 본 발명이 이로써 제한되는 것은 아니다. 본 발명의 다른 실시예에 의하면, 분석 대상이 되는 코드 모듈은, 다른 표준 개발 플랫폼에 기초하여 작성된 것일 수도 있다. For example, the parity checker item of the SAFE safety mechanism may be defined as a "high" level among the five classifications, and the difficulty of implementation may be defined as an "easy" level among the five classifications. Here, the above-mentioned matters regarding the platform information that is the basis of the code module development, and the types and definition methods of the code module safety feature information related thereto are provided only for the purpose of understanding the present invention, and the present invention is limited thereto. It should be known. Those skilled in the art will be able to implement, for example, various modifications of how to relate the platform information on which each code module development is based, and what safety feature information. In addition, even if safety feature information related to platform information, which is the basis of development of each code module, is defined once, it can be changed accordingly if necessary. In addition, with respect to the present embodiment, the code module to be analyzed is described as being developed based on the AUTOSAR BSW, but the present invention is not limited thereto. According to another embodiment of the present invention, the code module to be analyzed may be written based on another standard development platform.

본 발명의 일 실시예에 의하면, 위험 분석부(306)에서는, 입력된 각 소프트웨어 코드 모듈의 위험 여부에 관한 정보에 관한 보고서를 작성할 수 있다. 본 발명의 일 실시예에 의하면, 위험 분석부(306)에서는, 각 코드 모듈의 위험 여부 분석 결과(즉, 각 코드 모듈에 관한 True 또는 False 값)와 함께, 코드 모듈 안전성 특징 획득부(308)에서 획득한 해당 해당 코드 모듈에 관한 안전성 특징 정보를 포함하는 보고서를 작성할 수 있다. According to an embodiment of the present invention, the risk analysis unit 306 may generate a report on information on whether or not each of the input software code module is dangerous. According to one embodiment of the invention, the risk analysis unit 306, the code module safety feature acquisition unit 308, along with the results of the risk analysis of each code module (that is, True or False value for each code module) You can create a report that contains safety feature information about the code module you have obtained from.

본 발명의 일 실시예에 의하면, 위험 분석부(306)에 의해 작성되는 보고서에 포함되는 코드 모듈의 안전성 정보는, 예를 들어 해당 안전 메커니즘 명칭(예컨대, SAFE ISO 26262 안전 메커니즘의 parity checker), 관련 설명(예컨대, SAFE ISO 26262 안전 메커니즘의 parity checker에 관한 설명), 안전성 카테고리(예컨대, Error Detection 카테고리), 우선순위(예를 들어, "높음"). 구현 난이도(예를 들어, "쉬움), 투입 노력 시간(예를 들어, 1시간), 해당 코드 모듈의 코드 부분, 참조 사항(예를 들어, SAFE ISO 26262 안전 메커니즘을 이용하는 경우, http://www.safe-project.eu/SAFE-Publications/SAFE_D3.6.b.pdf 중 해당 안전 메커니즘에 관한 설명 부분으로의 링크 및 샘플 코드, 즉 SAFE ISO 26262 안전 메커니즘이 제시하는 관련 샘플 코드 또는 기타 해당 안전 메커니즘과 관련하여 미리 정해진 소정의 샘플 코드 등) 등을 포함할 수 있다. 이러한 안전성 정보가 보고서에 포함되는 경우, 이를 확인한 소프트웨어 코드의 개발/보수자는, 예컨대 해당 코드 모듈이 위험한 것으로 분석되었고, 이는 SAFE ISO 26262 안전 메커니즘 중 Error Detection 카테고리의 parity checker 항목에 관련되며, 결함보수의 우선순위는 높음이고 구현 난이도는 쉬움이며 투입 노력 시간은 1시간이라는 점을 알 수 있다. 또, 이러한 정보를, 위험하다고 분석된 소프트웨어 코드 모듈에 관한 대응 정보와 비교하여, 어느 소프트웨어 코드 모듈을 먼저 보수할 것인지에 관한 의사결정을 내리는데 참고할 수 있다(예컨대, 결함보수는, 우선순위가 높고 구현 난이도가 낮은 것부터, 우선순위가 낮고 구현 난이도가 높은 것의 순서로 진행될 수 있음). 이러한 안전성 정보는 본 발명의 이해를 돕기 위한 예시일 뿐이며, 본 발명이 이로써 제한되는 것은 아니다. 당업자라면, 코드 분석의 결과 보고서에 포함되어 소프트웨어 코드의 개발/보수자에게 제공될만한 더 많은 다른 안전 메커니즘 안전성 정보를 생각해낼 수 있을 것이다. 본 발명의 다른 실시예에 의하면, 코드 분석의 결과 보고서에는, 위 열거된 정보 중 일부 또는 그 외 다른 안전성 정보가 포함될 수 있다. 본 발명의 일 실시예에 의하면, 위험 분석부(306)에 의해 작성되는 보고서에 포함되는 코드 모듈의 안전성 정보는, 예컨대 다음 표와 같은 테이블 형태의 정보를 포함할 수 있다. 아래 표는 본 발명의 이해를 돕기 위한 것일 뿐, 본 발명이 이로써 제한되는 것을 아님을 알아야 한다.According to an embodiment of the present invention, the safety information of the code module included in the report generated by the risk analysis unit 306 may be, for example, a corresponding safety mechanism name (eg, a parity checker of the SAFE ISO 26262 safety mechanism), Related description (eg, description of the parity checker of the SAFE ISO 26262 safety mechanism), safety category (eg, Error Detection category), priority (eg, "high"). Implementation difficulty (e.g. "easy"), input effort time (e.g. 1 hour), code portion of the corresponding code module, reference (e.g. using the SAFE ISO 26262 safety mechanism, http: // Sample code and links to the description of the safety mechanism in www.safe-project.eu/SAFE-Publications/SAFE_D3.6.b.pdf, ie the relevant sample code provided by the SAFE ISO 26262 safety mechanism or other applicable safety. Related to the mechanism, such as predetermined sample code, etc.) If such safety information is included in the report, the developer / maintenance of the software code which has confirmed this, for example, has analyzed that the code module is dangerous, It is related to the parity checker item in the Error Detection category of the SAFE ISO 26262 safety mechanism. The priority of defect repair is high, the difficulty of implementation is easy, and the input effort time is 1 o'clock. In addition, this information can be compared to corresponding information about software code modules that have been analyzed as dangerous and can be used to make decisions about which software code module to repair first (eg, defect repair). Can be proceeded in order of high priority, low implementation difficulty, low priority, and high implementation difficulty) The safety information is only an example to help understanding of the present invention, and the present invention is limited thereto. No. One of ordinary skill in the art would be able to come up with more other safety mechanism safety information that may be included in the report of the results of the code analysis and provided to the developer / maintenance of the software code. The report may contain some or any other safety information listed above. May be, according to one embodiment of the invention, the safety information for the code module included in the report generated by the risk analysis unit 306, for example, may include a table, types of information are listed in the following table. The following table is only to aid the understanding of the present invention, it should be understood that the present invention is not limited thereto.

항목Item 설명Explanation 안전 메커니즘 명칭Safety Mechanism Name Safety Mechanism 명Safety Mechanism Persons 관련 설명Related Description Safety Mechanism 설명Safety Mechanism Description 비고Remarks 비고Remarks 안전성 카테고리Safety category 해당 안전 메커니즘이 속한 소정의 안전성 카테고리 표시Indication of the specific safety category to which the safety mechanism belongs 결함보수 우선순위Defect repair priority 5가지로 나눠진 적용 우선순위
(매우 높음, 높음, 중간, 낮음, 매우 낮음)
Application priority divided into five
(Very high, high, medium, low, very low)
구현 난이도Difficulty of implementation 5가지로 나눠진 구현 난이도
(매우 어려움, 어려움, 중간, 쉬움, 매우 쉬움)
Divided into five difficulty levels
(Very difficult, difficult, medium, easy, very easy)
투입 노력 시간Commitment time 구현 난이도에 따른 투입 노력 시간Input effort time according to implementation difficulty 코드 안전 확보 가능 부분Code safety part 본 Safety Mechanism을 적용했을 때 확보 가능한 코드 안전 부분
예) ParityCheck Safety Mechanism: 데이터의 통신 중 또는 저장 중에 데이터가 오염되었는지 감지함
Code safety that can be obtained when applying this Safety Mechanism
E.g. ParityCheck Safety Mechanism: detects whether data is contaminated during data communication or storage
참조사항Reference Safety Mechanism 레퍼런스Safety Mechanism Reference 코드 예시Code example Y bit parity에 대한 X 체크섬
-----------------------
parity(X, Y) true : false
X checksum for Y bit parity
-----------------------
parity (X, Y) true: false

본 발명의 일 실시예에 의하면, 카테고리 표지자 지표 계산부(310)에서는, 위험 분석부(306)에서 분석한 값을 기초로 코드 모듈의 카테고리별 표지자 지표를 계산할 수 있다. According to an embodiment of the present invention, the category marker index calculator 310 may calculate the marker indicator for each category of the code module based on the value analyzed by the risk analyzer 306.

본 발명의 일 실시예에 따르면, 카테고리 표지자(category indicator)란 코드 모듈의 카테고리별 위험 수준을 나타내는 값으로 0 ~ 100 레벨로 표시될 수 있다. 카테고리 표지자의 레벨이 높을 수록 보다 안전하다고 판단할 수 있으며, 낮을 수록 위험을 내포한 코드로 판단할 수 있다. 본 발명의 일 실시예에 따르면 카테고리 표지자 산출은 코드 모듈에서 발견된 모든 안전 메카니즘을 적합한 카테고리별로 구분하여 나타낼 수 있으며 전역 표시기, 목표에 대한 노력 및 코드 크기 등의 요소를 고려하여 계산할 수 있다. 본 발명의 일 실시예에 따르면 안전 메카니즘에 대한 카테고리는 결함 회피(fault avoidance), 오류 검출(error detection), 오류 처리(error handling)를 포함하여 3가지로 구분될 수 있다. According to an embodiment of the present invention, a category indicator is a value representing a risk level for each category of a code module, and may be displayed at 0 to 100 levels. The higher the level of the category marker, the more likely it is to be determined to be safer, and the lower it can be determined to be a code containing risks. According to an embodiment of the present invention, the category marker calculation may be displayed by dividing all safety mechanisms found in the code module into appropriate categories, and may be calculated in consideration of factors such as global indicators, target effort, and code size. According to an embodiment of the present invention, categories of safety mechanisms may be classified into three types, including fault avoidance, error detection, and error handling.

본 발명의 일 실시예에 따르면, 카테고리 표지자를 계산하기 위해, 카테고리별 글로벌 지표, 노력 비용, 코드 크기, 코드 모듈의 위험 레벨 등의 요소가 고려될 수 있다. According to an embodiment of the present invention, in order to calculate the category markers, factors such as global indicators for each category, effort cost, code size, risk level of the code module, and the like may be considered.

본 발명의 실시예에서, 카테고리별 글로벌 지표란 각 카테고리별로 조치가 필요한 안전 메카니즘의 개수를 의미할 수 있다. 카테고리별 글로벌 지표의 값이 크면 카테고리 지표자의 레벨은 낮아지고, 카테고리별 글로벌 지표의 값이 작으면 카테고리 지표자의 레벨은 높아질 수 있다. 본 발명의 일 실시예에서, 카테고리별 글로벌 지표의 기준 값은 안전 메카니즘의 전체 개수이다. In an embodiment of the present invention, the global index for each category may refer to the number of safety mechanisms requiring action for each category. If the value of the global indicator for each category is high, the level of the category indicator may be low. If the value of the global indicator for each category is small, the level of the category indicator may be increased. In one embodiment of the invention, the reference value of the global indicator by category is the total number of safety mechanisms.

본 발명의 실시예에서, 노력 비용이란 카테고리별 글로벌 지표에 따른 개선에 필요한 노력 비용(투입 시간)을 의미할 수 있다. 노력 비용의 값이 크면 카테고리 지표자의 레벨은 낮아지고, 노력 비용의 값이 작으면 카테고리 지표자의 레벨은 높아질 수 있다. 본 발명의 일 실시예에서, 노력 비용의 기준 값은 안전 메카니즘의 노력 비용이다. In an embodiment of the present invention, the effort cost may mean an effort cost (input time) required for improvement according to the global index for each category. If the value of effort cost is high, the level of the category indicator is low, and if the value of effort cost is low, the level of the category indicator can be high. In one embodiment of the present invention, the reference value of effort cost is the effort cost of the safety mechanism.

본 발명의 실시예에서, 코드 크기란 소프트웨어 전체의 코드의 크기를 의미한다. 코드 크기의 값이 크면 카테고리 지표자의 레벨은 낮아지고, 코드 크기의 값이 작으면 카테고리 지표자의 레벨은 높아질 수 있다. 본 발명의 일 실시예에서, 코드 크기의 기준 값은 코드 모듈 전체의 코드량을 기준으로 하여 가중치 기준을 정의하여 산출될 수 있다. 아래 표는 코드 크기를 계산하는 방법을 예시적으로 보여주기 위한 것일 뿐, 본 발명이 이로써 제한되는 것은 아니다. In the embodiment of the present invention, the code size means the size of the code of the entire software. If the value of the code size is large, the level of the category indicator is low. If the value of the code size is small, the level of the category indicator is high. In one embodiment of the present invention, the reference value of the code size may be calculated by defining a weight reference based on the code amount of the entire code module. The table below is only illustrative of how to calculate the code size, and the invention is not so limited.

코드수(라인)Code Count (Lines) <= 2,500<= 2,500 <= 5,000<= 5,000 <= 7,500<= 7,500 <= 10,000<= 10,000 가중치weight 1.31.3 1.11.1 0.90.9 0.70.7

본 발명의 실시예에서 코드 모듈의 위험 레벨은 전술한 바와 같으며, 위험 레벨의 값이 크면 카테고리 지표자의 레벨은 낮아지고, 위험 레벨의 값이 작으면 카테고리 지표자의 레벨은 높아질 수 있다. 본 발명의 일 실시예에서, 코드 모듈의 위험 레벨의 기준 값은 위험 레벨을 기준으로 하여 가중치 기준을 정의하여 산출될 수 있다. 아래 표는 위험 레벨를 계산하는 방법을 예시적으로 보여주기 위한 것일 뿐, 본 발명이 이로써 제한되는 것은 아니다. In the embodiment of the present invention, the risk level of the code module is as described above. If the value of the risk level is large, the level of the category indicator is low, and if the value of the risk level is small, the level of the category indicator can be high. In one embodiment of the present invention, the reference value of the risk level of the code module may be calculated by defining a weighting criterion based on the risk level. The table below is merely illustrative of how the risk level is calculated, and the invention is not so limited.

위험 레벨Risk level AA BB CC DD 가중치weight 1.31.3 1.11.1 0.90.9 0.70.7

본 발명의 일 실시예에서, 카테고리 표지자 지수(category indicator index)는 아래와 같이 계산할 수 있다. In one embodiment of the present invention, the category indicator index can be calculated as follows.

수학식 1Equation 1

카테고리 표지자 지수

Figure 112018028417241-pat00001
Category marker index
Figure 112018028417241-pat00001

Ef : 조치가 필요한 안전 메카니즘의 노력 비용 합E f : Sum of effort costs of safety mechanisms requiring action

Et : 전체 안전 메카니즘의 노력 비용 합E t : Sum of effort costs of the entire safety mechanism

WRL : 위험 레벨 기준 가중치 W RL : Risk Level Criteria Weight

WLOC : 코드량 기준 가중치W LOC : Weight based on code amount

실시예Example

본 발명의 일 실시예에 따르면, 상기 수학식 1을 적용하여 카테고리 표지자 지수를 구할 수 있다. According to an embodiment of the present invention, the category marker index may be obtained by applying Equation 1 above.

1. 결함 회피 카테고리1. Fault Avoidance Category

결함 회피 카테고리 내 안전 메카니즘의 노력 비용의 합이 100시간이고, 조치가 필요한 안전 메카니즘의 노력 비용의 합의 80시간, 결합 회피 카테고리에 해당하는 코드 크기가 약 6,000 라인이며, 발견한 최대 위험 레벨이 C라고 하면, 카테고리 표지자 지수는 아래와 같다. The sum of the effort cost of the safety mechanism in the defect avoidance category is 100 hours, the sum of the effort cost of the effort of the safety mechanism requiring action, 80 hours, the code size for the combined avoidance category is approximately 6,000 lines, and the maximum risk level found is C Then, the category marker index is as follows.

결함 회피 카테고리 표지자 지수

Figure 112018028417241-pat00002
Fault Avoidance Category Marker Index
Figure 112018028417241-pat00002

약 16.2로 결함 회피 카테고리 관련 코드가 위험한 수준임을 알 수 있다. About 16.2 shows that the code for the defect avoidance category is dangerous.

2. 오류 검출 카테고리2. Error Detection Category

오류 검출 카테고리 내 안전 메카니즘의 노력 비용의 합이 100시간이고, 조치가 필요한 안전 메카니즘의 노력 비용의 합이 30시간, 오류 검출 카테고리에 해당하는 코드 크기가 약 3,000 라인이며, 발견한 최대 위험 레벨이 C라고 하면, 카테고리 표지자 지수는 아래와 같다.The sum of the effort cost of the safety mechanism in the error detection category is 100 hours, the sum of the effort cost of the safety mechanism that requires action is 30 hours, the code size for the error detection category is about 3,000 lines, and the maximum risk level found is C, the category marker index is as follows.

오류 검출 카테고리 표지자 지수

Figure 112018028417241-pat00003
Error Detection Category Marker Index
Figure 112018028417241-pat00003

약 49.5로 오류 검출 카테고리 관련 코드는 관찰이 필요한 정도로 해석할 수 있다. At about 49.5, the code associated with the error detection category can be interpreted as necessary to observe.

3. 오류 조치 카테고리3. Error Action Category

오류 조치 카테고리 내 안전 메카니즘의 노력 비용의 합이 100시간이고, 조치가 필요한 안전 메카니즘의 노력 비용의 합이 30시간, 오류 조치 카테고리에 해당하는 코드 크기가 약 3,000 라인이며, 발견한 최대 위험 레벨이 A라고 하면, 카테고리 표지자 지수는 아래와 같다.The sum of the effort cost of the safety mechanism in the error action category is 100 hours, the sum of the effort cost of the safety mechanism that requires action is 30 hours, the code size for the error action category is approximately 3,000 lines, and the maximum risk level found is A, the category marker index is as follows.

오류 조치 카테고리 표지자 지수

Figure 112018028417241-pat00004
Error Action Category Marker Index
Figure 112018028417241-pat00004

약 100으로 오류 조치 카테고리 관련 코드는 상당히 안전한 코드로 해석할 수 있다. At around 100, the code for the error action category can be interpreted as fairly secure code.

본 발명의 일 실시예에 의하면, 목표 지수 시뮬레이션부(312)에서는, 카테고리 표지자 계산부(310)에서 분석한 값을 기초로 목표 지수를 만족하기 위한 노력 비용을 시뮬레이션 할 수 있다. According to the exemplary embodiment of the present invention, the target index simulation unit 312 may simulate an effort cost for satisfying the target index based on the value analyzed by the category marker calculator 310.

본 발명의 실시예에 따르면 우선 조치가 필요한 안전 메카니즘을 정렬하며, 정렬 기준은 안전 메카니즘 중에 높은 우선 순위를 가지며 낮은 구현 난이도를 가지는 안전 메카니즘 순서로 정렬한다. 도 4는 본 발명의 일 실시예에 따른 우선 순위와 구현 난이도의 관계에 따른 안전 메카니즘의 순위를 그룹핑하여 도시한 그래프이다. 도시된 바와 같이, 효율적으로 목표 지수를 달성하기 위해서 구현 난이도가 낮고 우선 순위가 높은 안전 메카니즘부터 제안할 수 있다. According to an embodiment of the present invention, the safety mechanisms that need to be prioritized are sorted, and the sorting criteria are arranged in order of safety mechanisms having a high priority among the safety mechanisms and having a low implementation difficulty. 4 is a graph showing the grouping of the ranking of safety mechanisms according to the relationship between priority and implementation difficulty according to an embodiment of the present invention. As shown in the figure, in order to efficiently achieve the target index, the safety mechanism with low implementation difficulty and high priority may be proposed.

본 발명의 실시예에 따르면, 각 카테고리 표지자가 목표 지수를 달성할 수 있게 하는 안전 메카니즘 집합을 계산할 수 있다. 예컨대, 각 카테고리별 안전 메카니즘 집합이 전체 투입 노력 시간의 합을 계산하고, 전체 카테고리 목표별 투입 노력 시간의 합을 계산할 수 있다. According to embodiments of the present invention, a set of safety mechanisms may be calculated that allow each category marker to achieve a target index. For example, the set of safety mechanisms for each category may calculate the sum of total input effort time and the sum of input effort time for all category targets.

계산 Calculation 실시예Example

오류 검출 카테고리에 해당하는 코드 크기가 약 3,000 라인이며, 발견한 최대 위험 레벨은 C이고, 아래 표의 조치가 필요한 안전 메카니즘이 발견되었다고 전제한다. It is assumed that the code size corresponding to the error detection category is about 3,000 lines, the maximum risk level found is C, and a safety mechanism has been found that requires the measures in the table below.

안전
메카니즘
safety
Mechanism
카테고리category 우선
순위
priority
ranking
구현
난이도
avatar
difficulty
투입 노력
시간(분)
Commitment
Minutes
반영
여부
reflection
Whether
도출
건수
deduction
Number
Parity CheckParity check Error DetectionError Detection 높음height 쉬움facility 6060 XX 22 Sensor CorrelationSensor Correlation Error DetectionError Detection 높음height 어려움difficulty 480480 OO 33 Sensor Rationality CheckSensor Rationality Check Error DetectionError Detection 매우 높음Very high 보통usually 120120 OO 44 Analytic RedundancyAnalytic Redundancy Error DetectionError Detection 높음height 보통usually 120120 OO 1One Logical Control Flow MonitoringLogical Control Flow Monitoring Error DetectionError Detection 낮음lowness 매우
어려움
So
difficulty
14401440 XX 1One
Data Sequence MonitorData Sequence Monitor Error DetectionError Detection 보통usually 어려움difficulty 480480 XX 22 Data Timeout MonitoringData Timeout Monitoring Error DetectionError Detection 매우 높음Very high 쉬움facility 6060 XX 55 Maximum Age MonitoringMaximum Age Monitoring Error DetectionError Detection 높음height 어려움difficulty 480480 XX 33

1. 조치가 필요한 안전 메카니즘을 정렬한다1. Align safety mechanisms that need action

이미 반영된 안전 메카니즘(Sensor Correlation, Sensor Retionality Check, Analytic Redundancy)을 제외하고 높은 우선 순위를 가지며 낮은 구현 난이도를 만족하는 안전 메카니즘 순으로 정렬하여 아래 표를 작성할 수 있다. Except for the safety mechanisms (Sensor Correlation, Sensor Retionality Check, and Analytic Redundancy) that have already been reflected, the table below can be prepared by sorting them in order of safety mechanisms with high priority and satisfying low implementation difficulty.

안전
메카니즘
safety
Mechanism
카테고리category 우선
순위
priority
ranking
구현
난이도
avatar
difficulty
투입 노력
시간(분)
Commitment
Minutes
반영
여부
reflection
Whether
도출
건수
deduction
Number
Data Timeout MonitoringData Timeout Monitoring Error DetectionError Detection 매우 높음Very high 쉬움facility 6060 XX 55 Parity CheckParity check Error DetectionError Detection 높음height 쉬움facility 6060 XX 22 Maximum Age MonitoringMaximum Age Monitoring Error DetectionError Detection 높음height 어려움difficulty 480480 XX 33 Data Sequence MonitorData Sequence Monitor Error DetectionError Detection 보통usually 어려움difficulty 480480 XX 22 Logical Control Flow MonitoringLogical Control Flow Monitoring Error DetectionError Detection 낮음lowness 매우
어려움
So
difficulty
14401440 XX 1One

2. 각 카테고리 표지자가 목표 지수를 달성할 수 있게 하는 안전 메카니즘 집합을 계산한다. 2. Compute the set of safety mechanisms that enable each category marker to achieve the target index.

현재 오류 검출 카테고리 표지자 지수는 약 32.05이다. The current error detection category marker index is about 32.05.

오류 검출 카테고리 표지자 지수

Figure 112018028417241-pat00005
Error Detection Category Marker Index
Figure 112018028417241-pat00005

오류 검출 카테고리 지수의 목표 지수 값이 60이라고 할 때, Data Timeout Monitoring, Parity Check, Maximum Age Monitoring의 3개에 대한 안전 매커니즘이 적용되면, 목표 오류 검출 카테고리 지표 지수는 약 61.29가 된다. When the target index value of the error detection category index is 60, if the safety mechanisms for three data timeout monitoring, parity check, and maximum age monitoring are applied, the target error detection category index index is about 61.29.

목표 오류 검출 카테고리 표지자 지수

Figure 112018028417241-pat00006
Target Error Detection Category Marker Index
Figure 112018028417241-pat00006

따라서, 목표 지수를 달성할 수 있다. Thus, the target index can be achieved.

3. 각 카테고리별 안전 메카니즘 집합의 투입 노력 시간의 합을 계산한다. 3. Calculate the sum of the input effort times of the set of safety mechanisms for each category.

오류 검출 카테고리의 적용이 필요한 안전 메카니즘 집합의 투입 노력 시간은 31시간(1,860분)이다. The effort to put in a set of safety mechanisms requiring the application of the error detection category is 31 hours (1,860 minutes).

4. 전체 카테고리 목표별 투입 노력 시간의 합을 계산한다. 4. Calculate the sum of input effort time for all category goals.

마찬가지로, 다른 카테고리별 투입 노력 시간의 합을 구할 수 있으며, 오류 검출 카테고리만 존재한다고 가정하면 전체 카테고리의 목표별 투입 노력 시간의 합은 31시간이다. Similarly, the sum of input effort time for each category can be obtained. Assuming that only an error detection category exists, the sum of input effort time for each category is 31 hours.

본 발명의 실시예에 따르면, 목표 지수 시뮬레이션부(312)는 시뮬레이션 결과를 사용자에게 요약하여 제공할 수 있다. 아래 표는 계산 실시예에 적용된 예시를 사용자에 요약하여 제공하는 표를 나타낸다. According to an embodiment of the present invention, the target index simulation unit 312 may provide a summary of the simulation results to the user. The table below presents a table that provides a summary of examples applied to calculation examples to a user.

CategoryCategory 현재 신뢰성 Current reliability
지수Indices
목표 신뢰성 Target reliability
지수Indices
예상 신뢰성 Expected Reliability
지수Indices
예상 투입Expected commitment
노력 비용Effort cost
Fault AvoidanceFault Avoidance 12.812.8 -- 12.812.8 -- Error DetectionError Detection 32.0532.05 6060 61.2961.29 31h31h Error HandlingError Handling 65.265.2 -- 65.265.2 -- 총계sum 36.6836.68 46.4346.43 31h31h

마지막으로, 아래 표는 사용자에게 최종적으로 제공하는, 카테고리 표지자 지수를 만족시키기 위해 적용이 필요한 예상 안전 메카니즘 목록을 나타낸다. Finally, the table below presents a list of expected safety mechanisms that need to be applied to satisfy the Category Marker Index, which is finally provided to the user.

Safety
Mechanism
Safety
Mechanism
카테고리category 우선
순위
priority
ranking
구현
난이도
avatar
difficulty
투입 노력
시간(분)
Commitment
Minutes
반영
여부
reflection
Whether
도출
건수
deduction
Number
Data Timeout MonitoringData Timeout Monitoring Error DetectionError Detection 매우 높음Very high 쉬움facility 6060 XX 55 Parity CheckParity check Error DetectionError Detection 높음height 쉬움facility 6060 XX 22 Maximum Age MonitoringMaximum Age Monitoring Error DetectionError Detection 높음height 어려움difficulty 480480 XX 33

당업자라면 알 수 있듯이 본 발명은 본 명세서에서 기술된 예시에 한정되는 것이 아니라 본 발명의 범주를 벗어나지 않는 범위 내에서 다양하게 변형, 재구성 및 대체될 수 있다. 예를 들어, 본원에 기술된 다양한 기술들은 하드웨어 또는 소프트웨어, 또는 하드웨어와 소프트웨어의 조합에 의해 구현될 수 있다. 따라서, 본원에 따른 소프트웨어 안전성 분석을 위한 분석 머신의 특정한 양태나 부분은 범용 또는 전용 마이크로프로세서, 마이크로-컨트롤러 등에 의해 실행 가능한 하나 이상의 컴퓨터 프로그램으로 구현될 수 있다. 본 발명의 일 실시예에 따른 컴퓨터 프로그램은, 컴퓨터 프로세서 등에 의해 판독 가능한 저장 매체, 예컨대 EPROM, EEPROM, 플래시 메모리장치와 같은 비휘발성 메모리, 내장형 하드 디스크와 착탈식 디스크 같은 자기 디스크, 광자기 디스크, 및 CDROM 디스크 등을 포함한 다양한 유형의 저장 매체에 저장된 형태로 구현될 수 있다. 또한, 프로그램 코드(들)는 어셈블리어나 기계어로 구현될 수 있고, 전기 배선이나 케이블링, 광섬유, 또는 기타 임의의 다른 형태의 전송 매체를 통해 전송되는 형태로 구현될 수도 있다. As will be appreciated by those skilled in the art, the present invention is not limited to the examples described herein but may be variously modified, reconfigured and replaced without departing from the scope of the present invention. For example, the various techniques described herein may be implemented by hardware or software, or a combination of hardware and software. Thus, certain aspects or portions of an analysis machine for software safety analysis in accordance with the present disclosure may be implemented in one or more computer programs executable by a general purpose or dedicated microprocessor, micro-controller, or the like. A computer program according to an embodiment of the present invention includes a storage medium readable by a computer processor or the like, such as an EPROM, an EEPROM, a nonvolatile memory such as a flash memory device, a magnetic disk such as an internal hard disk and a removable disk, a magneto-optical disk, and It may be implemented in a form stored in various types of storage media, including a CDROM disk. In addition, the program code (s) may be implemented in assembly or machine language, and may also be implemented in the form of transmission via electrical wiring or cabling, optical fiber, or any other form of transmission medium.

본 명세서에서는, 소프트웨어 위험성 분석의 예시적인 실시예에 대해 다양한 도면을 참조하여 주로 기술했지만, 다른 유사한 실시예들이 이용될 수 있다. 본 발명의 진정한 사상 및 범주에 속하는 모든 변형 및 변경을 이하의 특허청구범위에 의해 모두 포괄하고자 한다.Although an example embodiment of software risk analysis has been described primarily herein with reference to various figures, other similar embodiments may be used. All modifications and variations that fall within the true spirit and scope of the present invention are intended to be covered by the following claims.

302: 분석 코드 정보 입력부
304: 위험 데이터 메트릭 측정부
306: 위험 분석부
308: 코드 모듈 안전성 특징 획득부
310: 카테고리 표지자 계산부
312: 목표 지수 시뮬레이션부
302: analysis code information input unit
304: risk data metric measurement unit
306: risk analysis
308: code module safety feature acquisition unit
310: category marker calculation unit
312: target index simulation unit

Claims (10)

컴퓨터에 의해 수행되는, 표준 플랫폼에 기반하여 작성된 전장용 소프트웨어 코드 모듈의 안전성이 목표 신뢰성 지수를 만족하도록 시뮬레이션하는 방법으로서,
상기 소프트웨어 코드 모듈과, 상기 소프트웨어 코드 모듈의 작성에 관련된 표준 플랫폼 식별 정보를 입력받고, 분석 머신을 이용해서, 상기 소프트웨어 코드 모듈의 위험 여부를 결정하여, 상기 소프트웨어 코드 모듈이 위험하다고 결정된 경우, 데이터베이스로부터 상기 소프트웨어 코드 모듈의 안전성 정보를 획득하는 단계 - 상기 안전성 정보는, 상기 표준 플랫폼 식별 정보에 기초하여 획득됨 -;
상기 소프트웨어 코드 모듈이 분류되는 카테고리 각각에 대해 카테고리 표지자 지수(category indicator index)를 산출하는 단계 - 상기 카테고리는 결함 회피(fault avoidance), 오류 검출(error detection), 오류 처리(error handling)를; 포함함 - 및
목표 신뢰성 지수를 입력받고, 각 카테고리 표지자 지수가 상기 목표 신뢰성 지수를 달성할 수 있게 하는 예상 안전 메카니즘 목록을 제공하는 단계 - 상기 카테고리 표지자 지수는
Figure 112019081538087-pat00011
따라 계산되고,
Ef : 조치가 필요한 안전 메카니즘의 노력 비용 합
Et : 전체 안전 메카니즘의 노력 비용 합
WRL : 위험 레벨 기준 가중치
WLOC : 코드량 기준 가중치 임 -
를 포함하는, 전장용 소프트웨어 코드 모듈의 안전성이 목표 신뢰성 지수를 만족하도록 시뮬레이션하는 방법.
A method of simulating a computer-implemented electronic software module based on a standard platform that satisfies a target reliability index.
When the software code module is determined to be dangerous by receiving the software code module and standard platform identification information related to the creation of the software code module, and determining whether the software code module is dangerous by using an analysis machine, Obtaining safety information of the software code module from the safety information is obtained based on the standard platform identification information;
Calculating a category indicator index for each category to which the software code module is classified, wherein the category includes fault avoidance, error detection, and error handling; Contains-and
Receiving a target reliability index and providing a list of expected safety mechanisms that allow each category marker index to achieve the target reliability index, wherein the category marker index is
Figure 112019081538087-pat00011
Are calculated according to
E f : Sum of effort costs of safety mechanisms requiring action
E t : Sum of effort costs of the entire safety mechanism
W RL : Risk Level Criteria Weight
W LOC : weight based on code amount-
A method of simulating such that the safety of the electronic software code module, including the target reliability index.
제1항에 있어서,
상기 카테고리 표지자 지수는 카테고리별 글로벌 지표, 노력 비용, 코드 크지, 코드 모듈의 위험 레벨을 기초로 산출되는, 전장용 소프트웨어 코드 모듈의 안전성이 목표 신뢰성 지수를 만족하도록 시뮬레이션하는 방법.
The method of claim 1,
Wherein the category marker index is calculated based on the global index for each category, the effort cost, the code size, and the risk level of the code module.
제1항에 있어서,
상기 데이터베이스는, 상기 표준 플랫폼 식별 정보를 SAFE(Safe Automotive soFtware archiTecture) ISO 26262에서 정의된 복수의 안전 메커니즘 중 하나의 안전 메커니즘에 맵핑하는 정보를 저장하고,
상기 데이터베이스는, 상기 맵핑된 하나의 안전 메커니즘에 대응하여 미리 정의된 하나 이상의 안전성 정보를 더 저장하는, 전장용 소프트웨어 코드 모듈의 안전성이 목표 신뢰성 지수를 만족하도록 시뮬레이션하는 방법.
The method of claim 1,
The database stores information for mapping the standard platform identification information to one of a plurality of safety mechanisms defined in Safe Automotive soFtware archiTecture (SAFE) ISO 26262,
And the database further stores one or more predefined safety information corresponding to the mapped one safety mechanism to ensure that the safety of the electronic software code module satisfies a target reliability index.
제3항에 있어서,
상기 맵핑된 하나의 안전 메커니즘에 대응하여 미리 정의된 하나 이상의 안전성 정보는 갱신 가능한, 전장용 소프트웨어 코드 모듈의 안전성이 목표 신뢰성 지수를 만족하도록 시뮬레이션하는 방법.
The method of claim 3,
At least one predefined safety information corresponding to the mapped one safety mechanism is updatable, such that the safety of the electronic software code module satisfies a target reliability index.
제3항에 있어서,
상기 맵핑된 하나의 안전 메커니즘에 대응하여 미리 정의된 하나 이상의 안전성 정보는, 결함보수의 우선순위, 구현 난이도, 및 투입 노력 시간 중 적어도 하나를 포함하는, 전장용 소프트웨어 코드 모듈의 안전성이 목표 신뢰성 지수를 만족하도록 시뮬레이션하는 방법.
The method of claim 3,
The one or more safety information predefined corresponding to the mapped one safety mechanism includes at least one of a priority of defect repair, difficulty of implementation, and input effort time. How to simulate to satisfy.
제5항에 있어서,
상기 결함보수의 우선순위 및 구현 난이도는 각각 소정의 복수의 레벨 중 각 하나의 레벨에 대응하는, 전장용 소프트웨어 코드 모듈의 안전성이 목표 신뢰성 지수를 만족하도록 시뮬레이션하는 방법.
The method of claim 5,
Wherein the priority of the defect repair and the difficulty of implementation correspond to each one of a plurality of predetermined levels, wherein the safety of the electronic software code module satisfies a target reliability index.
제3항에 있어서,
상기 SAFE ISO 26262에서 정의된 복수의 안전 메커니즘은 소정 수의 카테고리로 분류되고, 상기 맵핑된 하나의 안전 메커니즘은 상기 소정 수의 카테고리 중 하나의 카테고리에 속하는, 전장용 소프트웨어 코드 모듈의 안전성이 목표 신뢰성 지수를 만족하도록 시뮬레이션하는 방법.
The method of claim 3,
A plurality of safety mechanisms defined in SAFE ISO 26262 are classified into a predetermined number of categories, and the mapped one safety mechanism belongs to one category of the predetermined number of categories. How to simulate to satisfy the exponent.
제7항에 있어서,
상기 방법은
안전 메카니즘 집합을 계산한 결과 보고서를 작성하는 단계를 더 포함하고,
상기 결과 보고서는, 상기 맵핑된 하나의 안전 메커니즘의 명칭, 상기 맵핑된 하나의 안전 메커니즘에 관한 설명, 상기 맵핑된 하나의 안전 메커니즘의 상기 카테고리, 상기 맵핑된 하나의 안전 메커니즘의 결함보수의 우선순위, 상기 맵핑된 하나의 안전 메커니즘의 구현 난이도, 상기 맵핑된 하나의 안전 메커니즘의 투입 노력 시간 중 적어도 하나를 포함하는,전장용 소프트웨어 코드 모듈의 안전성이 목표 신뢰성 지수를 만족하도록 시뮬레이션하는 방법.
The method of claim 7, wherein
The method is
Generating a report of the calculation of the set of safety mechanisms;
The result report may include a name of the mapped one safety mechanism, a description of the mapped one safety mechanism, the category of the mapped one safety mechanism, and the priority of defect repair of the mapped one safety mechanism. And at least one of an implementation difficulty of the mapped one safety mechanism and an input effort time of the mapped one safety mechanism.
컴퓨터 장치로서, 제1항 내지 제8항 중 어느 한 항의 방법을 실행하도록 동작 가능한 컴퓨터 장치.A computer device, the computer device operable to carry out the method of claim 1. 하나 이상의 명령어가 저장된 컴퓨터 판독 가능한 저장 매체로서, 상기 하나 이상의 명령어는 컴퓨터에 의해 실행되는 경우, 컴퓨터로 하여금 제1항 내지 제8항 중 어느 한 항의 방법을 실행하게 하는, 컴퓨터 판독 가능한 저장 매체.A computer readable storage medium having stored thereon one or more instructions, wherein the one or more instructions, when executed by a computer, cause the computer to execute the method of any one of claims 1 to 8.
KR1020180032859A 2018-03-21 2018-03-21 Method and apparatus for simulating safety of automotive software to obtain a goal reliability index KR102066868B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180032859A KR102066868B1 (en) 2018-03-21 2018-03-21 Method and apparatus for simulating safety of automotive software to obtain a goal reliability index

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180032859A KR102066868B1 (en) 2018-03-21 2018-03-21 Method and apparatus for simulating safety of automotive software to obtain a goal reliability index

Publications (2)

Publication Number Publication Date
KR20190110871A KR20190110871A (en) 2019-10-01
KR102066868B1 true KR102066868B1 (en) 2020-01-16

Family

ID=68207980

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180032859A KR102066868B1 (en) 2018-03-21 2018-03-21 Method and apparatus for simulating safety of automotive software to obtain a goal reliability index

Country Status (1)

Country Link
KR (1) KR102066868B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102229808B1 (en) 2020-11-27 2021-03-19 주식회사 휴먼씨엔씨 Battlefield function conceptual-model-of-mission-space interrelated information provision system in modeling and simulation system, and method thereof

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111274146B (en) * 2020-01-20 2023-05-16 北京百度网讯科技有限公司 Code measurement method, device, electronic equipment and medium
CN116048049B (en) * 2023-01-18 2024-05-14 重庆长安汽车股份有限公司 Diagnostic optimization method, device, equipment and medium for automobile ECU software system

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101432712B1 (en) 2013-03-05 2014-08-25 충북대학교 산학협력단 Methods of code refactoring for software safety
US20180074939A1 (en) 2016-09-13 2018-03-15 Suresoft Technologies Inc. Method for correcting violation of source code and computer readable recording medium having program performing the same

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102461180B1 (en) * 2016-06-13 2022-11-01 (주)씽크포비엘 Method and apparatus for analyzing safety of software
KR102426581B1 (en) * 2016-06-13 2022-07-29 (주)씽크포비엘 Method and apparatus for analyzing safety of automotive software
KR101834247B1 (en) * 2016-08-02 2018-03-06 (주)씽크포비엘 Method and apparatus for analyzing safety of automotive software

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101432712B1 (en) 2013-03-05 2014-08-25 충북대학교 산학협력단 Methods of code refactoring for software safety
US20180074939A1 (en) 2016-09-13 2018-03-15 Suresoft Technologies Inc. Method for correcting violation of source code and computer readable recording medium having program performing the same

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102229808B1 (en) 2020-11-27 2021-03-19 주식회사 휴먼씨엔씨 Battlefield function conceptual-model-of-mission-space interrelated information provision system in modeling and simulation system, and method thereof

Also Published As

Publication number Publication date
KR20190110871A (en) 2019-10-01

Similar Documents

Publication Publication Date Title
US20210064518A1 (en) Methods Circuits Devices Systems and Functionally Associated Machine Executable Code For Automatic Failure Cause Identification in Software Code Testing
EP3156862B1 (en) Methods and apparatus for the creation and use of reusable fault model components in fault modeling and complex system prognostics
RU2586767C2 (en) System and method of providing diagnostic information on failure
US20140033174A1 (en) Software bug predicting
KR102066868B1 (en) Method and apparatus for simulating safety of automotive software to obtain a goal reliability index
JP6501982B2 (en) Failure risk index estimation device and failure risk index estimation method
US20200026590A1 (en) Component failure prediction
US7451051B2 (en) Method and system to develop a process improvement methodology
EP3059676B1 (en) A method and apparatus for analyzing the availability of a system, in particular of a safety critical system
CN112598223B (en) Nuclear power state guiding method accident regulation completeness checking method, system, electronic equipment and storage medium
US10094740B2 (en) Non-regression method of a tool for designing a monitoring system of an aircraft engine
EP3509019A1 (en) Software product development defect and issue prediction and diagnosis
CN114444608A (en) Data set quality evaluation method and device, electronic equipment and storage medium
KR101834247B1 (en) Method and apparatus for analyzing safety of automotive software
CN115952081A (en) Software testing method, device, storage medium and equipment
CN115496319A (en) Personnel behavior reliability assessment method and device for digital main control room of nuclear power plant
KR102461180B1 (en) Method and apparatus for analyzing safety of software
US8831901B2 (en) Methods systems and apparatus for ranking tests used to identify faults in a system
KR102426581B1 (en) Method and apparatus for analyzing safety of automotive software
KR101675986B1 (en) Method and apparatus for analyzing safety of automotive software
KR101403685B1 (en) System and method for relating between failed component and performance criteria of manintenance rule by using component database of functional importance determination of nuclear power plant
KR101736230B1 (en) System and method for quantifying the fault detection rate
CN115140075A (en) Quantitative evaluation method, device, equipment and medium for safety of expected function of vehicle
CN110008098B (en) Method and device for evaluating operation condition of nodes in business process
KR101734872B1 (en) Method and apparatus for analyzing safety of software

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right