KR101606283B1 - Appratus for automatic generation of expected results for testing component-based software system - Google Patents

Appratus for automatic generation of expected results for testing component-based software system Download PDF

Info

Publication number
KR101606283B1
KR101606283B1 KR1020140142546A KR20140142546A KR101606283B1 KR 101606283 B1 KR101606283 B1 KR 101606283B1 KR 1020140142546 A KR1020140142546 A KR 1020140142546A KR 20140142546 A KR20140142546 A KR 20140142546A KR 101606283 B1 KR101606283 B1 KR 101606283B1
Authority
KR
South Korea
Prior art keywords
component
input
software system
output
based software
Prior art date
Application number
KR1020140142546A
Other languages
Korean (ko)
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 KR1020140142546A priority Critical patent/KR101606283B1/en
Application granted granted Critical
Publication of KR101606283B1 publication Critical patent/KR101606283B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing
    • G06F11/263Generation of test inputs, e.g. test vectors, patterns or sequences ; with adaptation of the tested hardware for testability with external testers

Landscapes

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

Abstract

Disclosed are a method and an apparatus for automatically generating an expected result value for testing a component-based software system including: an input unit which receives test data and prediction result values of each of component units which constitute the component-based software system and are connected to each other; a processor which generates an input and output correlation direction graph of the component-based software system, generates a first test data group for testing the component-based software system based on each test data of each component unit, and generates a second test data group which is a subgroup of the first test data group by using the input and output correlation direction graph; and an output unit which generates and outputs a total prediction result value based on the second test data group by using the input and output correlation direction graph. According to the present invention, time and costs for testing the input and output correlation direction graph can be reduced and an accurate test can be performed.

Description

컴포넌트 기반 소프트웨어 시스템 테스트를 위한 예상 결과 값 자동 생성 장치{APPRATUS FOR AUTOMATIC GENERATION OF EXPECTED RESULTS FOR TESTING COMPONENT-BASED SOFTWARE SYSTEM}[0001] APPARATUS FOR AUTOMATIC GENERATION OF EXPECTED RESOURCES FOR TESTING COMPONENT-BASED SOFTWARE SYSTEM [0002]

본 발명은 컴포넌트 기반 소프트웨어 시스템의 테스트를 위한 예상 결과 값 자동 생성 방법 및 장치에 관한 것이다.The present invention relates to a method and apparatus for automatically generating an expected result value for testing a component based software system.

컴포넌트 기반 소프트웨어 시스템은 두 개 또는 그 이상의 소프트웨어 컴포넌트들로 구성된 시스템이며, 각 컴포넌트들은 입/출력 인터페이스를 통해 연결되어 있다. 컴포넌트 기반 소프트웨어 시스템을 테스트하기 위해서는 정확한 동작을 검증하기 위해 예상 결과 값이 필요하며 이러한 예상 결과 값을 수동으로 생성하는 것은 많은 시간과 비용이 소요된다. 종래의 기술들은 컴포넌트 기반 소프트웨어 시스템이 아닌 일반적인 시스템을 대상으로 예상 결과 값을 자동으로 생성함으로써 시간과 비용을 줄이고자 하였다. 하지만 종래의 기술들은 컴포넌트 기반 소프트웨어 시스템을 구성하는 단위 컴포넌트들의 입출력 연관관계를 고려하고 있지 않으며, 컴포넌트 기반 소프트웨어 시스템이 업그레이드 될 때 예상 결과 값을 자동으로 생성할 수 없다는 문제점을 가지고 있다.A component-based software system is a system composed of two or more software components, each of which is connected via an input / output interface. To test a component-based software system, expected results are needed to verify correct operation, and manually generating these expected results can be time consuming and costly. Conventional technologies have attempted to reduce time and cost by automatically generating expected results for general systems rather than component based software systems. However, the conventional technologies do not take into account the input / output association of the unit components constituting the component-based software system, and have a problem that the expected result value can not be automatically generated when the component-based software system is upgraded.

본 발명의 실시예들은 단위 컴포넌트의 내부 입출력 연관관계 및 단위 컴포넌트간 입출력 연관관계 정보를 이용하여 복합 컴포넌트의 입출력 연관관계를 분석하고, 이를 기반으로 각각의 단위 컴포넌트의 테스트 결과를 검색함으로써, 복합 컴포넌트의 예상 결과 값을 자동으로 생성하는 방법 및 장치를 제공할 수 있다.The embodiments of the present invention analyze the input / output relationship of the composite component using the internal input / output relationship of the unit component and the input / output association information between the unit components, and search the test result of each unit component based on the input / A method and an apparatus for automatically generating an expected result value of an expected result value of an image.

본 발명의 일실시예에 따른 컴포넌트 기반 소프트웨어 시스템의 테스트를 위한 예상 결과 값 자동 생성 장치는 상기 컴포넌트 기반 소프트웨어 시스템을 구성하는 상호 연결된 복수의 단위 컴포넌트들 각각의 테스트 데이터 및 예상 결과 값을 입력받는 입력부, 상기 컴포넌트 기반 소프트웨어 시스템의 입출력 연관관계 방향 그래프를 생성하고, 상기 복수의 단위 컴포넌트들 각각의 테스트 데이터에 기초하여 상기 컴포넌트 기반 소프트웨어 시스템의 테스트를 위한 제1 테스트 데이터 집합을 생성하고, 상기 입출력 연관관계 방향 그래프를 이용하여 상기 제1 테스트 데이터 집합의 부분집합인 제2 테스트 데이터 집합을 생성하는 프로세서, 및 상기 입출력 연관관계 방향 그래프를 이용하여 상기 제2 테스트 데이터 집합에 기초하여 전체 예상 결과 값을 생성하여 출력하는 출력부를 포함할 수 있다.An apparatus for automatically generating an expected result value for testing a component based software system according to an exemplary embodiment of the present invention includes an input unit for receiving test data and expected result values of each of a plurality of interconnected unit components constituting the component- , Generating an input / output association direction graph of the component-based software system, generating a first set of test data for testing the component-based software system based on test data of each of the plurality of unit components, A processor for generating a second set of test data that is a subset of the first set of test data using a relationship direction graph and a processor for generating a second set of test data based on the second set of test data using the input / It may comprise an output for generating the output.

상기 입출력 연관관계 방향 그래프는 상기 복수의 단위 컴포넌트들 내부의 입출력 연관관계 정보 및 상기 복수의 단위 컴포넌트들 간의 입출력 연관관계 정보에 기초하여 생성될 수 있다.The input / output association relationship direction graph may be generated based on input / output association information within the plurality of unit components and input / output association information between the plurality of unit components.

상기 제2 테스트 데이터 집합은 상기 컴포넌트 기반 소프트웨어 시스템의 적어도 하나의 출력 파라미터가 상기 컴포넌트 기반 소프트웨어 시스템의 입력 파라미터들 전부에 의존하여 달라지는지 여부의 판단에 기초하여 생성될 수 있다.The second set of test data may be generated based on a determination of whether at least one output parameter of the component-based software system depends on all of the input parameters of the component-based software system.

상기 판단 결과, 상기 컴포넌트 기반 소프트웨어 시스템의 적어도 하나의 출력 파라미터가 상기 컴포넌트 기반 소프트웨어 시스템의 입력 파라미터들 전부에 의존하여 달라지는 경우, 상기 프로세서는 상기 제2 테스트 데이터 집합으로 하여금 상기 제1 테스트 데이터 집합 전부를 포함하도록 할 수 있다.If, as a result of the determination, the at least one output parameter of the component-based software system varies depending on all of the input parameters of the component-based software system, the processor may cause the second test data set to include all of the first test data set . ≪ / RTI >

상기 판단 결과, 상기 컴포넌트 기반 소프트웨어 시스템의 출력 파라미터들 각각이 상기 컴포넌트 기반 소프트웨어 시스템의 입력 파라미터들 전부에 의존하여 달라지지 않는 경우, 상기 프로세서는, 상기 컴포넌트 기반 소프트웨어 시스템의 출력 파라미터들 각각에 대응하는 연관 입력 파라미터 집합들을 생성하고, 상기 연관 입력 파라미터 집합들에 기초하여 상기 제2 테스트 데이터 집합을 생성할 수 있다.And if it is determined that each of the output parameters of the component based software system does not depend on all of the input parameters of the component based software system, Generate sets of associated input parameters, and generate the second set of test data based on the set of associated input parameters.

상기 출력부는, 상기 제2 테스트 데이터 집합에 대한 출력을 나타내는 제1 예상 결과 값을 생성하고, 상기 제1 예상 결과 값으로부터 상기 전체 예상 결과 값을 생성할 수 있다.The output may generate a first expected result value that represents an output for the second set of test data and may generate the overall expected result value from the first expected result value.

상기 출력부는, 상기 복수의 단위 컴포넌트들 각각의 테스트 데이터 및 예상 결과 값에 기초하여 상기 제1 예상 결과 값을 생성할 수 있다.The output unit may generate the first expected result value based on the test data and the expected result value of each of the plurality of unit components.

본 발명의 일실시예에 따른 컴포넌트 기반 소프트웨어 시스템의 테스트를 위한 예상 결과 값 자동 생성 장치는 상기 컴포넌트 기반 소프트웨어 시스템을 구성하는 상호 연결된 복수의 단위 컴포넌트들 각각의 테스트 데이터 및 예상 결과 값을 입력받는 입력부, 상기 복수의 단위 컴포넌트들 간의 입출력 연관관계 정보에 기초하여 상기 컴포넌트 기반 소프트웨어 시스템의 입출력 연관관계 방향 그래프를 생성하고, 상기 복수의 단위 컴포넌트들 각각의 테스트 데이터에 기초하여 상기 컴포넌트 기반 소프트웨어 시스템의 테스트를 위한 제1 테스트 데이터 집합을 생성하고, 상기 입출력 연관관계 방향 그래프를 이용하여 상기 제1 테스트 데이터 집합의 부분집합인 제2 테스트 데이터 집합을 생성하는 프로세서, 상기 입출력 연관관계 방향 그래프를 이용하여 상기 제2 테스트 데이터 집합에 기초하여 전체 예상 결과 값을 생성하여 출력하는 출력부를 포함할 수 있다.An apparatus for automatically generating an expected result value for testing a component based software system according to an exemplary embodiment of the present invention includes an input unit for receiving test data and expected result values of each of a plurality of interconnected unit components constituting the component- Based on the test data of each of the plurality of unit components, the input / output association relationship graph of the component-based software system based on input / output association information between the plurality of unit components, A processor for generating a first test data set for a first test data set and a second test data set that is a subset of the first test data set using the input / output association direction graph, And the first may include a total estimated result output generating and outputting a value based on the second test data set.

상기 제2 테스트 데이터 집합은 상기 컴포넌트 기반 소프트웨어 시스템의 적어도 하나의 출력 파라미터가 상기 컴포넌트 기반 소프트웨어 시스템의 입력 파라미터들 전부에 의존하여 달라지는지 여부의 판단에 기초하여 생성될 수 있다.The second set of test data may be generated based on a determination of whether at least one output parameter of the component-based software system depends on all of the input parameters of the component-based software system.

본 발명의 일실시예에 따른 컴포넌트 기반 소프트웨어 시스템의 테스트를 위한 예상 결과 값 자동 생성 장치는 상기 컴포넌트 기반 소프트웨어 시스템을 구성하는 상호 연결된 복수의 단위 컴포넌트들 각각의 테스트 데이터 및 예상 결과 값을 입력받는 입력부, 상기 복수의 단위 컴포넌트들 각각의 테스트 데이터에 기초하여 상기 컴포넌트 기반 소프트웨어 시스템의 테스트를 위한 제1 테스트 데이터 집합을 생성하고, 상기 컴포넌트 기반 소프트웨어 시스템의 적어도 하나의 출력 파라미터가 상기 컴포넌트 기반 소프트웨어 시스템의 입력 파라미터들 전부에 의존하여 달라지는지 여부의 판단에 기초하여 상기 제1 테스트 데이터 집합의 부분집합인 제2 테스트 데이터 집합을 생성하는 프로세서, 및 상기 제2 테스트 데이터 집합에 기초하여 전체 예상 결과 값을 생성하여 출력하는 출력부를 포함할 수 있다.An apparatus for automatically generating an expected result value for testing a component based software system according to an exemplary embodiment of the present invention includes an input unit for receiving test data and expected result values of each of a plurality of interconnected unit components constituting the component- Based software system; and generating at least one output parameter of the component-based software system based on the test data of each of the plurality of unit components, A processor for generating a second set of test data that is a subset of the first set of test data based on a determination as to whether or not it depends on all of the input parameters, And an output unit for generating and outputting a result value.

상기 프로세서는 상기 복수의 단위 컴포넌트들 내부의 입출력 연관관계 정보 및/또는 상기 복수의 단위 컴포넌트들 간의 입출력 연관관계 정보에 기초하여 상기 컴포넌트 기반 소프트웨어 시스템의 입출력 연관관계 방향 그래프를 생성하고, 상기 제2 테스트 데이터 집합 및 상기 전체 예상 결과 값은 각각 상기 입출력 연관관계 방향 그래프를 이용하여 생성될 수 있다.Wherein the processor generates an input / output association direction graph of the component-based software system based on input / output association information within the plurality of unit components and / or input / output association information between the plurality of unit components, The test data set and the total expected result value may be generated using the input / output association direction graph, respectively.

상기 판단 결과, 상기 컴포넌트 기반 소프트웨어 시스템의 적어도 하나의 출력 파라미터가 상기 컴포넌트 기반 소프트웨어 시스템의 입력 파라미터들 전부에 의존하여 달라지는 경우, 상기 프로세서는 상기 제2 테스트 데이터 집합으로 하여금 상기 제1 테스트 데이터 집합 전부를 포함하도록 할 수 있다.If, as a result of the determination, the at least one output parameter of the component-based software system varies depending on all of the input parameters of the component-based software system, the processor may cause the second test data set to include all of the first test data set . ≪ / RTI >

상기 판단 결과, 상기 컴포넌트 기반 소프트웨어 시스템의 출력 파라미터들 각각이 상기 컴포넌트 기반 소프트웨어 시스템의 입력 파라미터들 전부에 의존하여 달라지지 않는 경우, 상기 프로세서는, 상기 컴포넌트 기반 소프트웨어 시스템의 출력 파라미터들 각각에 대응하는 연관 입력 파라미터 집합들을 생성하고, 상기 연관 입력 파라미터 집합들에 기초하여 상기 제2 테스트 데이터 집합을 생성할 수 있다.And if it is determined that each of the output parameters of the component based software system does not depend on all of the input parameters of the component based software system, Generate sets of associated input parameters, and generate the second set of test data based on the set of associated input parameters.

상기 출력부는, 상기 제2 테스트 데이터 집합에 대한 출력을 나타내는 제1 예상 결과 값을 생성하고, 상기 제1 예상 결과 값으로부터 상기 전체 예상 결과 값을 생성할 수 있다.The output may generate a first expected result value that represents an output for the second set of test data and may generate the overall expected result value from the first expected result value.

상기 출력부는, 상기 복수의 단위 컴포넌트들 각각의 테스트 데이터 및 예상 결과 값에 기초하여 상기 제1 예상 결과 값을 생성할 수 있다.The output unit may generate the first expected result value based on the test data and the expected result value of each of the plurality of unit components.

본 발명의 일실시예에 따른 컴포넌트 기반 소프트웨어 시스템의 테스트를 위한 예상 결과 값 자동 생성 방법은 상기 컴포넌트 기반 소프트웨어 시스템을 구성하는 상호 연결된 복수의 단위 컴포넌트들 각각의 테스트 데이터 및 예상 결과 값을 입력받는 단계, 상기 컴포넌트 기반 소프트웨어 시스템의 입출력 연관관계 방향 그래프를 생성하는 단계, 상기 복수의 단위 컴포넌트들 각각의 테스트 데이터에 기초하여 상기 컴포넌트 기반 소프트웨어 시스템의 테스트를 위한 제1 테스트 데이터 집합을 생성하는 단계, 상기 입출력 연관관계 방향 그래프를 이용하여 상기 제1 테스트 데이터 집합의 부분집합인 제2 테스트 데이터 집합을 생성하는 단계, 및 상기 입출력 연관관계 방향 그래프를 이용하여 상기 제2 테스트 데이터 집합에 기초하여 전체 예상 결과 값을 생성하여 출력하는 단계를 포함할 수 있다.A method for automatically generating an expected result value for testing a component-based software system according to an embodiment of the present invention includes receiving test data and an expected result value of each of a plurality of interconnected unit components constituting the component- Generating a first test data set for testing the component based software system based on test data of each of the plurality of unit components, Generating a second test data set that is a subset of the first test data set using an input / output association direction graph, and generating a second test data set based on the second test data set based on the input / And generating and outputting a value.

상기 입출력 연관관계 방향 그래프는 상기 복수의 단위 컴포넌트들 내부의 입출력 연관관계 정보 및 상기 복수의 단위 컴포넌트들 간의 입출력 연관관계 정보에 기초하여 생성될 수 있다.The input / output association relationship direction graph may be generated based on input / output association information within the plurality of unit components and input / output association information between the plurality of unit components.

상기 제2 테스트 데이터 집합은 상기 컴포넌트 기반 소프트웨어 시스템의 적어도 하나의 출력 파라미터가 상기 컴포넌트 기반 소프트웨어 시스템의 입력 파라미터들 전부에 의존하여 달라지는지 여부의 판단에 기초하여 생성될 수 있다.The second set of test data may be generated based on a determination of whether at least one output parameter of the component-based software system depends on all of the input parameters of the component-based software system.

상기 판단 결과, 상기 컴포넌트 기반 소프트웨어 시스템의 적어도 하나의 출력 파라미터가 상기 컴포넌트 기반 소프트웨어 시스템의 입력 파라미터들 전부에 의존하여 달라지는 경우, 상기 제2 테스트 데이터 집합을 생성하는 단계는, 상기 제2 테스트 데이터 집합으로 하여금 상기 제1 테스트 데이터 집합 전부를 포함하도록 하는 단계를 포함할 수 있다.Wherein if the at least one output parameter of the component-based software system is determined to depend on all of the input parameters of the component-based software system, then generating the second set of test data comprises: To include all of the first set of test data.

상기 판단 결과, 상기 컴포넌트 기반 소프트웨어 시스템의 출력 파라미터들 각각이 상기 컴포넌트 기반 소프트웨어 시스템의 입력 파라미터들 전부에 의존하여 달라지지 않는 경우, 상기 제2 테스트 데이터 집합을 생성하는 단계는, 상기 컴포넌트 기반 소프트웨어 시스템의 출력 파라미터들 각각에 대응하는 연관 입력 파라미터 집합들을 생성하는 단계 및 상기 연관 입력 파라미터 집합들에 기초하여 상기 제2 테스트 데이터 집합을 생성하는 단계를 포함할 수 있다.Wherein if the result of the determination is that each of the output parameters of the component-based software system does not depend on all of the input parameters of the component-based software system, then generating the second set of test data comprises: Generating sets of associated input parameters corresponding to each of the output parameters of the set of associated input parameters, and generating the second set of test data based on the set of associated input parameters.

전체 예상 결과 값을 생성하여 출력하는 단계는, 상기 제2 테스트 데이터 집합에 대한 출력을 나타내는 제1 예상 결과 값을 생성하는 단계 및 상기 제1 예상 결과 값으로부터 상기 전체 예상 결과 값을 생성하는 단계를 포함할 수 있다.Generating and outputting an overall expected result value comprises generating a first expected result value representing an output for the second set of test data and generating the overall expected result value from the first expected result value, .

상기 제1 예상 결과 값을 생성하는 단계는, 상기 복수의 단위 컴포넌트들 각각의 테스트 데이터 및 예상 결과 값에 기초하여 상기 제1 예상 결과 값을 생성하는 단계를 포함할 수 있다.The generating of the first expected result value may include generating the first expected result value based on the test data and the expected result value of each of the plurality of unit components.

본 발명의 일실시예에 따른 컴포넌트 기반 소프트웨어 시스템의 테스트를 위한 예상 결과 값 자동 생성 방법은, 상기 컴포넌트 기반 소프트웨어 시스템을 구성하는 상호 연결된 복수의 단위 컴포넌트들 각각의 테스트 데이터 및 예상 결과 값을 입력받는 단계, 상기 복수의 단위 컴포넌트들 간의 입출력 연관관계 정보에 기초하여 상기 컴포넌트 기반 소프트웨어 시스템의 입출력 연관관계 방향 그래프를 생성하는 단계, 상기 복수의 단위 컴포넌트들 각각의 테스트 데이터에 기초하여 상기 컴포넌트 기반 소프트웨어 시스템의 테스트를 위한 제1 테스트 데이터 집합을 생성하는 단계, 상기 입출력 연관관계 방향 그래프를 이용하여 상기 제1 테스트 데이터 집합의 부분집합인 제2 테스트 데이터 집합을 생성하는 단계, 및 상기 입출력 연관관계 방향 그래프를 이용하여 상기 제2 테스트 데이터 집합에 기초하여 전체 예상 결과 값을 생성하여 출력하는 단계를 포함할 수 있다.A method for automatically generating an expected result value for testing a component-based software system according to an exemplary embodiment of the present invention includes receiving test data and an expected result value of each of a plurality of interconnected unit components constituting the component- Based on the test data of each of the plurality of unit components, generating an input / output association relationship graph of the component-based software system based on input / output association information between the plurality of unit components, Generating a first set of test data for testing of the input / output association relationship direction graph, generating a second set of test data that is a subset of the first set of test data using the input / output association direction graph, By using a test based on the second set of data may include generating a total estimated results to output.

상기 제2 테스트 데이터 집합은 상기 컴포넌트 기반 소프트웨어 시스템의 적어도 하나의 출력 파라미터가 상기 컴포넌트 기반 소프트웨어 시스템의 입력 파라미터들 전부에 의존하여 달라지는지 여부의 판단에 기초하여 생성될 수 있다.The second set of test data may be generated based on a determination of whether at least one output parameter of the component-based software system depends on all of the input parameters of the component-based software system.

본 발명은 복수의 단위 컴포넌트들을 포함하는 컴포넌트 기반 소프트웨어 시스템의 테스트를 위한 예상 결과 값을 자동으로 생성하는 방법 및 장치를 제공한다. 본 발명을 통해 컴포넌트 기반 소프트웨어 시스템의 테스트 시에 소요되는 시간과 비용을 줄일 수 있으며, 정확한 테스트가 수행될 수 있다. 또한 본 발명은 컴포넌트 기반이 아닌 규모가 큰 시스템에도 적용될 수 있다.The present invention provides a method and apparatus for automatically generating an expected result value for testing a component based software system comprising a plurality of unit components. The present invention can reduce the time and cost required for testing a component-based software system, and accurate testing can be performed. The present invention can also be applied to a large-scale system that is not a component-based system.

도 1은 일 실시예에 따른 컴포넌트 기반 소프트웨어 시스템을 나타낸다.
도 2는 일 실시예에 따른 컴포넌트 기반 소프트웨어 시스템의 테스트를 위한 예상 결과 값 자동 생성 장치를 나타낸다.
도 3은 일 실시예에 따른 컴포넌트 기반 소프트웨어 시스템의 테스트를 위한 예상 결과 값 자동 생성 장치의 동작을 설명하기 위한 순서도이다.
도 4는 일 실시예에 따른 컴포넌트 기반 소프트웨어 시스템의 입출력 연관관계 방향 그래프의 생성 알고리즘을 나타낸다.
도 5는 일 실시예에 따른 컴포넌트 기반 소프트웨어 시스템의 단위 컴포넌트들 내부의 입출력 연관관계 정보 및 단위 컴포넌트들 간의 입출력 연관관계 정보를 이용하여 생성된 입출력 연관관계 방향 그래프를 나타낸다.
도 6은 일 실시예에 따른 컴포넌트 기반 소프트웨어 시스템의 단위 컴포넌트들 간의 입출력 연관관계 정보를 이용하여 생성된 입출력 연관관계 방향 그래프를 나타낸다.
도 7은 일 실시예에 따른 컴포넌트 기반 소프트웨어 시스템의 테스트를 위한 예상 결과 값 자동 생성 장치의 동작을 설명하기 위한 순서도이다.
도 8은 일 실시예에 따른 축소된 예상 결과값 생성 알고리즘을 나타낸다.
도 9는 일 실시예에 따른 축소된 예상 결과값 생성 알고리즘의 일부를 나타낸다.
도 10은 일 실시예에 따른 컴포넌트 기반 소프트웨어 시스템의 단위 컴포넌트들 내부의 입출력 연관관계 정보 및 단위 컴포넌트들 간의 입출력 연관관계 정보를 이용하여 생성된 입출력 연관관계 방향 그래프를 이용하여 축소된 예상 결과 값을 생성하는 과정을 나타낸다.
도 11은 일 실시예에 따른 컴포넌트 기반 소프트웨어 시스템의 단위 컴포넌트들 간의 입출력 연관관계 정보를 이용하여 생성된 입출력 연관관계 방향 그래프를 이용하여 축소된 예상 결과 값을 생성하는 과정을 나타낸다.
도 12는 일 실시예에 따른 컴포넌트 기반 소프트웨어 시스템을 나타낸다.
도 13은 일 실시예에 따른 컴포넌트 기반 소프트웨어 시스템의 입출력 연관관계 방향 그래프를 나타낸다.
도 14는 일 실시예에 따른 컴포넌트 기반 소프트웨어 시스템을 나타낸다.
도 15는 일 실시예에 따른 컴포넌트 기반 소프트웨어 시스템의 입출력 연관관계 방향 그래프를 나타낸다.
도 16은 일 실시예에 따른 컴포넌트 기반 소프트웨어 시스템을 나타낸다.
도 17은 일 실시예에 따른 컴포넌트 기반 소프트웨어 시스템의 입출력 연관관계 방향 그래프를 나타낸다.
1 illustrates a component-based software system in accordance with one embodiment.
2 illustrates an apparatus for automatically generating an expected result value for testing a component-based software system according to an embodiment.
3 is a flowchart illustrating an operation of an apparatus for automatically generating an expected result value for testing a component-based software system according to an exemplary embodiment.
4 illustrates an algorithm for generating an input / output association direction graph of a component-based software system according to an embodiment.
5 illustrates an input / output association relationship graph generated based on input / output association information and unit input / output association information between unit components of a component-based software system according to an exemplary embodiment.
FIG. 6 illustrates an input / output association relationship graph generated using input / output association information between unit components of a component-based software system according to an exemplary embodiment.
7 is a flowchart illustrating an operation of an apparatus for automatically generating an expected result value for testing a component-based software system according to an exemplary embodiment.
8 illustrates a reduced expected result value generation algorithm according to an embodiment.
9 illustrates a portion of a reduced estimated result value generation algorithm according to one embodiment.
FIG. 10 is a diagram showing an example of an input / output association relationship graph generated by using input / output association information and unit input / output association information between unit components of a component-based software system according to an exemplary embodiment, .
11 illustrates a process of generating a reduced estimated result value using an input / output association direction graph generated using input / output association information between unit components of a component-based software system according to an exemplary embodiment.
12 illustrates a component-based software system in accordance with one embodiment.
13 illustrates a graph of input / output association relationships of a component-based software system according to an embodiment.
14 illustrates a component-based software system in accordance with one embodiment.
15 shows a graph of the direction of input / output association of a component-based software system according to an embodiment.
16 illustrates a component-based software system in accordance with one embodiment.
17 illustrates a graph of input / output association relationships of a component-based software system according to an embodiment.

이하, 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다. 그러나, 본 발명이 일 실시예들에 의해 제한되거나 한정되는 것은 아니다. Hereinafter, embodiments will be described in detail with reference to the accompanying drawings. However, the present invention is not limited to or limited by the embodiments.

도 1은 일 실시예에 따른 컴포넌트 기반 소프트웨어 시스템(component-based software system; CBS system)을 설명하기 위한 도면이다. 도 1에 도시된 바와 같이, 일 실시예에 따른 컴포넌트 기반 소프트웨어 시스템(100)은 상호 연결된 복수의 단위 컴포넌트들(C1, C2, C3)을 포함할 수 있다. 구체적으로, Ci 는 컴포넌트 기반 소프트웨어 시스템을 구성하는 i번째 단위 컴포넌트를 의미할 수 있고, Ci in 및 Ci out 은 각각 Ci 의 모든 입력 파라미터 및 출력 파라미터의 집합을 의미할 수 있다. xi ,j 및 yi ,k 는 각각 Ci 의 j번째 입력 파라미터 및 k번째 출력 파라미터를 의미할 수 있다. 특히, EXTin(Ci) 및 EXTout(Ci) 은 각각 Ci 의 컴포넌트 기반 소프트웨어 시스템의 외부로부터의 입력 파라미터 및 외부로의 출력 파라미터의 집합을 의미할 수 있다. 예를 들어, 도 1에 도시된 컴포넌트 기반 소프트웨어 시스템(100)에서 C1 in = { x1,1, x1,2 , x1,3 } 이고 EXTin(C1) = { x1,2, x2,2 } 이다. 또한, CC 는 컴포넌트 기반 소프트웨어 시스템의 모든 단위 컴포넌트들의 집합을 의미할 수 있고, CCin 및 CCout 은 각각 컴포넌트 기반 소프트웨어 시스템의 모든 외부로부터의 입력 파라미터 및 외부로의 출력 파라미터의 집합을 의미할 수 있다. 예를 들어, 도 1에 도시된 컴포넌트 기반 소프트웨어 시스템(100)에서 CC = { C1, C2, C3 } 이고, CCin = { x1,1, x1,2 , x2,1 , x2,2 } 이고 CCout = { y1 ,1, y1 ,2 , y3 ,1 , y3 ,2 } 이다. Ci ∈ CC 일 때, Ci rp 는 Ci 컴포넌트 내부의 입출력 연관관계를 의미할 수 있고, RPintra 는 모든 Ci rp 의 집합을 의미할 수 있다. 또한, RPinter 는 컴포넌트 간의 입출력 연관관계의 집합을 의미할 수 있고, RP 는 컴포넌트 내부 입출력 연관관계 및 컴포넌트 간 입출력 연관관계 모두의 집합을 의미할 수 있다. 도 1에 도시된 바와 같이, C2 의 출력 y2 ,1 은 C1 의 입력 x1, 3 이다. CBS 는 CBS = (CC, RP) 로 정의될 수 있다.1 is a block diagram illustrating a component-based software system (CBS system) according to an exemplary embodiment of the present invention. As shown in FIG. 1, a component-based software system 100 according to an embodiment may include a plurality of interconnected unit components C 1 , C 2 , and C 3 . Specifically, C i May refer to an i-th unit component that constitutes a component-based software system, and C i in and C i out May refer to a set of all input parameters and output parameters of C i , respectively. x i , j and y i , k may respectively mean the j th input parameter and the k th output parameter of C i . In particular, EXT in (C i ) and EXT out (C i ) may refer to a set of input parameters from outside and output parameters to the outside of a component-based software system of C i , respectively. For example, in the component based software system 100 shown in FIG. 1, C 1 in = {x 1,1 , x 1,2, x 1,3 } and EXT in (C 1 ) = {x 1,2 , x 2,2 }. Also, a CC may refer to a set of all the component components of a component-based software system, and CC in and CC out May each refer to a set of input parameters from outside all of the component-based software system and a set of output parameters to the outside. For example, in the component-based software system 100 shown in FIG. 1, CC = {C 1 , C 2 , C 3 }, CC in = {x 1,1 , x 1,2, x 2,1, x 2,2 } and CC out = {y 1 , 1 , y 1 , 2, y 3 , 1, y 3 , 2 }. When C i ∈ CC, C i rp can refer to the input / output association within the C i component, and RP intra can refer to all C i rp sets. Also, RP inter can mean a set of I / O associations between components, and RP can mean a set of both component I / O associations and inter-component I / O associations. 1, the output of the C 2 y 2, 1 is an input of the 1 x C 1, 3. CBS can be defined as CBS = (CC, RP).

단위 컴포넌트들 각각의 테스트 케이스(즉, 입력 테스트 데이터 및 예상 결과 값)는 주어지는 것으로 가정된다. ATCi 는 i번째 단위 컴포넌트의 테스트 케이스의 집합을 의미할 수 있고, STC 는 컴포넌트 기반 소프트웨어 시스템 내의 모든 단위 컴포넌트들의 테스트 케이스의 집합을 의미할 수 있다. Ci in 의 크기가 n 일 때, IDn 은 입력 테스트 데이터의 집합을 의미할 수 있다. Ci out 의 크기가 m 일 때, ODm 은 출력 데이터의 집합을 의미할 수 있다. i번째 단위 컴포넌트의 테스트 케이스의 집합은 ATCi = < IDn, ODm > 으로 정의될 수 있다.It is assumed that the test cases of each of the unit components (i.e. input test data and expected result values) are given. ATC i May refer to a set of test cases of an i-th unit component, and STC may refer to a set of test cases of all unit components in a component-based software system. When the size of C i in is n, ID n can refer to a set of input test data. When the size of C i out is m, OD m can mean a set of output data. The set of test cases for the ith unit component is ATC i = &Lt; ID n , OD m &Gt;.

표 1 내지 3은 도 1에 도시된 컴포넌트 기반 소프트웨어 시스템(100)에 대한 C1, C2 및 C3 각각의 예시적인 테스트 케이스이다. A1 내지 L2는 단위 컴포넌트들 각각의 예시적인 입력 데이터 및 출력 데이터이다. 입력 테스트 데이터는 블랙-박스 테스팅(black-box testing) 방법을 이용하여 생성될 수 있다. 본 실시예에서 STC = { ATC1, ATC2, ATC3 } 이다.Tables 1 to 3 illustrate the relationship between C 1 , C 2 , and C 1 for the component-based software system 100 shown in FIG. And C 3 Each is an exemplary test case. A1 through L2 are exemplary input data and output data of each of the unit components. The input test data may be generated using a black-box testing method. In this embodiment, STC = {ATC 1 , ATC 2 , ATC 3 } to be.

Figure 112014100353348-pat00001
Figure 112014100353348-pat00001

Figure 112014100353348-pat00002
Figure 112014100353348-pat00002

Figure 112014100353348-pat00003
Figure 112014100353348-pat00003

도 2를 참조하면, 일 실시예에 따른 컴포넌트 기반 소프트웨어 시스템(100)의 테스트를 위한 예상 결과 값 자동 생성 장치(200)가 제공된다. 도 2에 도시된 바와 같이, 예상 결과 값 자동 생성 장치(200)는 입력부(210), 프로세서(220) 및 출력부(230)를 포함할 수 있다. 예상 결과 값 자동 생성 장치(200)는 컴포넌트 기반 소프트웨어 시스템(100)을 구성하는 단위 컴포넌트들 내부의 입출력 연관관계, 단위 컴포넌트들 간의 입출력 연관관계, 단위 컴포넌트들 각각의 테스트 데이터 및 예상 결과 값이 알려진 경우 이에 기초하여 컴포넌트 기반 소프트웨어 시스템(100)의 테스트를 위한 예상 결과 값을 자동으로 생성할 수 있다.Referring to FIG. 2, an apparatus 200 for automatically generating an expected result value for testing a component-based software system 100 according to an embodiment is provided. 2, the expected result automatic generating apparatus 200 may include an input unit 210, a processor 220, and an output unit 230. As shown in FIG. The predicted result value automatic generation apparatus 200 has an input / output association relation in unit components constituting the component-based software system 100, an input / output association relation between unit components, test data of each unit component, Based on which the expected result values for testing of the component based software system 100 can be automatically generated.

구체적으로, 입력부(210)는 단위 컴포넌트들 각각의 테스트 데이터 및 예상 결과 값을 입력받을 수 있다. 본 실시예에서, 입력부(210)가 입력받는 단위 컴포넌트들 각각의 테스트 데이터 및 예상 결과 값은 표 1 내지 3에 제시된 단위 컴포넌트들 각각의 테스트 케이스의 집합(STC)일 수 있다.Specifically, the input unit 210 may receive test data and expected result values of each of the unit components. In this embodiment, the test data and the expected result value of each of the unit components to which the input unit 210 is input may be a set of test cases (STC) of each of the unit components shown in Tables 1 to 3.

프로세서(220)는 단위 컴포넌트들 내부의 입출력 연관관계(RPintra) 및 단위 컴포넌트들 간의 입출력 연관관계(RPinter)에 기초하여 컴포넌트 기반 소프트웨어 시스템(100)의 입출력 연관관계 방향 그래프(I/O relationship directed graph; IORG)를 생성할 수 있다. 프로세서(220)는 단위 컴포넌트들 각각의 입력 데이터에 기초하여 컴포넌트 기반 소프트웨어 시스템(100)의 전체 테스트 데이터 집합(예컨대, 제1 테스트 데이터 집합)을 생성할 수 있다. 프로세서(220)는 컴포넌트 기반 소프트웨어 시스템(100)의 입출력 연관관계 방향 그래프를 이용하여 컴포넌트 기반 소프트웨어 시스템(100)의 전체 테스트 데이터 집합으로부터 축소된 테스트 데이터 집합(예컨대, 제2 테스트 데이터 집합)을 생성할 수 있다. 축소된 테스트 데이터 집합은 전체 테스트 데이터 집합의 부분집합이며, 이로부터 전체 테스트 데이터 집합의 입력에 대한 출력을 나타내는 전체 예상 결과 값을 도출해 낼 수 있도록 생성된다.The processor 220 is an I / O relationship relationship graph (I / O relationship) of the component-based software system 100 based on the input / output relationship RP intra and the input / output relationship RP inter between the unit components directed graph (IORG). The processor 220 may generate an entire test data set (e.g., a first test data set) of the component based software system 100 based on the input data of each of the unit components. The processor 220 generates a reduced test data set (e.g., a second test data set) from the entire test data set of the component-based software system 100 using the input / output association relationship graph of the component- can do. The reduced test dataset is a subset of the entire test dataset, from which it is generated to derive the overall expected outcome, which is the output for the input of the entire test dataset.

출력부(230)는 축소된 테스트 데이터 집합의 입력에 대한 출력을 나타내는 축소된 예상 결과 값(예컨대, 제1 예상 결과 값)을 생성할 수 있다. 출력부(230)는 축소된 예상 결과 값에 기초하여 전체 예상 결과 값을 생성하여 출력할 수 있다.Output 230 may generate a reduced expected result value (e.g., a first expected result value) indicative of an output for an input of the reduced set of test data. The output unit 230 can generate and output the entire expected result value based on the reduced estimated result value.

이하에서는 도 3을 참조하여, 일 실시예에 따른 컴포넌트 기반 소프트웨어 시스템(100)의 테스트를 위한 예상 결과 값 자동 생성 장치(200)의 동작에 대하여 구체적으로 살펴본다.Hereinafter, the operation of the expected result value automatic generation device 200 for testing the component-based software system 100 according to an embodiment will be described in detail with reference to FIG.

단계 310에서, 입력부(210)는 단위 컴포넌트들 각각의 테스트 데이터 및 예상 결과 값을 입력받을 수 있다. 본 실시예에서, 입력부(210)가 입력받는 단위 컴포넌트들 각각의 테스트 데이터 및 예상 결과 값은 표 1 내지 3에 제시된 단위 컴포넌트들 각각의 테스트 케이스의 집합(STC)일 수 있다.In step 310, the input unit 210 may receive the test data and the expected result value of each of the unit components. In this embodiment, the test data and the expected result value of each of the unit components to which the input unit 210 is input may be a set of test cases (STC) of each of the unit components shown in Tables 1 to 3.

단계 320에서, 프로세서(220)는 단위 컴포넌트들 내부의 입출력 연관관계(RPintra) 및 단위 컴포넌트들 간의 입출력 연관관계(RPinter)에 기초하여 컴포넌트 기반 소프트웨어 시스템(100)의 입출력 연관관계 방향 그래프(I/O relationship directed graph; IORG)를 생성할 수 있다. V 가 모든 입력 및 출력 파라미터의 집합이고 E 가 입출력 연관관계의 집합일 때, 입출력 연관관계 방향 그래프는 (V, E) 쌍일 수 있다.IO affinity directed graph in step 320, processor 220 to component-based software system 100 based on the input-output relation between the unit input and output relationship of the internal components (RP intra) and the unit components (RP inter) ( I / O relationship directed graph (IORG). When V is a set of all input and output parameters and E is a set of I / O associations, the I / O association direction graph can be a (V, E) pair.

도 4는 일 실시예에 따른 컴포넌트 기반 소프트웨어 시스템(100)의 입출력 연관관계 방향 그래프의 생성 알고리즘을 나타낸다. 도 4를 참조하면, 본 알고리즘의 입력은 컴포넌트 내부 입출력 연관관계 및 컴포넌트 간 입출력 연관관계 모두의 집합(RP), 컴포넌트 기반 소프트웨어 시스템의 모든 외부 입력 파라미터의 집합(CCin), 및 컴포넌트 기반 소프트웨어 시스템의 모든 외부 출력 파라미터의 집합(CCout)일 수 있다.4 illustrates an algorithm for generating an input / output association direction graph of a component-based software system 100 according to an embodiment. 4, the inputs of the algorithm include a set of both the component internal input / output associations and the input / output associations between components (RP), a set of all external input parameters (CC in ) of the component-based software system, (CC out ) of all external output parameters.

본 알고리즘은 먼저, IORG 의 V 및 E 를 초기화한다(line 1, 2). 이어서, CCin 의 각 원소 x 에 대하여, IORG 의 V 에 x 를 추가하고(line 4), x 에 연관된 V 및 E 를 생성하기 위해 x 를 인자로 하여 함수 GenerateIOReGraph()를 호출하고(line 5), 이 함수의 결과를 IORG에 추가한다(line 6).The algorithm first initializes V and E of IORG (lines 1 and 2). Then, for each element x of CC in , we call function GenerateIOReGraph () (line 5) with x as the argument to add x to V of IORG (line 4) and x as the argument to produce V and E associated with x, , Add the result of this function to the IORG (line 6).

함수 GenerateIOReGraph()는 다음과 같이 구성될 수 있다. 컴포넌트 내부 입출력 연관관계의 집합(RPintra)이 공집합이 아닐 경우, 모든 컴포넌트 내부 입출력 연관관계의 집합(RPintra) 내의 입력 inp 에 연관된 intra-output 의 집합을 취한다(line 11,12). 또는, 컴포넌트 내부 입출력 연관관계의 집합(RPintra)이 공집합일 경우, 즉 단위 컴포넌트들의 내부 입출력 연관관계가 알려지지 않은 경우, 입력 inp를 포함하는 해당 단위 컴포넌트의 모든 출력 집합을 취한다(line 13,14,15). 각 intra-output rout 에 대하여, rout 및 inp 로부터 rout 으로의 에지(edge)를 추가한다(line 17,18). 이어서, 모든 컴포넌트 간 입출력 연관관계의 집합(RPintra) 내의 rout 에 연관된 inter-input 의 집합을 취한다(line 19). inter-input 의 집합이 공집합이거나, rout 이 CCout 의 원소인 경우, 연관된 입력 및 출력을 검색하지 않는다(line 20). 그렇지 않다면, 각 inter-input rin 에 대하여, rin 및 rout 으로부터 rin 으로의 에지를 추가하고(line 22,23), rin 을 인자로 하여 함수 GenerateIOReGraph()를 재귀적으로 호출한다(line 24).The function GenerateIOReGraph () can be constructed as follows. If a set of internal input and output components affinity (RP intra) is not the empty set and take the set of intra-output associated with the input inp in the set of all the components inside the input-output relationship (RP intra) (line 11,12) . Alternatively, if the set of component internal I / O associations (RP intra ) is empty, that is, if the internal I / O associations of the unit components are unknown, take all output sets of the corresponding unit component including input inp (line 13, 14,15). For each intra-output rout, add an edge from rout and inp to rout (lines 17, 18). It then takes a set of inter-inputs associated with rout in the set of input / output associations (RP intra ) between all components (line 19). If the set of inter-inputs is an empty set, or if rout is an element of CC out , it does not retrieve the associated inputs and outputs (line 20). Otherwise, for each inter-input rin, add the edges from rin and rout to rin (line 22, 23) and recursively call the function GenerateIOReGraph () with line parameter rin (line 24).

도 5는 일 실시예에 따른컴포넌트 기반 소프트웨어 시스템(100)의 복수의 단위 컴포넌트들 내부의 입출력 연관관계 정보 및 복수의 단위 컴포넌트들 간의 입출력 연관관계 정보를 이용하여 생성된 입출력 연관관계 방향 그래프를 나타낸다. 도 5를 참조하면, 입출력 연관관계 방향 그래프는 7개의 입력 노드, 7개의 출력 노드 및 에지들로 구성된다. 입출력 연관관계 방향 그래프에 의해, 컴포넌트 기반 소프트웨어 시스템의 각 외부 출력 파라미터에 연관된 컴포넌트 기반 소프트웨어의 각 외부 입력 파라미터를 식별할 수 있다. 예를 들어, 외부 입력 파라미터 x2,1 x2,2 는 외부 출력 파라미터 y3 ,1 에 연관된다.5 illustrates an input / output association relationship graph generated by using input / output association information within a plurality of unit components and input / output association information between a plurality of unit components of the component-based software system 100 according to an exemplary embodiment . Referring to FIG. 5, the input / output association direction graph is composed of seven input nodes, seven output nodes, and edges. The input-output association relationship graph may identify each external input parameter of the component-based software associated with each external output parameter of the component-based software system. For example, the external input parameters x 2,1 and 2,2 x is associated to an external output parameter y 3, 1.

도 6은 일 실시예에 따른 컴포넌트 기반 소프트웨어 시스템(100)의 복수의 단위 컴포넌트들 간의 입출력 연관관계 정보만을 이용하여 생성된 입출력 연관관계 방향 그래프를 나타낸다. 도 6을 참조하면, 복수의 단위 컴포넌트들 내부의 입출력 연관관계 정보를 이용하지 않기 때문에 복수의 단위 컴포넌트들 내부의 입출력 연관관계에 대응하는 가상 입출력 연관관계가 생성되며, 도 5에 따른 입출력 연관관계 방향 그래프와 유사하게 7개의 입력 노드, 7개의 출력 노드 및 에지들로 구성된다.FIG. 6 shows an I / O association direction graph generated using only input / output association information between a plurality of unit components of the component-based software system 100 according to an embodiment. Referring to FIG. 6, since the input / output association information in the plurality of unit components is not used, a virtual input / output association relation corresponding to the input / output association relationship in the plurality of unit components is generated. Similar to the direction graph, it consists of seven input nodes, seven output nodes, and edges.

다시 도 3을 참조하면, 단계 330에서, 프로세서(220)는 단위 컴포넌트들 각각의 입력 데이터에 기초하여 컴포넌트 기반 소프트웨어 시스템(100)의 전체 테스트 데이터 집합(예컨대, 제1 테스트 데이터 집합)을 생성할 수 있다. 전체 테스트 데이터 집합의 생성은 다음과 같이 나타낼 수 있다.
Referring again to FIG. 3, in step 330, the processor 220 generates an entire test data set (e.g., a first test data set) of the component based software system 100 based on the input data of each of the unit components . The generation of the entire test data set can be expressed as:

Tin = D(x1) × D(x2) × … × D(xp)
T in = D (x 1 ) x D (x 2 ) x × D (x p )

여기서, Tin 은 테스트 데이터 집합을 의미하고, xi 는 CCin 의 i번째 입력 파라미터를 의미하며, D(xi) 는 입력 파라미터 xi 에서 입력 가능한 데이터의 집합을 의미하고, p 는 CCin 의 크기를 의미할 수 있다. D(xi) 는 단위 컴포넌트들의 테스트 시에 블랙-박스 테스팅(black-box testing) 및 화이트-박스 테스팅(white-box testing) 기법을 이용하여 미리 생성된다. 예를 들어, 도 1에 도시된 컴포넌트 기반 소프트웨어 시스템(100)에서 D(x1,1) = { A1, A2 }, D(x1,2) = { B1, B2 }, D(x2,1) = { F1, F2 }, D(x2,2) = { G1, G2 }이다. 표 4는 도 1에 도시된 컴포넌트 기반 소프트웨어 시스템(100)의 Tin 을 나타낸다.Here, T in denotes a test data set, x i denotes an i-th input parameter of CC in , D (x i ) denotes a set of data that can be input in the input parameter x i , and p denotes CC in Quot; size &quot; D (x i ) is generated in advance using black-box testing and white-box testing techniques in testing unit components. For example, in the component-based software system 100 shown in FIG. 1, D (x1, 1 ) = {A1, A2}, D (x 1,2 ) = {B1 , 1 ) = {F1, F2}, D (x2, 2 ) = {G1, G2}. Table 4 shows the T in .

Figure 112014100353348-pat00004
Figure 112014100353348-pat00004

단계 340에서, 프로세서(220)는 컴포넌트 기반 소프트웨어 시스템(100)의 입출력 연관관계 방향 그래프를 이용하여 컴포넌트 기반 소프트웨어 시스템(100)의 전체 테스트 데이터 집합으로부터 축소된 테스트 데이터 집합(예컨대, 제2 테스트 데이터 집합)을 생성할 수 있다. 여기서, 축소된 테스트 데이터 집합은 전체 테스트 데이터 집합의 부분집합이며, 이로부터 전체 테스트 데이터 집합의 입력에 대한 출력을 나타내는 전체 예상 결과 값을 도출해 낼 수 있도록 생성된다.In step 340, the processor 220 uses the I / O association direction graph of the component-based software system 100 to generate a reduced set of test data (e.g., second test data) from the entire set of test data in the component- Set). Here, the reduced set of test data is a subset of the entire set of test data, from which it is generated so as to derive the overall expected result value that represents the output for the input of the entire test data set.

축소된 테스트 데이터 집합은 출력 파라미터 각각에 대응하는 연관 입력 파라미터 집합들에 기초하여 생성될 수 있다. 본 명세서에서, Tred in 은 축소된 테스트 데이터 집합을 의미할 수 있고, R(yk)는 출력 파라미터 yk 에 대응하는 연관 입력 파라미터 집합을 의미할 수 있다. 출력 파라미터 yk 에 연관된 입력 파라미터들의 집합을 X(yk) 라고 할 때, 연관 입력 파라미터 집합 R(yk)는 다음과 같이 표현될 수 있다.The reduced set of test data may be generated based on the set of associated input parameters corresponding to each of the output parameters. In this specification, T red in may mean a reduced set of test data, and R (y k ) may refer to a set of associated input parameters corresponding to the output parameter y k . When the set of input parameters associated with the output parameter y k is X (y k ), the set of associated input parameters R (y k ) can be expressed as:

Figure 112014100353348-pat00005
Figure 112014100353348-pat00005

Figure 112014100353348-pat00006

Figure 112014100353348-pat00006

출력 파라미터 yk 의 예상 결과 값은 R(yk) 의 원소에 의하여 결정된다. R(yk) 는 컴포넌트 내부의 입출력 연관관계 및 컴포넌트 간의 입출력 연관관계에 따라 변경될 수 있다.The expected value of the output parameter y k is determined by the element of R (y k ). R (y k ) can be changed according to the input / output relationship within the component and the input / output association between the components.

도 3에 도시된 바와 같은 입출력 연관관계 방향 그래프를 이용하여, X(y1 ,1) = { x1,1, x1,2 }, X(y1 ,2) = { x1,2, x2,1 }, X(y3 ,1) = { x2,1, x2,2 } 및 X(y3 ,2) = { x2,2 } 가 결정된다. 표 5 내지 8은 각각 R(y1 ,1), R(y1 ,2), R(y3 ,1) 및 R(y3 ,2) 의 입력 테스트 데이터의 조합을 제시한다. 기호 "-"는 무관한 데이터를 의미한다.X (y 1 , 1 ) = {x 1,1 , x 1,2 }, X (y 1 , 2 ) = {x 1,2 , x 2,1}, x (y 3 , 1) = a {x 2,1, x 2,2}, and x (y 3, 2) = {x 2,2} are determined. Tables 5 to 8 present combinations of input test data for R (y 1 , 1 ), R (y 1 , 2 ), R (y 3 , 1 ) and R (y 3 , 2 ), respectively. The symbol "-" means irrelevant data.

Figure 112014100353348-pat00007
Figure 112014100353348-pat00007

Figure 112014100353348-pat00008
Figure 112014100353348-pat00008

Figure 112014100353348-pat00009
Figure 112014100353348-pat00009

Figure 112014100353348-pat00010
Figure 112014100353348-pat00010

Tin 의 부분집합이며, 각 R(yk) 의 합집합을 커버하는 Tred in 은 다음과 같이 표현될 수 있다.A subset of T in, T in red to cover a union of each R (k y) can be expressed as follows.

식 (6)Equation (6)

표 9를 참조하면, 표 4에 제시된 Tin 을 커버할 수 있는 Tred in 이 제시된다.Referring to Table 9, T red in which the T in shown in Table 4 can be covered .

Figure 112014100353348-pat00011
Figure 112014100353348-pat00011

단계 350에서, 출력부(230)는 축소된 테스트 데이터 집합의 입력에 대한 출력을 나타내는 축소된 예상 결과 값(예컨대, 제1 예상 결과 값)을 생성할 수 있다. 본 명세서에서, Tred out 은 축소된 예상 결과 값을 의미할 수 있고, Tout 은 전체 예상 결과 값을 의미할 수 있다.At step 350, the output 230 may generate a reduced expected result value (e.g., a first expected result value) indicative of an output for an input of the reduced set of test data. In the present specification, T red out may mean a reduced expected result value, and T out may mean a total expected result value.

도 8은 일 실시예에 따른 축소된 예상 결과값 생성 알고리즘을 나타낸다. 도 8을 참조하면, 본 알고리즘의 입력은 축소된 테스트 데이터 집합(Tred in), 입출력 연관관계 방향 그래프(IORG), 및 컴포넌트 기반 소프트웨어 시스템 내의 모든 단위 컴포넌트들의 테스트 케이스의 집합(STC)일 수 있다.8 illustrates a reduced expected result value generation algorithm according to an embodiment. 8, the input of the algorithm may be a reduced test data set (T red in ), an I / O association direction graph (IORG), and a set of test cases (STC) of all the unit components in the component- have.

본 알고리즘은 먼저, Tred out 을 초기화한다(line 1). 이어서, IORG 내의 CCin 의 노드들 및 CCout 의 노드들을 취한다(line 2, 3). CI 는 CCin 의 노드들을 저장하는 CI.node 및 Tred in 의 원소를 저장하는 CI.data 로 구성된다. CO 는 CCout 의 노드들을 저장하는 CO.node 및 Tred in 의 원소에 대한 예상 결과 값를 저장하는 CO.data 로 구성된다. Tred in 의 각 원소 inTD 에 대하여, CI.data 에는 inTD 를 할당하고, CO.data 에는 NULL 을 할당한다(line 5, 6). 이어서, inTD 에 대한 예상 결과 값을 생성하기 위하여 CI 및 CO 를 인자로 함수 SearchExpectedResults()를 호출한다. 생성된 inTD 에 대한 예상 결과 값은 Tred out 에 추가될 수 있도록 CO.data 에 저장된다(line 9).The algorithm first initializes T red out (line 1). Next, we take the nodes of the CC in in the IORG and the nodes of the CC out (lines 2 and 3). CI consists of CI.node which stores nodes of CC in and CI.data which stores elements of T red in . CO consists of CO.node which stores the nodes of the CC out and CO.data which stores the expected result value of the elements of T red in . For each element inTD of T red in , assign inTD to CI.data and NULL to CO.data (lines 5 and 6). Next, call the function SearchExpectedResults () with the CI and CO as arguments to generate the expected result value for inTD. The expected result value for the generated inTD is stored in CO.data to be added to T red out (line 9).

도 9는 일 실시예에 따른 함수 SearchExpectedResults()의 명세를 나타낸다. 도 9를 참조하면, 본 함수의 입력은 IORG 내의 추적 노드(tracing node)들의 집합 및 CCout 의 노드들의 집합일 수 있다.Figure 9 illustrates the specification of a function SearchExpectedResults () according to one embodiment. 9, the input of this function may be a set of tracing nodes in the IORG and a set of nodes in the CC out .

본 알고리즘은 먼저, 추적 노드들을 연관된 자녀 노드들에 따라 그룹화한다(line 3). 즉, 동일한 그룹 내의 추적 노드들은 동일한 자녀 노드를 가진다. RNG 는 동일한 자녀 노드들 가지는 추적 노드들로 구성된 그룹들의 집합을 의미한다. 이어서, 다음 추적 노드들의 집합 nextN 을 초기화한다(line 4). RNG 의 각 원소 rn 에 대하여, rn 의 자녀 노드를 cN.node 에 할당하고(line 6), rn 및 cN.node 에 연관된 단위 컴포넌트들의 테스트 케이스들을 STC 에서 취한다(line 7). rn 의 모든 노드들이 입력 노드인 경우, rn.node 및 cN.node 에 연관된 테스트 케이스들을 취한다. 그렇지 않은 경우, cN.node 에만 연관된 테스트 케이스들을 취한다. RTC 는 단위 컴포넌트의 연관 테스트 케이스들을 의미한다. RTC 내에 rn.data 가 존재하는 경우, 예상 결과 값 생성은 실패한다(line 16). 그렇지 않은 경우, RTC 에서 cN.node 에 연관된 데이터를 취한다(line 9). cN.node 가 CO.node 내에 있는 경우, cN.data 는 CO.data 에 추가될 예상 결과 값이다(line 11). 이어서, cN 의 자녀 노드가 존재하는 경우 cN 을 nextN 에 추가한다. 마지막으로, nextN 이 비어있을 때까지 함수 SearchExpectedResults()를 재귀적으로 호출한다(line 19). 본 알고리즘의 시간 복잡도는 다음과 같다.The algorithm first groups the tracking nodes according to their associated child nodes (line 3). That is, the tracking nodes in the same group have the same child node. An RNG is a set of groups of tracking nodes with identical child nodes. Next, initialize the next set of tracking nodes nextN (line 4). For each element rn of the RNG, child nodes of rn are assigned to cN.node (line 6), and test cases of unit components associated with rn and cN.node are taken from the STC (line 7). If all nodes of rn are input nodes, take the test cases associated with rn.node and cN.node. Otherwise, take the test cases associated with cN.node only. RTC refers to association test cases of unit components. If rn.data is present in the RTC, the expected result generation fails (line 16). Otherwise, the RTC takes the data associated with cN.node (line 9). If cN.node is in CO.node, cN.data is the expected result to be added to CO.data (line 11). Then, if there is a child node of cN, add cN to nextN. Finally, recursively invoke the function SearchExpectedResults () until nextN is empty (line 19). The time complexity of this algorithm is as follows.

Figure 112014100353348-pat00012
Figure 112014100353348-pat00012

여기서, i 는 IORG 의 깊이(depth)를 의미하고, m 은 IORG 의 최대 깊이를 의미하고, RNG(i) 는 동일한 자녀 노드를 가지는 추적 노드들의 그룹들의 집합을 의미하고, RTC(rn) 은 rn 에 연관된 단위 컴포넌트들의 테스트 케이스들의 집합을 의미할 수 있다.Here, i denotes the depth of the IORG, m denotes the maximum depth of the IORG, RNG (i) denotes a set of groups of tracking nodes having the same child node, RTC (rn) denotes rn May refer to a set of test cases of unit components associated with the unit.

도 10은 도 1에 도시된 컴포넌트 기반 소프트웨어 시스템(100)의 Tred out 을 생성하는 과정을 나타낸다. 도 10을 참조하면, rn(cN) 은 동일한 자녀 노드 cN 을 가지는 추적 노드들의 그룹을 의미한다. 본 실시예에서는 표 1 내지 3에 제시된 STC, 도 4에 도시된 IORG 및 표 9에 제시된 Tred in 이용한다. CI.node = { x1,1, x1,2 , x2,1 , x2,2 } 이고, CO.node = { y1 ,1, y1 ,2 , y3 ,1 , y3 ,2 } 이다. Tred in 의 각 원소는 CI.data 에 할당된다. 표 9의 r1 이 CI.data 에 할당되면, CI.node 는 첫 번째 추적 노드들로 선택된다. 이어서, 추적 노드들은 도 10(a)에 도시된 바와 같이 자녀 노드 y1 ,1, y2 ,1, y2 ,2 y2 ,3 에 의해 그룹화된다. 자녀 노드 y1 , 2 의 부모 노드 x1,3 은 추적 노드가 아니기 때문에, 자녀 노드 y1 ,2 에 연관된 추적 노드들은 그룹화하지 않는다. 따라서, RNG 는 { rn(y1 ,1), rn(y2 ,1), rn(y2 ,2), rn(y2 ,3) } 이다. rn 이 rn(y1,1)일 때, rn.node 는 { x1,1, x1,2 } 이고, rn.data 는 { A1, B1 } 이다. rn(y1,1)의 모든 노드들이 입력 노드이고 rn(y1 ,1) 및 cN.node 가 ATC1 에 연관되기 때문에, rn(y1 ,1) 의 자녀 노드 y1 ,1 을 cN.node 에 할당하고, 이어서 표 1에 제시된 ATC1 을 RTC 에 할당한다. 그러면, cN.node 가 CO.node 내에 존재하여 cN.data 가 CO.data 에 추가될 수 있다. 이것은 외부 출력 y1 ,1에 대한 예상 결과 값이다. rn(y2,1), rn(y2 ,2) 및 rn(y2 ,3)에 대하여도 유사한 방식으로 처리된다. 따라서, CO.data = { D1 }, nextN.node = { y2 ,1, y2 ,2, y2 ,3 } 및 nextN.data = { C1, H1, J1 } 이 된다. FIG. 10 shows a process of generating a T red out of the component-based software system 100 shown in FIG. Referring to FIG. 10, rn (cN) denotes a group of tracking nodes having the same child node cN. In this embodiment, STC shown in Tables 1 to 3, IORG shown in FIG. 4, and T red in of . CI.node = {x 1,1, x 1,2 , x 2,1, x 2,2} a, CO.node = {y 1, 1 , y 1, 2, y 3, 1, y 3, 2 }. Each element of T red in is assigned to CI.data. If r 1 in Table 9 is assigned to CI.data, then CI.node is selected as the first tracking nodes. Then, the tracking nodes are assigned to the child nodes y 1 , 1 , y 2 , 1, y 2 , 2 , y 2 , and 3 , respectively. Child node y 1, x 1,3 of the parent node 2 because the tracking node, child node y 1, no trace group are associated with two nodes. Thus, RNG is {rn (y 1, 1) , rn (y 2, 1), rn (y 2, 2), rn (y 2, 3)}. When rn is rn (y 1,1 ), rn.node is {x 1,1 , x 1,2 } and rn.data is {A1, B1}. Since all nodes of rn (y 1,1 ) are input nodes and rn (y 1 , 1 ) and cN.node are associated with ATC 1 , child node y 1 , 1 of rn (y 1 , 1 ) node, and then assigns the ATC 1 shown in Table 1 to the RTC. Then, cN.node exists in CO.node and cN.data can be added to CO.data. This is the expected result value for the external output y 1 , 1 . is also treated in the similar manner with respect to rn (y 2,1), rn ( y 2, 2) and rn (y 2, 3). Thus, CO.data = {D1}, nextN.node = is a {y 2, 1, y 2 , 2, y 2, 3} and nextN.data = {C1, H1, J1 }.

이어서, nextN 을 인자로 함수 SearchExpectedResults()를 재귀적으로 호출한다. RNG 는 도 10(b)에 도시된 바와 같이 { rn(x1,3), rn(x3,1), rn(x3,2) } 이다. rn 이 rn(x1,3)일 때, rn.node 는 { y2 ,1 } 이고, rn.data 는 { C1 } 이다. rn(x1,3)의 모든 노드들이 출력 노드이고 cN.node 가 ATC1 에 연관되기 때문에, rn(x1,3) 의 자녀 노드 x1, 3 를 cN.node 에 할당하고, 이어서 표 1에 제시된 ATC1 을 RTC 에 할당한다. 앞에서 살펴본 바와 같이, rn 의 모든 노드들이 출력 노드인 경우, cN.node 에만 연관된 단위 컴포넌트의 테스트 케이스들을 RTC 에 할당한다. 이어서, rn.data 가 ATC1 의 ATC1 1 내에 존재하기 때문에 데이터 C1 을 cN.data 에 할당한다. cN.node 의 자녀 노드가 y2 , 1 이므로, cN 이 nextN 에 추가될 수 있다. 따라서, nextN.node = { x1,3, x3,1, x3,2 } 및 nextN.data = { C1, H1, J1 } 이 된다.Next, recursively call the function SearchExpectedResults () with the nextN as an argument. RNG is {rn (x 1,3 ), rn (x 3,1 ), rn (x 3,2 )} as shown in Fig. 10 (b). When rn is rn (x 1,3 ), rn.node is {y 2 , 1 } and rn.data is {C1}. Since all nodes of rn (x 1,3 ) are output nodes and cN.node is associated with ATC 1 , child nodes x 1, 3 of rn (x 1,3 ) are assigned to cN.node, allocates ATC 1 shown in the RTC. As we have seen, if all nodes of rn are output nodes, we assign the test cases of the unit component associated with cN.node to the RTC. Then, since rn.data is present within the ATC ATC 1 1 1 allocates the data C1 to cN.data. Since child node of cN.node is y 2 , 1 , cN can be added to nextN. Thus, nextN.node = {x 1,3, x 3,1 , x 3,2 } and nextN.data = {C1, H1, J1}.

마지막으로, nextN 을 인자로 함수 SearchExpectedResults()를 호출한다. RNG 는 도 10(c)에 도시된 바와 같이 { rn(y1 ,2), rn(y3 ,1), rn(y3 ,2) } 이다. 이 단계에서는, 자녀 노드 y1 , 2 의 부모 노드인 x1,1 및 x1,3 이 추적 노드이기 때문에, 자녀 노드 y1 ,2 에 연관된 추적 노드들을 그룹화한다. RNG 의 각 원소의 cN.node 가 CO.node 내에 있기 때문에, 모든 cN.data 는 외부 출력 y1 ,2, y3 ,1 y3 , 2 의 예상 결과 값이다. 따라서, CO.data = { D1, E1, K1, L1 } 및 nextN.node = Φ 이 된다.Finally, we call the function SearchExpectedResults () with nextN as the argument. RNG is the {rn (y 1, 2) , rn (y 3, 1), rn (y 3, 2)} , as shown in 10 (c) Fig. In this step, since the child node y 1, the parent node of the 2 x 1,1 x 1,3 and is tracking nodes, grouping the nodes associated with the child node trace y 1, 2. Since the cN.node of each element of the RNG is in the CO.node, all cN.data are associated with the external outputs y 1 , 2, y 3 , y 3 and 2 , respectively. Therefore, CO.data = {D1, E1, K1, L1} and nextN.node = ?.

위 과정의 결과로서, 함수 SearchExpectedResults()는 CI.data 가 r1 일 때 CO.data = { D1, E1, K1, L1 } 을 리턴한다.As a result of the above procedure, a function SearchExpectedResults () returns the CO.data = {D1, E1, K1 , L1} CI.data when the r 1 day.

Figure 112014100353348-pat00013
Figure 112014100353348-pat00013

표 10을 참조하면, 도 1에 도시된 컴포넌트 기반 소프트웨어 시스템(100)에 도 8 및 도 9의 알고리즘을 적용한 결과가 제시된다. 표 10에서, 각 열은 IORG 의 깊이(depth), 연관 노드 그룹(RNG), 각 노드 그룹에 연관된 테스트 케이스들(RTC), 노드 그룹에 의존하여 변하는 외부 출력 노드(Rex) 및 Tred out 의 예상 결과 값 생성에서의 실패 횟수(number of failures)를 나타낸다. 외부 출력 y3 ,1 에 대한 하나의 예상 결과 값이 생성되지 않을 뿐이다. CI.data 가 표 9의 r4 일 때, 함수는 CO.data = { D4, E4, NULL, L2 } 를 리턴한다. 구체적으로, rn 이 깊이 3의 rn(x3,1)일 때, rn.node 는 { y2 ,2 } 이고, rn.data 는 { H4 } 이다. 자녀 노드 x3,1 을 cN.node 에 할당하고, 이어서 표 3에 제시된 ATC3 을 RTC 에 할당한다. ATC3 에 rn.data 가 없으므로, cN.node 에 연관된 모든 노드를 지운다. 즉, CI.data 가 표 9의 r4 일 때 y3 ,1 에 대한 예상 결과 값의 생성이 실패한다.Referring to Table 10, results of applying the algorithms of FIGS. 8 and 9 to the component-based software system 100 shown in FIG. 1 are presented. In Table 10, for each column IORG the depth (depth), associated group of nodes (RNG), the test cases are associated to each group of nodes (RTC), an external output that varies depending on the node groups the node (Rex) and T red out Represents the number of failures in the expected result value generation. Only one expected result value for the external output y 3 , 1 is not generated. When CI.data is r 4 in Table 9, the function returns CO.data = {D4, E4, NULL, L2}. Specifically, when rn is rn (x 3,1 ) with depth 3, rn.node is {y 2 , 2 } and rn.data is {H4}. Assign child node x 3,1 to cN.node, and then assign ATC 3 shown in Table 3 to RTC. Since ATC 3 does not have rn.data, it deletes all nodes associated with cN.node. That is, when CI.data is r 4 in Table 9, the generation of the expected result value for y 3 , 1 fails.

Figure 112014100353348-pat00014
Figure 112014100353348-pat00014

표 11을 참조하면, 도 1에 도시된 컴포넌트 기반 소프트웨어 시스템(100)의 Tred in 에 대한 Tred out 이 제시된다. NULL 은 예상 결과 값이 자동으로 생성되지 않은 경우를 의미한다. 상기 시간 복잡도 표현에 따라, 시간 복잡도는 다음과 같이 계산될 수 있다.
Referring to Table 11, for the red T in of the component-based software system 100 shown in Figure 1 T red out . NULL means that the expected result value was not automatically generated. According to the temporal complexity representation, the time complexity can be calculated as follows.

O(.) = 4 * ((8+4+4+4)+(8+6+6)+(8+6+6)) =240
O (.) = 4 * ((8 + 4 + 4 + 4) + (8 + 6 + 6) + (8 + 6 + 6)

여기서, |Tred in| = 4, m = 4, |RNG(1)| = 4, |RNG(2)| = 3, |RNG(3)| = 3, |ATC1| = 8, |ATC2| = 4, |ATC3| = 6 이다.= RNG (3) | = 3, | ATC 1 | = 8, | ATC 1 | = 4, | RNG (2) | = 3, | T red in | = 4, m = 2 | = 4, | ATC 3 | = 6.

표 11에서 r4 의 외부 출력 y3 ,1 에 대한 예상 결과 값 K9 은 수동으로 결정된 값일 수 있다.In Table 11. Estimated results for the external output y 3, r 1 of 4 K9 can be determined by a value manually.

도 11은 컴포넌트 기반 소프트웨어 시스템(100)의 복수의 단위 컴포넌트들 내부의 입출력 연관관계가 알려지지 않은 경우에 도 1에 도시된 컴포넌트 기반 소프트웨어 시스템(100)의 Tred out 을 생성하는 과정을 나타낸다. 도 11을 참조하면, 컴포넌트 기반 소프트웨어 시스템(100)의 복수의 단위 컴포넌트들 간의 입출력 연관관계 정보만을 이용하여 생성된 입출력 연관관계 방향 그래프가 이용될 수 있다. 복수의 단위 컴포넌트들 내부의 입출력 연관관계 정보를 이용하지 않기 때문에 복수의 단위 컴포넌트들 내부의 입출력 연관관계에 대응하는 가상 입출력 연관관계가 생성되며, 이를 통해 도 10을 참조하여 설명된 과정과 유사한 방식으로 Tred out 을 생성할 수 있다.11 illustrates a process of generating a T red out of the component-based software system 100 shown in FIG. 1 when the input / output association within a plurality of unit components of the component-based software system 100 is unknown. Referring to FIG. 11, an input / output association direction graph generated using only input / output association information between a plurality of unit components of the component-based software system 100 may be used. Since the input / output association information in the plurality of unit components is not used, a virtual input / output association corresponding to the input / output association in the plurality of unit components is generated, and a similar method as described with reference to FIG. 10 To generate a T red out .

다시 도 3을 참조하면 단계 350에서, 출력부(230)는 축소된 예상 결과 값에 기초하여 전체 예상 결과 값을 생성하여 출력할 수 있다. Tred out 이 생성되면, Tred out 으로부터 Tout 이 확장될 수 있다. XD(yk) 는 Tin 내의 입력 테스트 데이터 X(yk) 의 집합을 의미할 수 있다. 먼저 Tin 내의 각 원소는 X(yk)에 따라 분리된다. 예를 들어, 표 4의 원소 t1 의 경우, 원소는 XD(y1 ,1) = { A1, B1 }, XD(y1 ,2) = { B1, F1 }, XD(y3 ,1) = { F1, G1 }, XD(y3 ,2) = { G1 } 와 같이 분리될 수 있다. 이어서, 각 XD(yk) 에 대하여 예상 결과 값이 Tred in 에 대한 Tred out 에서 검색된다. 표 12는 도 1에 도시된 컴포넌트 기반 소프트웨어 시스템(100)의 Tin 에 대한 Tout 을 제시한다.Referring back to FIG. 3, in step 350, the output unit 230 may generate and output the entire expected result value based on the reduced estimated result value. When T red out is generated from the T red out T out Can be expanded. X D (y k ) may mean a set of input test data X (y k ) in T in . First, each element in T in is separated according to X (y k ). For example, for the element t 1 of Table 4, the element X D (y 1, 1) = {A1, B1}, X D (y 1, 2) = {B1, F1}, X D (y 3 , may be isolated, such as 1) = {F1, G1} , X D (y 3, 2) = {G1}. Then, the expected result for each X D (y k) is retrieved from the T red out to the T in red. Table 12 presents T out for the T in of the component-based software system 100 shown in FIG.

Figure 112014100353348-pat00015
Figure 112014100353348-pat00015

이하에서는 도 7을 참조하여, 일 실시예에 따른 컴포넌트 기반 소프트웨어 시스템(100)의 테스트를 위한 예상 결과 값 자동 생성 장치(200)의 동작에 대하여 구체적으로 살펴본다. 도 7에 도시된 복합 컴포넌트 테스트를 위한 예상 결과 값 자동 생성 장치의 동작 과정에는 도 3을 참조하여 설명된 내용이 그대로 적용될 수 있으므로, 도 3에 도시된 동작과의 차이점을 중심으로 기술한다.Hereinafter, the operation of the expected result value automatic generation device 200 for testing the component-based software system 100 according to an exemplary embodiment will be described in detail with reference to FIG. The operation of the expected result value automatic generation apparatus for the composite component test shown in FIG. 7 can be applied as it is with reference to FIG. 3. Therefore, the difference from the operation shown in FIG. 3 will be mainly described.

단계 740에서, 프로세서(220)는 컴포넌트 기반 소프트웨어 시스템의 적어도 하나의 출력 파라미터가 상기 컴포넌트 기반 소프트웨어 시스템의 입력 파라미터들 전부에 의존하여 달라지는지 여부를 판단할 수 있다. 만약, 컴포넌트 기반 소프트웨어 시스템의 어느 하나의 출력이 입력 파라미터들 전부에 의존하여 달라진다면(즉, 일부 X(yk)가 CCin 과 동일하다면), Tred in = Tin 이기 때문에 Tred in 을 새로 생성할 필요가 없다. 그렇지 않은 경우, Tred in 는 Tin 보다 더 작은 집합일 수 있다. Tred in 의 가능한 크기는 다음과 같이 표현될 수 있다.
At step 740, the processor 220 may determine whether at least one output parameter of the component-based software system depends on all of the input parameters of the component-based software system. If, if any one output of the component-based software system changed depending on all of the input parameters (i. E., Are identical and some X (y k) is CC in), the since the T red in = T in T red in You do not need to create a new one. Otherwise, T red in may be a smaller set than T in . The possible size of T red in can be expressed as:

Max(|R(y1)|, … , |R(yq)|) ≤ |Tred in| ≤ |Tin
Max (| R (y 1) |, ..., | R (y q) |) ≤ | T red in | ≤ | T in |

단계 750에서, 컴포넌트 기반 소프트웨어 시스템의 적어도 하나의 출력 파라미터가 상기 컴포넌트 기반 소프트웨어 시스템의 입력 파라미터들 전부에 의존하여 달라진다고 판단된 경우, 프로세서(220)는 Tin 과 동일한 Tred in 을 생성할 수 있다.In step 750, if it is determined that at least one output parameter of the component-based software system dalrajindago in dependence on all of the input parameters of the component-based software system, the processor 220 is the same T in and T in red Can be generated.

단계 760에서, 컴포넌트 기반 소프트웨어 시스템의 출력 파라미터들 각각이 상기 컴포넌트 기반 소프트웨어 시스템의 입력 파라미터들 전부에 의존하여 달라지지 않는다고 판단된 경우, 프로세서(220)는 컴포넌트 기반 소프트웨어 시스템의 출력 파라미터들 각각에 대응하는 연관 입력 파라미터 집합들을 생성할 수 있다. 연관 입력 파라미터 집합은 도 3의 단계 340에서와 유사한 방식으로 생성될 수 있다. In step 760, if it is determined that each of the output parameters of the component-based software system does not depend on all of the input parameters of the component-based software system, the processor 220 may correspond to each of the output parameters of the component- Lt; RTI ID = 0.0 &gt; input &lt; / RTI &gt; The set of associated input parameters may be generated in a manner similar to that in step 340 of FIG.

단계 770에서, 프로세서(220)는 생성된 연관 입력 파라미터 집합들에 기초하여 Tin 보다 더 작은 Tred in 을 생성할 수 있다. Tred in 은 도 3의 단계 340에서와 유사한 방식으로 생성될 수 있다.At step 770, the processor 220 generates a T red in less than T in based on the generated set of associated input parameters Can be generated. T red in May be generated in a similar manner as in step 340 of FIG.

도 12는 일 실시예에 따른 컴포넌트 기반 소프트웨어 시스템을 나타낸다. 도 12를 참조하면, 컴포넌트 기반 소프트웨어 시스템(1200)에는 컴포넌트 기반 소프트웨어 시스템(100)에 비하여 변경된 입출력 연관관계가 도시되어 있다. 이러한 경우, 도 12에 도시된 바와 같이, 변경되는 외부 출력에 연관된 입출력 연관관계만을 검색하여 예상 결과 값을 생성할 수 있다. 컴포넌트 기반 소프트웨어 시스템(1200)에는 컴포넌트 기반 소프트웨어 시스템(100)에 비하여 C2 의 출력 파라미터 y2,4 및 C3 의 입력 파라미터 x3,3 가 부가되고, 외부 출력 파라미터 y3 , 2 의 예상 결과 값이 변경될 수 있다. 따라서, 출력 파라미터 y3 ,2 에 연관된 노드들(즉, x2,2, y2,3, y2 ,4, x3,2 및 x3,3)만이 그룹화되고, Tred out 내의 y3 , 2 의 예상 결과 값을 생성하기 위하여 그 그룹들에 연관된 테스트 케이스들이 다시 검색된다. 마지막으로, 변경된 Tred out 이 다시 Tout 으로 확장될 수 있다.
12 illustrates a component-based software system in accordance with one embodiment. Referring to FIG. 12, the component-based software system 1200 has a modified input / output relationship with respect to the component-based software system 100. In such a case, as shown in FIG. 12, an expected result value can be generated by searching only the input / output relationship associated with the changed external output. Component-based software system 1200 is an input parameter x of the C 2 and C 3 of the output parameter, y 2,4, 3,3 has been added as compared to component-based software system 100, the external output parameter y 3, the expected result of 2 The value can be changed. Therefore, the output parameter y 3, the nodes associated with the second (i.e., x 2,2, y 2,3, y 2, 4, x 3,2, and x 3,3) are grouped, only, T 3 y in the red out , The test cases associated with the groups are retrieved again to produce an expected result value of 2 . Finally, the modified T red out can again be extended to T out .

이하에서는, 본 발명의 실시예들에 따른 효과를 검증하기 위한 실험 데이터가 제시된다. 예상 결과 값의 수동 생성 비용을 Cer 이라 할 때, Cer 은 다음과 같이 표현될 수 있다.
Hereinafter, experimental data for verifying effects according to embodiments of the present invention is presented. Assuming that the cost of manually generating the expected value is C er , C er Can be expressed as follows.

Cer = Em / Et
C er = E m / E t

여기서, Em 은 수동으로 생성되는 예상 결과 값의 개수를 의미할 수 있고, Et 는 생성되는 모든 예상 결과 값의 총 개수를 의미할 수 있다. 수동으로 결정해야 하는 예상 결과 값이 늘어날수록 비용 Cer 은 증가한다. 본 발명에 따른 실시예들의 효과를 검증하기 위하여, 각각의 실시예에서 측정된 Cer 을 "P. J. Schroeder, P. Faherty, B. Korel, Generating expected results for automated black-box testing, in: Automated Software Engineering, 2002.Proceedings. ASE 2002. 17th IEEE International Conference on, IEEE, 139-148, 2002(이하, 'Schroeder et al.'이라 한다)"에 따른 Cer 과 비교하여 기재한다.
Where E m may refer to the number of expected result values generated manually, and E t may refer to the total number of all expected result values generated. The cost C er increases as the expected outcome value, which must be determined manually. In order to verify the effect of the embodiments according to the present invention, the measured C er in each example is referred to as "PJ Schroeder, P. Faherty, B. Korel, Generating expected results for automated black-box testing, in: Automated Software Engineering , 2002.Proceedings. ASE 2002. 17th IEEE International Conference on, IEEE, 139-148, 2002 ( hereinafter, 'Schroeder et al.' referred to) are shown in comparison to C according to the er ".

I. I. 실시예Example 1 One

본 실시예에 따라, CCout 의 외부 출력들 각각이 CCin 의 외부 입력들 중 일부에만 의존하여 달라지는 경우(즉, CCin 의 외부 입력들 전부에 의존하여 달라지지 않는 경우)의 본 발명의 효과가 검증될 수 있다. 본 실시예에서는 Tred in 이 Tin 보다 작을 수 있다.According to this embodiment, the effect of the invention of the external output of the CC out each case differ depending only on a part of the external input of the CC in (that is, does not vary in dependence on all of the external inputs of CC in) Can be verified. In the present embodiment, T red in may be smaller than T in .

본 실시예에서는 도 14에 도시된 바와 같은 컴포넌트 기반 소프트웨어 시스템(1400)을 이용한다. 컴포넌트 기반 소프트웨어 시스템(1400)은 장애물을 피하고, 로봇을 움직이고, 안내 메시지를 생성한다. 컴포넌트 기반 소프트웨어 시스템(1400)은 거리 센서 컴포넌트(Cdsc), 이동 컴포넌트(Cmc), 메시지 생성 컴포넌트(Csgc) 및 제어 컴포넌트(Ccc)를 포함한다.In this embodiment, a component-based software system 1400 as shown in Fig. 14 is used. The component based software system 1400 avoids obstacles, moves the robot, and generates a guidance message. The component based software system 1400 includes a distance sensor component C dsc , a moving component C mc , a message generating component C sgc , and a control component C cc .

도 15를 참조하면, 컴포넌트 기반 소프트웨어 시스템(1200)의 입출력 연관관계 방향 그래프(IORG)가 도시된다. 컴포넌트 기반 소프트웨어 시스템(1400)의 입출력 연관관계 방향 그래프는 도 4에 나타난 알고리즘에 의해 생성된다. 도 15의 IORG에 따르면, 컴포넌트 기반 소프트웨어 시스템(1200)의 외부 출력 각각은 아래와 같이 외부 입력들 중 일부에만 의존하여 달라진다.
Referring to FIG. 15, there is shown an I / O association direction graph (IORG) of a component based software system 1200. The input / output association direction graph of the component based software system 1400 is generated by the algorithm shown in FIG. According to the IORG in FIG. 15, each external output of the component based software system 1200 depends on only some of the external inputs as follows.

X(sgc_out1) = { dsc_in1, dsc_in2, dsc_in3, dsc_in7, sgc_in1 }X (sgc_out1) = {dsc_in1, dsc_in2, dsc_in3, dsc_in7, sgc_in1}

X(mc_out1) = { dsc_in4, dsc_in5, dsc_in6, dsc_in8 }
X (mc_out1) = {dsc_in4, dsc_in5, dsc_in6, dsc_in8}

실험의 수행을 위하여, 단위 컴포넌트들 각각의 테스트 케이스(즉, 입력 테스트 데이터 및 예상 결과 값)가 주어진다. 표 13 내지 16은 각각 거리 센서 컴포넌트(Cdsc), 제어 컴포넌트(Ccc), 메시지 생성 컴포넌트(Csgc) 및 이동 컴포넌트(Cmc)의 입력 파라미터 명세 및 테스트 케이스이다. For the performance of the experiment, the test cases of each of the unit components (i. E. Input test data and expected result values) are given. Tables 13 through 16 are input parameter specifications and test cases of the distance sensor component C dsc , the control component C cc , the message generation component C sgc , and the mobile component C mc , respectively.

Figure 112014100353348-pat00016
Figure 112014100353348-pat00016

Figure 112014100353348-pat00017
Figure 112014100353348-pat00017

Figure 112014100353348-pat00018
Figure 112014100353348-pat00018

Figure 112014100353348-pat00019
Figure 112014100353348-pat00019

각 단위 컴포넌트에 대하여, 다양한 스트렝스(strength)의 입력 테스트 데이터를 조합한다. 각 단위 컴포넌트의 입력 파라미터들의 개수로 최소 및 최대 스트렝스를 결정한다. 그리고, 각 단위 컴포넌트의 입력 테스트 데이터의 조합의 예상 결과 값을 생성한다. 표 17에는 단위 컴포넌트들 전부의 테스트 케이스들의 집합이 제시된다. t 는 ATC가 생성될 때의 스트렝스를 의미하고, 기호 "-"는 입력 파라미터들의 개수가 1 이기 때문에 조합하지 않음을 의미한다. 예를 들어, ATCmc 가 생성될 때, Cmc 가 하나의 입력 파라미터(mc_in1)만을 가지기 때문에 입력 테스트 데이터를 조합하지 않는다. 예를 들어, STC7 은 t = 8 로 생성된 ATCdsc, t = 3 으로 생성된 ATCcc, t = 3 으로 생성된 ATCsgc 및 ATCmc 로 구성된다.For each unit component, input test data of various strengths are combined. The minimum and maximum strengths are determined by the number of input parameters of each unit component. Then, an expected result value of the combination of the input test data of each unit component is generated. Table 17 shows the set of test cases for all of the unit components. t means the strength at the time of generation of the ATC, and the symbol "- " means that the number of input parameters is unity because the number of input parameters is one. For example, when ATC mc is generated, input test data is not combined because C mc has only one input parameter (mc_in1). For example, STC 7 consists of ATC dsc generated at t = 8, ATC cc generated at t = 3, ATC sgc generated at t = 3, and ATC mc .

Figure 112014100353348-pat00020
Figure 112014100353348-pat00020

이어서, 컴포넌트 기반 소프트웨어 시스템(1200)의 Tin 을 생성한다. 표 18 에는 컴포넌트 기반 소프트웨어 시스템(1200)의 외부 입력 파라미터들의 명세 및 그 입력 테스트 데이터가 제시된다. Next, a T in of the component-based software system 1200 is generated. Table 18 provides a specification of the external input parameters of the component-based software system 1200 and its input test data.

Figure 112014100353348-pat00021
Figure 112014100353348-pat00021

Tin 을 생성하기 위하여, 입력 테스트 데이터를 다음과 같이 조합한다.
To generate T in , the input test data is combined as follows.

Tin = D(dsc_in1) × D(dsc_in2) × D(dsc_in3) × D(dsc_in4) × D(dsc_in5) × D(dsc_in6) × D(dsc_in7) × D(dsc_in8) × D(sgc_in1), T in = D (dsc_in1) × D (dsc_in2) × D (dsc_in3) × D (dsc_in4) × D (dsc_in5) × D (dsc_in6) × D (dsc_in7) × D (dsc_in8) × D (sgc_in1),

|Tin| = 4 * 4 * 4 * 3 * 3 * 3 * 2 * 2 * 2 = 13824.
| T in | = 4 * 4 * 4 * 3 * 3 * 3 * 2 * 2 * 2 = 13824.

다음으로, 위 Tin 을 커버할 수 있는 Tred in 을 생성한다. 각 외부 출력(sgc_out, mc_out)에 대하여, 각 외부 출력에 연관된 입력 테스트 데이터의 조합의 집합을 생성한다.
Next, T red in which the upper T in can be covered . For each external output (sgc_out, mc_out), a set of combinations of input test data associated with each external output is generated.

R(sgc_out1) = D(dsc_in1) × D(dsc_in2) × D(dsc_in3) × D(dsc_in7) × D(sgc_in1),R (sgc_out1) = D (dsc_in1) D (dsc_in2) D (dsc_in3) D (dsc_in7) D (sgc_in1)

R(mc_out1) = D(dsc_in4) × D(dsc_in5) × D(dsc_in6) × D(dsc_in8),R (mc_out1) = D (dsc_in4) D (dsc_in5) D (dsc_in6) D (dsc_in8)

|R(sgc_out1)| = 4 * 4 * 4 * 2 = 256,| R (sgc_out1) | = 4 * 4 * 4 * 2 = 256,

|R(mc_out1)| = 3 * 3 * 3 * 2 = 54.
| R (mc_out1) | = 3 * 3 * 3 * 2 = 54.

따라서, Tred in 은 다음과 같이 생성된다.
Therefore, T red in Is generated as follows.

Tred in = R(sc_out1) ∪ R(mc_out1),T red in = R (sc_out1) ∪ R (mc_out1),

|Tred in| = max(R(sc_out1), R(mc_out1)) = 256.
| T red in | = max (R (sc_out1), R (mc_out1)) = 256.

Tout 및 Tred out 의 예상 결과 값의 총 개수는 다음과 같이 계산 될 수 있다.
The total number of expected outcome values of T out and T red out can be calculated as follows.

|Tout|= |Tin|*|CCout|= 13824 * 2 = 27648,| T out | = | T in | * | CC out | = 13824 * 2 = 27648,

|Tred out| = |Tred in|*|CCout|= 256 * 2 = 512.
| T red out | = | T red in | * | CC out | = 256 * 2 = 512.

이어서, 도 7 및 8에 나타난 알고리즘에 따라 Tred out 을 생성하고, Schroeder et al.에 개시된 것과 유사한 방식으로 Tred out 을 Tout 으로 확장한다.Then, according to the algorithm shown in Figs. 7 and 8 generate a T red out, and expand in a manner similar to that described in Schroeder et al. T red out to T out.

Figure 112014100353348-pat00022
Figure 112014100353348-pat00022

표 19는 Et = Tout 일 때의 예상 결과 값 수동 생성의 비용 Cer 을 나타낸다. Schroeder et al.의 비용은 단위 컴포넌트들 전부의 테스트 케이스들의 집합과 무관하게 0.018 이다. 즉, Tred out 의 예상 결과 값 512 개를 모두 수동으로 결정한 후, 이를 Tout 으로 자동으로 확장한다.Table 19 shows the cost C er of the manual generation of the expected result value at E t = T out . The cost of Schroeder et al. Is 0.018, regardless of the set of test cases for all of the component components. In other words, it will automatically expand to T out after all of the 512 expected results out of T red out manually decide to.

본 실시예에 따른 비용은 단위 컴포넌트들 전부의 테스트 케이스들의 집합에 따라 0.001 내지 0.015 의 범위 내이다. 테스트 케이스들의 집합을 이용하여 Tred out 의 예상 결과 값 512 개 중 95 내지 480 개를 자동으로 생성하기 때문에, 나머지 32 내지 417 개의 예상 결과 값만을 수동으로 결정한다.
The cost according to this embodiment is in the range of 0.001 to 0.015 depending on the set of test cases for all of the unit components. Using a set of test cases in the 95 to 480 of the 512 estimated result of the T red out because the auto-generated, and the remaining 32 to 417 expected results only manually determined.

IIII . . 실시예Example 2 2

본 실시예에 따라, CCout 의 외부 출력이 CCin 의 외부 입력들 전부에 의존하여 달라지는 경우의 본 발명의 효과가 검증될 수 있다. 본 실시예에서는 Tred in 이 Tin 과 동일할 수 있다.According to the present embodiment, the effect of the present invention in the case where the external output of CC out varies depending on all the external inputs of CC in can be verified. In this embodiment, T red in may be equal to T in .

본 실시예에서는 도 16에 도시된 바와 같은 컴포넌트 기반 소프트웨어 시스템(1600)을 이용한다. 컴포넌트 기반 소프트웨어 시스템(1600)은 출발지로부터 목적지로 네비게이션을 수행하고, 장애물을 피하고, 로봇을 움직이고, 안내 메시지를 생성한다. 컴포넌트 기반 소프트웨어 시스템(1600)은 글로벌 맵 컴포넌트(Cgmc), 경로 계획 컴포넌트(Cppc), 장애물 회피 컴포넌트(Coac), 네비게이션 컴포넌트(Cnc), 로컬라이즈 컴포넌트(Clc), 범퍼 센서 컴포넌트(Cbas), 사용자 검출 컴포넌트(Cudc), 레이저 스캐너 컴포넌트(Clsc), 이동 컴포넌트(Cmc) 및 메시지 생성 컴포넌트(Csgc)를 포함한다.In this embodiment, a component based software system 1600 as shown in FIG. 16 is used. The component-based software system 1600 performs navigation from the origin to the destination, avoids obstacles, moves the robot, and generates a guidance message. The component based software system 1600 includes a global map component C gmc , a path planning component C ppc , an obstacle avoidance component C oac , a navigation component C nc , a localization component C lc , (C bas), and a user detection component (C udc), the laser scanner component (C lsc), the mobile component (C mc) and a message generating component (C sgc).

도 17을 참조하면, 컴포넌트 기반 소프트웨어 시스템(1600)의 입출력 연관관계 방향 그래프(IORG)가 도시된다. 컴포넌트 기반 소프트웨어 시스템(1600)의 입출력 연관관계 방향 그래프는 도 4에 나타난 알고리즘에 의해 생성된다. 도 17의 IORG에 따르면, 컴포넌트 기반 소프트웨어 시스템(1600)의 외부 출력 각각은 아래와 같이 외부 입력들 전부에 의존하여 달라진다.
Referring to FIG. 17, an input / output affinity direction graph (IORG) of a component based software system 1600 is shown. The input / output association direction graph of the component based software system 1600 is generated by the algorithm shown in FIG. According to the IORG in Figure 17, each external output of the component based software system 1600 depends on all of the external inputs as follows.

X(sgc_out1) = CCin,X (sgc_out1) = CC in ,

X(mc_out1) = { gmc_in1, lsc_in1, nc_in1, nc_in2, bsc_in1, udc_in1, udc_in2, udc_in3, udc_in4 }.
X (mc_out1) = {gmc_in1, lsc_in1, nc_in1, nc_in2, bsc_in1, udc_in1, udc_in2, udc_in3, udc_in4}.

실험의 수행을 위하여, 단위 컴포넌트들 각각의 테스트 케이스(즉, 입력 테스트 데이터 및 예상 결과 값)가 주어진다. 표 20 내지 29는 각각 글로벌 맵 컴포넌트(Cgmc), 레이저 스캐너 컴포넌트(Clsc), 범퍼 센서 컴포넌트(Cbas), 사용자 검출 컴포넌트(Cudc), 로컬라이즈 컴포넌트(Clc), 네비게이션 컴포넌트(Cnc), 장애물 회피 컴포넌트(Coac), 경로 계획 컴포넌트(Cppc), 메시지 생성 컴포넌트(Csgc) 및 이동 컴포넌트(Cmc)의 입력 파라미터 명세 및 테스트 케이스이다. For the performance of the experiment, the test cases of each of the unit components (i. E. Input test data and expected result values) are given. Tables 20 to 29 illustrate the global map component C gmc , the laser scanner component C lsc , the bumper sensor component C bass , the user detection component C dc , the localization component C lc , the navigation component C nc ), an obstacle avoidance component (C oac ), a path planning component (C ppc ), a message generating component (C sgc ) and a moving component (C mc ).

Figure 112014100353348-pat00023
Figure 112014100353348-pat00023

Figure 112014100353348-pat00024
Figure 112014100353348-pat00024

Figure 112014100353348-pat00025
Figure 112014100353348-pat00025

Figure 112014100353348-pat00026
Figure 112014100353348-pat00026

Figure 112014100353348-pat00027
Figure 112014100353348-pat00027

Figure 112014100353348-pat00028
Figure 112014100353348-pat00028

Figure 112014100353348-pat00029
Figure 112014100353348-pat00029

Figure 112014100353348-pat00030
Figure 112014100353348-pat00030

Figure 112014100353348-pat00031
Figure 112014100353348-pat00031

Figure 112014100353348-pat00032
Figure 112014100353348-pat00032

앞서 기재된 실시예와 마찬가지로, 각 단위 컴포넌트에 대하여 입력 테스트 데이터를 조합한다. 그리고, 각 단위 컴포넌트의 입력 테스트 데이터의 조합의 예상 결과 값을 생성한다. 표 30에는 단위 컴포넌트들 전부의 테스트 케이스들의 집합이 제시된다. As in the previously described embodiment, the input test data is combined for each unit component. Then, an expected result value of the combination of the input test data of each unit component is generated. Table 30 shows the set of test cases for all of the unit components.

Figure 112014100353348-pat00033
Figure 112014100353348-pat00033

이어서, 컴포넌트 기반 소프트웨어 시스템(1400)의 Tin 을 생성한다. 표 31 에는 컴포넌트 기반 소프트웨어 시스템(1400)의 외부 입력 파라미터들의 명세 및 그 입력 테스트 데이터가 제시된다. Next, a T in of the component-based software system 1400 is generated. Table 31 provides a specification of the external input parameters of the component-based software system 1400 and its input test data.

Figure 112014100353348-pat00034
Figure 112014100353348-pat00034

Tin 을 생성하기 위하여, 입력 테스트 데이터를 다음과 같이 조합한다.
To generate T in , the input test data is combined as follows.

Tin = D(gmc_in1) × D(lsc_in1) × D(nc_in1) × D(nc_in2) × D(bsc_in1) × D(udc_in1) × D(udc_in2) × D(udc_in3) × D(udc_in4) × D(sgc_in1), T in = D (gmc_in1) × D (lsc_in1) × D (nc_in1) × D (nc_in2) × D (bsc_in1) × D (udc_in1) × D (udc_in2) × D (udc_in3) × D (udc_in4) × D ( sgc_in1),

|Tin| = 1 * 6 * 2 * 2 * 2 * 4 * 4 * 4 * 2 * 2 = 12288.
| T in | = 1 * 6 * 2 * 2 * 2 * 4 * 4 * 4 * 2 * 2 = 12288.

다음으로, 위 Tin 을 커버할 수 있는 Tred in 을 생성한다. 각 외부 출력(sgc_out, mc_out)에 대하여, 각 외부 출력에 연관된 입력 테스트 데이터의 조합의 집합을 생성한다.
Next, T red in which the upper T in can be covered . For each external output (sgc_out, mc_out), a set of combinations of input test data associated with each external output is generated.

R(sgc_out1) = D(gmc_in1) × D(lsc_in1) × D(nc_in1) × D(nc_in2) × D(bsc_in1) × D(udc_in1) × D(udc_in2) × D(udc_in3) × D(udc_in4) × D(sgc_in1),D (udc_in1) D (udc_in2) D (udc_in3) D (udc_in4) D (gcc_in1) D (lsc_in1) D (nc_in1) D (nc_in2) D (bsc_in1) D (sgc_in1),

R(mc_out1) = D(gmc_in1) × D(lsc_in1) × D(nc_in1) × D(nc_in2) × D(bsc_in1) × D(udc_in1) × D(udc_in2) × D(udc_in3) × D(udc_in4),(Mc_out1) = D (gmc_in1) 占 D (lsc_in1) 占 D (nc_in1) 占 D (nc_in2) 占 D (bsc_in1) 占 D (udc_in1) 占 D (udc_in2) 占 D (udc_in3) 占 D

|R(sgc_out1)| = |Tin| = 12288,| R (sgc_out1) | = | T in | = 12288,

|R(mc_out1)| = 1 * 6 * 2 * 2 * 2 * 4 * 4 * 4 * 2 = 6144.
| R (mc_out1) | = 1 * 6 * 2 * 2 * 2 * 4 * 4 * 4 * 2 = 6144.

여기서, X(sgc_out1) = CCin 이기 때문에 R(sgc_out1) = Tin 이다. 따라서, Tred in 을 새로 생성하지 않으며, Tred in = Tin 이다. Tout 및 Tred out 의 예상 결과 값의 총 개수는 다음과 같이 계산 될 수 있다.
Here, since the X (sgc_out1) = CC in R (sgc_out1) = T in. Therefore, T red in is not newly generated, and T red in = T in . The total number of expected outcome values of T out and T red out can be calculated as follows.

|Tout|= |Tred out| = |Tin|*|CCout|= 12288 * 2 = 24576.
| T out | = | T red out | = | T in | * | CC out | = 12288 * 2 = 24576.

Figure 112014100353348-pat00035
Figure 112014100353348-pat00035

표 32는 Et = Tout 일 때의 예상 결과 값 수동 생성의 비용 Cer 을 나타낸다. Schroeder et al.의 비용은 단위 컴포넌트들 전부의 테스트 케이스들의 집합과 무관하게 1.0 이다. 즉, Tout 의 예상 결과 값 24,576 개를 모두 수동으로 결정한다.Table 32 shows the cost C er of the manual generation of the expected result value when E t = T out . The cost of Schroeder et al. Is 1.0 regardless of the set of test cases for all of the component components. That is, all the expected result values of T out are determined manually.

본 실시예에 따른 비용은 단위 컴포넌트들 전부의 테스트 케이스들의 집합에 따라 0.590 내지 0.998 의 범위 내이다. 테스트 케이스들의 집합을 이용하여 Tred out 의 예상 결과 값 24,576 개 중 35 내지 10,052 개를 자동으로 생성하기 때문에, 나머지 14,524 내지 24,541 개의 예상 결과 값만을 수동으로 결정한다.
The cost according to this embodiment is in the range of 0.590 to 0.998 depending on the set of test cases of all the unit components. Using a set of test cases for 35 to 10 052 pieces of the predicted result value T 24,576 pieces of red out because the auto-generated, the remaining 14 524 to 24 541 with only manual determination of expected results.

이상과 같은 실험 데이터에서 나타나듯, 컴포넌트 기반 소프트웨어 시스템의 입출력 연관관계 및 테스트 케이스에 따라 정도의 차이는 있으나, 본 발명의 실시예에 따르는 경우 Schroeder et al.에 비하여 더 많은 예상 결과 값을 자동으로 생성할 수 있다. 이러한 차이는, Schroeder et al.에서는 Tred out 의 예상 결과 값을 항상 수동으로 생성하는 반면에 본 발명에서는 테스트 케이스 내에서의 검색을 통해 자동으로 생성할 수 있다는 점에 기인한다.As shown in the above experimental data, although there is a difference according to the input / output relationship and the test case of the component-based software system, according to the embodiment of the present invention, more expected results are automatically Can be generated. This difference, Schroeder et al. In due to its ability to automatically create the present invention, while generating the expected result of the T red out by always manually by searching in the test case.

이상과 같이 본 발명의 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.Although the preferred embodiments of the present invention have been disclosed for illustrative purposes, those skilled in the art will appreciate that various modifications, additions and substitutions are possible, without departing from the scope and spirit of the invention as disclosed in the accompanying claims. For example, it should be understood that the techniques described may be performed in a different order than the described methods, or that components of the described systems, structures, devices, circuits, and the like may be combined or combined in other ways than the described methods, Lt; / RTI &gt; can be achieved, even if it is replaced or replaced by &lt; RTI ID = 0.0 &gt;

그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.
Therefore, other implementations, other embodiments, and equivalents to the claims are also within the scope of the following claims.

Claims (23)

컴포넌트 기반 소프트웨어 시스템의 테스트를 위한 예상 결과 값 자동 생성 장치에 있어서,
상기 컴포넌트 기반 소프트웨어 시스템을 구성하는 상호 연결된 복수의 단위 컴포넌트들 각각의 테스트 데이터 및 예상 결과 값을 입력받는 입력부;
상기 복수의 단위 컴포넌트들 내부의 입출력 연관관계에 대응하는 가상 입출력 연관관계를 생성하고, 상기 가상 입출력 연관관계에 기초하여 상기 컴포넌트 기반 소프트웨어 시스템의 입출력 연관관계 방향 그래프를 생성하고, 상기 복수의 단위 컴포넌트들 각각의 테스트 데이터에 기초하여 상기 컴포넌트 기반 소프트웨어 시스템의 테스트를 위한 제1 테스트 데이터 집합을 생성하고, 상기 입출력 연관관계 방향 그래프를 이용하여 상기 제1 테스트 데이터 집합의 부분집합인 제2 테스트 데이터 집합을 생성하는 프로세서; 및
상기 입출력 연관관계 방향 그래프를 이용하여 상기 제2 테스트 데이터 집합에 기초하여 전체 예상 결과 값을 생성하여 출력하는 출력부;
를 포함하고,
상기 제2 테스트 데이터 집합은 상기 컴포넌트 기반 소프트웨어 시스템의 적어도 하나의 출력 파라미터가 상기 컴포넌트 기반 소프트웨어 시스템의 입력 파라미터들 전부에 의존하여 달라지는지 여부의 판단에 기초하여 생성되는 컴포넌트 기반 소프트웨어 시스템의 테스트를 위한 예상 결과 값 자동 생성 장치.
An apparatus for automatically generating an expected result value for testing a component-based software system,
An input unit for receiving test data and expected result values of each of a plurality of interconnected unit components constituting the component-based software system;
Output association relationship corresponding to an input / output association relationship in the plurality of unit components, generates an input / output association direction graph of the component-based software system based on the virtual input / output association, Based software system based on the test data of each of the first test data sets and the second test data set, which is a subset of the first test data set, using the input / output association direction graph, Lt; / RTI &gt; And
An output unit for generating and outputting a total expected result value based on the second test data set using the input / output relationship direction graph;
Lt; / RTI &gt;
Wherein the second set of test data is generated based on a determination as to whether at least one output parameter of the component based software system depends on all of the input parameters of the component based software system Automated generation of expected results.
제1항에 있어서,
상기 입출력 연관관계 방향 그래프는 상기 가상 입출력 연관관계 정보 및 상기 복수의 단위 컴포넌트들 간의 입출력 연관관계 정보에 기초하여 생성되는 것인,
컴포넌트 기반 소프트웨어 시스템의 테스트를 위한 예상 결과 값 자동 생성 장치.
The method according to claim 1,
Wherein the input / output association relationship direction graph is generated based on the virtual input / output association information and input / output association information between the plurality of unit components.
An apparatus for automatically generating an expected result value for testing a component based software system.
삭제delete 제1항에 있어서,
상기 판단 결과, 상기 컴포넌트 기반 소프트웨어 시스템의 적어도 하나의 출력 파라미터가 상기 컴포넌트 기반 소프트웨어 시스템의 입력 파라미터들 전부에 의존하여 달라지는 경우,
상기 프로세서는 상기 제2 테스트 데이터 집합으로 하여금 상기 제1 테스트 데이터 집합 전부를 포함하도록 하는 것인,
컴포넌트 기반 소프트웨어 시스템의 테스트를 위한 예상 결과 값 자동 생성 장치.
The method according to claim 1,
If, as a result of the determination, at least one output parameter of the component-based software system depends on all of the input parameters of the component-based software system,
Wherein the processor is configured to cause the second set of test data to include all of the first set of test data.
An apparatus for automatically generating an expected result value for testing a component based software system.
제1항에 있어서,
상기 판단 결과, 상기 컴포넌트 기반 소프트웨어 시스템의 출력 파라미터들 각각이 상기 컴포넌트 기반 소프트웨어 시스템의 입력 파라미터들 전부에 의존하여 달라지지 않는 경우,
상기 프로세서는, 상기 컴포넌트 기반 소프트웨어 시스템의 출력 파라미터들 각각에 대응하는 연관 입력 파라미터 집합들을 생성하고, 상기 연관 입력 파라미터 집합들에 기초하여 상기 제2 테스트 데이터 집합을 생성하는 것인,
컴포넌트 기반 소프트웨어 시스템의 테스트를 위한 예상 결과 값 자동 생성 장치.
The method according to claim 1,
If it is determined that each of the output parameters of the component-based software system does not depend on all of the input parameters of the component-based software system,
Wherein the processor is configured to generate associative input parameter sets corresponding to each of the output parameters of the component based software system and to generate the second set of test data based on the associative input parameter sets.
An apparatus for automatically generating an expected result value for testing a component based software system.
제1항에 있어서,
상기 출력부는, 상기 제2 테스트 데이터 집합에 대한 출력을 나타내는 제1 예상 결과 값을 생성하고, 상기 제1 예상 결과 값으로부터 상기 전체 예상 결과 값을 생성하는 것인,
컴포넌트 기반 소프트웨어 시스템의 테스트를 위한 예상 결과 값 자동 생성 장치.
The method according to claim 1,
Wherein the output generates a first expected result value that represents an output for the second set of test data and generates the overall expected result value from the first expected result value,
An apparatus for automatically generating an expected result value for testing a component based software system.
제6항에 있어서,
상기 출력부는, 상기 복수의 단위 컴포넌트들 각각의 테스트 데이터 및 예상 결과 값에 기초하여 상기 제1 예상 결과 값을 생성하는 것인,
컴포넌트 기반 소프트웨어 시스템의 테스트를 위한 예상 결과 값 자동 생성 장치.
The method according to claim 6,
Wherein the output unit generates the first expected result value based on the test data and the expected result value of each of the plurality of unit components,
An apparatus for automatically generating an expected result value for testing a component based software system.
삭제delete 삭제delete 컴포넌트 기반 소프트웨어 시스템의 테스트를 위한 예상 결과 값 자동 생성 장치에 있어서,
상기 컴포넌트 기반 소프트웨어 시스템을 구성하는 상호 연결된 복수의 단위 컴포넌트들 각각의 테스트 데이터 및 예상 결과 값을 입력받는 입력부;
상기 복수의 단위 컴포넌트들 각각의 테스트 데이터에 기초하여 상기 컴포넌트 기반 소프트웨어 시스템의 테스트를 위한 제1 테스트 데이터 집합을 생성하고, 상기 복수의 단위 컴포넌트들 내부의 입출력 연관관계에 대응하는 가상 입출력 연관관계를 생성하고, 상기 컴포넌트 기반 소프트웨어 시스템의 적어도 하나의 출력 파라미터가 상기 컴포넌트 기반 소프트웨어 시스템의 입력 파라미터들 전부에 의존하여 달라지는지 여부의 판단 및 상기 가상 입출력 연관관계에 기초하여 상기 제1 테스트 데이터 집합의 부분집합인 제2 테스트 데이터 집합을 생성하는 프로세서; 및
상기 제2 테스트 데이터 집합에 기초하여 전체 예상 결과 값을 생성하여 출력하는 출력부;
를 포함하는 컴포넌트 기반 소프트웨어 시스템의 테스트를 위한 예상 결과 값 자동 생성 장치.
An apparatus for automatically generating an expected result value for testing a component-based software system,
An input unit for receiving test data and expected result values of each of a plurality of interconnected unit components constituting the component-based software system;
Generating a first test data set for testing the component-based software system based on test data of each of the plurality of unit components, and generating a virtual input / output association relationship corresponding to the input / output association within the plurality of unit components Based software system; determining whether at least one output parameter of the component-based software system depends on all of the input parameters of the component-based software system; and determining, based on the virtual input / output association, A processor for generating a second set of test data; And
An output unit for generating and outputting a total expected result value based on the second set of test data;
And an expected result value automatic generation device for testing a component based software system.
제10항에 있어서,
상기 프로세서는 상기 복수의 단위 컴포넌트들 간의 입출력 연관관계 정보 및 상기 가상 입출력 연관관계에 기초하여 상기 컴포넌트 기반 소프트웨어 시스템의 입출력 연관관계 방향 그래프를 생성하고, 상기 제2 테스트 데이터 집합 및 상기 전체 예상 결과 값은 각각 상기 입출력 연관관계 방향 그래프를 이용하여 생성되는 것인,
컴포넌트 기반 소프트웨어 시스템의 테스트를 위한 예상 결과 값 자동 생성 장치.
11. The method of claim 10,
Wherein the processor generates an input / output association relationship graph of the component-based software system based on input / output association information between the plurality of unit components and the virtual input / output association, Are generated using the input / output association direction graph, respectively.
An apparatus for automatically generating an expected result value for testing a component based software system.
삭제delete 제10항에 있어서,
상기 출력부는, 상기 제2 테스트 데이터 집합에 대한 출력을 나타내는 제1 예상 결과 값을 생성하고, 상기 제1 예상 결과 값으로부터 상기 전체 예상 결과 값을 생성하는 것인,
컴포넌트 기반 소프트웨어 시스템의 테스트를 위한 예상 결과 값 자동 생성 장치.
11. The method of claim 10,
Wherein the output generates a first expected result value that represents an output for the second set of test data and generates the overall expected result value from the first expected result value,
An apparatus for automatically generating an expected result value for testing a component based software system.
제13항에 있어서,
상기 출력부는, 상기 복수의 단위 컴포넌트들 각각의 테스트 데이터 및 예상 결과 값에 기초하여 상기 제1 예상 결과 값을 생성하는 것인,
컴포넌트 기반 소프트웨어 시스템의 테스트를 위한 예상 결과 값 자동 생성 장치.
14. The method of claim 13,
Wherein the output unit generates the first expected result value based on the test data and the expected result value of each of the plurality of unit components,
An apparatus for automatically generating an expected result value for testing a component based software system.
컴포넌트 기반 소프트웨어 시스템의 테스트를 위한 예상 결과 값 자동 생성 방법에 있어서,
상기 컴포넌트 기반 소프트웨어 시스템을 구성하는 상호 연결된 복수의 단위 컴포넌트들 각각의 테스트 데이터 및 예상 결과 값을 입력받는 단계;
상기 복수의 단위 컴포넌트들 내부의 입출력 연관관계에 대응하는 가상 입출력 연관관계를 생성하고, 상기 가상 입출력 연관관계에 기초하여 상기 컴포넌트 기반 소프트웨어 시스템의 입출력 연관관계 방향 그래프를 생성하는 단계;
상기 복수의 단위 컴포넌트들 각각의 테스트 데이터에 기초하여 상기 컴포넌트 기반 소프트웨어 시스템의 테스트를 위한 제1 테스트 데이터 집합을 생성하는 단계;
상기 입출력 연관관계 방향 그래프를 이용하여 상기 제1 테스트 데이터 집합의 부분집합인 제2 테스트 데이터 집합을 생성하는 단계; 및
상기 입출력 연관관계 방향 그래프를 이용하여 상기 제2 테스트 데이터 집합에 기초하여 전체 예상 결과 값을 생성하여 출력하는 단계
를 포함하고,
상기 제2 테스트 데이터 집합은 상기 컴포넌트 기반 소프트웨어 시스템의 적어도 하나의 출력 파라미터가 상기 컴포넌트 기반 소프트웨어 시스템의 입력 파라미터들 전부에 의존하여 달라지는지 여부의 판단에 기초하여 생성되는, 컴포넌트 기반 소프트웨어 시스템의 테스트를 위한 예상 결과 값 자동 생성 방법.
A method for automatically generating an expected result value for testing a component based software system,
Receiving test data and expected result values of each of a plurality of interconnected unit components constituting the component-based software system;
Generating a virtual input / output association relationship corresponding to an input / output association relationship in the plurality of unit components, and generating an input / output association direction graph of the component based software system based on the virtual input / output association;
Generating a first set of test data for testing of the component based software system based on test data of each of the plurality of unit components;
Generating a second test data set that is a subset of the first test data set using the input / output association direction graph; And
Generating and outputting an overall expected result value based on the second test data set using the input / output relationship direction graph
Lt; / RTI &gt;
Wherein the second set of test data is generated based on a determination as to whether at least one output parameter of the component based software system depends on all of the input parameters of the component based software system, A method for automatically generating an expected result value.
제15항에 있어서,
상기 입출력 연관관계 방향 그래프는 상기 가상 입출력 연관관계 정보 및 상기 복수의 단위 컴포넌트들 간의 입출력 연관관계 정보에 기초하여 생성되는 것인,
컴포넌트 기반 소프트웨어 시스템의 테스트를 위한 예상 결과 값 자동 생성 방법.
16. The method of claim 15,
Wherein the input / output association relationship direction graph is generated based on the virtual input / output association information and input / output association information between the plurality of unit components.
Automated generation of expected result values for testing of component - based software systems.
삭제delete 제15항에 있어서,
상기 판단 결과, 상기 컴포넌트 기반 소프트웨어 시스템의 적어도 하나의 출력 파라미터가 상기 컴포넌트 기반 소프트웨어 시스템의 입력 파라미터들 전부에 의존하여 달라지는 경우,
상기 제2 테스트 데이터 집합을 생성하는 단계는, 상기 제2 테스트 데이터 집합으로 하여금 상기 제1 테스트 데이터 집합 전부를 포함하도록 하는 단계를 포함하는 것인,
컴포넌트 기반 소프트웨어 시스템의 테스트를 위한 예상 결과 값 자동 생성 방법.
16. The method of claim 15,
If, as a result of the determination, at least one output parameter of the component-based software system depends on all of the input parameters of the component-based software system,
Wherein generating the second set of test data comprises allowing the second set of test data to include all of the first set of test data.
Automated generation of expected result values for testing of component - based software systems.
제15항에 있어서,
상기 판단 결과, 상기 컴포넌트 기반 소프트웨어 시스템의 출력 파라미터들 각각이 상기 컴포넌트 기반 소프트웨어 시스템의 입력 파라미터들 전부에 의존하여 달라지지 않는 경우,
상기 제2 테스트 데이터 집합을 생성하는 단계는, 상기 컴포넌트 기반 소프트웨어 시스템의 출력 파라미터들 각각에 대응하는 연관 입력 파라미터 집합들을 생성하는 단계 및 상기 연관 입력 파라미터 집합들에 기초하여 상기 제2 테스트 데이터 집합을 생성하는 단계를 포함하는 것인,
컴포넌트 기반 소프트웨어 시스템의 테스트를 위한 예상 결과 값 자동 생성 방법.
16. The method of claim 15,
If it is determined that each of the output parameters of the component-based software system does not depend on all of the input parameters of the component-based software system,
Wherein generating the second set of test data comprises generating associative input parameter sets corresponding to each of the output parameters of the component based software system and generating the second set of test data based on the associative input parameter sets. &Lt; / RTI &gt;
Automated generation of expected result values for testing of component - based software systems.
제15항에 있어서,
전체 예상 결과 값을 생성하여 출력하는 단계는, 상기 제2 테스트 데이터 집합에 대한 출력을 나타내는 제1 예상 결과 값을 생성하는 단계 및 상기 제1 예상 결과 값으로부터 상기 전체 예상 결과 값을 생성하는 단계를 포함하는 것인,
컴포넌트 기반 소프트웨어 시스템의 테스트를 위한 예상 결과 값 자동 생성 방법.
16. The method of claim 15,
Generating and outputting an overall expected result value comprises generating a first expected result value representing an output for the second set of test data and generating the overall expected result value from the first expected result value, Including,
Automated generation of expected result values for testing of component - based software systems.
제20항에 있어서,
상기 제1 예상 결과 값을 생성하는 단계는, 상기 복수의 단위 컴포넌트들 각각의 테스트 데이터 및 예상 결과 값에 기초하여 상기 제1 예상 결과 값을 생성하는 단계를 포함하는 것인,
컴포넌트 기반 소프트웨어 시스템의 테스트를 위한 예상 결과 값 자동 생성 방법.
21. The method of claim 20,
Wherein generating the first expected result value comprises generating the first expected result value based on test data and an expected result value of each of the plurality of unit components.
Automated generation of expected result values for testing of component - based software systems.
컴포넌트 기반 소프트웨어 시스템의 테스트를 위한 예상 결과 값 자동 생성 방법에 있어서,
상기 컴포넌트 기반 소프트웨어 시스템을 구성하는 상호 연결된 복수의 단위 컴포넌트들 각각의 테스트 데이터 및 예상 결과 값을 입력받는 단계;
상기 복수의 단위 컴포넌트들 내부의 입출력 연관관계에 대응하는 가상 입출력 연관관계를 생성하고, 상기 가상 입출력 연관관계 및 상기 복수의 단위 컴포넌트들 간의 입출력 연관관계 정보에 기초하여 상기 컴포넌트 기반 소프트웨어 시스템의 입출력 연관관계 방향 그래프를 생성하는 단계;
상기 복수의 단위 컴포넌트들 각각의 테스트 데이터에 기초하여 상기 컴포넌트 기반 소프트웨어 시스템의 테스트를 위한 제1 테스트 데이터 집합을 생성하는 단계;
상기 입출력 연관관계 방향 그래프를 이용하여 상기 제1 테스트 데이터 집합의 부분집합인 제2 테스트 데이터 집합을 생성하는 단계; 및
상기 입출력 연관관계 방향 그래프를 이용하여 상기 제2 테스트 데이터 집합에 기초하여 전체 예상 결과 값을 생성하여 출력하는 단계
를 포함하고,
상기 제2 테스트 데이터 집합은 상기 컴포넌트 기반 소프트웨어 시스템의 적어도 하나의 출력 파라미터가 상기 컴포넌트 기반 소프트웨어 시스템의 입력 파라미터들 전부에 의존하여 달라지는지 여부의 판단에 기초하여 생성되는, 컴포넌트 기반 소프트웨어 시스템의 테스트를 위한 예상 결과 값 자동 생성 방법.

A method for automatically generating an expected result value for testing a component based software system,
Receiving test data and expected result values of each of a plurality of interconnected unit components constituting the component-based software system;
Output associating relationship corresponding to an input / output associating relationship in the plurality of unit components, and generating an input / output associating relationship between the input / output associating relationship of the component-based software system and the input / Generating a relationship direction graph;
Generating a first set of test data for testing of the component based software system based on test data of each of the plurality of unit components;
Generating a second test data set that is a subset of the first test data set using the input / output association direction graph; And
Generating and outputting an overall expected result value based on the second test data set using the input / output relationship direction graph
Lt; / RTI &gt;
Wherein the second set of test data is generated based on a determination as to whether at least one output parameter of the component based software system depends on all of the input parameters of the component based software system, A method for automatically generating an expected result value.

삭제delete
KR1020140142546A 2014-10-21 2014-10-21 Appratus for automatic generation of expected results for testing component-based software system KR101606283B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020140142546A KR101606283B1 (en) 2014-10-21 2014-10-21 Appratus for automatic generation of expected results for testing component-based software system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140142546A KR101606283B1 (en) 2014-10-21 2014-10-21 Appratus for automatic generation of expected results for testing component-based software system

Publications (1)

Publication Number Publication Date
KR101606283B1 true KR101606283B1 (en) 2016-03-24

Family

ID=55651619

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140142546A KR101606283B1 (en) 2014-10-21 2014-10-21 Appratus for automatic generation of expected results for testing component-based software system

Country Status (1)

Country Link
KR (1) KR101606283B1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100960123B1 (en) 2007-12-17 2010-05-27 한국전자통신연구원 Method and device for test component on SDR middleware
JP4787460B2 (en) 2003-01-17 2011-10-05 日本電気株式会社 System performance prediction method and method based on performance measurement of software components
KR101089816B1 (en) 2010-06-09 2011-12-08 강원대학교산학협력단 Method and apparatus of generating test suitee for software component state testing
KR101419646B1 (en) 2013-02-19 2014-07-15 강원대학교산학협력단 Method and appratus for automatic generation of expected results for testing composite component

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4787460B2 (en) 2003-01-17 2011-10-05 日本電気株式会社 System performance prediction method and method based on performance measurement of software components
KR100960123B1 (en) 2007-12-17 2010-05-27 한국전자통신연구원 Method and device for test component on SDR middleware
KR101089816B1 (en) 2010-06-09 2011-12-08 강원대학교산학협력단 Method and apparatus of generating test suitee for software component state testing
KR101419646B1 (en) 2013-02-19 2014-07-15 강원대학교산학협력단 Method and appratus for automatic generation of expected results for testing composite component

Similar Documents

Publication Publication Date Title
US11263116B2 (en) Champion test case generation
Portugal et al. Msp algorithm: multi-robot patrolling based on territory allocation using balanced graph partitioning
CN109543942A (en) Data verification method, device, computer equipment and storage medium
Saukh et al. On boundary recognition without location information in wireless sensor networks
JP4485330B2 (en) Directed falification of circuits
Gupta et al. Regular node deployment for $ k $-coverage in $ m $-connected wireless networks
Montijano et al. Distributed data association in robotic networks with cameras and limited communications
JP6181595B2 (en) Map network data automatic generation device, network data automatic generation method, and network data automatic generation program
CN108415846A (en) A kind of method and apparatus generating minimal automation test use cases
US7913209B1 (en) Determining a cycle basis of a directed graph
CN111880220A (en) Seismic source positioning method, device, equipment and storage medium
US9041593B2 (en) Target tracking apparatus, storage medium stored a target tracking program, target tracking system, and target tracking method
Dillencourt Finding Hamiltonian cycles in Delaunay triangulations is NP-complete
Tapolcai et al. On network topology augmentation for global connectivity under regional failures
KR101606283B1 (en) Appratus for automatic generation of expected results for testing component-based software system
Zejnilović et al. Sequential observer selection for source localization
CN109429194A (en) Reference mode location determining method and device in mobile awareness network
CN109977455B (en) Ant colony optimization path construction method suitable for three-dimensional space with terrain obstacles
US8291366B2 (en) Routing system and method using a routing tree rip-up
KR101581615B1 (en) Appratus and method of input/output relationship based adaptive combinatorial testing for software component based system
CN113176975B (en) Method and device for processing monitoring data, storage medium and electronic equipment
US10503633B2 (en) Symbolic execution of alternative branches
US11113268B2 (en) Method and device for restoring missing operational data
Andreadakis Analysis and synthesis of decision-making organizations
EP3985546A1 (en) Method and apparatus for path routing

Legal Events

Date Code Title Description
AMND Amendment
E601 Decision to refuse application
X091 Application refused [patent]
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20190201

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20200217

Year of fee payment: 5

R401 Registration of restoration