KR102777453B1 - System and method for auto-completing roboting processing automation based on history - Google Patents
System and method for auto-completing roboting processing automation based on history Download PDFInfo
- Publication number
- KR102777453B1 KR102777453B1 KR1020200140947A KR20200140947A KR102777453B1 KR 102777453 B1 KR102777453 B1 KR 102777453B1 KR 1020200140947 A KR1020200140947 A KR 1020200140947A KR 20200140947 A KR20200140947 A KR 20200140947A KR 102777453 B1 KR102777453 B1 KR 102777453B1
- Authority
- KR
- South Korea
- Prior art keywords
- scenario
- pattern
- candidate
- patterns
- auto
- Prior art date
- Legal status (The legal status 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 status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/067—Enterprise or organisation modelling
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06316—Sequencing of tasks or work
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0633—Workflow analysis
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0637—Strategic management or analysis, e.g. setting a goal or target of an organisation; Planning actions based on goals; Analysis or evaluation of effectiveness of goals
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
Landscapes
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Engineering & Computer Science (AREA)
- Strategic Management (AREA)
- Entrepreneurship & Innovation (AREA)
- Economics (AREA)
- Operations Research (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Marketing (AREA)
- Educational Administration (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- General Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- Game Theory and Decision Science (AREA)
- Development Economics (AREA)
- Data Mining & Analysis (AREA)
- Stored Programmes (AREA)
- Manipulator (AREA)
Abstract
히스토리 기반의 로보틱 처리 자동화 시나리오 자동 완성 시스템 및 방법이 개시된다. 일 실시예에 따른 히스토리 기반의 로보틱 처리 자동화 시나리오 자동 완성 시스템은, 작성중인 신규 시나리오로부터 검색 대상 시나리오 패턴을 생성하고, 시나리오 패턴 저장소로부터 상기 검색 대상 시나리오 패턴에 대응되는 하나 이상의 후보 시나리오 패턴을 검색하는 검색 모듈; 검색된 상기 각 후보 시나리오 패턴의 발생 빈도를 고려하여 상기 후보 시나리오 패턴 중 하나의 최종 후보 시나리오 패턴을 선택하는 선택 모듈; 및 시나리오 저장소로부터 상기 선택된 후보 시나리오 패턴이 포함된 하나 이상의 후보 시나리오를 추출하고, 상기 각 후보 시나리오의 실행 이력을 고려하여 상기 후보 시나리오 중 하나를 자동 완성 참조 시나리오로 선택하는 시나리오 자동 완성 모듈을 포함한다.A system and method for robotic processing automation scenario auto-completion based on history are disclosed. According to one embodiment, the system for robotic processing automation scenario auto-completion based on history includes: a search module which generates a search target scenario pattern from a new scenario being written, and searches for one or more candidate scenario patterns corresponding to the search target scenario pattern from a scenario pattern repository; a selection module which selects one final candidate scenario pattern from among the candidate scenario patterns by considering an occurrence frequency of each of the candidate scenario patterns searched; and a scenario auto-completion module which extracts one or more candidate scenarios including the selected candidate scenario pattern from the scenario repository, and selects one of the candidate scenarios as an auto-completion reference scenario by considering an execution history of each of the candidate scenarios.
Description
개시되는 실시예들은 로보틱 처리 자동화(Robotic Process Automation) 기술과 관련된다.The disclosed embodiments relate to robotic process automation technologies.
로보틱 처리 자동화(Robotic Process Automation; 이하 RPA)란 사용자가 PC 상에서 수행하는 단순 반복 업무를 미리 정해진 시나리오에 따라 소프트웨어 로봇이 모방하여 수행하게 해주는 기술이다. RPA는 주로 이메일 수발신, 문서작성, 데이터 기록/재입력 등의 행위를 수행할 수 있도록 시나리오를 설계하고 이를 실행할 수 있는 기능을 제공하는 소프트웨어를 포함한다.Robotic Process Automation (RPA) is a technology that allows software robots to imitate and perform simple, repetitive tasks performed by users on a PC according to a pre-determined scenario. RPA mainly includes software that designs scenarios to perform actions such as sending and receiving emails, writing documents, and recording/re-entering data, and provides the function to execute them.
RPA를 통하여 반복 업무를 자동화하기 위해서는 자동화 시나리오가 필요하다. 기존에는 사용자의 컴퓨터의 유저 인터페이스 상에서의 일련의 행위들을 소프트웨어상에서 모사한 뒤 결과물이 잘 동작하도록 속성값을 설정하고, 여러 차례의 디버깅 또는 시뮬레이션을 반복하여 속성 값을 보정하는 방식으로 시나리오를 작성하였다. 그러나 이와 같은 방식의 경우 기존에 이미 작성되어 있는 시나리오를 활용하지 못하여, 동일한 시나리오 개발을 반복하게 되며, 또한 새로 작성한 시나리오의 설정 값이 최적의 값인지를 검증할 방안이 없어 개발시간이 많이 걸리고 개발 이후에도 수행성공을 보장하지 못하는 문제점이 존재하였다.In order to automate repetitive tasks through RPA, an automation scenario is required. In the past, scenarios were written by simulating a series of actions on the user interface of the user's computer in software, setting property values so that the results would work well, and repeating multiple debugging or simulations to correct the property values. However, in this case, since the scenarios that had already been written could not be used, the same scenarios had to be developed repeatedly, and there was no way to verify whether the settings of the newly written scenario were optimal, so there was a problem that the development time was long and the success of the performance could not be guaranteed even after development.
개시되는 실시예들은 로보틱 처리 자동화 시나리오를 효율적으로 작성하기 위한 기술적인 수단을 제공하기 위한 것이다.The disclosed embodiments are intended to provide technical means for efficiently creating robotic process automation scenarios.
예시적인 실시예에 따르면, 작성중인 신규 시나리오로부터 검색 대상 시나리오 패턴을 생성하고, 시나리오 패턴 저장소로부터 상기 검색 대상 시나리오 패턴에 대응되는 하나 이상의 후보 시나리오 패턴을 검색하는 검색 모듈; 검색된 상기 각 후보 시나리오 패턴의 발생 빈도를 고려하여 상기 후보 시나리오 패턴 중 하나의 최종 후보 시나리오 패턴을 선택하는 선택 모듈; 및 시나리오 저장소로부터 상기 선택된 후보 시나리오 패턴이 포함된 하나 이상의 후보 시나리오를 추출하고, 상기 각 후보 시나리오의 실행 이력을 고려하여 상기 후보 시나리오 중 하나를 자동 완성 참조 시나리오로 선택하는 시나리오 자동 완성 모듈을 포함하는 로보틱 처리 자동화 시나리오 자동 완성 시스템이 제공된다.According to an exemplary embodiment, a robotic processing automation scenario auto-completion system is provided, including a search module which generates a search target scenario pattern from a new scenario being written and searches for one or more candidate scenario patterns corresponding to the search target scenario pattern from a scenario pattern repository; a selection module which selects one final candidate scenario pattern from among the candidate scenario patterns by considering an occurrence frequency of each of the candidate scenario patterns searched; and a scenario auto-completion module which extracts one or more candidate scenarios including the selected candidate scenario pattern from the scenario repository and selects one of the candidate scenarios as an auto-completion reference scenario by considering an execution history of each of the candidate scenarios.
상기 시스템은, 상기 시나리오 저장소에 저장된 하나 이상의 기 작성 시나리오로부터 하나 이상의 시나리오 패턴을 생성하여 상기 시나리오 패턴 저장소에 저장하는 시나리오 패턴 추출 모듈을 더 포함할 수 있다.The above system may further include a scenario pattern extraction module that generates one or more scenario patterns from one or more pre-written scenarios stored in the scenario repository and stores the generated scenario patterns in the scenario pattern repository.
상기 시나리오 패턴 추출 모듈은, 상기 시나리오 패턴 각각에 대한 식별자(ID), 이전 시나리오 패턴, 대응되는 시나리오의 식별자(ID) 및 저장 위치를 상기 시나리오 패턴 저장소에 저장할 수 있다.The above scenario pattern extraction module can store an identifier (ID) for each of the above scenario patterns, a previous scenario pattern, an identifier (ID) of a corresponding scenario, and a storage location in the above scenario pattern storage.
상기 시나리오 패턴 추출 모듈은, 저장 대상 시나리오 패턴과 동일한 시나리오 패턴이 상기 시나리오 패턴 저장소에 기 저장되어 있는 경우, 상기 저장 대상 시나리오 패턴에 대응되는 시나리오의 식별자 및 저장 위치를 상기 동일 시나리오 패턴의 엔트리에 추가할 수 있다.The above scenario pattern extraction module can, if a scenario pattern identical to the storage target scenario pattern is already stored in the scenario pattern storage, add the identifier and storage location of a scenario corresponding to the storage target scenario pattern to the entry of the identical scenario pattern.
상기 검색 모듈은, 상기 신규 시나리오 중 마지막으로 추가된 단계를 포함하고 길이가 설정값 이상인 하나 이상의 검색 대상 시나리오 패턴을 생성할 수 있다.The above search module can generate one or more search target scenario patterns that include the last added step among the new scenarios and have a length greater than a set value.
상기 검색 모듈은, 상기 하나 이상의 검색 대상 시나리오 패턴의 길이를 고려하여 순차적으로 상기 시나리오 패턴 저장소를 검색하여, 상기 검색 대상 시나리오 패턴과 동일한 시나리오 패턴을 포함하는 동시에 추가로 하나의 행위 패턴을 더 포함하는 상기 하나 이상의 후보 시나리오 패턴을 추출할 수 있다.The above search module can sequentially search the scenario pattern storage considering the length of the one or more search target scenario patterns, and extract the one or more candidate scenario patterns that include the same scenario pattern as the search target scenario pattern and additionally include one more behavior pattern.
상기 선택 모듈은, 상기 하나 이상의 후보 시나리오 패턴의 발생 빈도를 고려하여 N개의 후보 시나리오 패턴을 선택하고, 기 설정된 하위 임계값 및 상위 임계값을 이용하여 상기 선택된 N개의 후보 시나리오 패턴을 필터링함으로써 상기 최종 후보 시나리오 패턴을 선택할 수 있다.The above selection module can select N candidate scenario patterns by considering the occurrence frequency of one or more candidate scenario patterns, and select the final candidate scenario pattern by filtering the selected N candidate scenario patterns using preset lower threshold values and upper threshold values.
상기 선택 모듈은, 상기 N개의 후보 시나리오 패턴 중 상기 상위 임계값을 초과하는 후보 시나리오 패턴이 존재하는 경우, 상기 상위 임계값을 초과하는 후보 시나리오 패턴 중 발생 빈도가 가장 높은 후보 시나리오 패턴을 상기 최종 부호 시나리오 패턴으로 선택할 수 있다.The above selection module may select, if there is a candidate scenario pattern exceeding the upper threshold value among the N candidate scenario patterns, the candidate scenario pattern with the highest occurrence frequency among the candidate scenario patterns exceeding the upper threshold value as the final sign scenario pattern.
상기 선택 모듈은, 상기 필터링 결과 남은 후보 시나리오 패턴의 개수가 2개 이상인 경우, 상기 남은 후보 시나리오 패턴 중 사용자에 의해 선택된 후보 시나리오 패턴을 상기 최종 부호 시나리오 패턴으로 설정할 수 있다.The above selection module can set a candidate scenario pattern selected by the user from among the remaining candidate scenario patterns as the final sign scenario pattern when the number of candidate scenario patterns remaining as a result of the filtering is two or more.
상기 자동 완성 모듈은, 상기 하나 이상의 후보 시나리오 각각의 기 설정된 기간 동안의 실행 횟수 및 성공률을 고려하여 상기 자동 완성 참조 시나리오를 선택할 수 있다.The above auto-completion module can select the auto-completion reference scenario by considering the number of executions and success rate of each of the one or more candidate scenarios during a preset period.
상기 자동 완성 모듈은, 상기 자동 완성 참조 시나리오에 포함된 하나 이상의 단계 객체 정보 및 속성 정보를 이용하여 상기 신규 시나리오의 신규 추가 단계의 객체 정보 및 속성 정보를 생성할 수 있다.The above auto-completion module can generate object information and attribute information of a new additional step of the new scenario by using one or more step object information and attribute information included in the above auto-completion reference scenario.
다른 예시적인 실시예에 따르면, 작성중인 신규 시나리오로부터 검색 대상 시나리오 패턴을 생성하고, 시나리오 패턴 저장소로부터 상기 검색 대상 시나리오 패턴에 대응되는 하나 이상의 후보 시나리오 패턴을 검색하는 단계; 검색된 상기 각 후보 시나리오 패턴의 발생 빈도를 고려하여 상기 후보 시나리오 패턴 중 하나의 최종 후보 시나리오 패턴을 선택하는 단계; 및 시나리오 저장소로부터 상기 선택된 후보 시나리오 패턴이 포함된 하나 이상의 후보 시나리오를 추출하고, 상기 각 후보 시나리오의 실행 이력을 고려하여 상기 후보 시나리오 중 하나를 자동 완성 참조 시나리오로 선택하는 시나리오 자동 완성 단계를 포함하는 로보틱 처리 자동화 시나리오 자동 완성 방법이 제공된다.According to another exemplary embodiment, a method for robotic processing automation scenario auto-completion is provided, including the steps of: generating a search target scenario pattern from a new scenario being written, and searching for one or more candidate scenario patterns corresponding to the search target scenario pattern from a scenario pattern repository; selecting one final candidate scenario pattern among the candidate scenario patterns by considering an occurrence frequency of each of the searched candidate scenario patterns; and extracting one or more candidate scenarios including the selected candidate scenario pattern from the scenario repository, and selecting one of the candidate scenarios as an auto-completion reference scenario by considering an execution history of each of the candidate scenarios.
상기 방법은, 상기 시나리오 저장소에 저장된 하나 이상의 기 작성 시나리오로부터 하나 이상의 시나리오 패턴을 생성하여 상기 시나리오 패턴 저장소에 저장하는 시나리오 패턴 추출 단계를 더 포함할 수 있다.The above method may further include a scenario pattern extraction step of generating one or more scenario patterns from one or more pre-written scenarios stored in the scenario repository and storing the generated scenario patterns in the scenario pattern repository.
상기 시나리오 패턴 추출 단계는, 상기 시나리오 패턴 각각에 대한 식별자(ID), 이전 시나리오 패턴, 대응되는 시나리오의 식별자(ID) 및 저장 위치를 상기 시나리오 패턴 저장소에 저장할 수 있다.The above scenario pattern extraction step can store an identifier (ID) for each of the above scenario patterns, a previous scenario pattern, an identifier (ID) of a corresponding scenario, and a storage location in the above scenario pattern storage.
상기 시나리오 패턴 추출 단계는, 저장 대상 시나리오 패턴과 동일한 시나리오 패턴이 상기 시나리오 패턴 저장소에 기 저장되어 있는 경우, 상기 저장 대상 시나리오 패턴에 대응되는 시나리오의 식별자 및 저장 위치를 상기 동일 시나리오 패턴의 엔트리에 추가할 수 있다.The above scenario pattern extraction step can add an identifier and storage location of a scenario corresponding to the storage target scenario pattern to the entry of the same scenario pattern if a scenario pattern identical to the storage target scenario pattern is already stored in the scenario pattern storage.
상기 검색하는 단계는, 상기 신규 시나리오 중 마지막으로 추가된 단계를 포함하고 길이가 설정값 이상인 하나 이상의 검색 대상 시나리오 패턴을 생성할 수 있다.The above searching step can generate one or more search target scenario patterns that include the last added step among the new scenarios and have a length greater than or equal to a set value.
상기 검색하는 단계는, 상기 하나 이상의 검색 대상 시나리오 패턴의 길이를 고려하여 순차적으로 상기 시나리오 패턴 저장소를 검색하여, 상기 검색 대상 시나리오 패턴과 동일한 시나리오 패턴을 포함하는 동시에 추가로 하나의 행위 패턴을 더 포함하는 상기 하나 이상의 후보 시나리오 패턴을 추출할 수 있다.The above-described searching step can sequentially search the scenario pattern storage by considering the length of the one or more search target scenario patterns, and extract the one or more candidate scenario patterns that include the same scenario pattern as the search target scenario pattern and additionally include one more behavior pattern.
상기 선택하는 단계는, 상기 하나 이상의 후보 시나리오 패턴의 발생 빈도를 고려하여 N개의 후보 시나리오 패턴을 선택하고, 기 설정된 하위 임계값 및 상위 임계값을 이용하여 상기 선택된 N개의 후보 시나리오 패턴을 필터링함으로써 상기 최종 후보 시나리오 패턴을 선택할 수 있다.The above-described selecting step may select N candidate scenario patterns by considering the occurrence frequency of one or more candidate scenario patterns, and filter the selected N candidate scenario patterns by using preset lower threshold values and upper threshold values to select the final candidate scenario pattern.
상기 선택하는 단계는, 상기 N개의 후보 시나리오 패턴 중 상기 상위 임계값을 초과하는 후보 시나리오 패턴이 존재하는 경우, 상기 상위 임계값을 초과하는 후보 시나리오 패턴 중 발생 빈도가 가장 높은 후보 시나리오 패턴을 상기 최종 부호 시나리오 패턴으로 선택할 수 있다.The above-described selecting step may select, if there is a candidate scenario pattern exceeding the upper threshold value among the N candidate scenario patterns, the candidate scenario pattern with the highest occurrence frequency among the candidate scenario patterns exceeding the upper threshold value as the final sign scenario pattern.
상기 선택하는 단계는, 상기 필터링 결과 남은 후보 시나리오 패턴의 개수가 2개 이상인 경우, 상기 남은 후보 시나리오 패턴 중 사용자에 의해 선택된 후보 시나리오 패턴을 상기 최종 부호 시나리오 패턴으로 설정할 수 있다.The above-mentioned selecting step may set a candidate scenario pattern selected by the user from among the remaining candidate scenario patterns as the final sign scenario pattern if the number of candidate scenario patterns remaining as a result of the above-mentioned filtering is two or more.
상기 자동 완성 단계는, 상기 하나 이상의 후보 시나리오 각각의 기 설정된 기간 동안의 실행 횟수 및 성공률을 고려하여 상기 자동 완성 참조 시나리오를 선택할 수 있다.The above auto-completion step may select the auto-completion reference scenario by considering the number of executions and success rate of each of the one or more candidate scenarios during a preset period.
상기 자동 완성 단계는, 상기 자동 완성 참조 시나리오에 포함된 하나 이상의 단계 객체 정보 및 속성 정보를 이용하여 상기 신규 시나리오의 신규 추가 단계의 객체 정보 및 속성 정보를 생성할 수 있다.The above auto-completion step can generate object information and attribute information of a new additional step of the new scenario by using one or more step object information and attribute information included in the auto-completion reference scenario.
개시되는 실시예들에 따르면, 기 작성된 자동화 시나리오들 중 현재 개발 중인 단계에 적용 가능한 동일 시나리오를 찾아 현재 단계의 속성 값을 자동을 설정하는 방식으로 시나리오를 완성할 수 있다. 이에 따라 로보틱 처리 자동화 시나리오의 개발 생산성을 높일 수 있으며, 또한 기존의 검증된 시나리오를 기반으로 새로운 시나리오를 생성하므로 운영 중 발생할 수 있는 오류 가능성을 낮출 수 있다.According to the disclosed embodiments, a scenario can be completed by finding an identical scenario applicable to a stage currently under development among previously written automation scenarios and automatically setting the attribute values of the current stage. Accordingly, the development productivity of a robotic processing automation scenario can be increased, and since a new scenario is created based on an existing verified scenario, the possibility of errors occurring during operation can be reduced.
도 1은 일 실시예에 따른 로보틱 처리 자동화 시나리오 자동 완성 시스템(100)을 설명하기 위한 블록도
도 2는 일 실시예에 따른 로보틱 처리 자동화 시나리오 자동 완성 시스템(100)의 시나리오 패턴 추출 모듈(102)의 동작을 상세히 설명하기 위한 흐름도
도 3은 일 실시예에 따른 로보틱 처리 자동화 시나리오 자동 완성 시스템(100)의 검색 모듈(104)의 동작을 상세히 설명하기 위한 흐름도
도 4는 일 실시예에 따른 로보틱 처리 자동화 시나리오 자동 완성 시스템(100)의 선택 모듈(106)의 동작을 상세히 설명하기 위한 흐름도
도 5는 일 실시예에 따른 로보틱 처리 자동화 시나리오 자동 완성 시스템(100)의 시나리오 자동 완성 모듈(108)의 동작을 상세히 설명하기 위한 흐름도
도 6은 일 실시예에 따른 로보틱 처리 자동화 시나리오 자동 완성 방법(600)을 설명하기 위한 흐름도
도 7은 예시적인 실시예들에서 사용되기에 적합한 컴퓨팅 장치를 포함하는 컴퓨팅 환경을 예시하여 설명하기 위한 블록도Figure 1 is a block diagram for explaining a robotic processing automation scenario automatic completion system (100) according to one embodiment.
Figure 2 is a flow chart for explaining in detail the operation of the scenario pattern extraction module (102) of the robotic processing automation scenario automatic completion system (100) according to one embodiment.
Figure 3 is a flow chart for explaining in detail the operation of the search module (104) of the robotic processing automation scenario automatic completion system (100) according to one embodiment.
Figure 4 is a flow chart for explaining in detail the operation of the selection module (106) of the robotic processing automation scenario automatic completion system (100) according to one embodiment.
FIG. 5 is a flow chart for explaining in detail the operation of the scenario auto-completion module (108) of the robotic processing automation scenario auto-completion system (100) according to one embodiment.
Figure 6 is a flow chart for explaining a method (600) for automatically completing a robotic processing automation scenario according to one embodiment.
FIG. 7 is a block diagram illustrating a computing environment including a computing device suitable for use in exemplary embodiments.
이하, 도면을 참조하여 본 발명의 구체적인 실시형태를 설명하기로 한다. 이하의 상세한 설명은 본 명세서에서 기술된 방법, 장치 및/또는 시스템에 대한 포괄적인 이해를 돕기 위해 제공된다. 그러나 이는 예시에 불과하며 본 발명은 이에 제한되지 않는다.Hereinafter, specific embodiments of the present invention will be described with reference to the drawings. The following detailed description is provided to help a comprehensive understanding of the methods, devices, and/or systems described herein. However, this is only an example and the present invention is not limited thereto.
본 발명의 실시예들을 설명함에 있어서, 본 발명과 관련된 공지기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략하기로 한다. 그리고, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다. 상세한 설명에서 사용되는 용어는 단지 본 발명의 실시예들을 기술하기 위한 것이며, 결코 제한적이어서는 안 된다. 명확하게 달리 사용되지 않는 한, 단수 형태의 표현은 복수 형태의 의미를 포함한다. 본 설명에서, "포함" 또는 "구비"와 같은 표현은 어떤 특성들, 숫자들, 단계들, 동작들, 요소들, 이들의 일부 또는 조합을 가리키기 위한 것이며, 기술된 것 이외에 하나 또는 그 이상의 다른 특성, 숫자, 단계, 동작, 요소, 이들의 일부 또는 조합의 존재 또는 가능성을 배제하도록 해석되어서는 안 된다.In describing embodiments of the present invention, if it is judged that a detailed description of a known technology related to the present invention may unnecessarily obscure the gist of the present invention, the detailed description will be omitted. In addition, the terms described below are terms defined in consideration of their functions in the present invention, and may vary depending on the intention or custom of the user or operator. Therefore, the definitions should be made based on the contents throughout this specification. The terms used in the detailed description are only for describing embodiments of the present invention, and should never be limited. Unless clearly used otherwise, the singular form includes the plural form. In this description, expressions such as "comprises" or "comprising" are intended to indicate certain features, numbers, steps, operations, elements, parts or combinations thereof, and should not be construed to exclude the presence or possibility of one or more other features, numbers, steps, operations, elements, parts or combinations thereof other than those described.
개시되는 실시예들을 설명함에 앞서, 본 명세서에서 사용되는 용어들의 정의는 다음과 같다.Before describing the disclosed embodiments, the terms used in this specification are defined as follows.
시나리오: 자동화 대상 업무를 소프트웨어 로봇이 자동으로 수행할 수 있도록 구성한 것을 의미한다. 시나리오는 각각 자동화 대상 업무를 구성하는 업무 단계에 대응되는 하나 이상의 시나리오 단계로 구성된다.Scenario: refers to a configuration in which a software robot can automatically perform tasks to be automated. A scenario is composed of one or more scenario steps, each corresponding to a task step that constitutes a task to be automated.
행위 패턴: 시나리오를 구성하는 특정 단계(Activity)에서 실제 수행하고자 하는 행위(작업) 및 해당 행위의 대상으로 이루어진 쌍을 의미한다. 예를 들어, 검색 엔진의 검색 엔진을 클릭하는 행위 패턴은 다음과 같은 행위 및 대상으로 구성된다.Action Pattern: A pair of actions (tasks) that are actually performed in a specific step (Activity) that constitutes a scenario and the target of the action. For example, the action pattern of clicking on the search engine of a search engine consists of the following actions and targets.
예) 검색 버튼 클릭 = 행위(클릭) + 대상(검색 페이지 버튼)Example) Clicking the search button = Action (click) + Target (search page button)
시나리오 단계: 실제 속성값과 결합되어 실행 가능하도록 구체화된 행위 패턴을 의미한다. 행위 패턴과 시나리오 단계의 관계는 프로그래밍 언어에서 클래스(Class)와 클래스의 객체(Instance)의 관계와 같다.Scenario phase: This refers to a behavior pattern that is specified to be executable by combining it with actual property values. The relationship between a behavior pattern and a scenario phase is similar to the relationship between a class and an object (Instance) of a class in a programming language.
행위 패턴 식별자: 행위와 대상의 필수 속성 값의 조합으로 생성한 유일 값을 의미한다. 개시되는 실시예들에서 행위 패턴 식별자는 행위와 대상의 필수 속성 값을 해쉬 함수를 통해 해시한 값일 수 있다. 이하의 설명에서는 편의를 위해 "A01"과 같은 형태로 간략화하여 표현하였다. Behavior Pattern Identifier: This refers to a unique value generated by combining the essential attribute values of the action and the target. In the disclosed embodiments, the behavior pattern identifier may be a value obtained by hashing the essential attribute values of the action and the target through a hash function. In the following description, it is expressed in a simplified form such as "A01" for convenience.
시나리오 패턴: 순서를 가지는 연속된 행위 패턴을 의미한다.Scenario pattern: refers to a pattern of sequential actions that have a sequence.
시나리오 패턴 길이: 시나리오 패턴이 가지는 행위 패턴의 수이다.Scenario Pattern Length: The number of behavior patterns that a scenario pattern has.
시나리오 패턴 식별자: 행위 패턴 식별자를 순서대로 결합하여 해쉬 함수로 생성해낸 유일 ID 값을 의미한다.Scenario Pattern Identifier: This refers to a unique ID value generated by combining behavior pattern identifiers in order and using a hash function.
개시되는 실시예들에서, 행위란 프로그램의 실행, 마우스 클릭, 텍스트의 입력, 혹은 사용자가 정의한 특정 업무와 같이 하나의 시나리오 단계에서 이루어지는 특정 작업을 의미하는 것으로서, 일반적으로 자동화 시나리오에서 하나의 함수 형태로 표현된다. 또한 행위의 대상은 행위를 호출하는 객체 및 해당 객체의 속성으로 표현될 수 있다.In the disclosed embodiments, an action means a specific task performed in a single scenario step, such as execution of a program, mouse click, input of text, or a specific task defined by a user, and is generally expressed in the form of a single function in an automation scenario. In addition, the target of the action can be expressed as an object calling the action and a property of the object.
행위의 대상인 객체의 속성은 필수 속성과 선택 속성으로 구분될 수 있다. 객체의 필수 속성은 객체마다 필수적으로 나타나는 변하지 않는 속성을, 선택 속성은 객체마다 서로 다르게 표현되는 속성을 의미한다. 각 객체마다 필수 속성 및 선택 속성을 구분하는 절대적인 기준이 있는 것은 아니며, 필요에 따라 적절히 정의 가능하다.The properties of an object that is the target of an action can be divided into essential properties and optional properties. The essential properties of an object are properties that are invariable and appear in each object, while optional properties are properties that are expressed differently for each object. There is no absolute standard for distinguishing between essential and optional properties for each object, and they can be appropriately defined as needed.
이와 같은 관점에서, 행위 패턴은 행위와 객체의 필수 속성만이 결합된 형태로, 시나리오 단계는 시나리오 내에서 행위 패턴이 실제 실행 가능하도록, 행위 패턴에 행위 옵션 및 객체를 구체화하기 위한 선택 속성이 결합된 형태로 이해할 수 있다. 이를 정리하면 다음과 같다.From this perspective, a behavior pattern can be understood as a combination of only the essential properties of a behavior and an object, and a scenario step can be understood as a combination of optional properties to specify behavior options and objects in a behavior pattern so that the behavior pattern can actually be executed within the scenario. This can be summarized as follows.
행위 패턴 = 행위 + 객체 필수 속성Behavior Pattern = Behavior + Object Required Properties
시나리오 단계 = 행위 + 행위 옵션 + 객체 필수 속성 + 객체 선택 속성Scenario Step = Action + Action Options + Object Required Properties + Object Optional Properties
예를 들어, 크롬 브라우저에서의 구글 검색 버튼 클릭 행위의 행위 패턴은 다음과 같이 정해질 수 있다.For example, the behavior pattern of clicking the Google search button in the Chrome browser can be determined as follows:
Chrome Google 검색 버튼 클릭 행위 패턴 = Chrome Google Search Button Click Behavior Pattern =
클릭 + Click +
버튼 필수 속성(Chrome, "www.google.com", tag="input" type="submit")Button required attributes (Chrome, "www.google.com", tag="input" type="submit")
또한, 이로부터 구글 검색 버튼 클릭 행위의 시나리오 단계는 다음과 같이 정해질 수 있다.Additionally, the scenario steps of the Google search button click action can be determined as follows.
Chrome Google 검색 버튼 클릭 시나리오 단계 =Chrome Google Search Button Click Scenario Steps =
클릭 + Click +
실행옵션(Mouse Lbutton Click, position=(54, 24), Delay 100ms, Timeout 10초) +Execution options (Mouse Lbutton Click, position=(54, 24), Delay 100ms, Timeout 10 seconds) +
버튼 필수 속성(Chrome, www.google.com, tag="input" type="submit") +Button required attributes (Chrome, www.google.com, tag="input" type="submit") +
버튼 선택 속성(name="btnK", class="gNO89b", aria-label="Google 검색" value="Google 검색", size="973, 555, 111, 36")Button selection attributes (name="btnK", class="gNO89b", aria-label="Google Search" value="Google Search", size="973, 555, 111, 36")
도 1은 일 실시예에 따른 로보틱 처리 자동화 시나리오 자동 완성 시스템(100)을 설명하기 위한 블록도이다. 도시된 바와 같이, 일 실시예에 따른 로보틱 처리 자동화 시나리오 자동 완성 시스템(100)은 시나리오 패턴 추출 모듈(102), 검색 모듈(104), 선택 모듈(106) 및 시나리오 자동 완성 모듈(108)을 포함한다.FIG. 1 is a block diagram for explaining a robotic processing automation scenario automatic completion system (100) according to one embodiment. As illustrated, the robotic processing automation scenario automatic completion system (100) according to one embodiment includes a scenario pattern extraction module (102), a search module (104), a selection module (106), and a scenario automatic completion module (108).
시나리오 패턴 추출 모듈(102)은 시나리오 저장소(110)에 저장된 하나 이상의 기 작성 시나리오로부터 하나 이상의 시나리오 패턴을 생성하여 시나리오 패턴 저장소(112)에 저장한다. 시나리오 저장소(110)는 기 작성된 하나 이상의 시나리오를 저장 및 관리하는 데이터베이스이다. 또한 시나리오 패턴 저장소(112)는 시나리오로부터 추출된 하나 이상의 시나리오 패턴을 저장 및 관리하는 데이터베이스이다. The scenario pattern extraction module (102) generates one or more scenario patterns from one or more pre-written scenarios stored in the scenario repository (110) and stores them in the scenario pattern repository (112). The scenario repository (110) is a database that stores and manages one or more pre-written scenarios. In addition, the scenario pattern repository (112) is a database that stores and manages one or more scenario patterns extracted from the scenarios.
일 실시예에서, 시나리오 패턴 추출 모듈(102)은 시나리오 패턴과 함께, 각 시나리오 패턴의 식별자(ID), 이전 시나리오 패턴, 대응되는 시나리오의 식별자(ID) 및 저장 위치를 시나리오 패턴 저장소(112)에 저장할 수 있다. 만약 저장 대상 시나리오 패턴과 동일한 시나리오 패턴이 시나리오 패턴 저장소(112)에 기 저장되어 있는 경우, 시나리오 패턴 추출 모듈(102)은 저장 대상 시나리오 패턴에 대응되는 시나리오의 식별자 및 저장 위치를 동일 시나리오 패턴의 엔트리에 추가할 수 있다.In one embodiment, the scenario pattern extraction module (102) may store the identifier (ID) of each scenario pattern, a previous scenario pattern, an identifier (ID) of a corresponding scenario, and a storage location together with the scenario pattern in the scenario pattern storage (112). If a scenario pattern identical to the storage target scenario pattern is already stored in the scenario pattern storage (112), the scenario pattern extraction module (102) may add the identifier and storage location of the scenario corresponding to the storage target scenario pattern to the entry of the identical scenario pattern.
검색 모듈(104)은 작성중인 신규 시나리오로부터 검색 대상 시나리오 패턴을 생성하고, 시나리오 패턴 저장소(112)로부터 검색 대상 시나리오 패턴에 대응되는 하나 이상의 후보 시나리오 패턴을 검색한다.The search module (104) generates a search target scenario pattern from a new scenario being written, and searches for one or more candidate scenario patterns corresponding to the search target scenario pattern from the scenario pattern storage (112).
일 실시예에서, 검색 모듈(104)은 작성중인 신규 시나리오 중 마지막으로 추가된 단계를 포함하고 길이가 설정값 이상인 하나 이상의 검색 대상 시나리오 패턴을 생성할 수 있다. 이후 검색 모듈(104)은 각 검색 대상 시나리오 패턴의 길이를 고려하여 순차적으로 시나리오 패턴 저장소(112)를 검색하고, 이로부터 검색 대상 시나리오 패턴과 동일한 시나리오 패턴을 포함하는 동시에 추가로 하나의 행위 패턴을 더 포함하는 하나 이상의 후보 시나리오 패턴을 추출할 수 있다.In one embodiment, the search module (104) may generate one or more search target scenario patterns that include the last added step of the new scenario being written and have a length greater than or equal to a set value. Thereafter, the search module (104) may sequentially search the scenario pattern storage (112) considering the length of each search target scenario pattern, and extract one or more candidate scenario patterns therefrom that include the same scenario pattern as the search target scenario pattern and additionally include one more behavior pattern.
선택 모듈(106)은 검색 모듈(104)에서 검색된 각 후보 시나리오 패턴의 발생 빈도를 고려하여 후보 시나리오 패턴 중 하나의 최종 후보 시나리오 패턴을 선택한다.The selection module (106) selects one final candidate scenario pattern among the candidate scenario patterns by considering the occurrence frequency of each candidate scenario pattern searched by the search module (104).
일 실시예에서, 선택 모듈(106)은 하나 이상의 후보 시나리오 패턴의 발생 빈도를 고려하여 N개의 후보 시나리오 패턴을 선택하고, 기 설정된 하위 임계값 및 상위 임계값을 이용하여 선택된 N개의 후보 시나리오 패턴을 필터링함으로써 최종 후보 시나리오 패턴을 선택할 수 있다. 이때 상기 N 값은 시나리오 패턴의 평균 발생 빈도 등을 고려하여 적절히 설정될 수 있다. In one embodiment, the selection module (106) may select N candidate scenario patterns by considering the occurrence frequency of one or more candidate scenario patterns, and may select a final candidate scenario pattern by filtering the selected N candidate scenario patterns using preset lower threshold values and upper threshold values. At this time, the N value may be appropriately set by considering the average occurrence frequency of the scenario patterns, etc.
만약 N개의 후보 시나리오 패턴 중 상위 임계값을 초과하는 후보 시나리오 패턴이 존재하는 경우, 선택 모듈(106)은 상위 임계값을 초과하는 후보 시나리오 패턴 중 발생 빈도가 가장 높은 후보 시나리오 패턴을 최종 부호 시나리오 패턴으로 선택할 수 있다. 이와 달리, 만약 필터링 결과 남은 후보 시나리오 패턴의 개수가 2개 이상인 경우, 선택 모듈(106)은 남은 후보 시나리오 패턴 중 사용자에 의해 선택된 후보 시나리오 패턴을 최종 부호 시나리오 패턴으로 설정할 수 있다.If there is a candidate scenario pattern exceeding the upper threshold value among the N candidate scenario patterns, the selection module (106) may select the candidate scenario pattern with the highest occurrence frequency among the candidate scenario patterns exceeding the upper threshold value as the final sign scenario pattern. Conversely, if the number of candidate scenario patterns remaining as a result of the filtering is 2 or more, the selection module (106) may set the candidate scenario pattern selected by the user among the remaining candidate scenario patterns as the final sign scenario pattern.
시나리오 자동 완성 모듈(108)은 시나리오 저장소(110)로부터 선택된 후보 시나리오 패턴이 포함된 하나 이상의 후보 시나리오를 추출하고, 각 후보 시나리오의 실행 이력을 고려하여 후보 시나리오 중 하나를 자동 완성 참조 시나리오로 선택한다. 시나리오 저장소(110)에 저장된 각각의 시나리오 별 실행 횟수 및 실행 성공 횟수(또는 성공률)는 실행 이력 저장소(114)에 저장 및 관리된다. 시나리오 자동 완성 모듈(108)은 실행 이력 저장소(114)에 저장된 각 후보 시나리오의 기 설정된 기간 동안의 실행 횟수 및 성공률을 고려하여 자동 완성 참조 시나리오를 선택할 수 있다. 이후 시나리오 자동 완성 모듈(108)은 상기 자동 완성 참조 시나리오에 포함된 하나 이상의 단계에 대한 객체 정보 및 속성 정보를 이용하여 작성중인 신규 시나리오의 신규 추가 단계의 객체 정보 및 속성 정보를 생성할 수 있다.The scenario auto-completion module (108) extracts one or more candidate scenarios including the selected candidate scenario pattern from the scenario repository (110), and selects one of the candidate scenarios as an auto-completion reference scenario by considering the execution history of each candidate scenario. The number of executions and the number of successful executions (or success rates) for each scenario stored in the scenario repository (110) are stored and managed in the execution history repository (114). The scenario auto-completion module (108) can select an auto-completion reference scenario by considering the number of executions and the success rate for a preset period of time of each candidate scenario stored in the execution history repository (114). Thereafter, the scenario auto-completion module (108) can generate object information and property information of a new additional step of a new scenario being written by using object information and property information for one or more steps included in the auto-completion reference scenario.
도 2는 일 실시예에 따른 로보틱 처리 자동화 시나리오 자동 완성 시스템(100)의 시나리오 패턴 추출 모듈(102)의 동작을 상세히 설명하기 위한 흐름도이다. 도시된 흐름도에서는 상기 방법 또는 과정을 복수 개의 단계로 나누어 기재하였으나, 적어도 일부의 단계들은 순서를 바꾸어 수행되거나, 다른 단계와 결합되어 함께 수행되거나, 생략되거나, 세부 단계들로 나뉘어 수행되거나, 또는 도시되지 않은 하나 이상의 단계가 부가되어 수행될 수 있다.FIG. 2 is a flow chart for explaining in detail the operation of the scenario pattern extraction module (102) of the robotic processing automation scenario automatic completion system (100) according to one embodiment. In the illustrated flow chart, the method or process is described by dividing it into a plurality of steps, but at least some of the steps may be performed in a changed order, combined with other steps and performed together, omitted, divided into detailed steps and performed, or one or more steps not illustrated may be added and performed.
단계 202에서, 기 작성된 자동화 시나리오가 등록되면, 시나리오 패턴 추출 모듈(102)은 등록된 시나리오를 시나리오 저장소(110)에 저장한다.In step 202, when a pre-written automation scenario is registered, the scenario pattern extraction module (102) stores the registered scenario in the scenario storage (110).
단계 204에서, 시나리오 패턴 추출 모듈(102)은 상기 시나리오의 각 단계들을 행위 패턴으로 변환한다.In step 204, the scenario pattern extraction module (102) converts each step of the scenario into a behavior pattern.
예를 들어, 다음과 같은 시나리오가 등록되었다고 가정하자.For example, let's assume the following scenario is registered:
예) 브라우저 실행 > 이메일 사이트 이동 > ID 입력 > 패스워드 입력 > 로그인 버튼 클릭 > 받은 편지함 클릭Example) Run browser > Go to email site > Enter ID > Enter password > Click login button > Click inbox
이를 행위 패턴으로 변환하면 다음과 같이 구성될 수 있다.If we convert this into a behavior pattern, it can be structured as follows:
행위 패턴: A01 > B02 > C03 > C04 > D05 > C06 Behavior pattern: A01 > B02 > C03 > C04 > D05 > C06
단계 206에서, 시나리오 패턴 추출 모듈(102)은 입력된 시나리오로부터 시나리오를 구성하는 모든 시나리오 패턴을 생성하고, 각각의 시나리오 패턴에 식별자(ID)를 부여한다. 이 때 적절하게 최소 시나리오 패턴의 길이에 제한을 둘 수 있다. 예를 들어, 둔다. 최소 시나리오 패턴 길이(M)를 3으로 정의할 경우, 전술한 시나리오부터 다음과 같은 10개의 시나리오 패턴이 생성될 수 있다.In step 206, the scenario pattern extraction module (102) generates all scenario patterns that constitute a scenario from the input scenario, and assigns an identifier (ID) to each scenario pattern. At this time, a limit may be appropriately placed on the minimum scenario pattern length. For example, if the minimum scenario pattern length (M) is defined as 3, the following 10 scenario patterns can be generated from the aforementioned scenario.
시나리오 패턴 길이 3: A01B02C03, B02C03C04, C03C04D05, C04D05C06 Scenario Pattern Length 3: A01B02C03, B02C03C04, C03C04D05, C04D05C06
시나리오 패턴 길이 4: A01B02C03C04, B02C03C04D05, C03C04D05C06Scenario Pattern Length 4: A01B02C03C04, B02C03C04D05, C03C04D05C06
시나리오 패턴 길이 5: A01B02C03C04D05, B02C03C04D05C06Scenario Pattern Length 5: A01B02C03C04D05, B02C03C04D05C06
시나리오 패턴 길이 6: A01B02C03C04D05C06Scenario Pattern Length 6: A01B02C03C04D05C06
단계 208에서, 시나리오 패턴 추출 모듈(102)은 식별된 모든 시나리오 패턴을 시나리오 패턴 저장소(112)에 등록하여 저장한다. 이때 시나리오 패턴 저장소(112)에 저장되는 시나리오 패턴 정보는 시나리오 패턴의 식별자(ID), 이전 시나리오 패턴(저장되는 시나리오 패턴에서 마지막 행위 패턴을 제외한 것), 해당 패턴에 대응되는 시나리오의 식별자(ID) 및 해당 시나리오의 시나리오 저장소(110)에서의 저장 위치를 포함할 수 있다. 예를 들어, A01B02C03C04로 구성되는 시나리오 패턴은 다음과 같이 시나리오 패턴 저장소(112)에 저장될 수 있다.In step 208, the scenario pattern extraction module (102) registers and stores all identified scenario patterns in the scenario pattern storage (112). At this time, the scenario pattern information stored in the scenario pattern storage (112) may include an identifier (ID) of the scenario pattern, a previous scenario pattern (excluding the last behavior pattern in the stored scenario pattern), an identifier (ID) of a scenario corresponding to the pattern, and a storage location of the scenario in the scenario storage (110). For example, a scenario pattern composed of A01B02C03C04 may be stored in the scenario pattern storage (112) as follows.
예) 시나리오 패턴 ID, 시나리오패턴(A01B02C03C04), 이전 패턴(A01B02C03), 시나리오 ID(1), 위치(1)Example) Scenario Pattern ID, Scenario Pattern (A01B02C03C04), Previous Pattern (A01B02C03), Scenario ID (1), Location (1)
만약 저장 대상 시나리오 패턴과 동일한 시나리오 패턴이 시나리오 패턴 저장소(112)에 기 저장되어 있는 경우, 시나리오 패턴 추출 모듈(102)은 다음과 같이 저장 대상 시나리오 패턴에 대응되는 시나리오의 식별자(시나리오 ID(2)) 및 저장 위치(위치(2))를 동일 시나리오 패턴의 엔트리에 추가할 수 있다.If a scenario pattern identical to the scenario pattern to be saved is already saved in the scenario pattern storage (112), the scenario pattern extraction module (102) can add the identifier (scenario ID (2)) and storage location (location (2)) of the scenario corresponding to the scenario pattern to be saved to the entry of the identical scenario pattern as follows.
예) 시나리오 패턴 ID, 시나리오패턴(A01B02C03C04), 이전 패턴(A01B02C03), 시나리오 ID(1), 위치(1), 시나리오 ID(2), 위치(2)Example) Scenario Pattern ID, Scenario Pattern (A01B02C03C04), Previous Pattern (A01B02C03), Scenario ID (1), Location (1), Scenario ID (2), Location (2)
도 3은 일 실시예에 따른 로보틱 처리 자동화 시나리오 자동 완성 시스템(100)의 검색 모듈(104)의 동작을 상세히 설명하기 위한 흐름도이다. 전술한 바와 같이, 검색 모듈(104)은 작성중인 신규 시나리오로부터 검색 대상 시나리오 패턴을 생성하고, 시나리오 패턴 저장소(112)로부터 검색 대상 시나리오 패턴에 대응되는 하나 이상의 후보 시나리오 패턴을 검색한다.FIG. 3 is a flowchart for explaining in detail the operation of the search module (104) of the robotic processing automation scenario auto-completion system (100) according to one embodiment. As described above, the search module (104) generates a search target scenario pattern from a new scenario being written, and searches for one or more candidate scenario patterns corresponding to the search target scenario pattern from the scenario pattern storage (112).
단계 302에서, 검색 모듈(104)은 작성중인 신규 시나리오에서 가장 마지막으로 추가된 단계(activity)를 포함하며, 길이가 M 이상인 모든 시나리오 패턴을 생성한다. 이때 상기 M은 전술한 최소 시나리오 패턴 길이와 동일하게 설정될 수 있다.In step 302, the search module (104) generates all scenario patterns that include the most recently added step (activity) in the new scenario being written and have a length greater than or equal to M. In this case, M may be set equal to the minimum scenario pattern length described above.
예를 들어, 다음과 같은 신규 시나리오를 작성중에 있다고 가정하자.For example, let's say you're writing a new scenario like this:
브라우저 실행 > 이메일 사이트 이동 > ID 입력 > 패스워드 입력 Launch browser > Go to email site > Enter ID > Enter password
또한, 각 단계에 대응되는 행위 패턴이 다음과 같다고 가정하자.Also, let us assume that the behavior patterns corresponding to each step are as follows.
브라우저 실행: A01Launch browser: A01
이메일 사이트 이동: B02Go to Email Site: B02
ID 입력: C03Enter ID: C03
패스워드 입력: C04Enter password: C04
상기 시나리오에서 가장 마지막에 추가된 단계는 "패스워드 입력"이다. 따라서 검색 모듈(104)은 "패스워드 입력"을 포함하고, 패턴의 길이가 최소값(M = 3 이라 가정)보다 길거나 같은 모든 시나리오 패턴을 생성한다.The last step added in the above scenario is “Enter Password”. Therefore, the search module (104) generates all scenario patterns that include “Enter Password” and whose pattern length is longer than or equal to the minimum value (assuming M = 3).
생성된 시나리오 패턴: A01B02C03C04, B02C03C04Generated scenario patterns: A01B02C03C04, B02C03C04
단계 304에서, 검색 모듈(104)은 시나리오 패턴 저장소(112)로부터 검색 대상 시나리오 패턴에 대응되는 하나 이상의 후보 시나리오 패턴을 검색한다.In step 304, the search module (104) searches for one or more candidate scenario patterns corresponding to the search target scenario pattern from the scenario pattern repository (112).
예를 들어, 시나리오 패턴 저장소(112)에 다음과 같은 시나리오 패턴이 등록되어 있다고 가정하자.For example, assume that the following scenario pattern is registered in the scenario pattern repository (112).
시나리오 패턴1 (A01B02C03C04D05)Scenario Pattern 1 (A01B02C03C04D05)
- 브라우저 실행 > 이메일 사이트 이동 > ID 입력 > 패스워드 입력 > 로그인 버튼 클릭- Run browser > Go to email site > Enter ID > Enter password > Click login button
시나리오 패턴2 (A01B02C03C04C04)Scenario Pattern 2 (A01B02C03C04C04)
- 브라우저 실행 > 이메일 사이트 이동 > ID 입력 > 패스워드 입력 > Enter 키 입력- Run browser > Go to email site > Enter ID > Enter password > Enter key
검색 모듈(104)은 검색 대상 시나리오 패턴의 길이를 고려하여, 길이가 긴 순서대로 순차적으로 시나리오 패턴 저장소(112)를 검색한다. 만약 가장 긴 시나리오 패턴에 대응되는 시나리오 패턴이 존재하지 않으면, 검색 모듈(104)은 더 적은 길이를 갖는 검색 대상 시나리오 패턴을 이용하여 검색을 반복한다.The search module (104) sequentially searches the scenario pattern storage (112) in order of the length of the search target scenario pattern, considering the length of the search target scenario pattern. If there is no scenario pattern corresponding to the longest scenario pattern, the search module (104) repeats the search using a search target scenario pattern having a shorter length.
상기 예에서, 검색 모듈(104)은 검색을 통하여 A01B02C03C04에 대응되는 시나리오 패턴이 시나리오 패턴 저장소(112)에 존재함을 확인할 수 있다.In the above example, the search module (104) can confirm through search that a scenario pattern corresponding to A01B02C03C04 exists in the scenario pattern storage (112).
단계 306에서, 검색 모듈(104)은 시나리오 패턴 저장소(112)로부터 검색 대상 시나리오 패턴과 동일한 시나리오 패턴을 포함하는 동시에 추가로 하나의 행위 패턴을 더 포함하는 하나 이상의 후보 시나리오 패턴을 추출한다. 이는 각 시나리오 패턴 저장소(112)에 저장된 이전 패턴을 활용하여 수행될 수 있다.In step 306, the search module (104) extracts one or more candidate scenario patterns from the scenario pattern repository (112) that include the same scenario pattern as the search target scenario pattern and additionally include one more behavior pattern. This can be performed by utilizing previous patterns stored in each scenario pattern repository (112).
상기 예에서, 검색 모듈(104)은 A01B02C03C04 패턴을 포함하고 사이즈가 하나 큰 행위 패턴을 검색하여 다음과 같은 후보 시나리오 패턴을 얻을 수 있다.In the above example, the search module (104) can search for a behavior pattern that includes the A01B02C03C04 pattern and is one size larger to obtain the following candidate scenario patterns.
후보 시나리오 패턴: A01B02C03C04D05, A01B02C03C04C04Candidate Scenario Patterns: A01B02C03C04D05, A01B02C03C04C04
위 검색 결과는 각각 검색 대상 시나리오 패턴인 A01B02C03C04에 D05, C04가 추가된 형태임을 알 수 있다.The search results above show that D05 and C04 are added to the search target scenario pattern A01B02C03C04.
도 4는 일 실시예에 따른 로보틱 처리 자동화 시나리오 자동 완성 시스템(100)의 선택 모듈(106)의 동작을 상세히 설명하기 위한 흐름도이다. 전술한 바와 같이, 선택 모듈(106)은 검색 모듈(104)에서 검색된 각 후보 시나리오 패턴의 발생 빈도를 고려하여 후보 시나리오 패턴 중 하나의 최종 후보 시나리오 패턴을 선택할 수 있다.FIG. 4 is a flowchart for explaining in detail the operation of the selection module (106) of the robotic processing automation scenario automatic completion system (100) according to one embodiment. As described above, the selection module (106) can select one final candidate scenario pattern among the candidate scenario patterns by considering the occurrence frequency of each candidate scenario pattern searched by the search module (104).
단계 402에서, 선택 모듈(106)은 검색 모듈(104)로부터 수신된 후보 시나리오 패턴 중 발생 빈도가 높은 순서로 N개의 후보를 선택한다. 이때 상기 발생 빈도는 시나리오 패턴 저장소(112)에 저장된 각 엔트리의 대응 시나리오 ID의 개수로부터 계산될 수 있다. 이때 상기 N 값은 시나리오 패턴의 평균 발생 빈도 등을 고려하여 적절히 설정될 수 있다. In step 402, the selection module (106) selects N candidates in order of high occurrence frequency from among the candidate scenario patterns received from the search module (104). At this time, the occurrence frequency can be calculated from the number of corresponding scenario IDs of each entry stored in the scenario pattern storage (112). At this time, the N value can be appropriately set in consideration of the average occurrence frequency of the scenario pattern, etc.
단계 404에서, 선택 모듈(106)은 기 설정된 하위 임계값(lower bound) 및 상위 임계값(upper bound)을 이용하여 선택된 N개의 후보 시나리오 패턴을 필터링한다. 이때 상기 하위 임계값 및 상위 임계값은 시나리오의 평균 발생 빈도 등을 고려하여 적절히 설정될 수 있다.In step 404, the selection module (106) filters the selected N candidate scenario patterns using a preset lower bound and upper bound. At this time, the lower bound and upper bound can be appropriately set in consideration of the average occurrence frequency of the scenario, etc.
먼저 선택 모듈(106)은 N개의 후보 시나리오 중 발생 빈도가 하위 임계값보다 낮은 후보들을 버린다.First, the selection module (106) discards candidates among the N candidate scenarios whose occurrence frequency is lower than a lower threshold value.
만약 N개의 후보 시나리오 패턴 중 상위 임계값을 초과하는 후보 시나리오 패턴이 존재하는 경우, 선택 모듈(106)은 상위 임계값을 초과하는 후보 시나리오 패턴 중 발생 빈도가 가장 높은 후보 시나리오 패턴을 최종 부호 시나리오 패턴으로 선택할 수 있다. 예를 들어, 후보 시나리오 각각의 발생 빈도를 다음과 같다고 가정하자.If there is a candidate scenario pattern exceeding the upper threshold value among the N candidate scenario patterns, the selection module (106) can select the candidate scenario pattern with the highest occurrence frequency among the candidate scenario patterns exceeding the upper threshold value as the final sign scenario pattern. For example, assume that the occurrence frequency of each candidate scenario is as follows.
A01B02C03C04D05: 90회 발생A01B02C03C04D05: Occurred 90 times
A01B02C03C04C04: 10회 발생A01B02C03C04C04: Occurred 10 times
만약 상기 상위 임계값이 90%라고 가정할 경우, 선택 모듈(106)은 A01B02C03C04D05 패턴을 단일 선택할 수 있다.If the above upper threshold value is assumed to be 90%, the selection module (106) can single-select the A01B02C03C04D05 pattern.
단계 406에서, 선택 모듈(106)은 상기 402, 404 단계의 수행 결과 남은 후보 시나리오 패턴의 개수를 판단한다. 만약 남은 후보 시나리오 패턴이 없는 경우 과정은 종료된다. 이와 달리 만약 남은 후보 시나리오 패턴이 하나인 경우, 선택 모듈(106)은 남은 후보 시나리오 패턴을 최종 후보 시나리오 패턴으로 선택한다. 만약 남은 후보 시나리오 패턴이 둘 이상인 경우, 선택 모듈(106)은 남은 후보 시나리오 패턴 중 사용자에 의해 선택된 후보 시나리오 패턴을 최종 부호 시나리오 패턴으로 설정할 수 있다.In step 406, the selection module (106) determines the number of remaining candidate scenario patterns as a result of performing steps 402 and 404. If there are no remaining candidate scenario patterns, the process ends. On the other hand, if there is only one remaining candidate scenario pattern, the selection module (106) selects the remaining candidate scenario pattern as the final candidate scenario pattern. If there are two or more remaining candidate scenario patterns, the selection module (106) can set a candidate scenario pattern selected by the user from among the remaining candidate scenario patterns as the final sign scenario pattern.
예를 들어, A01B02C03C04D05, A01B02C03C04C04가 최종 후보로 남았다면, 선택 모듈(106)은 사용자에게 다음에 올 수 있는 행위 패턴 후보로 D05("로그인 버튼 클릭"), C04("Enter 키 입력") 를 제시하고 사용자로부터 선택 정보를 수신할 수 있다.For example, if A01B02C03C04D05, A01B02C03C04C04 remain as the final candidates, the selection module (106) may present D05 ("click the login button"), C04 ("press the Enter key") as the next possible action pattern candidates to the user and receive selection information from the user.
도 5는 일 실시예에 따른 로보틱 처리 자동화 시나리오 자동 완성 시스템(100)의 시나리오 자동 완성 모듈(108)의 동작을 상세히 설명하기 위한 흐름도이다. FIG. 5 is a flowchart for explaining in detail the operation of the scenario auto-completion module (108) of the robotic processing automation scenario auto-completion system (100) according to one embodiment.
단계 502에서, 시나리오 자동 완성 모듈(108)은 시나리오 저장소(110)로부터 선택된 최종 후보 시나리오 패턴이 포함된 하나 이상의 후보 시나리오를 검색한다.In step 502, the scenario auto-completion module (108) retrieves one or more candidate scenarios containing the selected final candidate scenario pattern from the scenario repository (110).
단계 504에서, 시나리오 자동 완성 모듈(108)은 검색된 후보 시나리오들의 실행 이력을 고려하여 후보 시나리오 중 하나를 자동 완성 참조 시나리오로 선택한다. 전술한 바와 같이, 시나리오 저장소(110)에 저장된 각각의 시나리오 별 실행 횟수 및 실행 성공 횟수(또는 성공률)은 실행 이력 저장소(114)에 저장 및 관리된다. 따라서 시나리오 자동 완성 모듈(108)은 실행 이력 저장소(114)에 저장된 각 후보 시나리오의 기 설정된 기간 동안의 실행 횟수 및 성공률을 고려하여 자동 완성 참조 시나리오를 선택할 수 있다.In step 504, the scenario auto-completion module (108) selects one of the candidate scenarios as an auto-completion reference scenario by considering the execution history of the searched candidate scenarios. As described above, the number of executions and the number of successful executions (or success rates) for each scenario stored in the scenario storage (110) are stored and managed in the execution history storage (114). Therefore, the scenario auto-completion module (108) can select an auto-completion reference scenario by considering the number of executions and the success rate for a preset period of time of each candidate scenario stored in the execution history storage (114).
구체적으로, 시나리오 자동 완성 모듈(108)은 시나리오의 실행 이력을 확인하여 성공률이 가장 높은 후보 시나리오를 상기 자동 완성 참조 시나리오로 선택한다. 일 실시예에서, 시나리오 자동 완성 모듈(108)은 전체 기간 또는 기 설정된 기간(예를 들어, 최근 30일 간)의 성공률을 고려할 수 있다. 또한 시나리오 자동 완성 모듈(108)은 실행 횟수가 임계치에 미치지 못하는 시나리오는 후보에서 제외할 수 있다.Specifically, the scenario auto-completion module (108) checks the execution history of the scenario and selects the candidate scenario with the highest success rate as the auto-completion reference scenario. In one embodiment, the scenario auto-completion module (108) may consider the success rate for the entire period or a preset period (e.g., the last 30 days). In addition, the scenario auto-completion module (108) may exclude scenarios whose execution counts do not reach a threshold from the candidates.
단계 506에서, 시나리오 자동 완성 모듈(108)은 선택된 자동 완성 참조 시나리오에 포함된 하나 이상의 단계에 대한 객체 정보 및 속성 정보를 이용하여 작성중인 신규 시나리오의 신규 추가 단계의 객체 정보 및 속성 정보를 생성한다.In step 506, the scenario auto-completion module (108) generates object information and attribute information of a new additional step of the new scenario being written using object information and attribute information for one or more steps included in the selected auto-completion reference scenario.
예를 들어, A01B02C03C04D05 시나리오 패턴이 자동 완성 참조 시나리오로 선택되었다고 했을 때, 시나리오 자동 완성 모듈(108)은 추가되어야 할 행위패턴 D05의 세부 속성 정보들을 복사하여 신규로 작성될 시나리오의 "확인버튼 클릭" 단계를 자동으로 완성할 수 있다.For example, when the A01B02C03C04D05 scenario pattern is selected as an auto-complete reference scenario, the scenario auto-complete module (108) can automatically complete the "click confirmation button" step of the newly created scenario by copying the detailed attribute information of the behavior pattern D05 to be added.
도 6은 일 실시예에 따른 로보틱 처리 자동화 시나리오 자동 완성 방법(600)을 설명하기 위한 흐름도이다. 도시된 방법은 하나 이상의 프로세서들, 및 상기 하나 이상의 프로세서들에 의해 실행되는 하나 이상의 프로그램들을 저장하는 메모리를 구비한 컴퓨팅 장치, 예컨대 전술한 로보틱 처리 자동화 시나리오 자동 완성 시스템(100)에서 수행될 수 있다. 도시된 흐름도에서는 상기 방법 또는 과정을 복수 개의 단계로 나누어 기재하였으나, 적어도 일부의 단계들은 순서를 바꾸어 수행되거나, 다른 단계와 결합되어 함께 수행되거나, 생략되거나, 세부 단계들로 나뉘어 수행되거나, 또는 도시되지 않은 하나 이상의 단계가 부가되어 수행될 수 있다.FIG. 6 is a flowchart for explaining a method (600) for automatically completing a robotic processing automation scenario according to one embodiment. The illustrated method may be performed in a computing device having one or more processors and a memory storing one or more programs executed by the one or more processors, for example, the robotic processing automation scenario automatically completing system (100) described above. In the illustrated flowchart, the method or process is described by dividing it into a plurality of steps, but at least some of the steps may be performed in a changed order, combined with other steps and performed together, omitted, divided into detailed steps and performed, or one or more steps not illustrated may be added and performed.
단계 602에서, 로보틱 처리 자동화 시나리오 자동 완성 시스템(100)의 시나리오 패턴 추출 모듈(102)은 시나리오 저장소(110)에 저장된 하나 이상의 기 작성 시나리오로부터 하나 이상의 시나리오 패턴을 생성하여 시나리오 패턴 저장소(112)에 저장한다. 일 실시예에서, 로보틱 처리 자동화 시나리오 자동 완성 시스템(100)의 시나리오 패턴 추출 모듈(102)은 시나리오 패턴과 함께, 각 시나리오 패턴의 식별자(ID), 이전 시나리오 패턴, 대응되는 시나리오의 식별자(ID) 및 저장 위치를 시나리오 패턴 저장소(112)에 저장할 수 있다. 만약 저장 대상 시나리오 패턴과 동일한 시나리오 패턴이 시나리오 패턴 저장소(112)에 기 저장되어 있는 경우, 시나리오 패턴 추출 모듈(102)은 저장 대상 시나리오 패턴에 대응되는 시나리오의 식별자 및 저장 위치를 동일 시나리오 패턴의 엔트리에 추가할 수 있다.In step 602, the scenario pattern extraction module (102) of the robotic processing automation scenario auto-completion system (100) generates one or more scenario patterns from one or more pre-written scenarios stored in the scenario repository (110) and stores them in the scenario pattern repository (112). In one embodiment, the scenario pattern extraction module (102) of the robotic processing automation scenario auto-completion system (100) may store, together with the scenario pattern, an identifier (ID) of each scenario pattern, a previous scenario pattern, an identifier (ID) of a corresponding scenario, and a storage location in the scenario pattern repository (112). If a scenario pattern identical to a storage target scenario pattern is already stored in the scenario pattern repository (112), the scenario pattern extraction module (102) may add the identifier and storage location of the scenario corresponding to the storage target scenario pattern to the entry of the same scenario pattern.
단계 604에서, 로보틱 처리 자동화 시나리오 자동 완성 시스템(100)의 검색 모듈(104)은 작성중인 신규 시나리오로부터 검색 대상 시나리오 패턴을 생성하고, 시나리오 패턴 저장소(112)로부터 검색 대상 시나리오 패턴에 대응되는 하나 이상의 후보 시나리오 패턴을 검색한다.In step 604, the search module (104) of the robotic processing automation scenario auto-completion system (100) generates a search target scenario pattern from a new scenario being written, and searches for one or more candidate scenario patterns corresponding to the search target scenario pattern from the scenario pattern storage (112).
단계 606에서, 로보틱 처리 자동화 시나리오 자동 완성 시스템(100)의 선택 모듈(106)은 검색 모듈(104)에서 검색된 각 후보 시나리오 패턴의 발생 빈도를 고려하여 후보 시나리오 패턴 중 하나의 최종 후보 시나리오 패턴을 선택한다.In step 606, the selection module (106) of the robotic processing automation scenario auto-completion system (100) selects one final candidate scenario pattern among the candidate scenario patterns by considering the occurrence frequency of each candidate scenario pattern searched by the search module (104).
단계 608에서, 로보틱 처리 자동화 시나리오 자동 완성 시스템(100)의 시나리오 자동 완성 모듈(108)은 시나리오 저장소(110)로부터 선택된 후보 시나리오 패턴이 포함된 하나 이상의 후보 시나리오를 추출하고, 각 후보 시나리오의 실행 이력을 고려하여 후보 시나리오 중 하나를 자동 완성 참조 시나리오로 선택한다. 이후 시나리오 자동 완성 모듈(108)은 상기 자동 완성 참조 시나리오에 포함된 하나 이상의 단계에 대한 객체 정보 및 속성 정보를 이용하여 작성중인 신규 시나리오의 신규 추가 단계의 객체 정보 및 속성 정보를 생성할 수 있다.In step 608, the scenario auto-completion module (108) of the robotic processing automation scenario auto-completion system (100) extracts one or more candidate scenarios including the selected candidate scenario pattern from the scenario repository (110), and selects one of the candidate scenarios as an auto-completion reference scenario by considering the execution history of each candidate scenario. Thereafter, the scenario auto-completion module (108) can generate object information and attribute information of a new additional step of a new scenario being written by using object information and attribute information for one or more steps included in the auto-completion reference scenario.
도 7은 예시적인 실시예들에서 사용되기에 적합한 컴퓨팅 장치를 포함하는 컴퓨팅 환경을 예시하여 설명하기 위한 블록도이다. 도시된 실시예에서, 각 컴포넌트들은 이하에 기술된 것 이외에 상이한 기능 및 능력을 가질 수 있고, 이하에 기술되지 않은 것 이외에도 추가적인 컴포넌트를 포함할 수 있다.FIG. 7 is a block diagram illustrating a computing environment including a computing device suitable for use in exemplary embodiments. In the illustrated embodiment, each of the components may have different functions and capabilities other than those described below, and may include additional components other than those described below.
도시된 컴퓨팅 환경(10)은 컴퓨팅 장치(12)를 포함한다. 일 실시예에서, 컴퓨팅 장치(12)는 전술한 RPA 시나리오 자동 완성 시스템(100)일 수 있다.The illustrated computing environment (10) includes a computing device (12). In one embodiment, the computing device (12) may be the aforementioned RPA scenario automatic completion system (100).
컴퓨팅 장치(12)는 적어도 하나의 프로세서(14), 컴퓨터 판독 가능 저장 매체(16) 및 통신 버스(18)를 포함한다. 프로세서(14)는 컴퓨팅 장치(12)로 하여금 앞서 언급된 예시적인 실시예에 따라 동작하도록 할 수 있다. 예컨대, 프로세서(14)는 컴퓨터 판독 가능 저장 매체(16)에 저장된 하나 이상의 프로그램들을 실행할 수 있다. 상기 하나 이상의 프로그램들은 하나 이상의 컴퓨터 실행 가능 명령어를 포함할 수 있으며, 상기 컴퓨터 실행 가능 명령어는 프로세서(14)에 의해 실행되는 경우 컴퓨팅 장치(12)로 하여금 예시적인 실시예에 따른 동작들을 수행하도록 구성될 수 있다.A computing device (12) includes at least one processor (14), a computer-readable storage medium (16), and a communication bus (18). The processor (14) may cause the computing device (12) to operate in accordance with the exemplary embodiments described above. For example, the processor (14) may execute one or more programs stored in the computer-readable storage medium (16). The one or more programs may include one or more computer-executable instructions, which, when executed by the processor (14), may cause the computing device (12) to perform operations in accordance with the exemplary embodiments.
컴퓨터 판독 가능 저장 매체(16)는 컴퓨터 실행 가능 명령어 내지 프로그램 코드, 프로그램 데이터 및/또는 다른 적합한 형태의 정보를 저장하도록 구성된다. 컴퓨터 판독 가능 저장 매체(16)에 저장된 프로그램(20)은 프로세서(14)에 의해 실행 가능한 명령어의 집합을 포함한다. 일 실시예에서, 컴퓨터 판독 가능 저장 매체(16)는 메모리(랜덤 액세스 메모리와 같은 휘발성 메모리, 비휘발성 메모리, 또는 이들의 적절한 조합), 하나 이상의 자기 디스크 저장 디바이스들, 광학 디스크 저장 디바이스들, 플래시 메모리 디바이스들, 그 밖에 컴퓨팅 장치(12)에 의해 액세스되고 원하는 정보를 저장할 수 있는 다른 형태의 저장 매체, 또는 이들의 적합한 조합일 수 있다.A computer-readable storage medium (16) is configured to store computer-executable instructions or program code, program data, and/or other suitable forms of information. A program (20) stored in the computer-readable storage medium (16) includes a set of instructions executable by the processor (14). In one embodiment, the computer-readable storage medium (16) may be a memory (volatile memory such as random access memory, non-volatile memory, or a suitable combination thereof), one or more magnetic disk storage devices, optical disk storage devices, flash memory devices, any other form of storage medium that can be accessed by the computing device (12) and capable of storing desired information, or a suitable combination thereof.
통신 버스(18)는 프로세서(14), 컴퓨터 판독 가능 저장 매체(16)를 포함하여 컴퓨팅 장치(12)의 다른 다양한 컴포넌트들을 상호 연결한다.A communication bus (18) interconnects various other components of the computing device (12), including the processor (14) and computer-readable storage media (16).
컴퓨팅 장치(12)는 또한 하나 이상의 입출력 장치(24)를 위한 인터페이스를 제공하는 하나 이상의 입출력 인터페이스(22) 및 하나 이상의 네트워크 통신 인터페이스(26)를 포함할 수 있다. 입출력 인터페이스(22) 및 네트워크 통신 인터페이스(26)는 통신 버스(18)에 연결된다. 입출력 장치(24)는 입출력 인터페이스(22)를 통해 컴퓨팅 장치(12)의 다른 컴포넌트들에 연결될 수 있다. 예시적인 입출력 장치(24)는 포인팅 장치(마우스 또는 트랙패드 등), 키보드, 터치 입력 장치(터치패드 또는 터치스크린 등), 음성 또는 소리 입력 장치, 다양한 종류의 센서 장치 및/또는 촬영 장치와 같은 입력 장치, 및/또는 디스플레이 장치, 프린터, 스피커 및/또는 네트워크 카드와 같은 출력 장치를 포함할 수 있다. 예시적인 입출력 장치(24)는 컴퓨팅 장치(12)를 구성하는 일 컴포넌트로서 컴퓨팅 장치(12)의 내부에 포함될 수도 있고, 컴퓨팅 장치(12)와는 구별되는 별개의 장치로 컴퓨팅 장치(12)와 연결될 수도 있다.The computing device (12) may also include one or more input/output interfaces (22) that provide interfaces for one or more input/output devices (24) and one or more network communication interfaces (26). The input/output interfaces (22) and the network communication interfaces (26) are coupled to the communication bus (18). The input/output devices (24) may be coupled to other components of the computing device (12) via the input/output interfaces (22). Exemplary input/output devices (24) may include input devices such as a pointing device (such as a mouse or trackpad), a keyboard, a touch input device (such as a touchpad or a touchscreen), a voice or sound input device, various types of sensor devices and/or photographing devices, and/or output devices such as a display device, a printer, speakers, and/or a network card. The exemplary input/output devices (24) may be included within the computing device (12) as a component that constitutes the computing device (12), or may be coupled to the computing device (12) as a separate device distinct from the computing device (12).
이상에서 대표적인 실시예를 통하여 본 발명에 대하여 상세하게 설명하였으나, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 전술한 실시예에 대하여 본 발명의 범주에서 벗어나지 않는 한도 내에서 다양한 변형이 가능함을 이해할 것이다. 그러므로 본 발명의 권리범위는 설명된 실시예에 국한되어 정해져서는 안 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.Although the present invention has been described in detail above through representative examples, those skilled in the art will understand that various modifications can be made to the above-described examples without departing from the scope of the present invention. Therefore, the scope of the rights of the present invention should not be limited to the described examples, but should be determined not only by the claims described below but also by equivalents of the claims.
100: RPA 시나리오 자동 완성 시스템
102: 시나리오 패턴 추출 모듈
104: 검색 모듈
106: 선택 모듈
108: 시나리오 자동 완성 모듈
110: 시나리오 저장소
112: 시나리오 패턴 저장소
114: 실행 이력 저장소
10: 컴퓨팅 환경
12: 컴퓨팅 장치
14: 프로세서
16: 컴퓨터 판독 가능 저장 매체
18: 통신 버스
20: 프로그램
22: 입출력 인터페이스
24: 입출력 장치
26: 네트워크 통신 인터페이스100: RPA Scenario Auto-Completion System
102: Scenario Pattern Extraction Module
104: Search Module
106: Selection Module
108: Scenario Auto-Completion Module
110: Scenario Repository
112: Scenario Pattern Repository
114: Execution history storage
10: Computing Environment
12: Computing Devices
14: Processor
16: Computer readable storage medium
18: Communication bus
20: Program
22: Input/output interface
24: Input/output devices
26: Network Communication Interface
Claims (22)
검색된 상기 각 후보 시나리오 패턴의 발생 빈도를 고려하여 상기 후보 시나리오 패턴 중 하나의 최종 후보 시나리오 패턴을 선택하는 선택 모듈; 및
시나리오 저장소로부터 상기 선택된 후보 시나리오 패턴이 포함된 하나 이상의 후보 시나리오를 추출하고, 상기 각 후보 시나리오의 실행 이력을 고려하여 상기 후보 시나리오 중 하나를 자동 완성 참조 시나리오로 선택하는 시나리오 자동 완성 모듈을 포함하는 로보틱 처리 자동화 시나리오 자동 완성 시스템.A search module that generates a search target scenario pattern from a new scenario being written and searches for one or more candidate scenario patterns corresponding to the search target scenario pattern from a scenario pattern repository;
A selection module for selecting one final candidate scenario pattern among the candidate scenario patterns by considering the occurrence frequency of each of the candidate scenario patterns searched; and
A robotic processing automation scenario auto-completion system comprising a scenario auto-completion module for extracting one or more candidate scenarios containing the above-described selected candidate scenario patterns from a scenario repository and selecting one of the candidate scenarios as an auto-completion reference scenario by considering the execution history of each of the candidate scenarios.
상기 시나리오 저장소에 저장된 하나 이상의 기 작성 시나리오로부터 하나 이상의 시나리오 패턴을 생성하여 상기 시나리오 패턴 저장소에 저장하는 시나리오 패턴 추출 모듈을 더 포함하는, 로보틱 처리 자동화 시나리오 자동 완성 시스템.In claim 1,
A robotic processing automation scenario auto-completion system further comprising a scenario pattern extraction module that generates one or more scenario patterns from one or more pre-written scenarios stored in the scenario repository and stores the generated scenario patterns in the scenario pattern repository.
상기 시나리오 패턴 추출 모듈은,
상기 시나리오 패턴 각각에 대한 식별자(ID), 이전 시나리오 패턴, 대응되는 시나리오의 식별자(ID) 및 저장 위치를 상기 시나리오 패턴 저장소에 저장하는, 로보틱 처리 자동화 시나리오 자동 완성 시스템.In claim 2,
The above scenario pattern extraction module,
A robotic processing automation scenario auto-completion system that stores an identifier (ID) for each of the above scenario patterns, a previous scenario pattern, an identifier (ID) of a corresponding scenario, and a storage location in the above scenario pattern storage.
상기 시나리오 패턴 추출 모듈은,
저장 대상 시나리오 패턴과 동일한 시나리오 패턴이 상기 시나리오 패턴 저장소에 기 저장되어 있는 경우,
상기 저장 대상 시나리오 패턴에 대응되는 시나리오의 식별자 및 저장 위치를 상기 동일 시나리오 패턴의 엔트리에 추가하는, 로보틱 처리 자동화 시나리오 자동 완성 시스템.In claim 3,
The above scenario pattern extraction module,
If a scenario pattern identical to the scenario pattern to be saved is already saved in the scenario pattern repository,
A robotic processing automation scenario auto-completion system that adds an identifier and a storage location of a scenario corresponding to the above storage target scenario pattern to an entry of the same scenario pattern.
상기 검색 모듈은,
상기 신규 시나리오 중 마지막으로 추가된 단계를 포함하고 길이가 설정값 이상인 하나 이상의 검색 대상 시나리오 패턴을 생성하는, 로보틱 처리 자동화 시나리오 자동 완성 시스템.In claim 1,
The above search module,
A robotic processing automation scenario auto-completion system that includes the last added step among the above new scenarios and generates one or more search target scenario patterns whose length is greater than a set value.
상기 검색 모듈은,
상기 하나 이상의 검색 대상 시나리오 패턴의 길이를 고려하여 순차적으로 상기 시나리오 패턴 저장소를 검색하여,
상기 검색 대상 시나리오 패턴과 동일한 시나리오 패턴을 포함하는 동시에 추가로 하나의 행위 패턴을 더 포함하는 상기 하나 이상의 후보 시나리오 패턴을 추출하는, 로보틱 처리 자동화 시나리오 자동 완성 시스템.In claim 5,
The above search module,
By sequentially searching the scenario pattern repository considering the length of one or more search target scenario patterns,
A robotic processing automation scenario auto-completion system that extracts one or more candidate scenario patterns that include the same scenario pattern as the above search target scenario pattern and additionally includes one more behavior pattern.
상기 선택 모듈은,
상기 하나 이상의 후보 시나리오 패턴의 발생 빈도를 고려하여 N개의 후보 시나리오 패턴을 선택하고,
기 설정된 하위 임계값 및 상위 임계값을 이용하여 상기 선택된 N개의 후보 시나리오 패턴을 필터링함으로써 상기 최종 후보 시나리오 패턴을 선택하는, 로보틱 처리 자동화 시나리오 자동 완성 시스템.In claim 1,
The above selection module,
Select N candidate scenario patterns by considering the occurrence frequency of one or more of the above candidate scenario patterns,
A robotic processing automation scenario auto-completion system that selects the final candidate scenario pattern by filtering the N selected candidate scenario patterns using preset lower and upper threshold values.
상기 선택 모듈은,
상기 N개의 후보 시나리오 패턴 중 상기 상위 임계값을 초과하는 후보 시나리오 패턴이 존재하는 경우, 상기 상위 임계값을 초과하는 후보 시나리오 패턴 중 발생 빈도가 가장 높은 후보 시나리오 패턴을 상기 최종 부호 시나리오 패턴으로 선택하는, 로보틱 처리 자동화 시나리오 자동 완성 시스템.In claim 7,
The above selection module,
A robotic processing automation scenario automatic completion system, wherein, if there is a candidate scenario pattern exceeding the upper threshold value among the above N candidate scenario patterns, the candidate scenario pattern with the highest occurrence frequency among the candidate scenario patterns exceeding the upper threshold value is selected as the final sign scenario pattern.
상기 선택 모듈은,
상기 필터링 결과 남은 후보 시나리오 패턴의 개수가 2개 이상인 경우, 상기 남은 후보 시나리오 패턴 중 사용자에 의해 선택된 후보 시나리오 패턴을 상기 최종 부호 시나리오 패턴으로 설정하는, 로보틱 처리 자동화 시나리오 자동 완성 시스템.In claim 7,
The above selection module,
A robotic processing automation scenario automatic completion system, which sets a candidate scenario pattern selected by a user from among the remaining candidate scenario patterns as the final sign scenario pattern when the number of remaining candidate scenario patterns is two or more as a result of the filtering above.
상기 자동 완성 모듈은,
상기 하나 이상의 후보 시나리오 각각의 기 설정된 기간 동안의 실행 횟수 및 성공률을 고려하여 상기 자동 완성 참조 시나리오를 선택하는, 로보틱 처리 자동화 시나리오 자동 완성 시스템.In claim 1,
The above auto-completion module,
A robotic processing automation scenario auto-completion system that selects the auto-completion reference scenario by considering the number of executions and success rates of each of the one or more candidate scenarios during a preset period of time.
상기 자동 완성 모듈은,
상기 자동 완성 참조 시나리오에 포함된 하나 이상의 단계 객체 정보 및 속성 정보를 이용하여 상기 신규 시나리오의 신규 추가 단계의 객체 정보 및 속성 정보를 생성하는, 로보틱 처리 자동화 시나리오 자동 완성 시스템.In claim 1,
The above auto-completion module,
A robotic processing automation scenario auto-completion system that generates object information and attribute information of a new additional step of the new scenario by using one or more step object information and attribute information included in the above auto-completion reference scenario.
검색된 상기 각 후보 시나리오 패턴의 발생 빈도를 고려하여 상기 후보 시나리오 패턴 중 하나의 최종 후보 시나리오 패턴을 선택하는 단계; 및
시나리오 저장소로부터 상기 선택된 후보 시나리오 패턴이 포함된 하나 이상의 후보 시나리오를 추출하고, 상기 각 후보 시나리오의 실행 이력을 고려하여 상기 후보 시나리오 중 하나를 자동 완성 참조 시나리오로 선택하는 시나리오 자동 완성 단계를 포함하는 로보틱 처리 자동화 시나리오 자동 완성 방법.A step of generating a search target scenario pattern from a new scenario being written, and searching for one or more candidate scenario patterns corresponding to the search target scenario pattern from a scenario pattern repository;
A step of selecting one final candidate scenario pattern among the candidate scenario patterns by considering the occurrence frequency of each of the candidate scenario patterns searched; and
A method for robotic processing automation scenario auto-completion, comprising a scenario auto-completion step of extracting one or more candidate scenarios including the selected candidate scenario pattern from a scenario repository, and selecting one of the candidate scenarios as an auto-completion reference scenario by considering the execution history of each candidate scenario.
상기 시나리오 저장소에 저장된 하나 이상의 기 작성 시나리오로부터 하나 이상의 시나리오 패턴을 생성하여 상기 시나리오 패턴 저장소에 저장하는 시나리오 패턴 추출 단계를 더 포함하는, 로보틱 처리 자동화 시나리오 자동 완성 방법.In claim 12,
A method for automatically completing a robotic processing automation scenario, further comprising a scenario pattern extraction step of generating one or more scenario patterns from one or more pre-written scenarios stored in the scenario repository and storing the generated scenario patterns in the scenario pattern repository.
상기 시나리오 패턴 추출 단계는,
상기 시나리오 패턴 각각에 대한 식별자(ID), 이전 시나리오 패턴, 대응되는 시나리오의 식별자(ID) 및 저장 위치를 상기 시나리오 패턴 저장소에 저장하는, 로보틱 처리 자동화 시나리오 자동 완성 방법.In claim 13,
The above scenario pattern extraction step is:
A method for automatically completing a robotic processing automation scenario, which stores an identifier (ID) for each of the above scenario patterns, a previous scenario pattern, an identifier (ID) of a corresponding scenario, and a storage location in the above scenario pattern storage.
상기 시나리오 패턴 추출 단계는,
저장 대상 시나리오 패턴과 동일한 시나리오 패턴이 상기 시나리오 패턴 저장소에 기 저장되어 있는 경우,
상기 저장 대상 시나리오 패턴에 대응되는 시나리오의 식별자 및 저장 위치를 상기 동일 시나리오 패턴의 엔트리에 추가하는, 로보틱 처리 자동화 시나리오 자동 완성 방법.In claim 13,
The above scenario pattern extraction step is,
If a scenario pattern identical to the scenario pattern to be saved is already saved in the scenario pattern repository,
A method for automatically completing a robotic processing automation scenario, which adds an identifier and a storage location of a scenario corresponding to the above storage target scenario pattern to an entry of the same scenario pattern.
상기 검색하는 단계는,
상기 신규 시나리오 중 마지막으로 추가된 단계를 포함하고 길이가 설정값 이상인 하나 이상의 검색 대상 시나리오 패턴을 생성하는, 로보틱 처리 자동화 시나리오 자동 완성 방법.In claim 12,
The above search steps are:
A method for automatically completing a robotic processing automation scenario, which includes the last added step among the above new scenarios and generates one or more search target scenario patterns having a length greater than a set value.
상기 검색하는 단계는,
상기 하나 이상의 검색 대상 시나리오 패턴의 길이를 고려하여 순차적으로 상기 시나리오 패턴 저장소를 검색하여,
상기 검색 대상 시나리오 패턴과 동일한 시나리오 패턴을 포함하는 동시에 추가로 하나의 행위 패턴을 더 포함하는 상기 하나 이상의 후보 시나리오 패턴을 추출하는, 로보틱 처리 자동화 시나리오 자동 완성 방법.In claim 16,
The above search steps are:
By sequentially searching the scenario pattern repository considering the length of one or more search target scenario patterns,
A method for automatically completing a robotic processing automation scenario, wherein the method extracts one or more candidate scenario patterns that include the same scenario pattern as the above search target scenario pattern and additionally include one more behavior pattern.
상기 선택하는 단계는,
상기 하나 이상의 후보 시나리오 패턴의 발생 빈도를 고려하여 N개의 후보 시나리오 패턴을 선택하고,
기 설정된 하위 임계값 및 상위 임계값을 이용하여 상기 선택된 N개의 후보 시나리오 패턴을 필터링함으로써 상기 최종 후보 시나리오 패턴을 선택하는, 로보틱 처리 자동화 시나리오 자동 완성 방법.In claim 12,
The above selection steps are:
Select N candidate scenario patterns by considering the occurrence frequency of one or more of the above candidate scenario patterns,
A method for automatically completing a robotic processing automation scenario, wherein the final candidate scenario pattern is selected by filtering the N selected candidate scenario patterns using preset lower and upper threshold values.
상기 선택하는 단계는,
상기 N개의 후보 시나리오 패턴 중 상기 상위 임계값을 초과하는 후보 시나리오 패턴이 존재하는 경우, 상기 상위 임계값을 초과하는 후보 시나리오 패턴 중 발생 빈도가 가장 높은 후보 시나리오 패턴을 상기 최종 부호 시나리오 패턴으로 선택하는, 로보틱 처리 자동화 시나리오 자동 완성 방법.In claim 18,
The above selection steps are:
A method for automatically completing a robotic processing automation scenario, wherein, if there is a candidate scenario pattern exceeding the upper threshold value among the above N candidate scenario patterns, the candidate scenario pattern with the highest occurrence frequency among the candidate scenario patterns exceeding the upper threshold value is selected as the final sign scenario pattern.
상기 선택하는 단계는,
상기 필터링 결과 남은 후보 시나리오 패턴의 개수가 2개 이상인 경우, 상기 남은 후보 시나리오 패턴 중 사용자에 의해 선택된 후보 시나리오 패턴을 상기 최종 부호 시나리오 패턴으로 설정하는, 로보틱 처리 자동화 시나리오 자동 완성 방법.In claim 18,
The above selection steps are:
A method for automatically completing a robotic processing automation scenario, wherein, when the number of remaining candidate scenario patterns as a result of the filtering is two or more, a candidate scenario pattern selected by a user from among the remaining candidate scenario patterns is set as the final sign scenario pattern.
상기 자동 완성 단계는,
상기 하나 이상의 후보 시나리오 각각의 기 설정된 기간 동안의 실행 횟수 및 성공률을 고려하여 상기 자동 완성 참조 시나리오를 선택하는, 로보틱 처리 자동화 시나리오 자동 완성 방법.In claim 12,
The above auto-completion step is,
A method for automatically completing a robotic processing automation scenario, wherein the auto-completion reference scenario is selected by considering the number of executions and success rates of each of the one or more candidate scenarios during a preset period of time.
상기 자동 완성 단계는,
상기 자동 완성 참조 시나리오에 포함된 하나 이상의 단계 객체 정보 및 속성 정보를 이용하여 상기 신규 시나리오의 신규 추가 단계의 객체 정보 및 속성 정보를 생성하는, 로보틱 처리 자동화 시나리오 자동 완성 방법.In claim 12,
The above auto-completion step is,
A method for automatically completing a robotic processing automation scenario, which creates object information and attribute information of a new additional step of the new scenario by using one or more step object information and attribute information included in the above automatic completion reference scenario.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR1020200140947A KR102777453B1 (en) | 2020-10-28 | 2020-10-28 | System and method for auto-completing roboting processing automation based on history |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR1020200140947A KR102777453B1 (en) | 2020-10-28 | 2020-10-28 | System and method for auto-completing roboting processing automation based on history |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| KR20220056396A KR20220056396A (en) | 2022-05-06 |
| KR102777453B1 true KR102777453B1 (en) | 2025-03-10 |
Family
ID=81584455
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| KR1020200140947A Active KR102777453B1 (en) | 2020-10-28 | 2020-10-28 | System and method for auto-completing roboting processing automation based on history |
Country Status (1)
| Country | Link |
|---|---|
| KR (1) | KR102777453B1 (en) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2023238244A1 (en) * | 2022-06-07 | 2023-12-14 | 日本電信電話株式会社 | Search device, search method, and search program |
Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20200073686A1 (en) | 2018-08-29 | 2020-03-05 | Ernst & Young U.S. Llp | Automated software script remediation methods and systems |
Family Cites Families (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| AU737633B2 (en) * | 1997-09-02 | 2001-08-23 | Damon C. Torres | Automated content scheduler and displayer |
| US8959320B2 (en) * | 2011-12-07 | 2015-02-17 | Apple Inc. | Preventing update training of first predictor with mismatching second predictor for branch instructions with alternating pattern hysteresis |
| KR102160344B1 (en) | 2018-12-31 | 2020-09-25 | 주식회사 포스코아이씨티 | System and Method for Robot Process Automation |
-
2020
- 2020-10-28 KR KR1020200140947A patent/KR102777453B1/en active Active
Patent Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20200073686A1 (en) | 2018-08-29 | 2020-03-05 | Ernst & Young U.S. Llp | Automated software script remediation methods and systems |
Also Published As
| Publication number | Publication date |
|---|---|
| KR20220056396A (en) | 2022-05-06 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN109542399B (en) | Software development method and device, terminal equipment and computer readable storage medium | |
| US10579803B1 (en) | System and method for management of application vulnerabilities | |
| CN111259627B (en) | Document analysis method, device, computer storage medium and equipment | |
| CN111881042B (en) | Automatic test script generation method and device and electronic equipment | |
| US11294661B2 (en) | Updating a code file | |
| US8904352B2 (en) | Systems and methods for processing source code during debugging operations | |
| US20150089415A1 (en) | Method of processing big data, apparatus performing the same and storage media storing the same | |
| US9582270B2 (en) | Effective feature location in large legacy systems | |
| CN112232198A (en) | Table content extraction method, device, equipment and medium based on RPA and AI | |
| CN113407284A (en) | Navigation interface generation method and device, storage medium and electronic equipment | |
| CN113296760A (en) | Method for generating model code, computer device and readable storage medium | |
| CN114253920A (en) | Transaction reordering method, device, equipment and readable storage medium | |
| KR20180129623A (en) | Apparatus for statically analyzing assembly code including assoxiated multi files | |
| CN110968311A (en) | Front-end page construction method, device and electronic device | |
| CN112256672B (en) | Database change approval method and device | |
| KR102777453B1 (en) | System and method for auto-completing roboting processing automation based on history | |
| CN113656028B (en) | UI component code generation method, device and equipment, and CRUD page generation method, device and equipment | |
| CN114281688A (en) | Codeless or low-code automatic case management method and device | |
| CN110515653B (en) | Document generation method and device, electronic equipment and computer readable storage medium | |
| CN113703753A (en) | Method and device for product development and product development system | |
| US11036478B2 (en) | Automated determination of transformation objects | |
| US10984003B2 (en) | Report generation for a digital task | |
| US20180267780A1 (en) | Methods for providing conditional allocation of build files and related systems and computer program products | |
| CN112699372A (en) | Vulnerability processing method and device and computer readable storage medium | |
| US20120192011A1 (en) | Data processing apparatus that performs test validation and computer-readable storage medium |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20201028 |
|
| PG1501 | Laying open of application | ||
| E701 | Decision to grant or registration of patent right | ||
| PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 20250123 |
|
| PG1601 | Publication of registration |