KR100942987B1 - Method for test procedure optimize of robot software component - Google Patents

Method for test procedure optimize of robot software component Download PDF

Info

Publication number
KR100942987B1
KR100942987B1 KR1020080090355A KR20080090355A KR100942987B1 KR 100942987 B1 KR100942987 B1 KR 100942987B1 KR 1020080090355 A KR1020080090355 A KR 1020080090355A KR 20080090355 A KR20080090355 A KR 20080090355A KR 100942987 B1 KR100942987 B1 KR 100942987B1
Authority
KR
South Korea
Prior art keywords
state
test
procedure
transition
states
Prior art date
Application number
KR1020080090355A
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 KR1020080090355A priority Critical patent/KR100942987B1/en
Application granted granted Critical
Publication of KR100942987B1 publication Critical patent/KR100942987B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

PURPOSE: A method for test procedure optimize of robot software component is provided to have an efficient test procedure even if the number of test case is increased and the optimizing scheme of the test procedure gets complicated. CONSTITUTION: By back stepping from the final state(Exit) to the beginning state(RI) to find previous state for each test case. A test procedure is especially drawn each test case. The test procedure is classified based on the test case of the just before metastasizing to the final state as each group. With metastasizing to the state transition final state all state(SL1) find. With metastasizing to the angular states found in the first step all state (SL2) of the just before find. The state (RI,RA,RS), which is not overlapped with the state found in the first step immediately, all state (SL3) of the just before find. The state (RR), which is not overlapped with states found in the first, and the second step immediately, all state (SL4) of the just before find.

Description

로봇 소프트웨어 컴포넌트를 위한 상태전이 테스트 프로시저의 최적화방법{Method for test procedure optimize of Robot software component} Method for test procedure optimize of Robot software component

본 발명은 RTC(Robotic Technology Component) 규격을 따르는 로봇 소프트웨어 컴포넌트(Robot software component)의 상태전이 테스트를 수행하기 위한 테스트 프로시저(test procedure)를 도출하는 방법에 관한 것으로서, 상태전이도를 통해 나온 반응 테스트 케이스, 무반응 테스트 케이스들을 모두 수행하는데, 중복되는 테스트케이스(test case)들을 줄이기 위해 백스텝핑(back stepping) 기법을 적용한 테스트 프로시저를 도출하는 로봇 소프트웨어 컴포넌트를 위한 상태전이 테스트프로시저의 최적화방법에 관한 것이다.The present invention relates to a method for deriving a test procedure for performing a state transition test of a robot software component that conforms to the Robotic Technology Component (RTC) standard. Optimization of state transition test procedures for robot software components that derive both test cases and non-responsive test cases, resulting in test procedures using back stepping techniques to reduce duplicate test cases It is about a method.

국제 표준기구인 OMG(Object Management Group) 표준인 RTC(Robotic Technology Component) 표준 개발을 주도한 기관으로 일본의 AIST가 (Advanced Industrial Science and Technology - 일본 산업기술종합연구소) 있는데 RTC를 사용하고 개발하기 위한 개발도구인 OpenRTM-aist[1]을 개발하여 배포하고 있다. A leading organization in the development of the Robotic Technology Component (RTC) standard, which is an international standard organization, the OMG (Object Management Group) standard, and the AIST of Japan (Advanced Industrial Science and Technology), which develops to use and develop RTC. A tool, OpenRTM-aist [1], is developed and distributed.

RTC의 구조는 도 1과 같으며, 상태전이 테스트는 RTC가 명세에 따라 (상태전이도) 올바르게 동작하는가를 테스트하게 된다. The structure of the RTC is shown in FIG. 1, and the state transition test tests whether the RTC operates correctly according to a specification.

RTC의 상태전이도는 도 2에 도시된 바와 같으며, Activity는 컴포넌트의 코어로직(core logic)을 포함하며, 코어로직은 Activity가 가진 상태머신(state machine)의 상태에 따라 동작하게 된다. Activity의 상태머신은 그림2의 Alive 상태의 점선 아랫부분과 같이 표현된다. Inactive 상태에서는 아무 동작을 하지 않다가 Active 상태가 되면 기능을 수행하기 시작한다. State transition diagram of the RTC is shown in Figure 2, the activity includes the core logic (core logic) of the component, the core logic operates according to the state of the state machine (state machine) of the activity. The state machine of the activity is represented as the bottom of the dotted line in the Alive state of Figure 2. In the Inactive state, it does nothing and starts to perform functions when it becomes active.

그리고 Active 상태에서 오류가 발생하게 되면, Error 상태로 전이되고, Error 상태에서 reset을 시켜주면 다시 Inactive 상태로 돌아간다. If an error occurs in the active state, the state is changed to the error state, and if an error is reset, the state returns to the inactive state.

코어로직이란 특정 목적을 가진 컴포넌트의 기능ㅇ동작이 구현되어 있는 부분이다. 예를 들면, 센서 데이터를 처리하여 actuator를 제어하는 알고리즘이 구현된 부분을 말한다. Core logic is the part that implements the function and operation of a specific component. For example, it refers to a part where an algorithm for controlling actuators by processing sensor data is implemented.

그리고 도 1에는 표현이 되어있지 않지만 Execution Context라는 코어로직의 행동을 제어하는 쓰레드(thread)가 존재한다. 이 Execution Context의 상태는 도 2의 Alive 상태의 점선 윗부분과 같으며, 이것의 상태가 Running 상태일 경우에만 코어로직이 동작하게 되고, Stopped 상태인 경우에는 코어로직은 동작하지 않는다. And although not represented in Figure 1, there is a thread that controls the behavior of CoreLogic, called Execution Context. The state of this Execution Context is the same as the upper part of the dotted line of the Alive state of FIG. 2, and the core logic operates only when the state of the Alive state is Running, and the core logic does not operate in the Stopped state.

도 2에서 Alive 상태가 점선으로 나뉜 것은, 나뉜 두 부분이 서로 병행처리 관계에 있다는 것을 의미한다. 즉 서로의 상태에 영향을 미치지 않는다는 것인데, 실제 OpenRTM-aist에서 실험을 해본 결과 완벽히 병행으로 처리되지 않는다는 것을 알았다. In FIG. 2, the alive state is divided by a dotted line, which means that the two divided parts are in parallel processing relationship with each other. In other words, it does not affect the state of each other. Actually, experiments in OpenRTM-aist showed that they are not processed in parallel.

따라서 OpenRTM에서 동작하는 RTC를 위한 상태전이도를 다음과 같이 나타내었다.Therefore, the state transition diagram for RTC operating in OpenRTM is shown as below.

도 3은 상태전이도로서, 상태전이에 필요한 이벤트들은 모두 표현하였으나, 이벤트에 따라 상태가 전이될 때 발생하는 콜백함수들은 도 2와 같으므로, 이를 참조하여 별도로 표현하지 않았다. 3 is a state transition diagram, all events necessary for state transition are expressed, but callback functions generated when a state is transitioned according to an event are the same as in FIG.

여기서 Stopped/Steady Error'(SS'), Stopped/Inactive'(SI'), Stopped/Active'(SA') 상태들은 가상의 상태를 표현하였다. 실제로 Stopped/Inactive 상태에서 ExecutionContext::activate_component란 이벤트를 입력한 경우 컴포넌트는 아무런 반응을 보이지 않는다. The Stopped / Steady Error '(SS'), Stopped / Inactive '(SI'), and Stopped / Active '(SA') states represent virtual states. In fact, if you execute the ExecutionContext :: activate_component event in the Stopped / Inactive state, the component does not react.

그리고 다시 ExecutionContext::start란 이벤트를 입력하면, Running/Inactive(RI) 상태로 전이하는 것이 아니라, Running/Active(RA) 상태로 전이를 하게 된다. If you enter the ExecutionContext :: start event again, the transition is not to the Running / Inactive (RI) state, but to the Running / Active (RA) state.

도 4는 OpenRTM-aist 상에서 RTC에 이벤트를 주기위한 화면을 나타내고 있다. 각각 Activate, Deactivate, Reset, Start, Stop은 ExecutionContext::activate_component, ExecutionContext::deactivate_component, ExecutionContext::reset_component, ExecutionContext::start, ExecutionContext::stop을 나타낸다. 4 shows a screen for giving an event to an RTC on OpenRTM-aist. Activate, Deactivate, Reset, Start, and Stop represent ExecutionContext :: activate_component, ExecutionContext :: deactivate_component, ExecutionContext :: reset_component, ExecutionContext :: start, and ExecutionContext :: stop, respectively.

도 3의 상태전이도를 이용하여 상태전이 테스팅을 일반적으로 다음과 같은 순서로 진행을 하게 된다.State transition testing using the state transition diagram of FIG. 3 generally proceeds in the following order.

<상태전이 테스팅>State transition testing

도 5는 일반적인 상태전이도를 통한 테스팅 기법이다. 상태전이도에는 대상 시스템에 대해, 상태 사이의 관계 즉, 상태 간의 전이, 상태를 변화시키는 이벤트 와 입력값, 상태의 변화로 유발되는 동작 등이 나타난다. 즉, 상태전이도를 기반으로 일반적으로 다음과 같은 절차에 따라 테스트를 설계할 수 있다. 5 is a testing technique through a general state transition diagram. State transition diagrams show the relationship between states, that is, transitions between states, events and inputs that change states, and behaviors caused by changes in states. In other words, based on the state transition diagram, a test can be designed according to the following general procedure.

(1) 상태-이벤트 테이블 구성(1) Status-Event Table Configuration

(2) 전이 트리 구성 (2) Transition tree configuration

(3) 반응 테스트 케이스 구성 (3) reaction test case configuration

(4) 무반응 테스트 케이스 구성(4) Responseless test case configuration

(5) 가드 테스트 케이스 구성 (5) Guard test case configuration

(6) 테스트 프로시저 구성(6) test procedure configuration

도 6은 상태-이벤트 테이블은 상태전이도에서 각 상태들이 이벤트를 입력받은 경우 다른 상태로 전이하는 것을 표로 정리한 것이다. FIG. 6 is a table of state-event tables that transition from one state to another state in the state transition diagram when an event is input.

상태전이 트리는 각각의 상태가 다음 상태로 전이하는 경우의 개수를 따지게 되는 것으로 상태가 이벤트에 의해 전이되는 내용을 모두 포함하게 된다. The state transition tree determines the number of cases in which each state transitions to the next state, and includes all the states transitioned by the event.

반응 테스트 케이스는 상태전이 트리에서 상태가 이벤트에 의해 전이되는 모든 경로를 테스트 케이스로 전환하여 도출한다. 테스트 프로시저는 테스트의 실행 순서를 나타낸 것으로 테스트 케이스의 시작상태와 종료상태에 따라 그 순서가 결정된다.Reaction test cases are derived by converting all paths through which state transitions by events into test cases in the state transition tree. Test procedures represent the order in which tests are executed, and their order is determined by the start and end states of test cases.

이에 대하여 보다 상세히 설명하면 다음과 같다.This will be described in more detail as follows.

(1). 상태-이벤트 테이블 구성(One). Status-Event Table Configuration

도 6에서와 같이, OpenRTM-aist 상에서 로봇 소프트웨어 컴포넌트는 시작하자마자 Created 상태를 지나 RI 상태로 전이하게 되어 사용자 입력을 받지 않는 부 분이다. 따라서 시작상태를 RI 상태로 두고 상태전이 테스팅을 진행하게 된다. As shown in FIG. 6, on the OpenRTM-aist, the robot software component transitions to the RI state after passing through the Created state and receives no user input. Therefore, the state transition testing is performed with the start state as the RI state.

여기서, 25SI, 31SI', 38SA', 44SA' 51SS', 57SS'는 도 3에서 설명한 바와 같이 가상의 상태(SS',SI',SA')를 나타내고 있다. 그리고 ' 1 RI '처럼 굵고 기울이고 밑줄 표시된 상태는 전이하지 않지만, 오류메세지가 발생된 것을 나타낸다. 최종상태(Exit)로의 전이는 컴포넌트 종료를 나타낸다. Here, 25SI, 31SI ', 38SA', 44SA '51SS', and 57SS 'represent virtual states SS', SI ', and SA', as described with reference to FIG. And the bold, underlined and underlined state like ' 1 RI ' does not transition, but it indicates that an error message has occurred. The transition to the exit state indicates component termination.

(2). 상태전이 트리 구성(2). State Transition Tree Configuration

도 7은 도 6의 상태-이벤트 테이블을 토대로 각각의 상태전이 트리를 표시한 도이다. FIG. 7 is a diagram illustrating each state transition tree based on the state-event table of FIG. 6.

여기서 한 번의 전이가 일어나는 경우를 정리한 0-switch 상태전이 트리를 구성하였다. 만약 1-switch 상태전이 트리라면, RA -> RI -> SI와 같이 두 번 전이하는 경우를 나타낸다. Here we construct a 0-switch state transition tree that summarizes the case where one transition occurs. If the 1-switch transition is a tree, it represents a transition twice, such as RA-> RI-> SI.

(3). 반응 테스트 케이스 구성(3). Reaction test case configuration

도 8은 상태-이벤트 테이블과 상태전이 트리를 통해 반응 테스트케이스를 구성한 도이다. 액션부분에 Error Msg라는 항목이 있는데, 이것은 OpenRTM-aist 상에서 나타나는 액션으로, 에러메시지를 화면에 표시하게 된다.8 is a diagram illustrating a reaction test case through a state-event table and a state transition tree. In the action part, there is an item called Error Msg, which is an action that appears in OpenRTM-aist and displays an error message on the screen.

(4). 무반응 테스트 케이스 구성 및 가드 테스트 케이스 구성(4). Responseless test case configuration and guard test case configuration

본 상태전이 테스팅에서는 무반응 테스트 케이스로 구성할 만한 부분이 존재하지 않아 무시하였다. 또한 가드를 가지는 상태는 가드에 따라 각각 다른 상태로 구분하여 표현하여 반응 테스트 케이스로 표현하였다. (도 8의 V012, V020, V021)In this state transition testing, there was nothing that could constitute a non-response test case and was ignored. In addition, the state having a guard is represented by a reaction test case by dividing the state into different states according to the guard. (V012, V020, V021 in FIG. 8)

(5). 테스트 프로시져 도출(5). Derivation of test procedure

도 8에서 구성한 반응 테스트 케이스를 이용하여 어떠한 순서로 테스트 케이스들을 수행할지 시작상태와 종료상태를 보고 결정한다. 그리고 모든 테스트 케이스들이 수행될 수 있도록 확인할 수 있는 도 9와 같이 작성한다.Using the reaction test case configured in FIG. 8, the start state and the end state are determined based on the order in which the test cases are to be performed. And write as shown in Figure 9 to confirm that all the test cases can be performed.

예를 들면 다음과 같이 단순하게 프로시져를 작성 할 수 있다.For example, you can simply write a procedure like this:

tp1: V001 -> V002 -> V005 -> V006 -> V003 -> V024 -> V026…tp1: V001-> V002-> V005-> V006-> V003-> V024-> V026.

tp2: V003 -> V025 -> V030 -> V031 -> V032 -> V033 -> V029…tp2: V003-> V025-> V030-> V031-> V032-> V033-> V029...

tpn: …tpn:…

위와 같은 단순한 방법은 간단한 상태전이도를 가지는 상태전이 테스팅에서는 쉽고 빠르게 모든 테스트 케이스를 포함하는 효율적인 테스트 프로시저를 산출 할 수 있겠지만, 상태간의 관계가 복잡해지고, 테스트 케이스의 개수가 늘어날수록 효율적인 테스트 프로시저를 도출하는데 매우 어려워지게 되는 문제점이 있었다.This simple method can quickly and easily produce an efficient test procedure that includes all test cases in state transition testing with simple state transitions, but as the relationship between states becomes more complex and the number of test cases increases, There was a problem that is very difficult to derive the procedure.

따라서, 본 발명은 위의 문제를 해결하기 위한 것으로서, 본 발명의 목적은 OpenRTM-aist 상에서 RTC가 동작하는 것을 분석하여 상태전이테스트에서 효율적인 테스트프로시저(test procedure)를 백스텝핑 기법을 적용하여 도출하는 과정을 통해 상태간의 관계가 복잡해지고, 테스트케이스의 개수가 늘어나도 효율적인 테스트 프로시저를 도출할 수 있도록 하는 로봇 소프트웨어 컴포넌트를 위한 상태전이 테 스트 프로시저의 최적화 방법을 제공하는데 있다. Accordingly, the present invention is to solve the above problems, an object of the present invention is to analyze the RTC operation on OpenRTM-aist to derive an efficient test procedure (back stepping) method in the state transition test This study provides a method for optimizing state transition test procedures for robotic software components that makes the relationship between states complicated and increases the number of test cases.

본 발명에 따른 로봇 소프트웨어 컴포넌트를 위한 상태전이 테스트 프로시저의 최적화 과정은 RTC 규격을 준수하는 로봇 소프트웨어 컴포넌트를 테스트하기 위해 시작상태인 RI(Running/Incative)상태로부터 시작하여 이벤트를 입력받아 다음 상태로의 전이를 나타내는 상태-이벤트 테이블을 생성하고, 각각의 상태가 다음 상태로 전이하는 경우의 수를 산출하는 상태전이 트리를 생성한 후, 시작상태(RI)로부터 상기 각 상태가 이벤트에 의해 전이되는 최종상태(Exit)까지의 모든 경로를 테스트케이스로 전환하여 도출하고, 상기 테스트케이스로부터 테스트의 실행순서를 나타내는 테스트프로시저(test procedure)를 도출하는 방법에 있어서, 상기 최종상태(Exit)로부터 상기 시작상태(RI)까지 단계별로 백스텝핑(back stepping) 하여 직전 상태를 테스트케이스별로 찾아내는 테스트케이스 필터링과정과, 상기 필터링과정에서 시작상태(RI)로부터 최종상태(Exit)까지의 각 상태 전이를 각 테스트케이스 별로 테스트 프로시저를 도출하는 테스트프로시저 도출과정과, 상기 최종상태(Exit)로 전이되는 직전의 테스트케이스를 기준으로 상기 테스트 프로시저를 각 그룹으로 분류하는 프로시저 최적화과정과, 상기 프로시저 최적화과정에서 산출한 테스트프로시저에서 각 그룹별로 각각 하나의 결합 생성된 테스트프로시저를 각각 도출하는 프로시저 완성과정을 포함하여 이루어진 것을 특징으로 한다.The optimization process of the state transition test procedure for the robot software component according to the present invention starts with a running / incident (RI) state, which is a start state, for testing a robot software component that complies with the RTC standard, and receives an event to the next state. Create a state-event table that represents the transition of, create a state transition tree that calculates the number of cases where each state transitions to the next state, and then, from the start state (RI), each state is transitioned by an event. A method for deriving a test procedure indicating a procedure for executing a test from the test case by converting all paths up to a final state to a test case, wherein the path is derived from the final state. Backstepping step by step until the starting state (RI) Is a test procedure filtering process, a test procedure derivation process for deriving a test procedure for each test case for each state transition from a start state (RI) to a final state (Exit) in the filtering process, and the final state (Exit). Based on the test case immediately before the transition to the)), the procedure optimization process for classifying the test procedure into each group, and the test procedure generated by combining each of each group in the test procedure calculated in the procedure optimization process It is characterized by including the completion of the procedure for deriving each procedure.

상기 테스트케이스 필터링과정은 상기 테스트케이스 필터링과정은 상태전이 최종상태(Exit)로 전이된 바로 직전의 모든 상태(SL1)를 찾아내는 제 1 단계와, 상 기 제 1 단계에서 찾은 각 상태(SL1)로 전이된 바로 직전의 모든 상태(SL2)를 찾는 제 2 단계와, 상기 제 2 단계에서 찾은 상태(SL2)들 중 제 1 단계에서 찾은 상태(SL1)와 중복되지 않은 상태(RI,RA,RS)를 추출하여, 추출된 상태(RI,RA,RS)의 바로 직전의 모든 상태(SL3)를 찾는 제 3 단계와, 상기 제 3 단계에서 찾은 상태(SL3)들 중 제 1, 제2 단계에서 찾은 상태(SL1, 2)와 중복되지 않은 상태(RR)를 추출한 후, 추출된 상태(RR)의 바로 직전의 모든 상태(SL4)를 찾는 제 4 단계를 포함하여 이루어진 것을 특징으로 한다.The test case filtering process includes a first step of finding all the states SL1 immediately before the state transition to an exit state, and each state SL1 found in the first step. A second step of finding all the states SL2 immediately before the transition, and a state (RI, RA, RS) not overlapping with the state SL1 found in the first step among the states SL2 found in the second step. The third step of finding all the state (SL3) immediately before the extracted state (RI, RA, RS), and the first and second of the state (SL3) found in the third step And extracting a state RR that does not overlap with the states SL1 and 2, and then finding a fourth state immediately before the extracted state RR.

상기 프로시저 최적화과정은 상기 테스트프로시저 도출과정에서 도출된 모든 테스트프로시저를 최종상태(Exit) 직전의 상태(SI, SI', SA, SA', SS, SS')에 따라 6그룹으로 분류하여 각 그룹의 테스트프로시저는 하나의 테스트프로시저로 결합 도출하되, 상기 각 그룹은 각 상태에 가장 가까운 별도로 체크된 테스트케이스를 검색하는 제 1 단계와, 상기 검색한 테스트케이스의 상태를 바로 다음 테스트프로시저에서 찾는 제 2 단계와, 상기 다음 테스트프로시저에서 찾은 상태 중 최종상태(Exit)에 가까운 상태를 이용하여 이전 테스트프로시저의 테스트케이스들을 연결하는 제 3 단계와, 상기 프로시저가 연결되어 누적된 새로운 테스트프로시저를 생성하는 제 4 단계를 포함하여 이루어진 것을 특징으로 한다.The procedure optimization process classifies all test procedures derived from the test procedure derivation process into six groups according to the state immediately before the final state (SI, SI ', SA, SA', SS, SS '). The test procedure of each group is derived and combined into one test procedure, wherein each group is a first step of searching for a separately checked test case closest to each state, and immediately following the state of the searched test case. The procedure connects the test cases of the previous test procedure with a second step found in the test procedure, a state close to the exit state found in the next test procedure, and the procedure And a fourth step of generating an accumulated new test procedure.

본 발명에 따른 로봇 소프트웨어 컴포넌트를 위한 상태전이 테스트 프로시저의 최적화 방법은 테스트 프로시저를 체계적으로 도출함으로써, 상태간의 관계가 복잡해 지고, 테스트 케이스의 개수가 늘어나도 효율적인 테스트 프로시저를 도출할 수 있을 뿐만 아니라, 테스트프로시저를 작성하는데 소요되는 시간, 전체 테스트 프로시저를 통틀어 수행되는 테스트케이스들의 횟수가 감소되어 RTC 규격을 따르는 소프트웨어 컴포넌트의 테스트 소요시간이 단축되는 효과가 있다.In the method for optimizing the state transition test procedure for the robot software component according to the present invention, it is possible to derive an effective test procedure even if the relationship between states becomes complicated and the number of test cases increases by systematically deriving the test procedure. In addition, the time required to write a test procedure and the number of test cases performed throughout the entire test procedure are reduced, thereby reducing the test time required for software components that conform to the RTC specification.

먼저, 본 발명은 상태전이 테스트를 수행하기 위해서는 먼저 테스트 대상의 상태전이도가 있어야 한다. 그리고 그것을 보고 상태전이 테이블을 작성하고, 이것을 이용하여 상태전이트리를 작성하고, 반응 테스트 케이스를 작성한다. First, in order to perform the state transition test, the present invention must first have a state transition diagram of the test object. It then creates a state transition table, uses it to build a state transition tree, and creates a reaction test case.

여기서, 상태전이 테이블은 각 상태들이 이벤트에 의해 천이되는 것을 상태전이 및 테스트케이스별로 정리하고, 상태전이트리는 각 상태가 다음 상태로 전이되는 단계를 표현한 것으로 n-switch 상태전이트리는 각 상태에서 n+1번의 전이가 발생할 경우 나타나는 모든 전이를 표현하며, 본 발명에서는 0-switch 상태전이트리를 사용한다. Here, the state transition table organizes each state transition by an event by state transition and test case, and state transition represents a state in which each state transitions to the next state. N-switch state transition is n + in each state. Represents all transitions that occur when one transition occurs, and the present invention uses a 0-switch state transition tree.

그리고, 각각의 테스트케이스들은 시작상태(RI), 이벤트(event), 액션(Action), 종료상태(Exit)의 항목을 가진다. 상태전이나 어떠한 액션이 발생한 경우 반응 테스트 케이스가 되고, 특정 이벤트에 대해 아무런 반응이 없는 경우 무반응 테스트 케이스가 된다. 본 발명에서는 반응 테스트케이스를 사용한다.Each test case has an entry state (RI), an event, an action, and an exit state. It becomes a reaction test case when a state action or any action occurs, and a non-response test case when there is no response to a specific event. In the present invention, a reaction test case is used.

작성된 모든 테스트케이스들은 하나, 혹은 여러 개의 테스트프로시저를 통해 수행되어야 한다. 테스트프로시저는 테스트케이스를 수행하는 순서를 나타내는 것으로 해당 테스트케이스의 시작상태와 종료상태에 따라 그 순서가 정해진다. All written test cases should be executed through one or several test procedures. The test procedure represents the order in which the test cases are executed. The test procedure is determined according to the start state and end state of the test case.

여러 개의 테스트프로시저들은 동일한 테스트케이스 수행을 포함할 수 있고, 통상적으로는 모든 테스트케이스를 수행하기 위해 체크 표를 만들어 단순히 체크를 하며 테스트프로시저를 도출한다.Multiple test procedures can involve performing the same test case. Typically, a check table is created by simply checking to derive the test procedure to perform all test cases.

도 10은 본 발명의 실시예에 따른 로봇 소프트웨어 컴포넌트를 위한 상태전이 테스트 프로시저의 최적화방법을 구현하기 위한 상태전이 트리 표시도로서, 이를 참고하여 보다 상세히 설명하면 다음과 같다.10 is a diagram illustrating a state transition tree for implementing a method for optimizing a state transition test procedure for a robot software component according to an embodiment of the present invention.

먼저, 상태전이 중 최종상태(Exit)로 전이되는 직전의 상태인 백스텝핑 레벨1(SL1)을 추출한다. SL1 = {SI, SI', SA, SA', SS, SS'}First, the backstepping level 1 SL1, which is a state immediately before the state transition to the final state Exit, is extracted. SL1 = {SI, SI ', SA, SA', SS, SS '}

백스텝핑 레벨2(SL2)에서는 상기 백스테핑 레벨1(SL1)에서 추출한 상태들의 직전상태들을 찾아낸다. SL2 = {RI, SISI, SISI', SI', RA, SASA, SASA', SA', RS, SSSS, SSSS', SS'}In backstepping level 2 SL2, the states immediately before the states extracted in the backstepping level SL1 are found. SL2 = {RI, SI SI , SI SI ' , SI', RA, SA SA , SA SA ' , SA', RS, SS SS , SS SS ' , SS'}

여기서, SISI, SISI' 상태는 실제 같은 SI상태이지만, 어떤 상태로부터 백스텝핑하여 추출되었는가를 구분하기 위해 아래첨자로 구분하였다. 상태가 중복되어 나타나는가를 판단하는 경우에는 SI와 같다고 두고 판단한다.Here, SI SI and SI SI ' states are actually SI states, but are separated by subscripts to distinguish which state is extracted by backstepping. In the case of judging whether the state is duplicated, it is determined to be the same as SI.

그리고 백스텝핑 레벨2(SL2)에서 추출된 상태들을 다음과 같이 세 가지로 분류한다. The states extracted in the backstepping level SL2 are classified into three categories as follows.

① SL1에 속하지 않고, SL2에서 처음 나타나는 상태들인 RI, RA, RS상태와, ① does not belong to SL1, RI, RA, RS status that appears first in SL2,

② SL2에 속하고, RI를 직전 상태로 가지는 상태들인 SISI, SISI'상태와,② SI SI , SI SI ' states belonging to SL2 and having RI in the previous state,

(여기서, 전체 상태들 중에 RI를 직전 상태로 가지는 상태들은 SI와 RA가 있으며. RI 상태로 갈 수 있으므로 더 이상 백스텝핑을 하지 않는다.)(Here, the states that have RI just prior to them are SI and RA. They can go to RI state and no longer backstepping.)

③ SL1과 SISI, SISI'에 속하고, RI를 직전 상태로 가지지 않는 상태인 SI', SASA, SASA', SA', SSSS, SSSS', SS'상태로 분류한다.(이전에 백스텝핑을 수행하였기 때문에 여기서는 더 이상 백스텝핑을 하지 않는다.) ③ It belongs to SL1, SI SI , SI SI ' and classified into SI', SA SA , SA SA ' , SA', SS SS , SS SS ' , and SS' state, which does not have RI as the previous state. Since we have performed backstepping before, we do not backstep here anymore.)

백스텝핑 레벨3(SL3)에서는 백스텝핑 레벨2(SL2)에서 추출한(①로 분류된) RI, RA, RS상태들의 직전 상태들을 찾아낸다.Backstepping level 3 SL3 finds the immediately preceding states of RI, RA, and RS states (classified as ①) extracted from backstepping level 2 SL2.

SL3 = {RIRI, RARI, RRRI, SIRI, SA', RIRA, RARA, SI', SARA, RARS, RS, RRRS, SSRS}SL3 = {RI RI , RA RI , RR RI , SI RI , SA ', RI RA , RA RA , SI', SA RA , RA RS , RS, RR RS , SS RS }

그리고 이것을 다음과 같이 세 가지로 분류한다. It is classified into three categories as follows.

④ SL1, SL2에 속하지 않고, SL3에서 처음 나타나는 상태들 인 RRRI상태와,④ RR RI state, which does not belong to SL1, SL2, but appears first in SL3,

⑤ SL1, SL2에 속하고 RI를 직전 상태로 가지는 상태들과 RI상태인 RIRI, RARI, SIRI, RARA, RIRA, RARS상태와, (5) the states belonging to SL1 and SL2 and having RI in the immediate state, RI RI , RA RI , SI RI , RA RA , RI RA , RA RS state,

⑥ SL1, SL2 및 상기 RRRI상태에 속하고, RI를 직전 상태로 가지지 않는 상태들인 SA'RI, SI'RA, SARA, RSRS, RRRS, SSRS상태로 분류한다.(6) It is classified into SL1, SL2 and SA ' RI , SI' RA , SA RA , RS RS , RR RS , SS RS states which belong to the RR RI state and do not have RI as the previous state.

마지막으로 백스텝핑 레벨4(SL4)에서는 백스텝핑 레벨3(SL3)에서 추출한 상태(④ 로 분류된) RRRI상태의 직전상태를 찾아낸다. SL4 = {RS, SS'}Finally, the back-stepping level 4 (SL4) The find the earlier state of (a classified ④) RR RI state condition extracted from the back-stepping level 3 (SL3). SL4 = {RS, SS '}

이와 같이 각 상태들을 백스텝핑하여 각 레벨을 다음 백스텝핑 가능 여부에 따라 분류하였다.As such, each state was backstepped and each level was classified according to the next backstepping capability.

각 백스텝핑 레벨에서 추출된 분류 "SL2의 ②,③, SL3의 ⑤,⑥" 및 SL4는 더 이상 백스텝핑을 하지 않는다. 이 중에서 분류 ②,⑤에서 추출된 상태들은 직전의 상태가 시작상태(RI) 이므로 프로시저를 도출하는데 문제가 없지만, 나머지 분류 ③,⑥ 및 SL4의 상태들은 시작상태(RI)로 가기 위한 백스텝핑을 더 수행하게 된다.The classifications " 2, 3 " of SL2, &quot; 5, 6 &quot; of SL3, and SL4 extracted at each back stepping level no longer perform back stepping. Among the states extracted from classifications ② and ⑤, there is no problem in deriving the procedure because the previous state is the starting state (RI), but the remaining states of classifications ③, ⑥ and SL4 are backstepping to go to the starting state (RI). Will do more.

도 11a, 11b는 상기 도 10의 상태트리를 백스텝핑하여 도출된 테스트프로시저를 표시한 테이블이며, 여기서, 상태가 시작상태(RI)로부터 시작한다면 그대로 표에 옮겨 넣었고, SI나 RA로부터 시작한다면 직전의 상태로 시작상태(RI)를 추가하여 옮겨 넣었다. 11A and 11B are tables showing test procedures derived by back-stepping the state tree of FIG. 10, where the state is transferred to the table as it starts from the start state (RI), and starts from SI or RA. The starting state (RI) was added to the previous state and moved.

프로시저 최적화과정은 도 11a, 11b에서 최종상태(Exit)의 직전의 상태(SI, SI', SA, SA', SS, SS')에 따라 6그룹으로 분류한다. The procedure optimization process is classified into six groups according to the states immediately before the final state (SI, SI ', SA, SA', SS, SS ') in FIGS. 11A and 11B.

각 그룹 내의 프로시저가 다른 프로시저에 포함되는지를 판단하고, 포함된다면 해당 프로시저는 제거한다. 모든 그룹의 프로시저를 순서대로 검색하여 처음 나타나는 테스트케이스는 별도로 체크한다. 각 그룹의 프로시저에서 시작상태(RI)에 가장 가까운 별도로 체크된 테스트케이스를 검색한다. 상기 검색된 별도로 체크된 테스트케이스의 상태를 바로 다음 프로시저에서 찾는다. (다음 프로시저에 존재하지 않는다면 거꾸로, 다음 프로시저에서 검색한 테스트케이스의 상태를 자기 자신에서 찾는다.) 다음 프로시저에서 찾은 상태 중 최종상태(Exit)에 가까운 상태를 이용하여 이전 프로시저의 테스트케이스들을 연결한다. (자기 자신에서 찾은 상태 중 Exit 상태에 가까운 상태를 이용하여 다음 프로시저의 테스트 케이스들을 연결한다.)Determine if a procedure in each group is included in another procedure, and if so, remove the procedure. Search the procedures of all groups in order and check the first test case separately. In each group of procedures, search for the separately checked test case closest to the starting state (RI). The state of the retrieved separately checked test case is found in the next procedure. (If it does not exist in the next procedure, it finds itself in the state of the test case retrieved in the next procedure.) Test the previous procedure using the state found in the next procedure close to the exit state. Connect the cases. (Use the state you find yourself close to the Exit state to connect test cases in the following procedure.)

두 프로시저가 연결된, 누적된 새로운 프로시저가 나타난다. 이 새로운 프로시저를 이용하여 같은 그룹 내의 다른 프로시저와 위 과정을 반복하여 또 다른 새로운 프로시저를 생성한다.A new cumulative procedure appears, linking the two procedures. Use this new procedure to create another new procedure by repeating the above procedure with other procedures in the same group.

도 12a 내지 12f는 각 그룹별로 프로시저를 생성하는 과정을 나타낸 것으로, 각 도의 테이블 맨 위에 있는 프로시저를 처음 나타나는 테스트 케이스에 영향을 미치지 않도록 바로 아래의 프로시저에 연결하는 작업을 거쳐, 각 그룹에서 나타나는 테스트케이스들을 모두 수행하는 테스트프로시저를 그룹별로 하나씩 산출할 수 있게 된다. 마지막 행에 나타난 프로시저가 최종적으로 생성된 테스트프로시저이다.12A to 12F illustrate a procedure of creating a procedure for each group, and connecting the procedure at the top of each table to the procedure immediately below so as not to affect the first test case. It is possible to calculate one test procedure for each group that performs all the test cases shown in. The procedure shown in the last row is the last test procedure created.

프로시저 완성과정은 테스트프로시저 최적화 과정에서 각 그룹별로 최종적으로 생성된 테스트프로시저를 추출한 것이다.The procedure completion process extracts the test procedure finally generated for each group during the test procedure optimization process.

도 13은 도 12a 내지 12f에서 도출된 마지막 행의 프로시저를 추출한 테이블 표시도로서, 테스트최적화 과정에서 도출된 최종 테스트프로시저는 하나의 셀에 여러 개의 테스트 케이스가 포함된 경우가 존재한다. 즉, 서로 다른 이벤트가 동일한 상태전이를 발생시키는 경우에 대하여 자기 자신의 상태로 유지되는 테스트케이스는 실제 테스트프로시저로 표현하기 위해 하나의 셀에 하나의 테스트케이스만 표현된 최적화된 테스트프로시저를 도출하게 된다.FIG. 13 is a table display diagram illustrating a procedure of extracting the procedure of the last row derived from FIGS. 12A to 12F, in which the final test procedure derived from the test optimization process includes a case where several test cases are included in one cell. In other words, test cases that are maintained in their own state when different events cause the same state transitions are optimized test procedures in which only one test case is represented in one cell to represent the actual test procedure. Will be derived.

도 14는 도 13에서 실제 프로시저가 모든 테스트케이스를 포함하고 있는지를 확인하는 테이블이다.FIG. 14 is a table confirming whether the actual procedure in FIG. 13 includes all test cases.

도 1은 OMG에 의해 표준화된 RTC에서 제시하고 있는 기본적인 로봇 소프트웨어 컴포넌트 구조에 내부함수를 추가한 로봇 소프트웨어 컴포넌트 구조도이고,1 is a diagram of a robot software component structure in which an internal function is added to a basic robot software component structure proposed by an RTC standardized by OMG.

도 2는 도 1의 Activity의 State Machine에서 관리하는 컴포넌트의 상태 전이 다이어그램이고,2 is a state transition diagram of a component managed by a state machine of the activity of FIG. 1,

도 3은 OpenRTM에서 동작하는 RTC를 위한 상태전이도이고,3 is a state transition diagram for an RTC operating in OpenRTM,

도 4는 OpenRTM-aist 상에서 RTC에 이벤트를 주기위한 화면 표시도이고, 4 is a screen display for giving an event to the RTC on OpenRTM-aist,

도 5는 상태전이 테스팅의 일반적인 진행순서를 나타낸 도이고,5 is a diagram illustrating a general procedure of state transition testing,

도 6은 도 3의 상태전이도에서 각 상태들이 이벤트를 입력받은 경우 다른 상태로 전이하는 것을 테이블로 정리한 도이고,FIG. 6 is a diagram summarizing a transition to another state when each state receives an event in the state transition diagram of FIG. 3.

도 7은 도 6을 토대로 나타낸 상태전이 트리를 표시한 도이고,FIG. 7 is a diagram illustrating a state transition tree based on FIG. 6.

도 8은 도 7의 상태전이 트리를 통해 특정 상태가 특정 이벤트에 의해 다음 상태로 전이되는 모든 경로가 표현되는데, 그 각각의 경로를 테스트케이스로 표현한 반응 테스트케이스를 표시한 도이고,FIG. 8 is a diagram illustrating all paths through which the specific state is transferred to the next state by a specific event through the state transition tree of FIG. 7, wherein each path is represented by a test case.

도 9는 테스트프로시저를 통해 수행된 테스트케이스를 체크하여 모든 테스트케이스들이 수행되는가를 확인할 수 있도록 해주는 체크 표이고,9 is a check table for checking whether a test case is performed through a test procedure so that all test cases are performed.

도 10은 본 발명의 실시예에 따른 로봇 소프트웨어 컴포넌트를 위한 상태전이 테스트 프로시저의 최적화방법을 구현하기 위한 상태전이 트리를 표시한 도이고,10 is a diagram showing a state transition tree for implementing a method of optimizing a state transition test procedure for a robot software component according to an embodiment of the present invention;

도 11a 내지 11b는 본 발명의 실시예에 따라 도출된 중간 단계의 테스트프로 시저를 표시한 도이고,11A to 11B are diagrams showing an intermediate test procedure derived according to an embodiment of the present invention.

도 12a 내지 12f는 본 발명의 실시예에 따른 프로시저 최적화과정을 통해 산출된 테스트프로시저를 표시한 도이고,12A to 12F illustrate test procedures calculated through a procedure optimization process according to an embodiment of the present invention.

도 13은 도 12a 내지 12f에서 나타난 서로 다른 이벤트가 동일한 상태전이를 발생시키는 부분을 해결한 완성된 테스트프로시저를 표시한 도이고,FIG. 13 is a diagram illustrating a completed test procedure in which portions of different events shown in FIGS. 12A to 12F cause the same state transition,

도 14는 도 13에서 표시된 모든 테스트케이스들이 테스트프로시저에 포함되었는가를 확인하도록 하는 체크 테이블을 표시한 도이다.FIG. 14 illustrates a check table for confirming whether all test cases shown in FIG. 13 are included in a test procedure.

Claims (6)

RTC(Robot Technolocy Component) 규격을 준수하는 로봇 소프트웨어 컴포넌트를 테스트하기 위해 시작상태인 RI(Running/Incative)상태로부터 시작하여 이벤트를 입력받아 다음 상태로의 전이를 나타내는 상태-이벤트 테이블을 생성하고, 각각의 상태가 다음 상태로 전이하는 경우의 수를 산출하는 상태전이 트리를 생성한 후, 시작상태(RI)로부터 상기 각 상태가 이벤트에 의해 전이되는 최종상태(Exit)까지의 모든 경로를 테스트케이스로 전환하여 도출하고, 상기 테스트케이스로부터 테스트의 실행순서를 나타내는 테스트 프로시저(test procedure)를 도출하는 방법에 있어서,To test a robot software component that complies with the Robot Technolocy Component (RTC) specification, it generates a state-event table indicating the transition to the next state starting from the starting running / incident (RI) state and receiving events. After creating a state transition tree that calculates the number of cases where the state transitions to the next state, all paths from the starting state (RI) to the final state (Exit) where each state is transitioned by the event are passed to the test case. In the method for deriving a test procedure derived from the test case, the test procedure indicating the execution order of the test from the test case, 상기 최종상태(Exit)로부터 상기 시작상태(RI)까지 단계별로 백스텝핑(back stepping)하여 직전 상태를 테스트케이스별로 찾아내는 테스트케이스 필터링과정;A test case filtering process of finding a previous state for each test case by back stepping from the final state to the start state RI step by step; 상기 테스트케이스 필터링과정에서 시작상태(RI)로부터 최종상태(Exit)까지의 각 상태전이를 각 테스트케이스 별로 테스트프로시저를 도출하는 테스트프로시저 도출과정;A test procedure derivation process of deriving a test procedure for each test case for each state transition from a start state (RI) to a final state (Exit) in the test case filtering process; 상기 최종상태(Exit)로 전이되는 직전의 테스트케이스를 기준으로 상기 테스트 프로시저를 각 그룹으로 분류하는 프로시저 최적화과정; 및A procedure optimization process of classifying the test procedure into each group based on a test case immediately before transition to the final state; And 상기 프로시저 최적화과정에서 산출한 테스트프로시저에서 각 그룹별로 각각 하나의 결합 생성된 테스트프로시저를 각각 도출하는 프로시저 완성과정;을 포함하여 이루어진 것을 특징으로 하는 로봇 소프트웨어 컴포넌트를 위한 상태전이 테스 트 프로시저의 최적화방법.A state transition test for a robot software component, comprising: a procedure for completing a procedure for deriving a combined test procedure for each group from each test procedure calculated in the procedure optimization process. How to optimize your procedure. 제 1 항에 있어서,The method of claim 1, 상기 테스트케이스 필터링과정은 상태전이 최종상태(Exit)로 전이된 바로 직전의 모든 상태(SL1)를 찾아내는 제 1 단계;The test case filtering process may include a first step of finding all the states SL1 immediately before the state transition to the final state Exit; 상기 제 1 단계에서 찾은 각 상태(SL1)로 전이된 바로 직전의 모든 상태(SL2)를 찾는 제 2 단계;A second step of finding all the states SL2 immediately before the transition to each state SL1 found in the first step; 상기 제 2 단계에서 찾은 상태(SL2)들 중 제 1 단계에서 찾은 상태(SL1)와 중복되지 않은 상태(RI,RA,RS)를 추출하여, 추출된 상태(RI,RA,RS)의 바로 직전의 모든 상태(SL3)를 찾는 제 3 단계; 및Among the states SL2 found in the second step, the state RI, RA, RS that is not duplicated with the state SL1 found in the first step is extracted, and immediately before the extracted state RI, RA, RS. A third step of finding all states SL3 of the; And 상기 제 3 단계에서 찾은 상태(SL3)들 중 제 1, 제2 단계에서 찾은 상태(SL1, 2)와 중복되지 않은 상태(RR)를 추출한 후, 추출된 상태(RR)의 바로 직전의 모든 상태(SL4)를 찾는 제 4 단계;를 포함하여 이루어진 것을 특징으로 하는 로봇 소프트웨어 컴포넌트를 위한 상태전이 테스트 프로시저의 최적화방법. After extracting the state RR which is not duplicated with the states SL1 and 2 found in the first and second stages among the states SL3 found in the third stage, all states immediately before the extracted state RR (4) finding a SL4; and a method for optimizing a state transition test procedure for a robot software component, comprising: a; 제 2 항에 있어서,The method of claim 2, 상기 제 2 내지 제 4 단계에서 백스텝핑을 통해 찾은 각 단계의 상태들(SL2∼SL4)은 동일한 상태전이 별로 테스트케이스를 그룹으로 생성하되, 제 1 내지 제 4 단계를 통해 모든 테스트케이스들이 사용된 것을 특징으로 하는 로봇 소프트웨어 컴포넌트를 위한 상태전이 테스트 프로시저의 최적화방법. The states SL2 to SL4 of each step found through backstepping in the second to fourth stages generate test cases in groups for the same state transition, but all test cases are used through the first to fourth stages. A method of optimizing a state transition test procedure for a robot software component, characterized in that 제 1 항에 있어서,The method of claim 1, 상기 테스트프로시저 도출과정은 상기 테스트케이스 필터링과정에서 찾은 시작상태(RI)로부터 최종상태(Exit)까지 모든 경로의 상태전이에 대하여 전이 순서에 따른 일련의 상태 및 테스트케이스를 도출하는 것을 특징으로 하는 로봇 소프트웨어 컴포넌트를 위한 상태전이 테스트 프로시저의 최적화방법. The test procedure derivation process is characterized by deriving a series of states and test cases in the order of transition for the state transition of all paths from the start state (RI) to the final state (Exit) found in the test case filtering process. How to optimize state transition test procedures for robot software components. 제 1 항에 있어서,The method of claim 1, 상기 프로시저 최적화과정은 상기 테스트프로시저 도출과정에서 도출된 모든 테스트프로시저를 최종상태(Exit) 직전의 상태(SI, SI', SA, SA', SS, SS')에 따라 6그룹으로 분류하여 각 그룹의 테스트프로시저는 하나의 테스트프로시저로 결합 도출하되,The procedure optimization process classifies all test procedures derived from the test procedure derivation process into six groups according to the state immediately before the final state (SI, SI ', SA, SA', SS, SS '). Therefore, the test procedures of each group are derived and combined into one test procedure. 상기 각 그룹은 각 상태에 가장 가까운 별도로 체크된 테스트케이스를 검색하는 제 1 단계;Each group comprising: a first step of searching for a separately checked test case closest to each state; 상기 검색한 테스트케이스의 상태를 바로 다음 테스트프로시저에서 찾는 제 2 단계;A second step of finding a state of the searched test case in a next test procedure; 상기 다음 테스트프로시저에서 찾은 상태 중 최종상태(Exit)에 가까운 상태를 이용하여 이전 테스트프로시저의 테스트케이스들을 연결하는 제 3 단계;A third step of connecting test cases of a previous test procedure by using a state close to an exit state among the states found in the next test procedure; 상기 프로시저가 연결되어 누적된 새로운 테스트프로시저를 생성하는 제 4 단계;를 포함하여 이루어진 것을 특징으로 하는 로봇 소프트웨어 컴포넌트를 위한 상태전이 테스트 프로시저의 최적화방법.And a fourth step of connecting the procedure to generate a cumulative new test procedure. 제 5 항에 있어서,The method of claim 5, 상기 제 4 단계에서 각 그룹별로 생성된 테스트프로시저는 각 상태전이에 따른 각각의 테스트케이스를 모두 순차적으로 나열하는 것을 특징으로 하는 로봇 소프트웨어 컴포넌트를 위한 상태전이 테스트 프로시저의 최적화방법.The method for optimizing the state transition test procedure for the robot software component, characterized in that the test procedure generated for each group in the fourth step sequentially lists each test case according to each state transition.
KR1020080090355A 2008-09-12 2008-09-12 Method for test procedure optimize of robot software component KR100942987B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020080090355A KR100942987B1 (en) 2008-09-12 2008-09-12 Method for test procedure optimize of robot software component

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080090355A KR100942987B1 (en) 2008-09-12 2008-09-12 Method for test procedure optimize of robot software component

Publications (1)

Publication Number Publication Date
KR100942987B1 true KR100942987B1 (en) 2010-02-17

Family

ID=42083527

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080090355A KR100942987B1 (en) 2008-09-12 2008-09-12 Method for test procedure optimize of robot software component

Country Status (1)

Country Link
KR (1) KR100942987B1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0784832A (en) * 1993-09-09 1995-03-31 Hitachi Ltd Real-time system simulation device
JPH08202741A (en) * 1995-01-30 1996-08-09 Ricoh Co Ltd Device and method for supporting function design
JPH11143734A (en) 1997-11-07 1999-05-28 Hitachi Ltd Backward execution method of sequence program
JP2003216454A (en) 2002-01-28 2003-07-31 Mitsubishi Electric Corp Test procedure generating device, test procedure generating method, test procedure generator and recording medium

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0784832A (en) * 1993-09-09 1995-03-31 Hitachi Ltd Real-time system simulation device
JPH08202741A (en) * 1995-01-30 1996-08-09 Ricoh Co Ltd Device and method for supporting function design
JPH11143734A (en) 1997-11-07 1999-05-28 Hitachi Ltd Backward execution method of sequence program
JP2003216454A (en) 2002-01-28 2003-07-31 Mitsubishi Electric Corp Test procedure generating device, test procedure generating method, test procedure generator and recording medium

Similar Documents

Publication Publication Date Title
JP2008009842A (en) Control method of computer system, and computer system
Oh et al. Software safety analysis of function block diagrams using fault trees
CN108897676B (en) Flight guidance control software reliability analysis system and method based on formalization rules
CN109670664A (en) Flow implementation method, user equipment, storage medium and device based on workflow
CN109214140B (en) AltaRica-based avionics system dynamic reconstruction modeling method
CN103200027A (en) Method, device and system for locating network failure
JP2003178173A (en) Project risk managing method, device and program
CN110390147B (en) Multi-stage task system reliability analysis method based on irrelevant coverage model
CN108594051B (en) Automatic detection method and system for electrical equipment fault
CN111047205A (en) Multi-station cooperative processing method and device for assembly line, storage medium and processor
KR100942987B1 (en) Method for test procedure optimize of robot software component
KR101566358B1 (en) System and method of alarming uncommon state of automatic process
CN101373506B (en) Method for detecting software loophole model based on loophole model
CN111125634B (en) Reliability analysis method and system based on quality method
CN112860502A (en) Fault simulation method, equipment, server and storage medium
Ghidella et al. Requirements-based testing in aircraft control design
CN107682173B (en) Automatic fault positioning method and system based on transaction model
Andersson et al. Restarting manufacturing systems; restart states and restartability
Hu et al. File parsing vulnerability detection with symbolic execution
CN107908557B (en) Embedded software credible attribute modeling and verifying method
US20120203543A1 (en) Method for Analyzing Message Archives and Corresponding Computer Program
KR20220048233A (en) Method for detecting abnomal event and apparatus implementing the same method
JP2014126900A (en) Program analysis device, program analysis method, and program analysis program
Dotoli et al. Fault monitoring of automated manufacturing systems by first order hybrid petri nets
CN110928525A (en) Automatic log generation method and system for business flow development tool

Legal Events

Date Code Title Description
A201 Request for examination
N231 Notification of change of applicant
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130111

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20140106

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee