KR102558933B1 - Method and device for systematic test case creation for Korean requirements including time conditions - Google Patents
Method and device for systematic test case creation for Korean requirements including time conditions Download PDFInfo
- Publication number
- KR102558933B1 KR102558933B1 KR1020220104119A KR20220104119A KR102558933B1 KR 102558933 B1 KR102558933 B1 KR 102558933B1 KR 1020220104119 A KR1020220104119 A KR 1020220104119A KR 20220104119 A KR20220104119 A KR 20220104119A KR 102558933 B1 KR102558933 B1 KR 102558933B1
- Authority
- KR
- South Korea
- Prior art keywords
- information
- sentence
- time
- test case
- unit
- Prior art date
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 169
- 238000000034 method Methods 0.000 title claims abstract description 54
- 230000009897 systematic effect Effects 0.000 title claims abstract description 18
- 230000014509 gene expression Effects 0.000 claims description 30
- 239000000284 extract Substances 0.000 claims description 6
- 238000000605 extraction Methods 0.000 claims description 5
- 239000003607 modifier Substances 0.000 claims description 3
- 230000008569 process Effects 0.000 abstract description 4
- 238000007689 inspection Methods 0.000 description 11
- 230000009471 action Effects 0.000 description 8
- 238000004422 calculation algorithm Methods 0.000 description 8
- 230000008901 benefit Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 238000013515 script Methods 0.000 description 4
- 238000007796 conventional method Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 238000013142 basic testing Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000009885 systemic effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
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/3676—Test management for coverage analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Computer Hardware Design (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Debugging And Monitoring (AREA)
Abstract
Description
본 발명은 체계적 테스트 케이스 생성 방법에 관한 것으로, 더욱 상세하게는 한글로 기술된 시간 조건을 포함한 요구사항을 위한 체계적 테스트 케이스 생성방법 및 장치에 관한 것이다.The present invention relates to a systematic test case generation method, and more particularly, to a systematic test case generation method and apparatus for requirements including time conditions described in Korean.
일반적으로, 소프트웨어 혹은 임베디드 시스템은 요구사항(Requirements)을 기반으로 만들어진다. 요구사항은 어떤 시스템이 가져야 하는 기능 및 형상을 말한다. 따라서 구현된 시스템은 그 요구사항을 반드시 만족해야 하며, 만족 여부를 검사를 해야한다.Generally, software or embedded systems are created based on requirements. Requirements refer to the functions and configurations that a system must have. Therefore, the implemented system must satisfy the requirements, and it must be checked whether or not they are satisfied.
개발된 시스템을 테스트하기 위해 사용하는 테스트 기법에는 시스템 내부 코드를 기반으로 하는 화이트박스(White Box)와, 시스템의 외부 기능을 중점적으로 테스트하는 블랙박스(Black Box) 기법이 있다.Test techniques used to test the developed system include the white box technique based on the internal code of the system and the black box technique that focuses on testing the external functions of the system.
화이트박스 테스트 케이스는 소스 코드 수준에서 코딩 규칙이나 코드의 실행 오류(Run time error) 등을 파악하기 위해 개발 단계에서 많이 사용한다. 하지만, 소스 코드를 획득하기 어렵거나 하드웨어에 내장되어 시스템의 동작 오류를 검증하는데 사용하기는 어렵다. 또한, 구현된 소프트웨어가 요구사항에 맞게 동작하는지 등을 검증하기 위해서는 추가적인 정보가 필요하다.White box test cases are often used in the development stage to identify coding rules or run time errors at the source code level. However, it is difficult to obtain the source code or it is difficult to use it to verify system operation errors as it is embedded in hardware. In addition, additional information is required to verify whether the implemented software operates in accordance with requirements.
블랙박스 테스트 케이스는 소스 코드가 아니라 완성된 시스템이 요구사항 또는 소프트웨어 요구사항 명세서와 일치하는지를 테스트하는데 사용된다. 블랙박스 테스트를 위한 요구사항은 하드웨어 요구사항, 기능 요구사항 그리고 신뢰성 요구사항 등 종류가 다양하며 일반적으로 자연어(Natural Language)로 기술한다. 블랙박스 테스트 케이스 생성 방법으로는 임의(Random) 생성 방법, 시스템 입력 조합(Combinatorial)을 이용하는 생성 방법 및 모델 기반(Model-based) 생성 방법 등이 있다.Black box test cases are used to test whether the complete system, not the source code, conforms to requirements or software requirements specifications. There are various types of requirements for black box testing, such as hardware requirements, functional requirements, and reliability requirements, and are generally described in natural language. Black box test case generation methods include a random generation method, a generation method using a combinatorial system input method, and a model-based generation method.
요구사항 만족 여부는 구현된 시스템에 다양한 입력을 가하고, 가해진 입력들에 따라 생성한 출력들이 요구사항을 만족하는지를 검사하여 판별한다. 이때, 사용하는 테스트 입력 및 조건(즉, 테스트 케이스)을 생성하는 작업은 매우 중요하고 어려운 작업이다.Whether or not the requirements are satisfied is determined by applying various inputs to the implemented system and examining whether or not the outputs generated according to the applied inputs satisfy the requirements. At this time, creating test inputs and conditions (ie, test cases) to be used is a very important and difficult task.
테스트 케이스를 만드는 방법은 크게 요구사항 분석을 통하여 테스트 엔지니어가 경험 기반으로 생성하는 방법과, 알고리즘에 의해 체계적 방법(컴퓨터를 이용한 자동화 방법)으로 생성하는 방법이 있다. 경험 기반 생성 방안은 특별한 도구나 제약이 없고, 복잡한 테스트 케이스를 만들 수 있다는 장점이 있는 반면, 사람이 생각하지 못한 테스트 케이스를 생성하지 못한다거나, 단순하고 생성하기 쉽지만 필요한 테스트 케이스를 생성하는데 많은 지루한 노력이 필요하며, 사람의 실수로 생성하지 못하는 경우도 발생할 수 있다는 단점이 있다.There are two ways to create a test case: a test engineer's experience-based method through requirements analysis, and a systematic method (automation method using a computer) by an algorithm. While the experience-based generation method has the advantage of being able to create complex test cases without special tools or restrictions, it has the disadvantage that it cannot create test cases that people have not thought of, or that it requires a lot of tedious effort to create necessary test cases even though it is simple and easy to create, and that it may not be created due to human error.
체계적 테스트 케이스 생성 방법은 알고리즘에 의해 테스트 케이스를 생성하므로, 경험 기반 테스트 케이스 생성 방법의 단점을 보완해 줄 수 있다. 두 방법의 장단점으로 고려해 많은 산업 현장에서는 두 방법으로 생성된 테스트 케이스를 병행해서 사용한다.Since the systematic test case generation method generates test cases by algorithm, it can compensate for the disadvantages of the experience-based test case generation method. Considering the advantages and disadvantages of both methods, many industrial sites use test cases generated by both methods in parallel.
또한, 테스트 케이스의 품질은 커버리지에 의해서 결정된다. 테스트 케이스를 자동으로 생성하는 것만이 중요한 것이 아니라 어떠한 커버리지를 만족하는 테스트 케이스를 생성하는가 중요한 문제이다. 전기, 전자 및 프로그램 가능한 전자 안전 관련 시스템의 기능 안전성에 대해 정의한 IEC 61508 표준에서 결정 커버리지, 조건 커버리지(Condition coverage), 수정된 조건 결정 커버리지(Modified Condition/Decision Coverage; (MC/DC) 등 여러 수준의 테스트 커버리지를 만족할 것을 권고하고 있다.Also, the quality of test cases is determined by coverage. It is important not only to automatically generate test cases, but also to create test cases that satisfy what kind of coverage. In the IEC 61508 standard, which defines the functional safety of electrical, electronic and programmable electronic safety-related systems, it is recommended to satisfy several levels of test coverage, such as decision coverage, condition coverage, and modified condition/decision coverage (MC/DC).
특허문헌 1과 특허문헌 2등과 같은 종래의 테스트 케이스 생성 기술들은 요구사항에 따라서는 입력 조건에 시간 조건은 포함하지 않는 경우가 대부분이다. 예를 들면, “출입문이 닫히면, 제어부는 출입 등을 켠다.”에서는 동작 조건만 있고 시간 조건은 없다. 시간 조건이 없는 요구사항에 대한 체계적 테스트 케이스 생성 방법은 결정 커버리지(Decision Coverage), 조건 커버리지(Condition Coverage) 및 변형된 조건 결정 커버리지 (MCDC:Modified Condition Decision Coverage)를 만족하는 다양한 테스트 케이스 생성 방법들이 제안되어 있다. 하지만, 종래의 특허문헌들에서는 시간 조건을 고려한 테스트 케이스 생성 방법이 제안되어 있지 않다.Conventional test case generation techniques such as Patent Document 1 and Patent Document 2 do not include time conditions in input conditions in most cases depending on requirements. For example, in “When the door is closed, the control unit turns on the access light”, there is only an operating condition and no time condition. As for systematic test case generation methods for requirements without time conditions, various test case generation methods that satisfy decision coverage, condition coverage, and modified condition decision coverage (MCDC) have been proposed. However, conventional patent documents do not suggest a test case generation method considering time conditions.
또한, 비특허문헌 1과 같이 몇몇 논문에서 특정 분야 사용자의 용도를 맞게 정해진 형식의 한글 'user case'를 파싱(pasring)하여 테스트 케이스를 생성하는 방법을 제시하고 있다. 그런데 이들 제안에서는 한글 요구사항이 정해진 간단한 'user case'이다. 따라서 하나의 이상의 단 문장으로 된 제대로 된 요구사항을 대상으로 하지 않아, parsing이나 전처리 및 테스트 케이스 생성이 완전한 일반 문장으로 된 한글 요구사항을 처리할 수 없고, 더욱이 시간 조건은 전혀 고려되지 않는 테스트 케이스를 생성하는 문제점이 있다.In addition, several papers, such as Non-Patent Document 1, suggest a method of generating a test case by parsing a Korean 'user case' in a format determined to suit the purpose of a user in a specific field. However, in these proposals, it is a simple 'user case' in which Hangeul requirements are set. Therefore, since it does not target proper requirements with one or more single sentences, parsing, preprocessing, and test case generation cannot process Korean requirements with complete general sentences, and furthermore, there is a problem of generating test cases that do not consider time conditions at all.
본 발명은 상기와 같은 문제점을 해결하기 위해 제안된 것으로, 본 발명이 해결하고 자 하는 과제는 한글로 기술된 시간 조건을 포함한 요구사항을 위한 체계적 테스트 케이스 생성 방법 및 장치를 제공하는 것이다.The present invention has been proposed to solve the above problems, and the problem to be solved by the present invention is to provide a systematic test case generation method and apparatus for requirements including time conditions described in Korean.
본 발명의 실시예에서는 시간 조건을 포함한 한글 요구사항으로부터 테스트 케이스를 체계적으로 생성하는 테스트 케이스 생성 방법을 개시한다.In an embodiment of the present invention, a test case generation method for systematically generating test cases from Korean language requirements including time conditions is disclosed.
개시된 시간 조건을 포함한 한글 요구사항을 위한 테스트 케이스 생성 방법은, 한글 요구사항을 입력받아 파싱을 통해 문장요소를 파악하는 제1단계와, 하나의 한글 요구사항 문장을 복수의 단위 문장으로 분리하는 제2단계와, 각 단위 문장에서 생략된 문장요소를 복원하는 제3단계와, 각 단위 문장별로 동작 조건 정보와 시간 조건 정보를 추출하고, 한글 단어를 변수명으로 치환하는 제4단계와, 상기 동작 조건 정보에서 테스트 케이스 생성 정보를 추출하고, 시간 조건 정보에서 시간 정보를 생성하는 제5단계와, 각 단위 문장들에 대해 상기 제4단계와 제5단계를 반복하여 각 단위 문장들의 테스트 케이스 생성 정보와 시간 정보를 결합하는 제6 단계와, 결합한 각 단위 문장의 테스트 케이스 생성 정보와 시간 정보로부터 테스트 케이스 생성 전략에 따라 하나의 한글 요구사항 문장에 대해 테스트 케이스를 생성하는 제 7 단계를 포함한다.The test case generation method for Hangul requirements including the disclosed time conditions includes the first step of receiving Hangul requirements and identifying sentence elements through parsing, the second step of separating one Hangul requirement sentence into a plurality of unit sentences, the third step of restoring sentence elements omitted from each unit sentence, the fourth step of extracting operation condition information and time condition information for each unit sentence, and replacing Korean words with variable names, extracting test case generation information from the operation condition information, and generating time information from the time condition information Step 5, Step 4 and Step 5 are repeated for each unit sentence to combine the test case generation information and time information of each unit sentence, and Step 7 of generating a test case for one Korean requirement sentence from the combined test case generation information and time information of each unit sentence according to the test case generation strategy.
상기 단위 문장은 단문장이고, 절이나 수식절은 단문장으로 분리하나 구는 단문장으로 분리하지 않는 것이고, 상기 제5단계의 시간 조건 정보는 동작 시점과 시간으로 구분되고, 상기 동작 시점은 제1 특수용어로 표현되며, 상기 시간은 제 2 특수용어로 표현되는 것이다.The unit sentence is a single sentence, clauses or modifiers are separated into single sentences, but phrases are not separated into single sentences, and the time condition information of the fifth step is divided into an operation time point and time, and the operation time point is expressed in a first special term, and the time is expressed in a second special term.
본 발명의 다른 실시예에서는 시간 조건을 포함한 한글 요구사항으로부터 테스트 케이스를 체계적으로 생성하는 테스트 케이스 생성 장치를 개시한다.Another embodiment of the present invention discloses a test case generation device that systematically generates test cases from Korean language requirements including time conditions.
개시된 시간 조건을 포함한 한글 요구사항을 위한 테스트 케이스 생성 장치는, 한글 요구사항을 입력받아 파싱을 통해 문장요소를 파악하는 한글 파싱부와, 하나의 한글 요구사항 문장을 복수의 단위 문장으로 분리하는 단위 문장 분리부와,각 단위 문장에서 생략된 문장요소를 복원하는 단위 문장 복원부와, 각 단위 문장별로 동작 조건 정보와 시간 조건 정보를 추출하고, 한글 단어를 변수명으로 치환하는 조건 추출부와, 상기 조건 추출부의 동작 조건 정보에서 테스트 케이스 생성 정보를 추출하고, 시간 조건 정보에서 시간 정보를 생성하는 정보 생성부와, 상기 정보 생성부의 각 단위 문장들의 테스트 케이스 생성 정보와 시간 정보를 결합하는 문장 정보 결합부와, 결합한 각 단위 문장의 테스트 케이스 생성 정보와 시간 정보로부터 하나의 한글 요구사항 문장에 대해 테스트 케이스를 생성하는 테스트 케이스 생성부를 포함한다.The test case generation device for Hangul requirements including the disclosed time conditions includes a Hangul parsing unit that receives the Hangul requirements and identifies sentence elements through parsing, a unit sentence separation unit that separates one Hangul requirement sentence into a plurality of unit sentences, a unit sentence restoration unit that restores sentence elements omitted from each unit sentence, a condition extraction unit that extracts operation condition information and time condition information for each unit sentence, and replaces Korean words with variable names, and extracts test case generation information from the operation condition information of the condition extraction unit, and time condition information. An information generator that generates time information, a sentence information combiner that combines the test case generation information and time information of each unit sentence of the information generator, and a test case generator that generates a test case for one Korean requirement sentence from the test case generation information and time information of each unit sentence combined.
상기 정보 생성부의 테스트 케이스 생성 정보는 한글 단어의 치환된 변수명에 소정의 값을 부여하는 표현으로 생성하는 것이고, 시간 정보는 동작 시점과 시간을 특수용어에 시간 값을 부여하는 표현으로 생성하는 것이다.The test case generation information of the information generating unit is generated as an expression in which a predetermined value is assigned to a variable name substituted for a Korean word, and the time information is generated in an expression in which a time value is assigned to a special term for the operation time and time.
본 발명의 실시예에 따르면, 완전한 일반 문장으로 된 한글 요구사항을 처리할 수 있고, 특히 시간 조건이 고려된 테스트 케이스를 생성할 수 있는 효과가 있다.According to the embodiment of the present invention, it is possible to process Korean language requirements in complete general sentences, and in particular, to generate test cases considering time conditions.
또한, 본 발명의 실시예에 따라 시간 조건이 고려된 테스트 케이스를 이용하여 시스템을 검사할 경우, 시간 정보가 명시되어 있기 때문에 자동화에 의한 실시간 검사가 가능하고, 다른 입력 변수와 같이 시간 조건도 요구사항 조건의 변이 조건을 적용할 수 있어 다양한 시간에 검사가 가능한 장점도 있다. 그리고 시간 조건이 고려된 테스트 케이스를 로그를 남겨 검사할 경우에도 검사 시간이 명시되어 해당 시간에만 로그를 남기면 되므로 로그를 위한 저장공간의 절약과 사람이 분석해야 하는 노력이 획기적으로 줄어들 수 있다. In addition, when a system is inspected using a test case in which time conditions are considered according to an embodiment of the present invention, real-time inspection by automation is possible because time information is specified, and, like other input variables, a variation condition of a requirement condition can be applied to a time condition, so there is an advantage that inspection is possible at various times. In addition, even if the test case considering the time condition is checked by leaving a log, the test time is specified and only the log is left at that time, so the saving of storage space for the log and the effort of human analysis can be drastically reduced.
도 1은 본 발명이 적용될 수 있는 전형적인 테스트 케이스 및 스크립트 생성 흐름을 도시한 개략도,
도 2는 본 발명의 실시예에 따른 시간 조건을 포함한 한글 요구사항을 위한 체계적 테스트 케이스 생성 방법을 도시한 순서도,
도 3은 본 발명의 실시예에 따른 시간 조건을 포함한 한글 요구사항을 위한 체계적 테스트 케이스 생성 장치를 도시한 구성 블럭도이다.1 is a schematic diagram showing a typical test case and script generation flow to which the present invention can be applied;
2 is a flowchart illustrating a systematic test case generation method for Korean language requirements including time conditions according to an embodiment of the present invention;
3 is a block diagram showing a systematic test case generation device for Korean language requirements including time conditions according to an embodiment of the present invention.
본 발명과 본 발명의 실시에 의해 달성되는 기술적 과제는 다음에서 설명하는 본 발명의 바람직한 실시예들에 의하여 보다 명확해질 것이다. 다음의 실시예들은 단지 본 발명을 설명하기 위하여 예시된 것에 불과하며, 본 발명의 범위를 제한하기 위한 것은 아니다.The technical problems achieved by the present invention and its practice will become clearer with the preferred embodiments of the present invention described below. The following examples are merely illustrative of the present invention, and are not intended to limit the scope of the present invention.
도 1은 본 발명이 적용될 수 있는 전형적인 테스트 케이스 및 스크립트 생성 흐름을 도시한 개략도이다. 이러한 흐름은 소프트웨어로 구현되어 컴퓨터 시스템(10)에서 실행되는 방식으로 구현될 수 있다.1 is a schematic diagram showing a typical test case and script generation flow to which the present invention can be applied. This flow may be implemented in a manner that is implemented in software and executed in the computer system 10 .
일반적으로, 테스트 기준은 요구사항이고, 요구사항은 자연어로 작성되어 있다. 본 발명의 실시예에서는 자연어가 한글인 경우로서, 한글로 작성된 요구사항은 자연어의 특성 상 모호함과 복잡성이 존재하여 해석의 오류를 가져올 수 있다.Typically, test criteria are requirements, and requirements are written in natural language. In the embodiment of the present invention, when the natural language is Korean, requirements written in Korean may cause errors in interpretation due to the presence of ambiguity and complexity due to the nature of natural language.
도 1을 참조하면, 한글로 작성된 요구사항(11)이 입력되면, 모호성을 최소화하고 요구사항을 체계적으로 작성하기 위하여 요구사항 작성에 사용된 단어나 문장구조를 제한하여 정형화된 요구사항(12)을 작성한다. 본 발명의 실시예에서는 시간 조건이 포함된 한글 요구사항으로부터 테스트 케이스를 체계적으로 생성하기 위한 표현 규칙을 나중에 자세히 설명하는 바와 같이 특수용어와 연산식 등으로 정의한다.Referring to FIG. 1, when a requirement 11 written in Korean is input, a standardized requirement 12 is prepared by limiting the words or sentence structure used to write the requirements in order to minimize ambiguity and systematically write the requirements. In the embodiment of the present invention, expression rules for systematically generating test cases from Korean language requirements including time conditions are defined as special terms and arithmetic expressions, as will be described in detail later.
이어 정형화된 요구사항에 대해 요구사항 검사기(13)를 통과시켜 요구사항이 규칙과 등록된 단어를 기반으로 정확히 작성되었는지를 검사한다.Next, the standardized requirements are passed through the requirements checker 13 to check whether the requirements are accurately written based on rules and registered words.
요구사항 검사기(13)를 통과한 정형화된 요구사항으로부터 테스트 케이스 생성에 필요한 정보를 추출하여 요구사항 데이터(14)를 구축한다. 이때, 데이터에 사용된 입/출력 정보(14a) 즉, 입/출력 명, 신호명, 유효 범위, 데이터 타입 등이 필요하다.Requirements data 14 is constructed by extracting information necessary for test case generation from standardized requirements that have passed through the requirements checker 13. At this time, input/output information 14a used for the data, that is, input/output name, signal name, effective range, data type, and the like are required.
요구사항으로부터 추출된 데이터와 데이터에 사용된 입/출력정보로부터 테스트 케이스를 구축할 수 있는 정보 구축에 테스트 전략을 적용하여 테스트 케이스를 생성(15)한다. 테스트 전략으로는 결정 커버리지, 조건 커버리지, 수정된 조건 결정 커버리지 등이 있다.A test case is created (15) by applying a test strategy to information construction that can build a test case from data extracted from requirements and input/output information used in the data. Test strategies include decision coverage, condition coverage, and modified condition decision coverage.
그리고 생성한 테스트 케이스를 테스트 대상 시스템에 입력으로 들어가는 물리적인 값인 테스트 스크립트(16)로 변환한다. Then, the created test case is converted into a test script (16), which is a physical value entered into the test target system as an input.
도 2는 본 발명의 실시예에 따른 시간 조건을 포함한 한글 요구사항을 위한 체계적 테스트 케이스 생성 방법을 도시한 순서도이다.2 is a flowchart illustrating a systematic test case generation method for Korean language requirements including time conditions according to an embodiment of the present invention.
먼저, 본 발명의 실시예에 사용되는 '시간 조건'과, 한글 요구사항에서 '시간 조건을 표현하는 방법'에 대해 설명하기로 한다.First, the 'time condition' used in the embodiment of the present invention and the 'method of expressing the time condition' in the Korean language requirements will be described.
[시간 조건][time condition]
요구사항이 기능을 설명하기 위해서 시스템에 어떤 입력이나 사건이 발생했을 때, 그 시스템이 행하는 적절한 동작을 기술한다. 요구사항을 구현한 시스템이 요구사항을 만족하는지를 알기 위해서는 그 시스템에 입력을 가하고, 그 시스템이 적절한 동작하는지(출력)를 검사해야 한다. 이때 가해지는 입력이 시간적인 제약 조건을 가지는 경우가 있다. 예를 들면, "출입문이 닫힌 후 5초 후, 제어부는 출입 등을 켠다."라는 요구사항에서 입력 조건은 "출입문이 닫고 5초 후"이다, 이 입력 조건을 만족할 때, 시스템에서 "제어부는 출입 등을 켠다."라는 출력이 발생할 경우 이 시스템은 적절히 동작한다고 판단한다.In order to describe the function of a requirement, it describes the appropriate action taken by the system when a certain input or event occurs in the system. In order to know whether the system that implements the requirements satisfies the requirements, it is necessary to apply inputs to the system and check whether the system operates properly (output). In some cases, the input applied at this time has a time constraint. For example, in the requirement “5 seconds after the door is closed, the control unit turns on the access light”, the input condition is “5 seconds after the door is closed”.
위 예의 입력 조건은 "출입문이 닫히다"라는 '동작 조건'과, "닫힌 후 5초 후"라는 '시간 조건'으로 구성되어 있다. 요구사항에 따라서는 입력 조건에 시간 조건을 포함하지 않는 경우도 있다. 앞서 살펴본, "출입문이 닫히면, 제어부는 출입 등을 켠다."에서는 동작 조건만 있고 시간 조건은 없다.The input condition in the above example consists of an 'action condition' such as "the door is closed" and a 'time condition' such as "5 seconds after closing". Depending on the requirements, time conditions may not be included in the input conditions. In the case of "when the door is closed, the control unit turns on the access light", there is only an operating condition and no time condition.
[시간 조건 표현방법][How to express time condition]
본 발명의 실시예에서는 시간 조건을 포함한 한글 요구사항 표현 방법을 다음과 같이 정의한다.In an embodiment of the present invention, the Korean language requirement expression method including the time condition is defined as follows.
요구사항 표현은 단위 문장으로 표현하는데, 본 발명의 실시예에서 단위 문장(단문장)은 단문 단위로 표현된다. 따라서 하나의 한글 요구사항 문장을 하나 이상의 단문장으로 구성된 단 문장 단위로 분리한 후, 각 단 문장 별로 시간 조건을 표현한다. 그리고 단 문장 표현들을 합쳐서 해당 요구사항의 표현을 완성한다. 수식문도 하나의 단문장으로 분류된다. 예를 들어, "제어부는 센서가 보낸 정보를 수신하면, 중앙부가 신호등을 켠다."라는 하나의 한글 요구사항 문장은 "제어부는 정보를 수신하면", "센서가 보낸", 그리고 "중앙부가 신호등을 켠다"의 3개의 단문장(단위 문장)으로 구성되어 있다.The expression of requirements is expressed in unit sentences. In the embodiment of the present invention, unit sentences (single sentences) are expressed in units of short sentences. Therefore, after separating one Hangul requirement sentence into single sentence units composed of one or more single sentences, the time condition is expressed for each single sentence. Then, the expression of the requirement is completed by combining single sentence expressions. Modified sentences are also classified as single sentences. For example, a single Korean requirement sentence, “When the control unit receives information sent by the sensor, the central unit turns on the traffic light.” is composed of three single sentences (unit sentences): “When the control unit receives the information,” “Sensor sends,” and “The central unit turns on the traffic light.”
또한, 한글 요구사항에 포함되는 시간 조건은 "~전", "~후" 그리고 "~시작하면"과 같이 '어떤 동작이 행해지는 시점'을 나타내는 경우(이하 '동작 시점'이라 함)와, "~ 몇 초 전", "몇 분 ~ 몇 분 사이" 혹은 "~ 초 내"와 같이 '시간을 포함'하는 경우(이하 '시간포함 요구사항'이라 함)가 있다. 이와 같이 한글 요구사항이 포함하는 시간 조건은 "~전", "~하기 시작하면", "~후" 등으로 충분하고, 다른 표현 예컨대, "~하기 종료하면"은 "~후"로 표현할 수 있고, "~내"는 "~전"으로 표현할 수 있다. 또 다른 시간 조건은 "4초~8초 이내", "4초 후 8초 전" 등이 있다.In addition, the time conditions included in the Hangul requirements include cases indicating 'the point at which an action is performed', such as "before", "after", and "when it starts" (hereinafter referred to as 'action time'), and cases in which 'time is included', such as "~ a few seconds ago", "between a few minutes to several minutes", or "within ~ seconds" (hereinafter referred to as 'requirements including time'). In this way, the time condition included in the Hangul requirement is sufficient as "before", "when it starts", "after", etc., and other expressions, for example, "when it ends" can be expressed as "after", and "within" can be expressed as "before". Other time conditions include "within 4 seconds to 8 seconds", "4 seconds later and 8 seconds ago", and the like.
시간 조건을 포함하는 한글 요구사항에서 '동작 시점'을 표현하는 방법은 다음과 같다.The way to express 'action point' in Korean requirements including time conditions is as follows.
본 발명의 실시예에서 동작 시점을 표현하기 위해서 시점을 나타내는 특수용어(제1 특수용어)와 그 용어의 값을 다음 표 1과 같이 정의한다. 그리고 요구사항 연산식에서는 동작과 특수용어 식을 "AND(&&)" 연산으로 표현하고, 요구사항에서 시간순으로 먼저 발생하는 조건을 먼저 표현한다. 이런 순차적 표현은, 연산식과 요구사항을 일치시켜 연산식 표현의 오류를 줄일 수 있을 뿐만 아니라, 본 발명의 실시예에서 제안하는 테스트 케이스 생성 방법을 사용할 수 있게 한다.In the embodiment of the present invention, a special term (first special term) representing a point of view and a value of the term are defined as shown in Table 1 below to express an operation point of view. And in the requirement operation expression, the action and special term expression are expressed as "AND (&&)" operation, and the condition that occurs first in the chronological order in the requirement is expressed first. Such a sequential expression not only reduces errors in formula expression by matching the expression with requirements, but also allows the use of the test case generation method proposed in the embodiment of the present invention.
또한, 본 발명의 실시예에서 한글 요구사항에 사용되는 한글 단어의 변수명을 다음 표 2와 같이 정의한다. 표 2는 하나의 예에 불과하고, 변수명은 사용되는 한글 단어에 따라 다양한 방식으로 정의될 수 있다.In addition, in the embodiment of the present invention, the variable names of Hangul words used in Hangul requirements are defined as shown in Table 2 below. Table 2 is just one example, and variable names may be defined in various ways depending on the Korean word used.
이와 같은 정의에 따라 한글 요구사항에서 다음의 예들은 다음 표 3과 같이 표현될 수 있다.According to this definition, the following examples in Hangul requirements can be expressed as Table 3 below.
상기 표 3에서 순번 1 ~ 순번 4는 시점을 나타내는 제1 특수용어로 "tense"를 사용하고, 시점의 값을 "전"은 "tense==1", "후"는 "tense==2", "시작하면"은 "tense==3"을 사용하여 표현한다. 이때, 한글 단어들이 해당하는 영어 변수명으로 변경되었다고 가정하며, 이 변경 작업은 공지의 간단한 프로그램으로 가능하다.In Table 3, sequence number 1 to sequence number 4 use "tense" as the first special term indicating the time point, and the value of the time point is expressed using "tense==1" for "before", "tense==2" for "after", and "tense==3" for "start". At this time, it is assumed that the Korean words are changed to corresponding English variable names, and this change operation is possible with a known simple program.
다음으로, 시간 조건을 포함하는 한글 요구사항에서 '시간포함 한글 요구사항'을 표현하는 방법은 다음과 같다.Next, the method of expressing 'Hangul requirements including time' in Korean requirements including time conditions is as follows.
본 발명의 실시예에서 요구사항이 시간을 포함하는 경우, 검사 시 해당하는 시간을 충족하면서 검사를 실시해야 한다. 이를 위해서 본 발명의 실시예에서는 시스템을 검사하기 위해서 시간 표현 수단으로서 제2 특수용어, "타이머(timer)"를 사용하고, 해당 테스트 케이스로 검사를 시작하려는 시점에 "타이머(timer)"를 작동시켜야 한다.In the embodiment of the present invention, if the requirements include time, the inspection must be performed while meeting the corresponding time. To this end, in the embodiment of the present invention, the second special term "timer" is used as a time expression means to test the system, and the "timer" must be operated at the time of starting the test with the corresponding test case.
본 발명의 실시예에 따른 요구사항 연산식에서는 동작과 timer 연산식을 AND (&&) 연산으로 표현한다. 또한, 본 발명의 실시예에서 timer 연산식은 다음 표 4와 같이 정의한다.In the requirements calculation formula according to the embodiment of the present invention, the operation and timer calculation expressions are expressed as AND (&&) operation. In addition, in the embodiment of the present invention, the timer operation expression is defined as shown in Table 4 below.
a ~ bAfter (hour a) Before (hour b)
a to b
상기 표 4와 같이, "~후"는 ">"로, "~이후"는 "≥"로, "~전(내)"은 "<", "~이전(이내)"은 "≤"으로 표현한다. "a 후 b 전" 이나 "a ~ b" 표현은 "(timer>a) && (timer<b)"로 표현한다.As shown in Table 4, "after" is represented by ">", "after" is represented by "≥", "before (within)" is represented by "<", and "before (within)" is represented by "≤". The expression "after a and before b" or "a ~ b" is expressed as "(timer>a) && (timer<b)".
이와 같은 정의에 따라 한글 요구사항에서 다음의 예들은 다음 표 5와 같이 표현될 수 있다.According to this definition, the following examples in Hangul requirements can be expressed as Table 5 below.
상기 표 5의 순서 5 ~ 순서 9에서는 시간을 포함하는 요구사항 표현 예를 보여준다. 상기 표 5의 예에서 timer 값은 "초"로 가정한다. Steps 5 to 9 of Table 5 show examples of expression of requirements including time. In the example of Table 5 above, it is assumed that the timer value is “seconds”.
한편, 가장 기초적인 테스트 전략인 "적합성 테스트(conformance testing)"에서는 요구사항에 명시된 조건만 검사한다. 예를 들면, "출입문이 닫은 후, 제어부가 출입 등을 켠다"라는 요구사항을 검사하기 위해서 "적합성 테스트(conformance testing)"에서는 "출입문이 닫힌 후 제어부가 출입 등을 켜는지"를 확인하는 하나의 테스트 케이스만 있으면 된다.On the other hand, in the most basic test strategy, "conformance testing", only the conditions specified in the requirements are checked. For example, to check the requirement that "the control unit turns on the access light after the door is closed", the "conformance testing" requires only one test case to check whether "the control unit turns on the access light after the door is closed".
하지만, 자동차 등 대부분의 산업 분야에서는 "적합성 테스트(conformance testing)"보다 더 많은 검사를 요구한다. 대부분의 체계적 테스트 케이스 생성 방법으로 생성된 테스트 케이스는 요구사항에 명시된 조건들뿐만 아니라 명시된 조건들의 변형된 조건에서도 시스템이 적절히 동작하는지를 검사하기 위한 변이 조건들로 구성된 테스트 케이스도 생성한다. 예를 들면 "출입문이 닫힌 후, 제어부는 출입 등을 켠다."라는 요구사항을 구현한 시스템에서 "출입문이 닫힌 후" 제어부는 출입 등을 켜는지는 확인하는 것뿐만 아니라, "출입문이 닫히기 전" 출입 등이 켜지지 않는지 등을 확인하고자 한다. 이는 구현된 시스템에 비정상적인 상태, 입력이나 조건에서 시스템이 문제를 일으키는 동작을 하지 않는지를 확인하기 위한 것이다. 이와 같이 비정상적인 조건을 검사하기 위한 테스트 케이스는 검사 기준에 따라 달라진다.However, most industries, such as automobiles, require more inspection than "conformance testing." Test cases created by most systematic test case generation methods generate not only the conditions specified in the requirements, but also test cases composed of variant conditions to check whether the system operates properly under modified conditions of the specified conditions. For example, in a system that implements the requirement "After the door is closed, the control unit turns on the access light", the control unit not only checks whether the access light is turned on "after the door is closed", but also checks whether the access light is not turned on "before the door is closed". This is to check whether the system does not cause a problem in an abnormal state, input or condition in the implemented system. Test cases for examining such abnormal conditions vary according to the inspection criteria.
본 발명의 실시예에서 앞서 설명한 바와 같은 시간 조건을 포함하는 한글 요구사항에서 '동작 시점'을 표현하는 방법과 '시간포함 한글 요구사항'을 표현하는 방법을 이용하여 시간 조건을 포함한 한글 요구사항으로부터 테스트 케이스를 체계적으로 생성하는 방법은 다음과 같다.In the embodiment of the present invention, using the method of expressing 'action point' in Korean requirements including time conditions and the method of expressing 'Hangul requirements including time' in Korean requirements including time conditions as described above, the method of systematically generating test cases from Korean requirements including time conditions is as follows.
적합성 테스트에서 설명한 바와 같이, 대부분의 산업 분야의 시스템에서는 요구사항을 구현한 시스템이 요구사항을 만족하는지를 검사할 때, 요구사항에서 기술한 내용뿐만 아니라 해당 요구사항의 변이 조건도 검사한다. 그 이유는 요구사항에서 기술한 조건 이외의 조건이 발생했을 때, 그 시스템이 적절히 대응할 수 있는지를 보기 위함이다.As explained in the conformance test, in systems in most industrial fields, when checking whether a system that implements a requirement satisfies a requirement, not only the contents described in the requirement but also the conditions for the variation of the requirement are checked. The reason is to see if the system can respond appropriately when conditions other than those described in the requirements occur.
예를 들면, 시스템 입력이 "a"와 "b"이고, "a"와 "b"가 가질 수 있는 값이 "True(T)" 나 "False(F)"라고 가정하자. 시스템 요구사항이 "a가 T이고 b가 T일 때, 시스템은 T를 출력한다."라는 요구사항을 검사하기 위해서 MCDC를 만족하는 테스트 케이스는 (a==T, b==T), (a==T, b==F), (a==F, b==T)이다. "a" 와 "b"는 서로 무관하게 시스템 입력값으로 주어질 수 있기 때문에 테스트 케이스 생성 시 각 입력이 가질 수 있는 조합을 고려하면 된다. 즉, (a==T, b==T)는 입력 "a"에 "T"를 가하는 동시에 "b"에도 "T"를 가한 후, 시스템 출력을 확인하라는 의미이다.For example, let's assume that the system inputs are "a" and "b", and the possible values of "a" and "b" are "True(T)" or "False(F)". To check the system requirement "When a is T and b is T, the system outputs T", the test cases that satisfy MCDC are (a==T, b==T), (a==T, b==F), and (a==F, b==T). Since "a" and "b" can be given as system input values regardless of each other, the possible combinations of each input can be considered when creating a test case. That is, (a==T, b==T) means to check the system output after adding “T” to “b” as well as adding “T” to input “a”.
이때, 시간에 대한 조건은 전혀 없다. 다시 말해, 입력을 가한 후 언제든 출력을 확인해도 된다는 의미이다. 하지만 "비상문과 출입문이 닫힌 후 5초 후, 제어부는 출입 등을 켠다"라는 요구사항에서는 비상문과 출입문이 닫힌 후, 5초 후에 출력을 확인해야 한다는 시간 조건이 따른다. 즉, 5초 이전에는 시스템 출력은 "T"가 아닐 수 있다는 것이다. 이와 같은 시간 조건이 있는 요구사항을 위한 테스트 케이스는 시스템 입력 조합뿐만 아니라 시간 조건을 만족시킬 수 있는 정보가 추가로 필요하게 된다. 본 발명의 실시예에 따른 테스트 케이스에서는 테스트 케이스를 {입력 정보, 시간 정보} 쌍으로 나타낸다.At this time, there is no condition about time at all. In other words, you can check the output at any time after applying the input. However, in the requirement of "5 seconds after the emergency door and the entrance door are closed, the control unit turns on the access light", the time condition that the output must be checked 5 seconds after the emergency door and the entrance door is closed follows. That is, the system output may not be “T” before 5 seconds. A test case for a requirement with such a time condition requires additional information to satisfy the time condition as well as a combination of system inputs. In the test case according to the embodiment of the present invention, the test case is expressed as a {input information, time information} pair.
예컨대, "비상문과 출입문이 닫힌 후 5초 후"라는 조건을 본 발명의 실시예에 따른 테스트 케이스로 표현하면 다음 표 6과 같다. For example, if the condition "5 seconds after the emergency door and the entrance door are closed" is expressed as a test case according to an embodiment of the present invention, it is shown in Table 6 below.
이 요구사항에 대한 MCDC 커버리지를 만족하는 테스트 케이스 중 하나는 (emer=close, door=close, tense=1, timer=7)이 될 수 있다. 만약 테스트 케이스 생성 정책을 결정 커버리지를 택한다면, 테스트 케이스 중 하나는 (emer=close, door=close, tense==2, timer == 6)일 수 있다. 즉, 본 발명의 실시예에서 제안한 테스트 케이스 표현을 사용하면, 결정 커버리지, 조건 커버리지, 수정된 조건 결정 커버리지(MC/DC) 등 여러 수준의 커버리지를 만족시킬 수 있는 시간 조건이 포함된 테스트 케이스 생성이 가능하다.One test case that satisfies MCDC coverage for this requirement could be (emer=close, door=close, tense=1, timer=7). If the test case creation policy takes decision coverage, one of the test cases could be (emer=close, door=close, tense==2, timer == 6). That is, if the test case representation proposed in the embodiment of the present invention is used, test cases including time conditions that can satisfy various levels of coverage, such as decision coverage, condition coverage, and modified condition decision coverage (MC/DC), can be created.
시간 조건이 포함된 테스트 케이스는 동작 조건만 있는 요구사항의 테스트 케이스와는 다른 의미를 가진다. 동작 조건만 있는 요구사항의 테스트 케이스는 입력의 조합만으로 표현된다. 하지만, 시간 조건 있는 요구사항의 테스트 케이스는 입력 조합뿐만 아니라 시간에 대한 조건이 포함된다. 예를 들면, 위의 테스트 케이스 (emer=close, door==close, tense==2, timer == 6)는 동작 조건 만족을 위한 시스템 입력 (emer=close, door=close)과, 시간 정보 (tense==2, timer == 6)으로 구성된다. 따라서 본 발명의 실시예에서 제안하는 방법으로 생성된 테스트 케이스는 {입력 정보, 시간 정보}가 모두 포함되어 있다. 이 테스트 케이스의 의미는 시스템 입력 "emer(비상등)"에 "close"를, "door(출입문)"에 "close"를 입력하고, "emer"와 "door"가 "close"된 후(tense==2), 6초 후(timer=6)에 출력을 검사하라는 의미이다. A test case with a time condition has a different meaning than a test case with a requirement only with an operating condition. A test case for a requirement with only operating conditions is expressed only as a combination of inputs. However, test cases with time-bound requirements include conditions on time as well as input combinations. For example, the above test case (emer=close, door==close, tense==2, timer == 6) consists of system inputs (emer=close, door=close) for satisfying operating conditions and time information (tense==2, timer == 6). Therefore, the test case generated by the method proposed in the embodiment of the present invention includes all {input information, time information}. The meaning of this test case is to input “close” to the system input “emer” and “close” to “door”, and after “emer” and “door” are “closed” (tense==2), it means to check the output after 6 seconds (timer=6).
다시 도 2를 참조하면, 단계 S1에서 한글 요구사항이 입력되면, 단계 S2에서 한글 문장을 parsing하여 문장 요소들을 파악한다.Referring back to FIG. 2 , when a Korean language requirement is input in step S1, a Korean sentence is parsed in step S2 to identify sentence elements.
단계 S3에서는 하나의 요구사항 문장을 단문장으로 분류한다. 하나의 요구사항은 하나의 단문장으로 구성될 수도 있고, N(N≥1)개의 복수의 단문장으로 구성될 수 있다. 한글 문장에서 절은 단문장에 해당하나, 구는 문장이 아니다. 수식절도 하나의 단문장으로 분류된다. In step S3, one requirement sentence is classified into single sentences. One requirement may consist of one single sentence or a plurality of N (N≥1) short sentences. In Korean sentences, clauses are single sentences, but phrases are not sentences. Modified clauses are also classified as single sentences.
단계 S4에서는 각 단문장에서 생략된 문장 요소를 복원한다. 한글 문장에서는 주어나 목적어가 생략될 수 있는데, 테스트 케이스 생성을 위해서는 생략된 정보를 복원하여야 한다. 주어가 생략되었을 때는 해당 문장 바로 직전 문장의 주어가 생략되었다고 가정한다. 예를 들면, "제어부가 정보를 수신하고 5초 후 경고등을 켜면"이라는 문장은 "제어부가 정보를 수신하고 5초 후"라는 단문장과 "경고등을 켜면"이라는 두 개의 단문장으로 분리된다. 이때, 두 번째 문장의 주어는 생략되었고, 바로 직전 문장의 주어인 "제어부가"가 생략되었다고 가정하고, 두 번째 문장을 "제어부가 경고등을 켜면"이라고 복원한다. 목적어 정보가 생략된 문장의 예는 다음과 같다. "제어부가 센서가 전송한 정보를 수신하면"이라는 문장은 "제어부가 정보를 수신하면"이라는 단문장과 "정보"를 수식하는 "센서가 전송한"이라는 단문장으로 나누어진다. 이때, "센서가 전송한"이라는 단문장에서 "정보를"이라는 목적어로 복원하여 "센서가 정보를 전송한"이라는 단문장으로 복원한다. In step S4, sentence elements omitted from each short sentence are restored. In Korean sentences, the subject or object can be omitted, but the omitted information must be restored in order to create a test case. When the subject is omitted, it is assumed that the subject of the immediately preceding sentence is omitted. For example, a sentence “if the control unit receives the information and turns on the warning light 5 seconds later” is divided into a single sentence “5 seconds after the control unit receives the information” and two short sentences “if the warning light is turned on”. At this time, it is assumed that the subject of the second sentence is omitted, and the subject of the immediately preceding sentence, “the control unit,” is omitted, and the second sentence is restored as “when the control unit turns on the warning light.” Examples of sentences in which object information is omitted are as follows. The sentence "when the control unit receives the information transmitted by the sensor" is divided into a short sentence "when the control unit receives the information" and a short sentence "transmitted by the sensor" that modifies "information". At this time, the short sentence “transmitted by the sensor” is restored to the object “information” and restored to the short sentence “transmitted information by the sensor”.
단계 S5에서는 각 단문장(단위문장)별로 동작 조건 정보 및 시간 조건 정보를 추출하고, 한글 단어를 상기 표 2와 같은 변수명 정의 테이블에 따라 해당 변수명으로 치환한다.In step S5, operation condition information and time condition information are extracted for each single sentence (unit sentence), and Korean words are replaced with corresponding variable names according to the variable name definition table as shown in Table 2 above.
단계 S6에서는 동작 조건 정보에서 테스트 케이스 생성 정보를 추출한다. 예를 들면, "센서 값이 5보다 크면"이라는 한글 요구사항에서 "센서 값"이라는 한글 단어를 "sensor"로 변환하고, "sensor>5"라는 입력 정보를 생성한다. 또한, 시간 조건 정보 "5초 후"에서 "timer > 5"라는 시간 정보를 생성하여 {입력정보, 시간정보} 쌍으로 표현한다.In step S6, test case generation information is extracted from operating condition information. For example, in the Korean language requirement “If the sensor value is greater than 5”, the Korean word “sensor value” is converted to “sensor” and input information “sensor>5” is generated. In addition, time information “timer > 5” is generated from the time condition information “after 5 seconds” and expressed as a pair of {input information, time information}.
단계 S7에서는 각 단위문장(단문장)에 대해 S5 단계와 S6 단계의 동작을 반복하여 각 단위문장(단문장)들의 테스트 케이스 생성 정보와 시간 정보를 결합하여 하나의 한글 요구사항 문장에 대한 모든 표현을 완성한다.In step S7, the operations of steps S5 and S6 are repeated for each unit sentence (single sentence), and all expressions for one Hangul requirement sentence are completed by combining the test case generation information and time information of each unit sentence (single sentence).
단계 S8에서는 결합된 각 단위문장들의 테스트 케이스 생성 정보와 시간 정보를 바탕으로 테스트 케이스 생성 전략(커버리지)에 따라 테스트 케이스를 생성한다. 예를 들면, 위의 테스트 케이스 생성 정보 "(sensor>5)&&(timer>5)"를 MCDC 전략에 따라 테스트 케이스를 생성하면, (sensor=7, timer=8), (sensor=8, timer=3), (sensor=2, timer=9) 같은 테스트 케이스를 생성할 수 있다.In step S8, test cases are generated according to the test case generation strategy (coverage) based on the test case generation information and time information of each combined unit sentence. For example, if the above test case generation information "(sensor>5)&&(timer>5)" is created according to the MCDC strategy, test cases such as (sensor=7, timer=8), (sensor=8, timer=3), (sensor=2, timer=9) can be created.
도 3은 본 발명의 실시예에 따른 시간 조건을 포함한 한글 요구사항을 위한 체계적 테스트 케이스 생성 장치를 도시한 구성 블럭도이다.3 is a block diagram showing a systematic test case generation device for Korean language requirements including time conditions according to an embodiment of the present invention.
본 발명의 실시예에 따른 시간 조건을 포함한 한글 요구사항을 위한 체계적 테스트 케이스 생성 장치는 도 3에 도시된 바와 같이, 소프트웨어가 탑재된 컴퓨터 시스템(100) 상에 한글 파싱부(101), 단위문장 분리부(102), 단위문장 복원부(103), 조건 추출부(104), 정보 생성부(105), 정보 결합부(106), 테스트 케이스 생성부(107)와 같은 기능 블럭으로 구현될 수 있다. 또한, 한글로 작성된 요구사항이나 생략 문장요소 테이블(103a), 동작조건/시간조건/변수명 테이블(104a), 테스트 케이스 생성정보/시간정보 테이블(105a) 등은 메모리, 스토리지 등과 같은 저장수단에 저장되어 컴퓨터 시스템(100)에 의해 입출력될 수 있다.As shown in FIG. 3, the systemic test case generation device for Hangul requirements including time conditions according to an embodiment of the present invention can be implemented with functional blocks such as a Hangul parser 101, a unit sentence separator 102, a unit sentence restorer 103, a condition extractor 104, an information generator 105, an information combiner 106, and a test case generator 107 on a software-loaded computer system 100. . In addition, requirements or abbreviated sentence element table 103a written in Korean, operation condition / time condition / variable name table 104a, test case generation information / time information table 105a, etc. are stored in storage means such as memory, storage, etc. It can be input and output by the computer system 100.
도 3을 참조하면, 한글 파싱부(101)는 시간조건이 포함된 한글 요구사항을 입력받아 파싱을 통해 문장요소를 파악한다.Referring to FIG. 3 , the Korean parsing unit 101 receives Hangul requirements including time conditions and identifies sentence elements through parsing.
단위 문장 분리부(102)는 파싱을 통해 파악된 문장요소에 근거하여 하나의 한글 요구사항 문장을 복수의 단위 문장으로 분리한다. 여기서, 단위 문장은 단문장이고, 절이나 수식절은 단문장으로 분리하나 구는 단문장으로 분리하지 않는다.The unit sentence separator 102 separates one Hangul requirement sentence into a plurality of unit sentences based on the sentence elements identified through parsing. Here, the unit sentence is a single sentence, and a clause or modifier clause is separated into a single sentence, but a phrase is not separated into a single sentence.
단위 문장 복원부(103)는 각 단위 문장에서 생략된 문장요소를 복원한다.The unit sentence restoration unit 103 restores sentence elements omitted from each unit sentence.
조건 추출부(104)는 각 단위 문장별로 동작 조건 정보와 시간 조건 정보를 추출하고, 한글 단어를 변수명으로 치환한다. 여기서, 시간 조건 정보는 동작 시점과 시간으로 구분되고, 동작 시점은 제1 특수용어(tense)로 표현되며, 시간은 제 2 특수용어(timer)로 표현된다.The condition extractor 104 extracts operation condition information and time condition information for each unit sentence, and replaces Korean words with variable names. Here, the time condition information is divided into operation time and time, the operation time is expressed as a first special term (tense), and the time is expressed as a second special term (timer).
정보 생성부(105)는 조건 추출부(104)의 동작 조건 정보에서 테스트 케이스 생성 정보를 추출하고, 시간 조건 정보에서 시간 정보를 생성하며, 정보 결합부(106)는 정보 생성부(105)의 각 단위 문장들의 테스트 케이스 생성 정보와 시간 정보를 결합한다. 이때 정보 생성부(105)의 테스트 케이스 생성 정보는 한글 단어의 치환된 변수명에 소정의 값을 부여하는 입력 표현으로 생성하는 것이고, 시간 정보는 동작 시점과 시간을 특수용어에 시간 값을 부여하는 표현으로 생성한다.The information generator 105 extracts test case generation information from the operating condition information of the condition extractor 104 and generates time information from the time condition information, and the information combiner 106 combines the test case generation information and time information of each unit sentence of the information generator 105. At this time, the test case generation information of the information generating unit 105 is generated as an input expression that assigns a predetermined value to the variable name substituted for the Korean word, and the time information is generated as an expression that assigns a time value to a special term for the operation time and time.
테스트 케이스 생성부(107)는 결합된 각 단위 문장의 테스트 케이스 생성 정보와 시간 정보로부터 하나의 한글 요구사항 문장에 대한 테스트 케이스를 생성한다.The test case generation unit 107 generates a test case for one Korean requirement sentence from the test case generation information and time information of each unit sentence combined.
[비교 예][Comparison example]
한글 요구사항 "출입문이 닫히고 창문이 열린 후 3~7msec 이내에, 제어기는 모터를 동작시킨다"하는 요구사항을 검사하는 테스트 케이스를 생성하기 위한 종래 방법과 본 발명의 실시예에서 제안하는 방법의 비교 예는 다음과 같다.A comparative example of the method proposed in the embodiment of the present invention and the conventional method for generating a test case for checking the Korean requirement "within 3 to 7 msec after the door is closed and the window is opened, the controller operates the motor" is as follows.
종래 테스트 케이스 생성 방법들의 절차 및 생성된 테스트 케이스를 생성하는 절차는, 먼저 수작업으로 "출입문이 닫히고 창문이 열린"이라는 한글 문장을 사람이 읽고 해석하여 변수명을 정하여 변환 과정을 거쳐 "(door==close)&&(window==open)"으로 바꾼 후, 체계적 테스트 케이스 생성 알고리즘을 이용하여 "(door=close, window=open), (door=close, window=close), (door=open, window=close)" 등의 테스트 케이스를 생성한다. 이때, 생성되는 테스트 케이스는 알고리즘에 따라 다를 수 있다. 이러한 종래 방식에서는 시간 조건 "3~7msec 이내"에 대한 고려는 없다.In the procedures of the conventional test case generation methods and the procedure for generating the generated test cases, first, a person manually reads and interprets the Korean sentence "The door is closed and the window is open", sets the variable name, and converts it to "(door==close)&&(window==open)", and then creates test cases such as "(door=close, window=open), (door=close, window=close), (door=open, window=close)" using a systematic test case generation algorithm. At this time, the generated test case may be different according to the algorithm. In this conventional method, the time condition "within 3 to 7 msec" is not considered.
그러나 본 발명의 실시예에 따른 방법에서는 "출입문이 닫히고 창문이 열린"이라는 한글 문장을 파싱(paring)하고 자동으로 변수명으로 변환한 후, "(door==close)&&(window==open)" 이라는 표현으로 바꾼 후, 체계적 테스트 케이스 생성 알고리즘을 이용하여 (door=close, window=open, timer =4), (door=close, window=close, timer=2), (door=open, window=close, timer==3) 등의 테스트 케이스를 생성한다. 이때 생성되는 테스트 케이스는 알고리즘에 따라 다르나 모두 시간 조건 "3~7msec 이내"에 대한 고려가 포함되어 있다.However, in the method according to the embodiment of the present invention, after parsing the Korean sentence "The door is closed and the window is open", it is automatically converted into a variable name, and then converted into the expression "(door==close)&&(window==open)", and then a systematic test case generation algorithm is used to generate test cases such as (door=close, window=open, timer =4), (door=close, window=close, timer=2), (door=open, window=close, timer==3). . The test cases generated at this time differ depending on the algorithm, but all include consideration of the time condition "within 3 to 7 msec".
이렇게 생성된 시간 조건이 고려된 테스트 케이스의 장점은 검사 과정에서 확연하게 드러날 수 있다. 생성된 테스트 케이스를 이용한 테스트는 자동 및 수동으로 할 수 있으나 대부분의 경우 자동으로 테스트를 수행한다, 그 이유는 사람이 입력을 가하고 (3~7)msec 이내 그 결과를 점검하기가 쉽지 않기 때문이다. 통상 자동 검사하는 경우에는 실시간으로 그 결과를 체크 방법과, 로그를 남기고 로그를 분석하여 검사 결과를 판별하는 방법이 있다. 이때 시간 조건이 고려된 테스트 케이스를 사용하는 경우와 시간 조건이 고려되지 않는 테스트 케이스 사용하는 경우의 다음과 같은 확연한 차이가 있다.The advantage of the test case considering the time condition created in this way can be clearly revealed in the inspection process. Tests using generated test cases can be done automatically or manually, but in most cases, tests are performed automatically, because it is not easy for a person to input input and check the result within (3~7)msec. In the case of normal automatic inspection, there are a method of checking the result in real time and a method of determining the test result by leaving a log and analyzing the log. At this time, there is a clear difference between the case of using a test case in which time conditions are considered and the case of using a test case in which time conditions are not considered.
먼저, 실시간으로 검사 결과를 체크하는 경우에, 입력만을 고려한 동작 조건(테스트 케이스, 예컨대 (door=close, window=close)을 보고 검사를 진행할 수가 없다. 왜냐하면, 입력 인가 후 얼마 후에 그 결과를 체크해야하는 지를 알 수가 없기 때문이다. 하지만, 본 발명의 실시예와 같이 시간 조건이 고려된 테스트 케이스 (예: (door=close, window=open, timer=4))에서는 4msec 후에 결과를 검사해야 한다고 명시되어 있기 때문에 실시간 검사가 가능하다. 이때 체계적으로 알고리즘에 의해 생성된 테스트 케이스에서 시간 조건 값도, 다른 입력 변수와 같이 변이 조건을 사용할 수 있어 다양한 시간에 검사가 가능한 장점도 가진다. 이는 검사에서 중요한 의미를 가진다. 예를 들면, "(3~7)msec 이내"라는 요구사항 조건에서는 3~7msec 사이에서는 모터가 동작하는 지를 검사하여야 하므로, 4msec, 혹은 6.5msec 어느 한 시점에서만 동작하는게 아니라, 그 범위 내에서는 모두 동작해야 하므로, 알고리즘에서 해당 범위 내의 임의 값을 생성하게 하여 다양한 시점에서 검사를 하는 것이 필요하다. 또한, 그 범위 외에서는 모터가 동작하지 않는 지를 검사하여야 하기 때문에 요구사항의 시간 범위 외에서의 시간 변이도 사용하여 테스트 케이스를 생성할 필요가 있다.First, in the case of checking the test result in real time, it is impossible to proceed with the test by looking at the operating conditions (test case, e.g., (door=close, window=close) that only considers the input. This is because it is not known how long after the input is applied, the result should be checked. However, in the test case considering the time condition (e.g., (door=close, window=open, timer=4)), as in the embodiment of the present invention, it is specified that the result should be checked after 4 msec, so real-time inspection is possible. At this time, it is systematically generated by an algorithm In the tested test case, the time condition value and the transition condition can be used like other input variables, so it has the advantage of being able to be inspected at various times. This has an important meaning in the inspection. For example, in the requirement condition of "within (3 to 7) msec", it is necessary to check whether the motor operates between 3 and 7 msec, so it does not operate only at 4 msec or 6.5 msec, but must operate within that range, so the algorithm generates random values within the range and inspects at various points In addition, since it is necessary to check whether the motor does not operate outside the range, it is necessary to create a test case using time shift outside the time range of the requirement.
또한, 로그를 남겨서 사용하는 경우에 종래 방식에 따른 동작 조건(테스트 케이스, 예 (door=close, window=close))을 사용하는 경우, 검사 시스템은 테스트 케이스 입력 후 입력 결과를 지속적으로 로그로 남겨야 한다. 왜냐하면, 그 결과 검사 시간을 모르기 때문이다. 만약 검사기가 ㎲ 단위로 결과를 저장할 수 있으면, 1㎲ 마다 결과를 남길 것이다. 왜냐하면, 원하는 결과 시간이 언제인지 테스트 케이스만으로는 알 수가 없기 때문이다. 이 경우, 많은 로그가 남겨지게 되어 저장공간이 많이 필요하게 되고, 엔지니어가 많은 로그를 분석하기도 힘들어진다. In addition, in the case of using a log, when using an operating condition (test case, example (door = close, window = close)) according to the conventional method, the inspection system must continuously log the input result after entering the test case. Because, as a result, the inspection time is not known. If the tester can store the result in μs, it will leave the result every 1 μs. This is because the test case alone cannot tell when the desired result time is. In this case, many logs are left, requiring a lot of storage space, and it becomes difficult for engineers to analyze many logs.
반면, 본 발명의 실시예와 같이 시간 조건이 고려된 테스트 케이스 (예: (door=close, window=open, timer=4))에서는 4msec 후에 결과를 검사해야 한다고 명시되어 있기 때문에 입력 인가 후 4msec에 로그를 남기면 된다. 따라서 본 발명의 실시예에 따르면, 저장공간의 절약과 사람이 분석해야 하는 노력이 획기적으로 줄어들 수 있다. On the other hand, in the test case in which time conditions are considered (e.g., (door = close, window = open, timer = 4)) as in the embodiment of the present invention, it is specified that the result should be checked after 4 msec. Therefore, according to an embodiment of the present invention, the saving of storage space and the effort required for human analysis can be drastically reduced.
이상에서 본 발명은 도면에 도시된 일 실시예를 참고로 설명되었으나, 본 기술분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. In the above, the present invention has been described with reference to one embodiment shown in the drawings, but those skilled in the art will understand that various modifications and equivalent other embodiments are possible therefrom.
100: 컴퓨터 시스템 101: 한글 파싱부
102: 단위문장 분리부 103: 단위문장 복원부
104: 조건 추출부 105: 정보 생성부
106: 정보 결합부 107: 테스트 케이스 생성부100: computer system 101: Korean parsing unit
102: unit sentence separation unit 103: unit sentence restoration unit
104: condition extraction unit 105: information generation unit
106: information combining unit 107: test case generating unit
Claims (5)
상기 컴퓨터 시스템이 한글 요구사항을 입력받아 파싱을 통해 문장요소를 파악하는 제 1 단계;
상기 컴퓨터 시스템이 하나의 한글 요구사항 문장을 복수의 단위 문장으로 분리하는 제 2 단계;
상기 컴퓨터 시스템이 각 단위 문장에서 생략된 문장요소를 복원하는 제 3 단계;
상기 컴퓨터 시스템이 각 단위 문장별로 동작 조건 정보와 시간 조건 정보를 추출하고, 한글 단어를 변수명으로 치환하는 제 4 단계;
상기 컴퓨터 시스템이 상기 동작 조건 정보에서 테스트 케이스 생성 정보를 추출하고, 시간 조건 정보에서 시간 정보를 생성하는 제 5 단계;
상기 컴퓨터 시스템이 각 단위 문장들에 대해 상기 제 4 단계와 제 5 단계를 반복하여 각 단위 문장들의 테스트 케이스 생성 정보와 시간 정보를 결합하는 제 6 단계; 및
상기 컴퓨터 시스템이 결합된 각 단위 문장의 테스트 케이스 생성 정보와 시간 정보로부터 테스트 케이스 생성 전략에 따라 하나의 한글 요구사항 문장에 대한 테스트 케이스를 생성하는 제 7 단계를 포함하고,
상기 제 5 단계의 시간 조건 정보는
동작 시점과 시간으로 구분되고, 상기 동작 시점은 제1 특수용어로 표현되며, 상기 시간은 제 2 특수용어로 표현되는 것을 특징으로 하는 시간 조건을 포함한 한글 요구사항을 위한 체계적 테스트 케이스 생성 방법.In a computer system for systematically generating test cases from Hangul requirements including time conditions,
A first step in which the computer system receives the Korean language requirements and identifies sentence elements through parsing;
a second step of separating, by the computer system, one Korean language requirement sentence into a plurality of unit sentences;
a third step of restoring, by the computer system, sentence elements omitted from each unit sentence;
a fourth step in which the computer system extracts operation condition information and time condition information for each unit sentence and replaces Korean words with variable names;
a fifth step of extracting, by the computer system, test case creation information from the operation condition information and generating time information from the time condition information;
a sixth step of combining test case generation information and time information of each unit sentence by the computer system repeating the fourth and fifth steps for each unit sentence; and
A seventh step of generating a test case for one Korean requirement sentence according to a test case generation strategy from test case generation information and time information of each unit sentence combined with the computer system,
The time condition information of the fifth step is
A systematic test case generation method for Korean language requirements including time conditions, characterized in that it is divided into an operation point and a time, the operation point is expressed in a first special term, and the time is expressed in a second special term.
절이나 수식절은 단문장으로 분리하나 구는 단문장으로 분리하지 않는 것을 특징으로 하는 시간 조건을 포함한 한글 요구사항을 위한 체계적 테스트 케이스 생성 방법.The method of claim 1, wherein the unit sentence is a single sentence,
A systematic test case generation method for Hangul requirements including time conditions, characterized in that clauses or modifiers are separated into single sentences, but phrases are not separated into single sentences.
하나의 한글 요구사항 문장을 복수의 단위 문장으로 분리하는 단위 문장 분리부;
각 단위 문장에서 생략된 문장요소를 복원하는 단위 문장 복원부;
각 단위 문장별로 동작 조건 정보와 시간 조건 정보를 추출하고, 한글 단어를 변수명으로 치환하는 조건 추출부;
상기 조건 추출부의 동작 조건 정보에서 테스트 케이스 생성 정보를 추출하고, 시간 조건 정보에서 시간 정보를 생성하는 정보 생성부;
상기 정보 생성부의 각 단위 문장들의 테스트 케이스 생성 정보와 시간 정보를 결합하는 정보 결합부; 및
결합된 각 단위 문장의 테스트 케이스 생성 정보와 시간 정보로부터 하나의 한글 요구사항 문장에 대한 테스트 케이스를 생성하는 테스트 케이스 생성부를 포함하고,
상기 정보 생성부의 테스트 케이스 생성 정보는
한글 단어의 치환된 변수명에 소정의 값을 부여하는 표현으로 생성하는 것이고, 시간 정보는 동작 시점과 시간을 특수용어에 시간 값을 부여하는 표현으로 생성하는 것을 특징으로 하는 시간 조건을 포함한 한글 요구사항을 위한 체계적 테스트 케이스 생성 장치.a Korean parsing unit that receives Hangul requirements and identifies sentence elements through parsing;
A unit sentence separator separating one Hangul requirement sentence into a plurality of unit sentences;
a unit sentence restoration unit for restoring sentence elements omitted from each unit sentence;
a condition extraction unit that extracts operation condition information and time condition information for each unit sentence and replaces Korean words with variable names;
an information generation unit extracting test case generation information from operating condition information of the condition extraction unit and generating time information from time condition information;
an information combining unit combining test case generation information and time information of each unit sentence of the information generating unit; and
A test case generation unit for generating a test case for one Hangul requirement sentence from test case generation information and time information of each combined unit sentence,
The test case generation information of the information generation unit is
To generate an expression that assigns a predetermined value to the variable name substituted for the Korean word, and the time information is generated as an expression that assigns a time value to a special term for the operation time and time. A systematic test case generation device for Hangul requirements including time conditions.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020220104119A KR102558933B1 (en) | 2022-08-19 | 2022-08-19 | Method and device for systematic test case creation for Korean requirements including time conditions |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020220104119A KR102558933B1 (en) | 2022-08-19 | 2022-08-19 | Method and device for systematic test case creation for Korean requirements including time conditions |
Publications (1)
Publication Number | Publication Date |
---|---|
KR102558933B1 true KR102558933B1 (en) | 2023-07-25 |
Family
ID=87428604
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020220104119A KR102558933B1 (en) | 2022-08-19 | 2022-08-19 | Method and device for systematic test case creation for Korean requirements including time conditions |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102558933B1 (en) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100575581B1 (en) * | 2004-12-15 | 2006-05-03 | 한국전자통신연구원 | Method and apparatus for analyzing functionality and test path of product line using priority graph |
KR20090046280A (en) * | 2007-11-05 | 2009-05-11 | 포항공과대학교 산학협력단 | Method and system for partitioning sentence for machine translation |
KR20120040883A (en) * | 2010-10-20 | 2012-04-30 | 홍익대학교 산학협력단 | Use case diagrams are based on test case generation programs and use them to generate test cases |
US20130185056A1 (en) * | 2012-01-12 | 2013-07-18 | Accenture Global Services Limited | System for generating test scenarios and test conditions and expected results |
KR101291817B1 (en) | 2012-04-26 | 2013-07-31 | 비티에스테크놀로지스(주) | Test case generating system and method based on requirements model |
KR101469880B1 (en) | 2014-05-20 | 2014-12-08 | 비티에스테크놀로지스(주) | table requirements based test case and expectation generation method |
KR101704338B1 (en) * | 2016-02-12 | 2017-02-08 | 강원대학교산학협력단 | Appratus and method of generating test case for real time system |
KR20200101891A (en) * | 2020-08-19 | 2020-08-28 | 에스케이텔레콤 주식회사 | Apparatus for analyzing complex sentence, and recording medium therefor |
-
2022
- 2022-08-19 KR KR1020220104119A patent/KR102558933B1/en active IP Right Grant
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100575581B1 (en) * | 2004-12-15 | 2006-05-03 | 한국전자통신연구원 | Method and apparatus for analyzing functionality and test path of product line using priority graph |
KR20090046280A (en) * | 2007-11-05 | 2009-05-11 | 포항공과대학교 산학협력단 | Method and system for partitioning sentence for machine translation |
KR20120040883A (en) * | 2010-10-20 | 2012-04-30 | 홍익대학교 산학협력단 | Use case diagrams are based on test case generation programs and use them to generate test cases |
US20130185056A1 (en) * | 2012-01-12 | 2013-07-18 | Accenture Global Services Limited | System for generating test scenarios and test conditions and expected results |
KR101291817B1 (en) | 2012-04-26 | 2013-07-31 | 비티에스테크놀로지스(주) | Test case generating system and method based on requirements model |
KR101469880B1 (en) | 2014-05-20 | 2014-12-08 | 비티에스테크놀로지스(주) | table requirements based test case and expectation generation method |
KR101704338B1 (en) * | 2016-02-12 | 2017-02-08 | 강원대학교산학협력단 | Appratus and method of generating test case for real time system |
KR20200101891A (en) * | 2020-08-19 | 2020-08-28 | 에스케이텔레콤 주식회사 | Apparatus for analyzing complex sentence, and recording medium therefor |
Non-Patent Citations (1)
Title |
---|
"구조화된 자연어 요구사항으로부터 테스트 케이스 및 스크립트 생성" 한국정보처리학회논문지 소프트웨어 및 데이터공학 v.8 no8,pp331-342(2019) |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
McKone | Short-term implicit memory for words and nonwords. | |
US7685082B1 (en) | System and method for identifying, prioritizing and encapsulating errors in accounting data | |
US20120233112A1 (en) | Developing fault model from unstructured text documents | |
CN115841255B (en) | On-site early warning method and system for building engineering based on-line analysis | |
CN110765235A (en) | Training data generation method and device, terminal and readable medium | |
CN107193251B (en) | Evaluation system and evaluation method | |
CN107133518A (en) | Source code based on parameter and information flow is gone beyond one's commission detection method and device | |
CN114077782B (en) | STPA method and STPA device for accurately identifying loss scene | |
Rajan et al. | Aequevox: Automated fairness testing of speech recognition systems | |
Fayollas et al. | SafeOps: A concept of continuous safety | |
KR102558933B1 (en) | Method and device for systematic test case creation for Korean requirements including time conditions | |
Shahandashti et al. | Evaluating the Effectiveness of GPT-4 Turbo in Creating Defeaters for Assurance Cases | |
Parthasarathy et al. | Measuring design compliance using neural language models: an automotive case study | |
Breaux | Exercising due diligence in legal requirements acquisition: A tool-supported, frame-based approach | |
CN115794119B (en) | Case automatic analysis method and device | |
Schlippe et al. | Automatic Error Recovery for Pronunciation Dictionaries. | |
CN115017015B (en) | Method and system for detecting abnormal behavior of program in edge computing environment | |
Roth | Identification and Fault Diagnosis of Industrial Closed-loop Discrete Event Systems: Identifikation und Fehlerdiagnose Industrieller Ereignisdiskreter Closed-Loop-Systeme | |
CN116360794A (en) | Database language analysis method, device, computer equipment and storage medium | |
CN115408289A (en) | SCADE model-oriented test case automatic generation method | |
US11727703B2 (en) | Apparatus for detecting contextually-anomalous sentence in document, method therefor, and computer-readable recording medium having program for performing same method recorded thereon | |
CN116635843A (en) | Apparatus, computing platform and method for analyzing log files of industrial plants | |
Hamrouni et al. | Anomaly detection and localization for process security based on the multivariate statistical method | |
CN112433947A (en) | Chaos engineering method and system based on network data | |
Korona et al. | Model-based fusion for multisensor target recognition |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |