KR102254850B1 - Process Editor Apparatus and Robot Process Automation including thereof - Google Patents

Process Editor Apparatus and Robot Process Automation including thereof Download PDF

Info

Publication number
KR102254850B1
KR102254850B1 KR1020180173815A KR20180173815A KR102254850B1 KR 102254850 B1 KR102254850 B1 KR 102254850B1 KR 1020180173815 A KR1020180173815 A KR 1020180173815A KR 20180173815 A KR20180173815 A KR 20180173815A KR 102254850 B1 KR102254850 B1 KR 102254850B1
Authority
KR
South Korea
Prior art keywords
task
execution
event
events
script
Prior art date
Application number
KR1020180173815A
Other languages
Korean (ko)
Other versions
KR20200082839A (en
Inventor
최해식
Original Assignee
주식회사 포스코아이씨티
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 포스코아이씨티 filed Critical 주식회사 포스코아이씨티
Priority to KR1020180173815A priority Critical patent/KR102254850B1/en
Publication of KR20200082839A publication Critical patent/KR20200082839A/en
Application granted granted Critical
Publication of KR102254850B1 publication Critical patent/KR102254850B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Administration; Management
    • G06Q10/10Office automation; Time management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Human Resources & Organizations (AREA)
  • Strategic Management (AREA)
  • General Physics & Mathematics (AREA)
  • Operations Research (AREA)
  • Tourism & Hospitality (AREA)
  • Quality & Reliability (AREA)
  • General Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Economics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Stored Programmes (AREA)

Abstract

본 발명은 프로세스 설정 장치 및 프로세스 설정 장치를 포함하는 로봇 프로세스 자동화 시스템에 관한 것이다.
본 발명의 일 형태에 따른 로봇 프로세스 자동화 시스템을 위한 프로세스 설정 장치는, 프로세스를 구성하는 하나 이상의 태스크를 생성한 후 각 태스크의 속성을 정의하고 실행순서를 결정하여 상기 프로세스를 설정하는 프로세스 설정부; 및 태스크를 구성하는 하나 이상의 이벤트를 생성한 후 각 이벤트의 속성을 정의하고 실행순서를 결정하여 상기 태스크를 설정하는 태스크 설정부를 포함하는 것을 특징으로 한다.
The present invention relates to a robotic process automation system including a process setting device and a process setting device.
A process setting apparatus for a robotic process automation system according to an aspect of the present invention includes: a process setting unit that creates one or more tasks constituting a process, defines properties of each task, determines an execution order, and sets the process; And a task setting unit configured to set the task by defining an attribute of each event and determining an execution order after generating one or more events constituting the task.

Description

프로세스 설정 장치 및 프로세스 설정 장치를 포함하는 로봇 프로세스 자동화 시스템 {Process Editor Apparatus and Robot Process Automation including thereof}Robot process automation system including process setting device and process setting device {Process Editor Apparatus and Robot Process Automation including thereof}

본 발명은 프로세스 설정 장치 및 이를 포함하는 로봇 프로세스 자동화 시스템에 관한 것으로, 보다 상세하게는 사용자의 업무를 자동으로 실행하여 처리하는 로봇 프로세스 자동화 시스템을 위한 프로세스 설정 장치 및 이를 포함하는 로봇 프로세스 자동화 시스템에 관한 것이다.The present invention relates to a process setting device and a robot process automation system including the same, and more particularly, to a process setting device for a robot process automation system that automatically executes and processes a user's task, and a robot process automation system including the same. About.

정보통신 기술이 발달함에 따라 컴퓨터를 사용하여 처리하는 업무(이하 "컴퓨팅 업무"라 함)가 크게 증가하게 되었으며, 또한 컴퓨터를 사용하여 일정한 패턴으로 반복 처리하는 업무도 증가하게 되었다.With the development of information and communication technology, tasks that are processed using computers (hereinafter referred to as "computing tasks") have been greatly increased, and tasks that are repeatedly processed in a certain pattern using computers have also increased.

이에 따라, 어느 정도 정형화된 업무의 경우 사용자가 관여하지 않더라도 이를 자동으로 처리해 줄 수 있는 자동 처리 시스템에 대한 요구(needs)가 아주 높아졌다.Accordingly, in the case of a somewhat formalized work, the need for an automatic processing system capable of automatically processing it even if the user is not involved has increased very much.

그러나, 종래기술의 경우 아주 단순한 작업만 실행할 수 있는 매크로 프로그램(Macro Program) 정도의 수준이어서 사용자의 요구를 충족시킬 수 없었으며, 특히 사용자의 컴퓨팅 환경이 조금이라도 달라지는 경우 제대로 실행되지 않아 사용자의 업무를 실제 자동으로 처리해 줄 수 있는 수준에는 미치지 못하는 문제점이 있었다.However, in the case of the prior art, the level of a macro program capable of executing only very simple tasks could not satisfy the user's needs. In particular, when the user's computing environment changes even a little, the user's work is not executed properly. There was a problem that did not reach the level that could actually handle automatically.

또한, 종래기술의 경우 사용자의 업무 처리를 자동으로 수행하도록 하기 위해서는 실행순서, 위치, 방식 등을 세부적으로 설정해 주어야 하는데, 일반적인 사용자의 경우 전문적 지식이 없어 에러 없이 완벽하게 설정하기가 어려운 문제점이 있었다.In addition, in the case of the prior art, in order to automatically perform the user's business processing, the execution order, location, and method must be set in detail, but there is a problem in that it is difficult to completely set up without errors because general users do not have specialized knowledge. .

한국 등록특허공보 제10-1915802호Korean Registered Patent Publication No. 10-1915802

본 발명은 전술한 바와 같은 요구를 충족하기 위해 창안된 것으로, 본 발명의 목적은 사용자의 컴퓨팅 업무를 자동으로 실행하여 처리하는 로봇 프로세스 자동화 시스템을 제공하는 것이다.The present invention was invented to meet the above-described requirements, and an object of the present invention is to provide a robotic process automation system that automatically executes and processes a user's computing task.

본 발명의 다른 목적은 사용자가 컴퓨팅 업무에 대해 하나 이상의 이벤트로 구성된 태스크 및 하나 이상의 태스크로 구성된 프로세스를 설정하면 태스크 자동화 스크립트 및 프로세스 자동화 스크립트를 생성하는 프로세스 설정 장치 및 이를 포함하는 로봇 프로세스 자동화 시스템을 제공하는 것이다.Another object of the present invention is to provide a process setting device for generating a task automation script and a process automation script when a user sets a task consisting of one or more events and a process consisting of one or more tasks for a computing task, and a robotic process automation system including the same. To provide.

본 발명의 또 다른 목적은 사용자가 프로세스와 태스크를 실행하는 행동 패턴을 레코딩하고 레코딩된 자료에 기초하여 프로세스 자동화 스크립트 및 태스크 자동화 스크립트를 생성하는 프로세스 설정 장치 및 이를 포함하는 로봇 프로세스 자동화 시스템을 제공하는 것이다.Another object of the present invention is to provide a process setting device for recording an action pattern in which a user executes a process and a task, and generating a process automation script and a task automation script based on the recorded data, and a robot process automation system including the same. will be.

본 발명의 또 다른 목적은 컴퓨팅 환경이 변경된 경우 이를 반영하여 프로세스 자동화 스크립트 및 태스크 자동화 스크립트가 실행될 수 있도록 하는 프로세스 설정 장치 및 이를 포함하는 로봇 프로세스 자동화 시스템을 제공하는 것이다.Another object of the present invention is to provide a process setting device for executing a process automation script and a task automation script by reflecting the change in a computing environment, and a robot process automation system including the same.

본 발명의 또 다른 목적은 태스크를 구성하는 복수개의 이벤트 중 일부 이벤트들을 하나의 통합 이벤트로 구현하여 실행될 수 있도록 하는 프로세스 설정 장치 및 이를 포함하는 로봇 프로세스 자동화 시스템을 제공하는 것이다.Another object of the present invention is to provide a process setting device for implementing and executing some events among a plurality of events constituting a task as one integrated event, and a robot process automation system including the same.

본 발명의 또 다른 목적은 프로세스를 구성하는 복수개의 태스크 중 일부 태스크들을 하나의 통합 태스크로 구현하여 실행될 수 있도록 하는 프로세스 설정 장치 및 이를 포함하는 로봇 프로세스 자동화 시스템을 제공하는 것이다.Still another object of the present invention is to provide a process setting device for implementing and executing some tasks among a plurality of tasks constituting a process as one integrated task, and a robot process automation system including the same.

상기 목적을 위하여, 본 발명의 일 형태에 따른 로봇 프로세스 자동화 시스템을 위한 프로세스 설정 장치는, 프로세스를 구성하는 하나 이상의 태스크를 생성한 후 각 태스크의 속성을 정의하고 실행순서를 결정하여 상기 프로세스를 설정하는 프로세스 설정부; 및 태스크를 구성하는 하나 이상의 이벤트를 생성한 후 각 이벤트의 속성을 정의하고 실행순서를 결정하여 상기 태스크를 설정하는 태스크 설정부를 포함하는 것을 특징으로 한다.For the above purposes, a process setting device for a robotic process automation system according to an aspect of the present invention sets the process by defining the properties of each task and determining the execution order after creating one or more tasks constituting the process. A process setting unit; And a task setting unit configured to set the task by defining an attribute of each event and determining an execution order after generating one or more events constituting the task.

바람직하게는, 로봇 프로세스 자동화 시스템을 위한 프로세스 설정 장치는, 상기 프로세스를 수행하는 프로세스 자동화 스크립트 및 상기 태스크를 수행하는 태스크 자동화 스크립트를 생성하는 스크립트 생성부를 더 포함한다.Preferably, the process setting device for the robotic process automation system further includes a process automation script that performs the process and a script generation unit that generates a task automation script that performs the task.

바람직하게는, 상기 프로세스 설정부는 사용자가 상기 프로세스를 설정할 수 있는 프로세스 에디터를 제공하고, 상기 프로세스 에디터는, 상기 하나 이상의 태스크의 생성을 관리하는 태스크 생성 관리자, 상기 하나 이상의 태스크의 속성을 관리하는 태스크 속성 관리자, 및 상기 하나 이상의 태스크의 상호 연결을 관리하는 태스크 연결 관리자를 포함한다.Preferably, the process setting unit provides a process editor through which a user can set the process, and the process editor includes a task creation manager that manages the creation of the one or more tasks, and a task that manages the properties of the one or more tasks. And a property manager, and a task connection manager that manages the interconnection of the one or more tasks.

바람직하게는, 상기 태스크 설정부는 사용자가 상기 태스크를 설정할 수 있는 태스크 에디터를 제공하고, 상기 태스크 에디터는, 상기 하나 이상의 이벤트의 생성을 관리하는 이벤트 생성 관리자, 상기 하나 이상의 이벤트의 속성을 관리하는 이벤트 속성 관리자, 및 상기 하나 이상의 이벤트의 상호 연결을 관리하는 이벤트 연결 관리자를 포함한다.Preferably, the task setting unit provides a task editor through which a user can set the task, and the task editor includes an event creation manager that manages the generation of the one or more events, and an event that manages the properties of the one or more events. It includes a property manager, and an event connection manager that manages the interconnection of the one or more events.

바람직하게는, 상기 태스크를 구성하는 하나 이상의 이벤트 중 순차적으로 실행되는 복수개의 이벤트는 하나의 통합 이벤트로 설정 가능하다.Preferably, a plurality of events sequentially executed among one or more events constituting the task may be set as one integrated event.

바람직하게는, 상기 프로세스 설정부는 사용자가 상기 프로세스를 실행하는 행동 패턴을 레코딩하여 프로세스 레코딩 자료를 생성하고, 상기 프로세스 레코딩 자료에서 상기 프로세스를 구성하는 하나 이상의 태스크의 속성 및 실행순서를 추출한다.Preferably, the process setting unit generates process recording data by recording an action pattern of a user executing the process, and extracts attributes and execution sequences of one or more tasks constituting the process from the process recording data.

바람직하게는, 상기 태스크 설정부는 사용자가 상기 태스크를 실행하는 행동 패턴을 레코딩하여 태스크 레코딩 자료를 생성하고, 상기 태스크 레코딩 자료에서 상기 태스크를 구성하는 하나 이상의 이벤트의 속성 및 실행순서를 추출한다.Preferably, the task setting unit generates task recording material by recording an action pattern in which a user executes the task, and extracts attributes and execution order of one or more events constituting the task from the task recording material.

한편, 본 발명의 일 형태에 따른 로봇 프로세스 자동화 시스템을 위한 프로세스 설정 방법은, 프로세스를 구성하는 하나 이상의 태스크를 생성한 후 각 태스크의 속성을 정의하고 실행순서를 결정하여 상기 프로세스를 설정하고, 태스크를 구성하는 하나 이상의 이벤트를 생성한 후 각 이벤트의 속성을 정의하고 실행순서를 결정하여 상기 태스크를 설정하는 단계; 및 상기 설정된 프로세스를 수행하는 프로세스 자동화 스크립트 및 상기 설정된 태스크를 수행하는 태스크 자동화 스크립트를 생성하는 단계를 포함하는 것을 특징으로 한다.On the other hand, a process setting method for a robotic process automation system according to an aspect of the present invention is, after creating one or more tasks constituting a process, defining properties of each task and determining an execution order to set the process, and Generating at least one event that constitutes an event, defining a property of each event, and determining an execution order to set the task; And generating a process automation script that performs the set process and a task automation script that performs the set task.

바람직하게는, 상기 설정하는 단계는, 사용자가 상기 프로세스를 실행하는 행동 패턴을 레코딩하여 프로세스 레코딩 자료를 생성하는 과정, 및 상기 프로세스 레코딩 자료에서 상기 프로세스를 구성하는 하나 이상의 태스크의 속성 및 실행순서를 추출하는 과정을 포함한다.Preferably, the step of setting includes a process of generating process recording material by recording an action pattern of a user executing the process, and the attribute and execution order of one or more tasks constituting the process from the process recording material. Includes the process of extracting.

바람직하게는, 상기 설정하는 단계는, 사용자가 상기 태스크를 실행하는 행동 패턴을 레코딩하여 태스크 레코딩 자료를 생성하는 과정, 및 상기 태스크 레코딩 자료에서 상기 태스크를 구성하는 하나 이상의 이벤트의 속성 및 실행순서를 추출하는 과정을 포함한다.Preferably, the setting comprises a process of generating task recording material by recording an action pattern of a user executing the task, and the attribute and execution order of one or more events constituting the task from the task recording material. Includes the process of extracting.

바람직하게는, 상기 로봇 프로세스 자동화 시스템을 위한 프로세스 설정 방법은, 사용자가 상기 태스크를 실행할 때의 컴퓨팅 환경을 반영하여, 상기 프로세스 자동화 스크립트 및 상기 태스크 자동화 스크립트를 실행하는 단계를 더 포함한다.Preferably, the process setting method for the robotic process automation system further includes executing the process automation script and the task automation script by reflecting a computing environment when a user executes the task.

본 발명에 따르면, 사용자의 컴퓨팅 업무에 대해 하나 이상의 태스크로 구성된 프로세스 및 하나 이상의 이벤트로 구성된 태스크를 설정하고, 상기 프로세스를 수행하는 프로세스 자동화 스크립트 및 상기 태스크를 수행하는 태스크 자동화 스크립트를 생성하여 실행함으로써, 사용자의 컴퓨팅 업무를 자동으로 실행하여 처리할 수 있는 효과를 가진다.According to the present invention, by setting a process consisting of one or more tasks and a task consisting of one or more events for a user's computing task, and creating and executing a process automation script that performs the process and a task automation script that performs the task , It has the effect of automatically executing and processing the user's computing task.

그리고, 본 발명에 따르면, 사용자가 컴퓨팅 업무에 대해 프로세스 에디터를 통해 하나 이상의 태스크로 구성된 프로세스를 용이하게 설정할 수 있고 마찬가지로 태스크 에디터를 통해 하나 이상의 이벤트로 구성된 태스크를 용이하게 설정할 수 있기 때문에, 전문적인 지식이 없더라도 사용자의 컴퓨팅 업무를 용이하게 실행할 수 있는 효과를 가진다.In addition, according to the present invention, since a user can easily set a process consisting of one or more tasks through a process editor for a computing task, and similarly, a task composed of one or more events can be easily set through a task editor. Even without knowledge, it has the effect of being able to easily execute the user's computing task.

또한, 본 발명에 따르면, 사용자가 프로세스와 태스크를 실행하는 행동 패턴을 레코딩하여 프로세스/태스크 레코딩 자료를 생성하고, 프로세스/태스크 레코딩 자료에 기초하여 프로세스 자동화 스크립트 및 태스크 자동화 스크립트를 생성하고 실행할 수 있기 때문에, 사용자가 프로세스 및 태스크를 직접 설정하지 않더라도 사용자의 컴퓨팅 업무를 용이하게 실행할 수 있는 효과를 가진다.In addition, according to the present invention, it is possible to create a process/task recording material by recording an action pattern of a user executing a process and a task, and create and execute a process automation script and a task automation script based on the process/task recording material. Therefore, even if the user does not directly set the process and task, it has the effect of being able to easily execute the user's computing task.

또한, 본 발명에 따르면, 컴퓨팅 환경이 변경된 경우에도 프로세스 실행 장치가 이를 반영하여 프로세스/태스크 자동화 스크립트를 실행함으로써, 컴퓨팅 환경이나 조건에 영향을 받지 않고 에러 없이 사용자의 컴퓨팅 업무를 원활하게 수행할 수 있는 효과를 가진다.In addition, according to the present invention, even when the computing environment is changed, the process execution device reflects this and executes the process/task automation script, so that the user's computing task can be smoothly performed without being affected by the computing environment or conditions. Has an effect.

또한, 본 발명에 따르면, 태스크를 구성하는 하나 이상의 이벤트 중 순차적으로 실행되는 복수개의 이벤트를 하나의 통합 이벤트로 구현하여 실행함으로써, 태스크를 용이하고 신속하게 실행할 수 있는 효과를 가진다.In addition, according to the present invention, a plurality of events that are sequentially executed among one or more events constituting a task are implemented and executed as one integrated event, thereby having an effect that the task can be easily and quickly executed.

또한, 본 발명에 따르면, 프로세스를 구성하는 하나 이상의 태스크 중 순차적으로 실행되는 복수개의 태스크를 하나의 통합 태스크로 구현하여 실행함으로써, 프로세스를 용이하고 신속하게 실행할 수 있는 효과를 가진다.In addition, according to the present invention, a plurality of tasks that are sequentially executed among one or more tasks constituting a process are implemented and executed as one integrated task, thereby having an effect that the process can be easily and quickly executed.

도 1은 본 발명의 일 실시예에 따른 로봇 프로세스 자동화 시스템의 구성도이다.
도 2는 본 발명의 일 실시예에 따른 프로세스 설정 방식을 나타낸 것이다.
도 3은 본 발명의 일 실시예에 따른 태스크 설정 방식을 나타낸 것이다.
도 4는 본 발명의 다른 실시예에 따른 태스크 설정 방식을 나타낸 것이다.
도 5는 본 발명의 일 실시예에 따른 스크립트 실행부가 태스크를 실행하는 것을 예시한 것이다.
도 6은 본 발명의 일 실시예에 따른 이벤트 실행부의 구성도이다.
도 7은 본 발명의 일 실시예에 따른 로봇 프로세스 자동화 방법의 흐름도이다.
도 8은 본 발명의 다른 실시예에 따른 로봇 프로세스 자동화 방법의 흐름도이다.
도 9는 본 발명의 또 다른 실시예에 따른 로봇 프로세스 자동화 방법의 흐름도이다.
1 is a block diagram of a robot process automation system according to an embodiment of the present invention.
2 shows a process setting method according to an embodiment of the present invention.
3 shows a method of setting a task according to an embodiment of the present invention.
4 shows a task setting method according to another embodiment of the present invention.
5 is a diagram illustrating that a script execution unit executes a task according to an embodiment of the present invention.
6 is a block diagram of an event execution unit according to an embodiment of the present invention.
7 is a flowchart of a robot process automation method according to an embodiment of the present invention.
8 is a flowchart of a robot process automation method according to another embodiment of the present invention.
9 is a flowchart of a method for automating a robot process according to another embodiment of the present invention.

이하에서는 첨부 도면 및 바람직한 실시예를 참조하여 본 발명을 상세히 설명한다. 참고로, 하기 설명에서 본 발명의 요지를 불필요하게 흐릴 수 있는 공지 기능 및 구성에 대한 상세한 설명은 생략한다.Hereinafter, the present invention will be described in detail with reference to the accompanying drawings and preferred embodiments. For reference, in the following description, detailed descriptions of known functions and configurations that may unnecessarily obscure the subject matter of the present invention will be omitted.

도 1은 본 발명의 일 실시예에 따른 로봇 프로세스 자동화 시스템의 구성도이다.1 is a block diagram of a robot process automation system according to an embodiment of the present invention.

도 1을 참조하면, 본 발명의 일 실시예에 따른 로봇 프로세스 자동화 시스템은 적어도 하나의 프로세스 설정 장치(100-1, ... , 100-m), 적어도 하나의 프로세스 실행 장치(200-1, ... , 200-n), 프로세스 관리 장치(300), 적어도 하나의 프로세스 제어 장치(400-1, ... , 400-n) 등을 포함한다.Referring to FIG. 1, a robot process automation system according to an embodiment of the present invention includes at least one process setting device 100-1, ..., 100-m, at least one process execution device 200-1, ..., 200-n), a process management device 300, at least one process control device 400-1, ..., 400-n, and the like.

참고로, 본 발명의 일 실시예에 따른 로봇 프로세스 자동화 시스템의 경우, 프로세스 관리 장치(300)가 적어도 하나의 프로세스 설정 장치(100-1, ... , 100-m)(이하에서는 도면부호 100으로 통칭함) 및 적어도 하나의 프로세스 실행 장치(200-1, ... , 200-n)를 관리하며, 적어도 하나의 프로세스 실행 장치(200-1, ... , 200-n)(이하에서는 도면부호 200으로 통칭함)와 적어도 하나의 프로세스 제어 장치(400-1, ... , 400-n)(이하에서는 도면부호 400으로 통칭함)는 각각 1 대 1로 연동되어 하나의 프로세스 제어 장치(400)가 하나의 프로세스 실행 장치(200)를 제어하는 구조이다.For reference, in the case of the robotic process automation system according to an embodiment of the present invention, the process management device 300 includes at least one process setting device 100-1, ..., 100-m (hereinafter, reference numeral 100 And at least one process execution device (200-1, ..., 200-n), and at least one process execution device (200-1, ..., 200-n) (hereinafter, The reference numeral 200) and at least one process control device 400-1, ..., 400-n (hereinafter, collectively referred to as 400) are interlocked in a one-to-one basis, so as to be one process control device. The structure 400 controls one process execution device 200.

먼저, 프로세스 설정 장치(100)는 사용자가 반복적이거나 정형화된 컴퓨팅 업무에 대해 자동화 스크립트(script)를 제작할 수 있는 장치이다. 프로세스 설정 장치(100)는 사용자에게 컴퓨팅 업무를 실행하는 자동화 스크립트를 제작할 수 있는 에디터(editor)를 제공하고, 사용자가 에디터를 통해 프로세스(process), 태스크(task), 이벤트(event) 등을 구체적으로 설정하면 이에 대해 디버깅(debugging)하여 자동화 스크립트를 생성하고, 이를 프로세스 실행 장치(200) 및/또는 프로세스 관리 장치(300)로 전송하여 자동화 스크립트가 실제 실행될 수 있도록 한다.First, the process setting device 100 is a device through which a user can create an automation script for repetitive or standardized computing tasks. The process setting device 100 provides an editor that can create an automated script that executes computing tasks to the user, and allows the user to specify a process, task, event, etc. through the editor. If set to, the automation script is generated by debugging this, and transmitted to the process execution device 200 and/or the process management device 300 so that the automation script can be actually executed.

참고로, 본 발명에서 '이벤트(event)'란 사용자가 오브젝트(object)에 대해 임의의 동작(action)을 하거나 또는 사용자의 의지와 관계없이 시스템(예; OS)이 발생시키는 사건을 의미하는 것으로, 윈도우 오브젝트 검출, 웹 오브젝트 검출, UI(User Interface) 개체 검출, 이미지 검출, OCR(Optical Character Reader) 검출, 키(key) 입력, 마우스 입력 등을 예로 들 수 있다. 그리고, '태스크(task)'란 하나 이상의 이벤트로 구성된 사용자의 단위 실행 동작을 의미하고, '프로세스(process)'란 하나 이상의 태스크로 구성된 사용자의 단위 컴퓨팅 업무를 의미한다.For reference, in the present invention, the term'event' refers to an event generated by a system (e.g., OS) regardless of the user's will or when a user performs a random action on an object. , Window object detection, web object detection, UI (User Interface) object detection, image detection, OCR (Optical Character Reader) detection, key input, mouse input, and the like. In addition,'task' refers to a unit execution operation of a user composed of one or more events, and'process' refers to a unit computing task of a user composed of one or more tasks.

본 발명의 일 실시예에 따르면, 프로세스 설정 장치(100)는 프로세스 설정부(110), 태스크 설정부(120), 스크립트 생성부(130) 등을 포함한다.According to an embodiment of the present invention, the process setting device 100 includes a process setting unit 110, a task setting unit 120, a script generation unit 130, and the like.

프로세스 설정부(110)는 사용자에게 프로세스를 설정하고 편집할 수 있는 기능을 제공한다. 예컨대, 프로세스 설정부(110)는 사용자에게 프로세스를 설정하고 편집할 수 있는 프로세스 에디터를 제공하고, 사용자는 프로세스 에디터를 통해 하나 이상의 태스크를 생성하거나 선택하고 이에 대한 속성, 실행조건, 실행순서 등을 결정하여 프로세스를 설정한다. 이를 위해, 프로세스 에디터는 하나 이상의 태스크의 생성을 관리하는 태스크 생성 관리자, 하나 이상의 태스크의 속성을 관리하는 태스크 속성 관리자, 하나 이상의 태스크의 상호 연결을 관리하는 태스크 연결 관리자 등을 포함할 수 있다.The process setting unit 110 provides a user with a function of setting and editing a process. For example, the process setting unit 110 provides a process editor capable of setting and editing a process to a user, and the user creates or selects one or more tasks through the process editor and sets properties, execution conditions, execution order, etc. Decide to set up the process. To this end, the process editor may include a task creation manager that manages generation of one or more tasks, a task property manager that manages properties of one or more tasks, a task connection manager that manages interconnection of one or more tasks, and the like.

이와 관련하여, 도 2는 본 발명의 일 실시예에 따른 프로세스 설정 방식을 나타낸 것이다.In this regard, FIG. 2 shows a process setting method according to an embodiment of the present invention.

도 2를 참조하면, 사용자는 프로세스 설정부(110)가 제공하는 프로세스 에디터를 통해 하나 이상의 태스크를 생성하고 이들의 속성, 실행조건, 실행순서 등을 설정한다. 태스크의 속성은 태스크의 명칭, 입력자료, 입력방법, 출력자료, 출력방법, 처리시간, 및 지연시간 중 적어도 하나가 될 수 있으며, 실행조건은 기 설정된 선행 태스크가 종료되면 실행, 기 설정된 입력자료가 수신되면 실행, 및 기 설정된 실행시각에 실행 중 적어도 하나가 될 수 있다. 그리고, 실행순서는 각각의 태스크가 연속적으로 입력 및 출력 관계가 되어 복수개의 태스크가 상호 연결됨으로써 하나의 프로세스를 생성할 수 있다.Referring to FIG. 2, a user creates one or more tasks through a process editor provided by the process setting unit 110 and sets their properties, execution conditions, execution order, and the like. The attribute of the task can be at least one of the name of the task, input data, input method, output data, output method, processing time, and delay time. When is received, it may be at least one of execution and execution at a preset execution time. In addition, in the execution order, each task is in a continuous input and output relationship, and a plurality of tasks are interconnected to generate one process.

보험회사에서 보험 가입한 고객목록을 작성하는 업무(프로세스)를 예로 들면, 사용자는 신청자를 확인하는 제1 태스크, 고객정보를 추출하는 제2 태스크, 고객목록을 작성하는 제3 태스크를 생성하여 속성, 실행조건 등을 각각 설정하고, 이들 태스크를 화살표로 연결하여 실행순서를 결정한다. 참고로, 도 2에서는 태스크들이 하나의 방향으로 순차적으로 진행되는 경우를 예시하였지만, 조건에 따른 분기, 반복 실행, 에러 처리 등이 포함된 형태로 구현하는 것도 가능하다.For example, the task (process) of creating a list of customers insured by an insurance company is an example of a user creating a first task for identifying the applicant, a second task for extracting customer information, and a third task for creating a customer list. , Execution conditions, etc. are set respectively, and the execution order is determined by connecting these tasks with arrows. For reference, although FIG. 2 illustrates a case in which tasks are sequentially performed in one direction, it is also possible to implement in a form including branching, repetitive execution, and error processing according to conditions.

태스크 설정부(120)는 사용자에게 태스크를 설정하고 편집할 수 있는 기능을 제공한다. 예컨대, 태스크 설정부(120)는 사용자에게 태스크를 설정하고 편집할 수 있는 태스크 에디터를 제공하고, 사용자는 태스크 에디터를 통해 하나 이상의 이벤트를 생성하거나 선택하고 이에 대한 속성, 실행조건, 실행순서 등을 결정하여 태스크를 설정한다. 이를 위해, 태스크 에디터는 하나 이상의 이벤트의 생성을 관리하는 이벤트 생성 관리자, 하나 이상의 이벤트의 속성을 관리하는 이벤트 속성 관리자, 하나 이상의 이벤트의 상호 연결을 관리하는 이벤트 연결 관리자 등을 포함할 수 있다.The task setting unit 120 provides a user with a function of setting and editing a task. For example, the task setting unit 120 provides a task editor capable of setting and editing a task to a user, and the user creates or selects one or more events through the task editor and sets properties, execution conditions, execution order, etc. Determine and set the task. To this end, the task editor may include an event generation manager that manages generation of one or more events, an event property manager that manages properties of one or more events, an event connection manager that manages interconnection of one or more events, and the like.

이와 관련하여, 도 3은 본 발명의 일 실시예에 따른 태스크 설정 방식을 나타낸 것이다.In this regard, FIG. 3 shows a task setting method according to an embodiment of the present invention.

도 3을 참조하면, 사용자는 태스크 설정부(120)가 제공하는 태스크 에디터를 통해 하나 이상의 이벤트를 생성하고 이들의 속성, 실행조건, 실행순서 등을 설정한다. 이벤트의 속성은 이벤트의 명칭, 대상(예; 텍스트, 이미지, 오브젝트, 파일), 실행방법(예; 오브젝트 검출, 키 입력, 마우스 입력), 실행결과(예; 단순 실행, 텍스트 저장, 이미지 저장, 파일 생성), 및 실행시간 중 적어도 하나가 될 수 있으며, 실행조건은 기 설정된 선행 이벤트가 종료되면 실행, 기 설정된 선행 이벤트가 종료되면 일정 시간 경과 후 실행, 및 기 설정된 실행시각에 실행 중 적어도 하나가 될 수 있다. 그리고, 실행순서는 각각의 이벤트가 연속적으로 입력 및 출력 관계가 되어 복수개의 이벤트가 상호 연결됨으로써 하나의 태스크를 생성할 수 있다.Referring to FIG. 3, a user creates one or more events through a task editor provided by the task setting unit 120 and sets their properties, execution conditions, execution order, and the like. The attributes of the event include the name of the event, target (eg text, image, object, file), execution method (eg object detection, key input, mouse input), execution result (eg simple execution, text storage, image storage, File creation), and execution time, and the execution condition may be at least one of execution when a preset preceding event ends, execution after a certain period of time when a preset preceding event ends, and execution at a preset execution time. Can be. In addition, in the execution order, each event is a continuous input and output relationship, and a plurality of events are interconnected to generate one task.

전술한 보험회사에서 보험 가입한 고객 목록을 작성하는 업무(프로세스) 중 고객정보를 추출하는 제2 태스크를 예로 들면, 사용자는 바탕화면에서 고객폴더 이미지를 검출하는 제1 이벤트, 검출된 고객폴더에 대해 마우스를 클릭하는 제2 이벤트, 고객폴더에 저장되어 있는 고객파일에 대해 마우스를 클릭하는 제3 이벤트, 만약 고객파일이 텍스트 파일인 경우 텍스트를 복사하는 제4 이벤트, 만약 고객파일이 이미지 파일인 경우 이미지를 OCR 검출하는 제5 이벤트 및 OCR 검출된 결과에서 텍스트를 추출하는 제6 이벤트, 제4 또는 제6 이벤트의 결과인 텍스트에 대해 고객정보를 추출하는 제7 이벤트를 생성하여 속성, 실행조건 등을 각각 설정하고, 이들 이벤트를 화살표로 연결하여 실행순서를 결정한다. 참고로, 도 3에서는 설명을 용이하게 하기 위해 핵심적인 이벤트 위주로 나열하였지만, 실제 구현에 있어서는 보다 세분화된 이벤트들이 더 포함될 수 있다.As an example of the second task of extracting customer information among the tasks (process) of creating a list of customers who have been insured by the insurance company described above, the user has the first event of detecting a customer folder image on the background screen, and the detected customer folder. The second event of clicking the mouse for the second event, the third event of clicking the mouse for the customer file stored in the customer folder, the fourth event of copying the text if the customer file is a text file, if the customer file is an image file. In this case, a fifth event for OCR detection of an image, a sixth event for extracting text from the result of OCR detection, and a seventh event for extracting customer information for the text that is the result of the fourth or sixth event are generated and attributes, execution conditions Each of the lights is set, and these events are connected with arrows to determine the order of execution. For reference, in FIG. 3, the main events are listed in order to facilitate the description, but more detailed events may be further included in the actual implementation.

한편, 도 4는 본 발명의 다른 실시예에 따른 태스크 설정 방식을 나타낸 것이다.Meanwhile, FIG. 4 shows a task setting method according to another embodiment of the present invention.

도 3과 비교하여 도 4를 참조하면, 도 4에서는 도 3의 제1 이벤트(바탕화면에서 고객폴더 이미지를 검출하는 이벤트), 제2 이벤트(검출된 고객폴더에 대해 마우스를 클릭하는 이벤트), 및 제3 이벤트(고객폴더에 저장되어 있는 고객파일에 대해 마우스를 클릭하는 이벤트)를 하나로 통합하여 하나의 이벤트로 구현하였으며, 나머지 제4 내지 제7 이벤트는 동일하다. 즉, 본 발명에서는 태스크를 구성하는 이벤트들 중 순차적으로 실행되는 복수개의 이벤트를 하나의 통합 이벤트로 설정할 수 있으며, 프로세스를 구성하는 태스크들 중 순차적으로 실행되는 복수개의 태스크를 하나의 통합 태스크로 설정할 수 있다. 그리고, 이는 프로세스까지 확대 적용되어, 순차적으로 실행되는 복수개의 프로세스를 하나의 통합 프로세스로 설정할 수 있다.Referring to FIG. 4 compared to FIG. 3, in FIG. 4, the first event of FIG. 3 (an event of detecting a customer folder image on the desktop), a second event (an event of clicking a mouse on the detected customer folder), And a third event (an event of clicking a mouse on a customer file stored in the customer folder) was integrated into one event, and the remaining events 4 to 7 are the same. That is, in the present invention, a plurality of sequentially executed events among the events constituting a task may be set as one integrated event, and a plurality of sequentially executed tasks among the tasks constituting a process may be set as one integrated task. I can. In addition, this is extended to a process, and a plurality of sequentially executed processes can be set as one integrated process.

한편, 본 발명의 바람직한 실시예에 따르면, 프로세스 설정부(110)와 태스크 설정부(120)는 사용자가 프로세스와 태스크를 실행하는 행동 패턴을 레코딩하여 프로세스 레코딩 자료와 태스크 레코딩 자료(참고로, 컴퓨팅 환경 정보가 반영됨)를 생성하고, 프로세스/태스크 레코딩 자료에 기초하여 프로세스와 태스크의 속성, 실행조건, 실행순서 등을 추출할 수 있다.Meanwhile, according to a preferred embodiment of the present invention, the process setting unit 110 and the task setting unit 120 record process and task recording data (for reference, by recording behavior patterns in which a user executes processes and tasks). Environment information is reflected), and the properties of processes and tasks, execution conditions, execution order, etc. can be extracted based on the process/task recorded data.

전술한 보험회사에서 보험 가입한 고객 목록을 작성하는 업무(프로세스) 중 고객정보를 추출하는 제2 태스크를 예로 들면, 사용자는 태스크 설정부(120)에서 제2 태스크에 대해 레코딩을 선택하고 실제로 제2 태스크를 수행한다. 즉, 사용자는 현재의 컴퓨팅 환경 하에서 실제로 바탕화면에서 고객폴더 이미지를 검출하고(제1 이벤트), 검출된 고객폴더에 대해 마우스를 클릭한 후(제2 이벤트), 고객폴더에 저장되어 있는 고객파일에 대해 마우스를 클릭하여(제3 이벤트) 고객파일을 열면, 태스크 설정부(120)는 이러한 과정을 레코딩한다. 그리고, 만약 고객파일이 텍스트 파일이어서 사용자가 텍스트를 복사하고(제4 이벤트), 해당 텍스트에 대해 고객정보를 추출하면(제7 이벤트), 태스크 설정부(120)는 마찬가지로 이러한 과정을 레코딩한다. 한편, 만약 고객파일이 이미지 파일이어서 사용자가 이미지에 대해 OCR 검출을 수행하고(제5 이벤트), OCR 검출된 결과에서 텍스트를 추출한 후(제6 이벤트), 추출된 텍스트에 대해 고객정보를 추출하면(제7 이벤트), 태스크 설정부(120)는 마찬가지로 이러한 과정을 레코딩한다. 그리고, 레코딩이 완료되면, 태스크 설정부(120)는 레코딩된 자료에 기초하여 제2 태스크를 구성하는 이벤트들의 속성, 실행조건, 실행순서 등을 추출하고, 이와 함께 제2 태스크를 실행할 때의 컴퓨팅 환경 정보(화면 해상도, 화면 배치, 화면 크기 등)를 추출한다. 참고로, 프로세스/태스크를 실행하는 사용자의 행동 패턴 및 이에 대한 레코딩은 특별한 조건이나 분기 등이 없는 경우(도 2 참조)에는 한번의 실행으로 완료될 수 있으며, 조건이나 분기 등이 있는 경우(도 3 참조)에는 각 경우의 수에 해당하는 횟수만큼 실행하여 완료될 수 있다.As an example of the second task of extracting customer information among the tasks (process) of creating a list of customers insured by the above-described insurance company, the user selects recording for the second task in the task setting unit 120 and actually provides it. 2 Perform the task. In other words, the user actually detects a customer folder image on the desktop under the current computing environment (first event), clicks the mouse on the detected customer folder (second event), and then stores the customer file in the customer folder. When a customer file is opened by clicking a mouse on (third event), the task setting unit 120 records this process. Then, if the customer file is a text file and the user copies the text (the fourth event), and extracts customer information for the text (the seventh event), the task setting unit 120 similarly records this process. On the other hand, if the customer file is an image file and the user performs OCR detection on the image (event 5), extracts text from the result of OCR detection (event 6), and extracts customer information for the extracted text. (Seventh event), the task setting unit 120 similarly records this process. And, when the recording is completed, the task setting unit 120 extracts the attributes, execution conditions, execution order, etc. of the events constituting the second task based on the recorded data, and computes when the second task is executed. Extracts environmental information (screen resolution, screen layout, screen size, etc.). For reference, the behavior pattern of the user executing the process/task and recording thereof can be completed in one execution if there is no special condition or branch (see Fig. 2), and if there is a condition or branch (Fig. 3) can be completed by executing the number of times corresponding to the number of each case.

다시 도 1을 참조하면, 스크립트 생성부(130)는 사용자가 프로세스 설정부(110) 및 태스크 설정부(120)를 통해 설정한 프로세스와 태스크가 실제 자동으로 실행될 수 있도록 자동화 스크립트를 생성한다. 예컨대, 스크립트 생성부(130)는 프로세스 설정부(110)에서 설정된 프로세스를 수행하는 프로세스 자동화 스크립트를 생성하고, 마찬가지로 태스크 설정부(120)에서 설정된 태스크를 수행하는 태스크 자동화 스크립트를 생성한다. 그리고, 스크립트 생성부(130)는 프로세스 실행 장치(200)(보다 구체적으로는 이벤트 실행부(220))와 연동하여 태스크를 구성하는 하나 이상의 이벤트가 실제 실행순서대로 정상적으로 동작할 수 있는지 검증하여 디버깅(debugging)하고, 마찬가지로 프로세스를 구성하는 하나 이상의 태스크가 실제 실행순서대로 정상적으로 동작할 수 있는지 검증하여 디버깅한다.Referring back to FIG. 1, the script generation unit 130 generates an automation script so that the processes and tasks set by the user through the process setting unit 110 and the task setting unit 120 are actually automatically executed. For example, the script generation unit 130 generates a process automation script that performs a process set in the process setting unit 110 and similarly generates a task automation script that performs a task set in the task setting unit 120. In addition, the script generation unit 130 interlocks with the process execution device 200 (more specifically, the event execution unit 220) to verify whether one or more events constituting the task can operate normally in the actual execution order to be debugged. Likewise, debug by verifying that one or more tasks constituting the process can operate normally in the actual execution order.

또한, 스크립트 생성부(130)는 이와 같이 생성된 프로세스 자동화 스크립트와 태스크 자동화 스크립트를 실제 실행을 위해 프로세스 실행 장치(200)(보다 구체적으로는 스크립트 실행부(210))로 전송하고, 또한 추후 재사용 및 관리를 위해 프로세스 관리 장치(300)(보다 구체적으로는 제1 스크립트 관리부(320))로 전송한다.In addition, the script generation unit 130 transmits the generated process automation script and task automation script to the process execution device 200 (more specifically, the script execution unit 210) for actual execution, and further reuses And transmission to the process management device 300 (more specifically, the first script management unit 320) for management.

프로세스 실행 장치(200)는 프로세스 설정 장치(100)에서 생성된 자동화 스크립트를 실제로 실행하여 사용자의 컴퓨팅 업무를 자동으로 처리하는 장치이다. 프로세스 실행 장치(200)는 적어도 하나의 프로세스 설정 장치(100) 및/또는 프로세스 관리 장치(300)로부터 프로세스 자동화 스크립트와 태스크 자동화 스크립트를 수신하고, 프로세스 관리 장치(300) 및/또는 프로세스 제어 장치(400)로부터 실행 명령을 수신하면 프로세스/태스크 자동화 스크립트를 실행하여 사용자의 컴퓨팅 업무를 처리한다. 또한, 프로세스 실행 장치(200)는 프로세스 관리 장치(300)와 프로세스 제어 장치(400) 사이에서 이들을 상호 연동시켜 프로세스 제어 장치(400)가 프로세스 관리 장치(300)를 통해 원격의 프로세스 실행 장치를 제어할 수 있도록 해준다. The process execution device 200 is a device that automatically processes a user's computing task by actually executing the automation script generated by the process setting device 100. The process execution device 200 receives a process automation script and a task automation script from at least one process setting device 100 and/or the process management device 300, and the process management device 300 and/or the process control device ( 400), it executes the process/task automation script to process the user's computing work. In addition, the process execution device 200 interacts with each other between the process management device 300 and the process control device 400 so that the process control device 400 controls a remote process execution device through the process management device 300. Allows you to do it.

이를 위해, 본 발명의 일 실시예에 따른 프로세스 실행 장치(200)는 스크립트 실행부(210), 이벤트 실행부(220), 제1 커멘드 처리부(230), 보안 관리부(240), 로그 관리부(250) 등을 포함한다.To this end, the process execution device 200 according to an embodiment of the present invention includes a script execution unit 210, an event execution unit 220, a first command processing unit 230, a security management unit 240, and a log management unit 250. ), etc.

스크립트 실행부(210)는 프로세스 설정 장치(100) 및/또는 프로세스 관리 장치(300)로부터 전송된 프로세스/태스크 자동화 스크립트를 실행한다. 예컨대, 스크립트 실행부(210)는 프로세스/태스크 자동화 스크립트를 해석하여 각각의 이벤트, 태스크, 프로세스에 대해 속성, 실행조건, 우선순위 등을 판단하고 실행순서를 스케줄링한다. 그리고, 스크립트 실행부(210)는 이벤트 실행부(220)와 연동하여 각각의 이벤트들을 실행순서에 따라 순차적으로 실행하여 태스크를 실행하고 또한 각각의 태스크들을 실행순서에 따라 순차적으로 실행하여 프로세스를 실행한다.The script execution unit 210 executes a process/task automation script transmitted from the process setting device 100 and/or the process management device 300. For example, the script execution unit 210 analyzes a process/task automation script, determines attributes, execution conditions, and priorities for each event, task, and process, and schedules the execution order. In addition, the script execution unit 210 interlocks with the event execution unit 220 to sequentially execute each event according to the execution order to execute a task, and also executes a process by sequentially executing each task according to the execution order. do.

이와 관련하여, 도 5는 본 발명의 일 실시예에 따른 스크립트 실행부(210)가 태스크를 실행하는 것을 예시한 것이다. 참고로, 도 5는 전술한 보험회사에서 보험 가입한 고객 목록을 작성하는 업무(프로세스) 중 사용자가 고객정보를 추출하는 제2 태스크를 레코딩하여 생성된 태스크 자동화 스크립트를 스크립트 실행부(210)가 이벤트 실행부(220)와 연동하여 자동 실행하는 경우를 예시한 것이다.In this regard, FIG. 5 illustrates that the script execution unit 210 executes a task according to an embodiment of the present invention. For reference, FIG. 5 illustrates a task automation script generated by recording a second task for extracting customer information by a user among the tasks (process) of creating a list of customers who have been insured by the insurance company described above. An example of automatic execution in conjunction with the event execution unit 220 is illustrated.

도 5를 참조하면, 먼저 스크립트 실행부(210)는 태스크 레코딩 시의 컴퓨팅 환경 정보를 참조하여 현재의 컴퓨팅 환경(화면 해상도, 화면 배치, 화면 크기 등)을 조정하는 시스템 설정 이벤트를 실행한다. 참고로, 현재의 컴퓨팅 환경이 태스크 레코딩 시의 컴퓨팅 환경과 동일한 경우에는 시스템 설정 이벤트는 생략된다.Referring to FIG. 5, first, the script execution unit 210 executes a system setting event for adjusting the current computing environment (screen resolution, screen layout, screen size, etc.) by referring to computing environment information at the time of task recording. For reference, when the current computing environment is the same as the computing environment at the time of task recording, the system setting event is omitted.

그리고, 스크립트 실행부(210)는 바탕화면에서 고객폴더 이미지를 검출하는 제1 이벤트를 실행하고, 검출된 고객폴더에 대해 마우스를 클릭하는 제2 이벤트를 실행한 후, 고객폴더에 저장되어 있는 고객파일에 대해 마우스를 클릭하는 제3 이벤트를 실행한다. 그리고, 만약 고객파일이 텍스트 파일이면, 스크립트 실행부(210)는 고객파일에 있는 텍스트를 복사하는 제4 이벤트를 실행하고, 해당 텍스트에 대해 고객정보를 추출하는 제7 이벤트를 실행한다. 한편, 만약 고객 파일이 이미지 파일이면, 스크립트 실행부(210)는 해당 이미지에 대해 OCR 검출을 수행하는 제5 이벤트를 실행하고, OCR 검출된 결과에서 텍스트를 추출하는 제6 이벤트를 실행한 후, 추출된 텍스트에 대해 고객정보를 추출하는 제7 이벤트를 실행한다.In addition, the script execution unit 210 executes a first event for detecting a customer folder image on the background screen, executes a second event of clicking a mouse on the detected customer folder, and then stores the customer in the customer folder. Fires a third event of clicking the mouse on the file. And, if the customer file is a text file, the script execution unit 210 executes a fourth event of copying the text in the customer file, and executes a seventh event of extracting customer information for the text. On the other hand, if the customer file is an image file, the script execution unit 210 executes a fifth event for performing OCR detection on the image, and executes a sixth event for extracting text from the OCR detection result, The seventh event of extracting customer information is executed for the extracted text.

다시 도 1을 참조하면, 이벤트 실행부(220)는 이벤트 특성별(종류별)로 이를 관리하고 실행하는 하나 이상의 관리자를 구비하며, 스크립트 실행부(210)와 연동하여 프로세스와 태스크를 구성하는 모든 이벤트를 컴퓨팅 환경에 맞추어 순차적으로 실행한다.Referring back to FIG. 1, the event execution unit 220 includes one or more managers for managing and executing them by event characteristic (by type), and all events constituting processes and tasks in connection with the script execution unit 210 Are sequentially executed according to the computing environment.

이와 관련하여, 도 6은 본 발명의 일 실시예에 따른 이벤트 실행부(220)의 구성을 나타낸 것이다.In this regard, FIG. 6 shows the configuration of the event execution unit 220 according to an embodiment of the present invention.

도 6을 참조하면, 본 발명의 일 실시예에 따른 이벤트 실행부(220)는 이미지 오브젝트 관리자(221), 웹 오브젝트 관리자(222), UI 개체 관리자(223), OCR 관리자(224), 시스템 이벤트 관리자(225), 사용자 이벤트 관리자(226), 기타 이벤트 관리자(227) 등을 포함한다.Referring to FIG. 6, the event execution unit 220 according to an embodiment of the present invention includes an image object manager 221, a web object manager 222, a UI object manager 223, an OCR manager 224, and a system event. It includes a manager 225, a user event manager 226, other event managers 227, and the like.

이미지 오브젝트 관리자(221)는 바탕화면이나 실행화면 상에 있는 이미지를 객체(오브젝트)로 인식하여 검출하는 이미지 오브젝트 검출 이벤트를 수행하고, 웹 오브젝트 관리자(222)는 웹 상에서 웹 오브젝트를 검출하는 웹 오브젝트 검출 이벤트를 수행한다. 그리고, UI 개체 관리자(223)는 시스템(예; OS) 상의 프로그램들의 요소들을 개체로 인식하는 UI 개체 검출 이벤트를 수행하며, OCR 관리자(224)는 OCR(Optical Character Reader)을 사용하여 텍스트를 인식하는 OCR 검출 이벤트를 수행하고, 시스템 이벤트 관리자(225)는 시스템(예; OS)이 발생시키거나 수행하는 시스템 이벤트를 처리하는 기능을 수행한다. 그리고, 사용자 이벤트 관리자(226)는 키(key) 입력, 마우스 입력 등과 같은 사용자 이벤트를 처리하는 기능을 수행하고, 기타 이벤트 관리자(227)는 시스템 이벤트와 사용자 이벤트를 제외한 기타 이벤트를 처리하는 기능을 수행한다.The image object manager 221 performs an image object detection event that recognizes and detects an image on a background screen or an execution screen as an object (object), and the web object manager 222 is a web object that detects a web object on the web. Perform a detection event. In addition, the UI object manager 223 performs a UI object detection event that recognizes elements of programs on the system (eg, OS) as objects, and the OCR manager 224 recognizes text using an OCR (Optical Character Reader). The OCR detection event is performed, and the system event manager 225 performs a function of processing system events generated or performed by a system (eg, OS). In addition, the user event manager 226 performs a function of processing user events such as key input and mouse input, and the other event manager 227 processes other events excluding system events and user events. Carry out.

다시 도 1을 참조하면, 제1 커멘드 처리부(230)는 프로세스 관리 장치(300)의 제2 커멘드 처리부(340) 및/또는 프로세스 제어 장치(400)의 제3 커멘드 처리부(430)와 연동하여 프로세스/태스크 실행 명령, 실행결과 보고, 스크립트 요청, 보안정보 요청, 로그정보 요청, 과금정보 요청 등의 커멘드를 송수신하고 처리하는 기능을 수행한다.Referring back to FIG. 1, the first command processing unit 230 interlocks with the second command processing unit 340 of the process management device 300 and/or the third command processing unit 430 of the process control device 400 to process the process. / Performs the function of sending and receiving commands such as task execution command, execution result report, script request, security information request, log information request, and billing information request.

보안 관리부(240)는 프로세스 실행 장치(200)에 대하여 사용자 계정을 확인하여 사용자의 권한을 검증하고, 검증된 사용자 권한에 따라 프로세스/태스크 자동화 스크립트에 대한 실행 여부를 결정한다.The security management unit 240 verifies the user's authority by checking the user account with the process execution device 200, and determines whether to execute the process/task automation script according to the verified user authority.

로그 관리부(250)는 프로세스 실행 장치(200)에 대해 사용자의 로그인 시각, 로그아웃 시각, 실행 시작 시각, 실행 종료 시각, 실제 실행 시간, 실행한 자동화 스크립트, 실행 횟수 등을 관리한다.The log management unit 250 manages the user's log-in time, log-out time, execution start time, execution end time, actual execution time, executed automated script, execution number, and the like with respect to the process execution device 200.

프로세스 관리 장치(300)는 적어도 하나의 프로세스 설정 장치(100) 및/또는 적어도 하나의 프로세스 실행 장치(200)와 연동되어 이들을 관리하는 장치이다. 프로세스 관리 장치(300)는 적어도 하나의 프로세스 설정 장치(100)와 연동되며, 상기 적어도 하나의 프로세스 설정 장치(100)로부터 프로세스/태스크 자동화 스크립트를 수신하여 관리한다. 또한, 프로세스 관리 장치(300)는 적어도 하나의 프로세스 실행 장치(200)와 연동되며, 상기 적어도 하나의 프로세스 실행 장치(200)에 대해 프로세스/태스크 자동화 스크립트의 실행을 명령하고 실행결과를 수신하여 관리한다.The process management device 300 is a device that manages them by interlocking with at least one process setting device 100 and/or at least one process execution device 200. The process management device 300 is interlocked with at least one process setting device 100 and receives and manages a process/task automation script from the at least one process setting device 100. In addition, the process management device 300 is interlocked with at least one process execution device 200, commands the at least one process execution device 200 to execute a process/task automation script, and receives and manages the execution result. do.

이를 위해, 본 발명의 일 실시예에 따른 프로세스 관리 장치(300)는 장치 관리부(310), 제1 스크립트 관리부(320), 스케줄러(330), 제2 커멘드 처리부(340), 보안 관리부(350), 과금 관리부(360), 모니터링부(370), 스크립트 저장부(380), 정보 저장부(390) 등을 포함한다.To this end, the process management device 300 according to an embodiment of the present invention includes a device management unit 310, a first script management unit 320, a scheduler 330, a second command processing unit 340, and a security management unit 350. , A billing management unit 360, a monitoring unit 370, a script storage unit 380, an information storage unit 390, and the like.

장치 관리부(310)는 적어도 하나의 프로세스 설정 장치(100) 및/또는 적어도 하나의 프로세스 실행 장치(200)를 관리한다. 예컨대, 장치 관리부(310)는 각각의 프로세스 설정 장치(100)와 프로세스 실행 장치(200)에 대해 사용자 계정, 사용자 권한, 장치의 위치, 엔진 정보, 실행 기능, 실행 속도, 처리 용량 등을 관리한다.The device manager 310 manages at least one process setting device 100 and/or at least one process execution device 200. For example, the device manager 310 manages a user account, user authority, device location, engine information, execution function, execution speed, processing capacity, etc. for each of the process setting device 100 and the process execution device 200. .

제1 스크립트 관리부(320)는 적어도 하나의 프로세스 설정 장치(100)로부터 전송된 프로세스/태스크 자동화 스크립트를 관리한다. 예컨대, 제1 스크립트 관리부(320)는 프로세스 설정 장치(100)의 스크립트 생성부(130)로부터 프로세스/태스크 자동화 스크립트를 수신하여 스크립트 저장부(380)에 저장하고, 프로세스 실행 장치(200)의 요청에 따라 또는 스케줄러(330)의 요청에 따라 해당 프로세스/태스크 자동화 스크립트를 검색하여 프로세스 실행 장치(200)로 전송한다.The first script management unit 320 manages a process/task automation script transmitted from the at least one process setting device 100. For example, the first script management unit 320 receives a process/task automation script from the script generation unit 130 of the process setting device 100, stores it in the script storage unit 380, and requests from the process execution device 200 According to or according to the request of the scheduler 330, a corresponding process/task automation script is searched and transmitted to the process execution device 200.

스케줄러(330)는 적어도 하나의 프로세스 실행 장치(200)에 대해 프로세스/태스크 자동화 스크립트의 실행 스케줄을 관리한다. 예컨대, 스케줄러(330)는 제2 커멘드 처리부(340)와 연동하여 각각의 프로세스 실행 장치(200)에 대해 어떠한 시간에 어떠한 프로세스/태스크 자동화 스크립트를 어떠한 순서로 실행할 것인지 실행 스케줄을 관리한다.The scheduler 330 manages an execution schedule of a process/task automation script for at least one process execution device 200. For example, the scheduler 330 interlocks with the second command processing unit 340 to manage the execution schedule for each process execution device 200 at what time and in which process/task automation script to be executed and in what order.

제2 커멘드 처리부(340)는 각각의 프로세스 실행 장치(200)로 프로세스/태스크 자동화 스크립트의 실행을 명령하고 실행결과를 수신한다. 예컨대, 제2 커멘드 처리부(340)는 스케줄러(330)의 요청에 따라 제1 프로세스 실행 장치(200')의 제1 커멘드 처리부(230')로 제1 프로세스/태스크 자동화 스크립트의 실행을 명령하고 실행결과를 수신한다. 또한, 제2 커멘드 처리부(340)는 제1 프로세스 실행 장치(200')의 제1 커멘드 처리부(230')의 요청에 따라 제2 프로세스 실행 장치(200")의 제1 커멘드 처리부(230")로 제2 프로세스/태스크 자동화 스크립트의 실행을 명령하고, 그 실행결과를 수신하여 제1 프로세스 실행 장치(200')의 제1 커멘드 처리부(230')로 전송한다.The second command processing unit 340 instructs each process execution device 200 to execute a process/task automation script and receives an execution result. For example, the second command processing unit 340 commands and executes the first process/task automation script to the first command processing unit 230 ′ of the first process execution device 200 ′ according to the request of the scheduler 330. Receive the result. In addition, the second command processing unit 340 is the first command processing unit 230 ″ of the second process execution device 200 ″ according to the request of the first command processing unit 230 ′ of the first process execution device 200 ′. The execution of the second process/task automation script is commanded, and the execution result is received and transmitted to the first command processing unit 230' of the first process execution device 200'.

보안 관리부(350)는 각각의 프로세스 실행 장치(200)에 대한 보안을 관리한다. 예컨대, 보안 관리부(350)는 각각의 프로세스 실행 장치(200)의 보안 관리부(240)와 연동하여 해당 프로세스 실행 장치(200)에 대하여 사용자 계정을 확인하여 사용자의 권한을 검증하고, 검증된 사용자 권한에 따라 해당 프로세스 실행 장치(200)에 대한 접속 여부, 자동화 스크립트 실행 여부 등을 결정하고 관리한다.The security management unit 350 manages security for each process execution device 200. For example, the security management unit 350 checks the user account for the process execution device 200 by interworking with the security management unit 240 of each process execution device 200 to verify the user's authority, and the verified user authority Depending on whether or not to access the process execution device 200, whether or not to execute the automation script is determined and managed.

과금 관리부(360)는 각각의 프로세스 실행 장치(200)에 대한 사용자의 과금 정보를 관리한다. 예컨대, 과금 관리부(360)는 각각의 프로세스 실행 장치(200)의 로그 관리부(250)와 연동하여 사용자의 로그인 시각, 로그아웃 시각, 실행 시작 시각, 실행 종료 시각, 실제 실행 시간, 실행한 자동화 스크립트, 실행 횟수 등에 정보를 수집하고, 이에 해당하는 과금 정보를 생성하여 관리한다.The billing management unit 360 manages user billing information for each process execution device 200. For example, the billing management unit 360 interlocks with the log management unit 250 of each process execution device 200 to provide a user's login time, logout time, execution start time, execution end time, actual execution time, and executed automation script. It collects information such as the number of executions, and generates and manages the corresponding billing information.

모니터링부(370)는 각각의 프로세스 실행 장치(200)에 대해 현재 상태를 모니터링하고, 그 결과를 사용자 또는 관리자에게 디스플레이한다. 예컨대, 모니터링부(370)는 스케줄러(330), 제2 커멘드 처리부(340) 등과 연동하여 각각의 프로세스 실행 장치(200)에서의 프로세스/태스크 실행여부, 진행상태, 실행결과 등을 디스플레이한다.The monitoring unit 370 monitors the current state of each process execution device 200 and displays the result to a user or an administrator. For example, the monitoring unit 370 displays whether or not a process/task is executed, a progress status, and an execution result in each process execution device 200 in conjunction with the scheduler 330 and the second command processing unit 340.

스크립트 저장부(380)는 제1 스크립트 관리부(320)의 관리 하에 적어도 하나의 프로세스 설정 장치(100)로부터 전송된 프로세스/태스크 자동화 스크립트를 저장한다.The script storage unit 380 stores a process/task automation script transmitted from the at least one process setting device 100 under the management of the first script management unit 320.

그리고, 정보 저장부(390)는 장치 관리부(310), 제1 스크립트 관리부(320), 보안 관리부(350), 과금 관리부(360) 등의 관리 하에 프로세스 설정 장치, 프로세스 실행 장치, 프로세스 자동화 스크립트, 태스크 자동화 스크립트, 사용자, 보안, 과금 등에 관한 정보를 저장한다.In addition, the information storage unit 390 is a process setting device, a process execution device, a process automation script under the management of the device management unit 310, the first script management unit 320, the security management unit 350, the billing management unit 360, etc. It stores information about task automation scripts, users, security, and billing.

프로세스 제어 장치(400)는 사용자가 프로세스 실행 장치(200)를 제어하기 위한 장치이다. 프로세스 제어 장치(400)는 제어 대상인 프로세스 실행 장치(200)와 연동되며, 해당 프로세스 실행 장치(200)가 처리할 프로세스/태스크 자동화 스크립트를 선택하고, 실행을 명령한다. 또한, 실행결과를 수신한다.The process control device 400 is a device for a user to control the process execution device 200. The process control device 400 is interlocked with the process execution device 200 as a control target, selects a process/task automation script to be processed by the process execution device 200, and commands execution. Also, it receives the execution result.

이를 위해, 본 발명의 일 실시예에 따른 프로세스 제어 장치(400)는 사용자 인터페이스부(410), 제2 스크립트 관리부(420), 제3 커멘드 처리부(430) 중 적어도 하나를 포함한다.To this end, the process control device 400 according to an embodiment of the present invention includes at least one of a user interface unit 410, a second script management unit 420, and a third command processing unit 430.

사용자 인터페이스부(410)는 사용자가 프로세스 제어 장치(400)를 통해 프로세스 실행 장치(200)를 제어할 수 있도록 사용자 인터페이스를 제공한다. 예컨대, 사용자 인터페이스부(410)는 사용자의 로그인/로그아웃, 프로세스 실행 장치 선택, 및 프로세스/태스크 자동화 스크립트의 실행/정지 중 적어도 하나에 대하여 GUI(Graphical User Interface)를 제공하고, 해당 프로세스 실행 장치(200)에서 실행되고 있는 업무(프로세스)의 진행상태, 실행결과 등을 표시한다.The user interface unit 410 provides a user interface so that a user can control the process execution device 200 through the process control device 400. For example, the user interface unit 410 provides a GUI (Graphical User Interface) for at least one of login/logout of a user, selection of a process execution device, and execution/stop of a process/task automation script, and a corresponding process execution device (200) Shows the progress of the task (process) being executed and the execution result.

제2 스크립트 관리부(420)는 프로세스 실행 장치(200)에서 처리될 수 있는 프로세스/태스크 자동화 스크립트를 사용자에게 제공한다. 또한, 사용자가 프로세스 실행 장치(200)에 대해 임의의 프로세스/태스크 자동화 스크립트를 등록하거나 삭제하면, 이에 따라 해당 프로세스/태스크 자동화 스크립트가 실행되거나 취소될 수 있도록 한다.The second script management unit 420 provides a process/task automation script that can be processed by the process execution device 200 to a user. In addition, when a user registers or deletes an arbitrary process/task automation script with respect to the process execution device 200, the corresponding process/task automation script can be executed or canceled accordingly.

제3 커멘드 처리부(430)는 프로세스 실행 장치(200)의 제1 커멘드 처리부(230)로 해당 프로세스/태스크 자동화 스크립트의 실행을 명령하고, 그 실행결과를 수신하여 사용자 인터페이스부(410)를 통해 사용자에게 통지한다.The third command processing unit 430 commands the first command processing unit 230 of the process execution device 200 to execute a corresponding process/task automation script, receives the execution result, and provides a user through the user interface unit 410. Notify to.

이하에서는, 도 7 내지 도 9를 참조하여 본 발명에 따른 로봇 프로세스 자동화 방법에 대해 설명한다.Hereinafter, a robot process automation method according to the present invention will be described with reference to FIGS. 7 to 9.

먼저, 도 7은 본 발명의 일 실시예에 따른 로봇 프로세스 자동화 방법의 흐름도로서, 프로세스 설정 장치(100), 프로세스 실행 장치(200), 프로세스 관리 장치(300)가 상호 연동하여 사용자의 컴퓨팅 업무(프로세스)를 자동으로 처리하는 방식을 나타낸 것이다.First, FIG. 7 is a flowchart of a method for automating a robot process according to an embodiment of the present invention, in which the process setting device 100, the process execution device 200, and the process management device 300 interwork with each other to perform a user's computing task ( Process) is automatically processed.

도 7을 참조하면, 프로세스 설정 장치(100)는 사용자에게 프로세스/태스크 에디터(editor)를 제공하고, 사용자는 프로세스/태스크 에디터를 통해 하나 이상의 태스크로 구성된 프로세스 및 하나 이상의 이벤트로 구성된 태스크를 설정한다(단계 S710 참조). 그러면, 프로세스 설정 장치(100)는 프로세스를 수행하는 프로세스 자동화 스크립트 및 태스크를 수행하는 태스크 자동화 스크립트를 생성한다(단계 S720 참조).Referring to FIG. 7, the process setting device 100 provides a process/task editor to a user, and the user sets a process composed of one or more tasks and a task composed of one or more events through the process/task editor. (See step S710). Then, the process setting device 100 generates a process automation script for performing a process and a task automation script for performing a task (refer to step S720).

그리고, 프로세스 설정 장치(100)는 실제 실행을 위해 프로세스/태스크 자동화 스크립트를 프로세스 실행 장치(200)로 전송하고(단계 S730a 참조), 추후 재사용 및 관리를 위해 마찬가지로 프로세스/태스크 자동화 스크립트를 프로세스 관리 장치(300)로 전송하고(단계 S730b 참조).In addition, the process setting device 100 transmits the process/task automation script to the process execution device 200 for actual execution (refer to step S730a), and similarly transfers the process/task automation script to the process management device for later reuse and management. And transfer to 300 (see step S730b).

한편, 프로세스 관리 장치(300)는 실행 스케줄에 따라서 또는 사용자의 요청에 따라서 프로세스 실행 장치(200)로 프로세스/태스크 자동화 스크립트의 실행을 명령하고(단계 S740 참조), 그러면 프로세스 실행 장치(200)는 프로세스/태스크 자동화 스크립트를 실행하고(단계 S750 참조), 그 실행결과를 프로세스 관리 장치(300)로 전송한다(단계 S760 참조).Meanwhile, the process management device 300 commands the process execution device 200 to execute the process/task automation script according to an execution schedule or a user's request (refer to step S740), and then the process execution device 200 The process/task automation script is executed (see step S750), and the execution result is transmitted to the process management device 300 (see step S760).

참고로, 스크립트 실행 명령은 프로세스 제어 장치(400)에 의해서도 수행될 수 있는데, 이 경우에는 사용자의 요청에 따라 프로세스 제어 장치(400)가 프로세스 실행 장치(200)로 프로세스/태스크 자동화 스크립트의 실행을 명령하고, 그러면 프로세스 실행 장치(200)는 프로세스/태스크 자동화 스크립트를 실행한 후 실행결과를 프로세스 제어 장치(400)로 전송한다.For reference, the script execution command may also be executed by the process control device 400. In this case, the process control device 400 performs the execution of the process/task automation script to the process execution device 200 according to the user's request. Command, and then the process execution device 200 executes the process/task automation script and transmits the execution result to the process control device 400.

도 8은 본 발명의 다른 실시예에 따른 로봇 프로세스 자동화 방법의 흐름도로서, 프로세스 제어 장치(400), 프로세스 실행 장치(200), 프로세스 관리 장치(300)가 상호 연동하여 사용자의 컴퓨팅 업무(프로세스)를 자동으로 처리하는 방식을 나타낸 것이다.8 is a flowchart of a method for automating a robot process according to another embodiment of the present invention, in which the process control device 400, the process execution device 200, and the process management device 300 interwork with each other to perform a user's computing task (process). It shows how to automatically process.

도 8을 참조하면, 프로세스 제어 장치(400)는 사용자에게 사용자 인터페이스를 제공하고, 사용자는 사용자 인터페이스를 통해 자신이 원하는 프로세스/태스크 자동화 스크립트의 실행을 등록한다(단계 S810 참조). 그러면, 프로세스 제어 장치(400)는 프로세스 실행 장치(200)로 해당 프로세스/태스크 자동화 스크립트의 실행을 명령하고, 프로세스 실행 장치(200)는 이를 수신한다(단계 S820 참조).Referring to FIG. 8, the process control device 400 provides a user interface to a user, and the user registers the execution of a desired process/task automation script through the user interface (see step S810). Then, the process control device 400 instructs the process execution device 200 to execute the corresponding process/task automation script, and the process execution device 200 receives it (refer to step S820).

그러면, 프로세스 실행 장치(200)는 프로세스 관리 장치(300)로 해당 프로세스/태스크 자동화 스크립트를 요청하고(단계 S830 참조), 프로세스 관리 장치(300)는 이를 프로세스 실행 장치(200)로 전송한다(단계 S840 참조). 참고로, 전술한 도 7의 경우와 같이 만약 해당 프로세스/태스크 자동화 스크립트가 프로세스 실행 장치(200)에 이미 존재하는 경우에는 단계 S830 및 S840은 생략될 수 있다.Then, the process execution device 200 requests the process/task automation script from the process management device 300 (see step S830), and the process management device 300 transmits it to the process execution device 200 (step S840). For reference, as in the case of FIG. 7 described above, if a corresponding process/task automation script already exists in the process execution device 200, steps S830 and S840 may be omitted.

그러면, 프로세스 실행 장치(200)는 해당 프로세스/태스크 자동화 스크립트를 실행하고(단계 S850 참조), 그 실행결과를 프로세스 제어 장치(400)로 전송한다(단계 S860 참조).Then, the process execution device 200 executes the corresponding process/task automation script (see step S850), and transmits the execution result to the process control device 400 (see step S860).

이에 따라, 본 발명은 프로세스 실행 장치(200)에 존재하는 프로세스/태스크 자동화 스크립트뿐만 아니라 프로세스 관리 장치(300)에 저장된 수많은 프로세스/태스크 자동화 스크립트에 대해서도 원하는 프로세스/태스크 자동화 스크립트를 요청하여 실행할 수 있다.Accordingly, the present invention can request and execute a desired process/task automation script for not only a process/task automation script existing in the process execution device 200 but also a number of process/task automation scripts stored in the process management device 300. .

도 9는 본 발명의 또 다른 실시예에 따른 로봇 프로세스 자동화 방법의 흐름도로서, 프로세스 제어 장치(400), 제1 프로세스 실행 장치(200'), 제2 프로세스 실행 장치(200"), 프로세스 관리 장치(300)가 상호 연동하여 사용자의 컴퓨팅 업무(프로세스)를 자동으로 처리하는 방식을 나타낸 것이다.9 is a flowchart of a robot process automation method according to another embodiment of the present invention, a process control device 400, a first process execution device 200 ′, a second process execution device 200 ″, and a process management device It shows a method of automatically processing a user's computing task (process) by interworking with each other.

도 9를 참조하면, 프로세스 제어 장치(400)는 사용자에게 사용자 인터페이스를 제공하고, 사용자는 사용자 인터페이스를 통해 자신이 원하는 프로세스 실행 장치, 예컨대 원격의 제2 프로세스 실행 장치(200")에 자신이 원하는 프로세스/태스크 자동화 스크립트의 실행을 등록한다(단계 S910 참조).Referring to FIG. 9, the process control device 400 provides a user interface to the user, and the user provides the user with a desired process execution device, for example, a remote second process execution device 200 ″. The execution of the process/task automation script is registered (see step S910).

그러면, 프로세스 제어 장치(400)는 자신과 직접 연동되는 제1 프로세스 실행 장치(200')로 제2 프로세스 실행 장치(200")의 프로세스/태스크 자동화 스크립트 실행을 명령하고(단계 S920 참조), 제1 프로세스 실행 장치(200')는 이를 프로세스 관리 장치(300)로 전달한다(단계 S930 참조).Then, the process control device 400 instructs the second process execution device 200 ″ to execute a process/task automation script to the first process execution device 200 ′ directly interlocked with it (refer to step S920), and 1 The process execution device 200' transfers this to the process management device 300 (see step S930).

그러면, 프로세스 관리 장치(300)는 제2 프로세스 실행 장치(200")로 프로세스/태스크 자동화 스크립트를 전송하면서 실행을 명령한다(단계 S940 참조).Then, the process management device 300 commands execution while transmitting the process/task automation script to the second process execution device 200" (see step S940).

그러면, 제2 프로세스 실행 장치(200")는 프로세스/태스크 자동화 스크립트를 실행하고(단계 S950 참조), 그 실행결과를 프로세스 관리 장치(300)로 전송한다(단계 S960 참조).Then, the second process execution device 200" executes the process/task automation script (see step S950), and transmits the execution result to the process management device 300 (see step S960).

그러면, 프로세스 관리 장치(300)는 프로세스/태스크 자동화 스크립트 실행결과를 제1 프로세스 실행 장치(200')로 전송하고(단계 S970 참조), 제1 프로세스 실행 장치(200')는 이를 프로세스 제어 장치(400)로 전송한다(단계 S980 참조).Then, the process management device 300 transmits the execution result of the process/task automation script to the first process execution device 200 ′ (see step S970), and the first process execution device 200 ′ transmits the execution result of the process/task automation script to the first process execution device 200 ′. 400) (refer to step S980).

이에 따라, 본 발명은 사용자가 프로세스 제어 장치(400)와 직접 연동된 제1 프로세스 실행 장치(200')뿐만 아니라 프로세스 관리 장치(300)를 통해 원격의 제2 프로세스 실행 장치(200")에 대해서도 원하는 프로세스/태스크 자동화 스크립트의 실행을 명령할 수 있다.Accordingly, according to the present invention, the user can not only the first process execution device 200 ′ directly interlocked with the process control device 400, but also the remote second process execution device 200 ″ through the process management device 300. You can command the execution of the desired process/task automation script.

지금까지 본 발명을 바람직한 실시예를 참조하여 상세히 설명하였지만, 본 발명이 속하는 기술분야의 통상의 기술자는 본 발명의 기술적 사상이나 필수적 특징들을 변경하지 않고서 다른 구체적인 다양한 형태로 실시할 수 있는 것이므로, 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로서 이해해야만 한다.Although the present invention has been described in detail with reference to preferred embodiments so far, those skilled in the art to which the present invention pertains can be implemented in various other specific forms without changing the technical spirit or essential features of the present invention. The embodiments described in are illustrative in all respects and should be understood as non-limiting.

그리고, 본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 특정되는 것이며, 특허청구범위의 의미 및 범위 그리고 그 등가개념으로부터 도출되는 모든 변경 또는 변형된 형태는 본 발명의 범위에 포함되는 것으로 해석되어야 한다.And, the scope of the present invention is to be specified by the claims to be described later rather than the detailed description, and all changes or modified forms derived from the meaning and scope of the claims and their equivalent concepts are included in the scope of the present invention. Should be interpreted as.

Claims (17)

하나 이상의 이벤트로 구성된 태스크 및 하나 이상의 태스크로 구성된 프로세스를 설정하며, 상기 태스크를 수행하는 태스크 자동화 스크립트 및 상기 프로세스를 수행하는 프로세스 자동화 스크립트를 생성하는 적어도 하나의 프로세스 설정 장치;
상기 태스크를 구성하는 하나 이상의 이벤트를 실행하여, 상기 태스크 자동화 스크립트 및 상기 프로세스 자동화 스크립트를 실행하는 적어도 하나의 프로세스 실행 장치;
상기 적어도 하나의 프로세스 실행 장치에 대해 상기 태스크 자동화 스크립트 및 상기 프로세스 자동화 스크립트의 실행을 관리하는 프로세스 관리 장치; 및
상기 적어도 하나의 프로세스 실행 장치와 각각 대응되고, 상기 적어도 하나의 프로세스 실행 장치에 상기 프로세스 자동화 스크립트 및 태스크 자동화 스크립트 실행을 명령하는 프로세스 제어 장치를 포함하고,
상기 프로세스 설정 장치는, 프로세스를 구성하는 하나 이상의 태스크를 생성한 후 각 태스크의 속성을 정의하고 실행순서를 결정하여 상기 프로세스를 설정하는 프로세스 설정부; 및 태스크를 구성하는 하나 이상의 이벤트를 생성한 후 각 이벤트의 속성을 정의하고 실행순서를 결정하여 상기 태스크를 설정하는 태스크 설정부를 포함하고,
상기 태스크 설정부는 사용자가 상기 태스크를 실행하는 행동 패턴을 레코딩하여 태스크 레코딩 자료를 생성하고, 상기 태스크 레코딩 자료에서 상기 태스크를 구성하는 하나 이상의 이벤트가 실행될 때의 컴퓨팅 환경 정보 및 상기 태스크를 구성하는 하나 이상의 이벤트의 속성 및 실행순서를 추출하고,
상기 프로세스 실행 장치는, 상기 태스크를 구성하는 하나 이상의 이벤트를 실행하기 전에, 상기 태스크를 구성하는 하나 이상의 이벤트가 실행될 때의 컴퓨팅 환경 정보를 참조하여 현재의 컴퓨팅 환경을 조정하는 시스템 설정 이벤트를 실행하는 것을 특징으로 하는 로봇 프로세스 자동화 시스템.
At least one process setting device for setting a task consisting of one or more events and a process consisting of one or more tasks, and generating a task automation script for performing the task and a process automation script for performing the process;
At least one process execution device executing one or more events constituting the task to execute the task automation script and the process automation script;
A process management device that manages execution of the task automation script and the process automation script with respect to the at least one process execution device; And
Each corresponding to the at least one process execution device, comprising a process control device for instructing the execution of the process automation script and the task automation script to the at least one process execution device,
The process setting apparatus includes: a process setting unit for setting the process by defining an attribute of each task and determining an execution order after generating one or more tasks constituting a process; And a task setting unit configured to set the task by defining an attribute of each event and determining an execution order after generating one or more events constituting the task,
The task setting unit generates task recording material by recording the behavior pattern of the user executing the task, and computing environment information when one or more events constituting the task are executed in the task recording material and one configuring the task Extract the attribute and execution sequence of the above event,
The process execution device executes a system setting event for adjusting a current computing environment by referring to computing environment information when one or more events configuring the task are executed, before executing one or more events configuring the task. Robot process automation system, characterized in that.
제1항에 있어서,
상기 프로세스 설정 장치는,
상기 프로세스를 수행하는 프로세스 자동화 스크립트 및 상기 태스크를 수행하는 태스크 자동화 스크립트를 생성하는 스크립트 생성부를 더 포함하는 것을 특징으로 하는 로봇 프로세스 자동화 시스템.
The method of claim 1,
The process setting device,
A robotic process automation system, further comprising a script generation unit that generates a process automation script that performs the process and a task automation script that performs the task.
제1항 또는 제2항에 있어서,
상기 프로세스 설정부는 사용자가 상기 프로세스를 설정할 수 있는 프로세스 에디터를 제공하고,
상기 프로세스 에디터는, 상기 하나 이상의 태스크의 생성을 관리하는 태스크 생성 관리자, 상기 하나 이상의 태스크의 속성을 관리하는 태스크 속성 관리자, 및 상기 하나 이상의 태스크의 상호 연결을 관리하는 태스크 연결 관리자를 포함하는 것을 특징으로 하는 로봇 프로세스 자동화 시스템.
The method according to claim 1 or 2,
The process setting unit provides a process editor through which a user can set the process,
The process editor includes a task creation manager that manages the creation of the one or more tasks, a task property manager that manages the properties of the one or more tasks, and a task connection manager that manages the interconnection of the one or more tasks. Robotic process automation system.
제3항에 있어서,
상기 태스크의 속성은 태스크의 명칭, 입력자료, 입력방법, 출력자료, 출력방법, 처리시간, 지연시간 중 적어도 하나를 포함하는 것을 특징으로 하는 로봇 프로세스 자동화 시스템.
The method of claim 3,
The attribute of the task includes at least one of a name of a task, an input data, an input method, an output data, an output method, a processing time, and a delay time.
제1항 또는 제2항에 있어서,
상기 태스크 설정부는 사용자가 상기 태스크를 설정할 수 있는 태스크 에디터를 제공하고,
상기 태스크 에디터는, 상기 하나 이상의 이벤트의 생성을 관리하는 이벤트 생성 관리자, 상기 하나 이상의 이벤트의 속성을 관리하는 이벤트 속성 관리자, 및 상기 하나 이상의 이벤트의 상호 연결을 관리하는 이벤트 연결 관리자를 포함하는 것을 특징으로 하는 로봇 프로세스 자동화 시스템.
The method according to claim 1 or 2,
The task setting unit provides a task editor through which a user can set the task,
The task editor includes an event creation manager managing the generation of the one or more events, an event property manager managing the properties of the one or more events, and an event connection manager managing the interconnection of the one or more events. Robotic process automation system.
제5항에 있어서,
상기 이벤트의 속성은 이벤트의 명칭, 대상, 실행방법, 실행결과, 실행시간 중 적어도 하나를 포함하는 것을 특징으로 하는 로봇 프로세스 자동화 시스템.
The method of claim 5,
The attribute of the event includes at least one of an event name, a target, an execution method, an execution result, and an execution time.
제1항 또는 제2항에 있어서,
상기 태스크를 구성하는 하나 이상의 이벤트 중 순차적으로 실행되는 복수개의 이벤트는 하나의 통합 이벤트로 설정 가능한 것을 특징으로 하는 로봇 프로세스 자동화 시스템.
The method according to claim 1 or 2,
A robot process automation system, characterized in that a plurality of events sequentially executed among one or more events constituting the task can be set as one integrated event.
제1항 또는 제2항에 있어서,
상기 프로세스 설정부는 사용자가 상기 프로세스를 실행하는 행동 패턴을 레코딩하여 프로세스 레코딩 자료를 생성하고, 상기 프로세스 레코딩 자료에서 상기 프로세스를 구성하는 하나 이상의 태스크의 속성 및 실행순서를 추출하는 것을 특징으로 하는 로봇 프로세스 자동화 시스템.
The method according to claim 1 or 2,
The process setting unit generates process recording data by recording an action pattern of a user executing the process, and extracts attributes and execution sequences of one or more tasks constituting the process from the process recording data. Automation system.
삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete
KR1020180173815A 2018-12-31 2018-12-31 Process Editor Apparatus and Robot Process Automation including thereof KR102254850B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180173815A KR102254850B1 (en) 2018-12-31 2018-12-31 Process Editor Apparatus and Robot Process Automation including thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180173815A KR102254850B1 (en) 2018-12-31 2018-12-31 Process Editor Apparatus and Robot Process Automation including thereof

Publications (2)

Publication Number Publication Date
KR20200082839A KR20200082839A (en) 2020-07-08
KR102254850B1 true KR102254850B1 (en) 2021-05-21

Family

ID=71601399

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180173815A KR102254850B1 (en) 2018-12-31 2018-12-31 Process Editor Apparatus and Robot Process Automation including thereof

Country Status (1)

Country Link
KR (1) KR102254850B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102453289B1 (en) * 2022-03-29 2022-10-11 주식회사 시메이션 Robotic automation method and systen, and computing device for executing the method

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11759950B2 (en) 2020-09-08 2023-09-19 UiPath, Inc. Localized configurations of distributed-packaged robotic processes
KR102439574B1 (en) * 2020-09-23 2022-09-01 주식회사 포스코아이씨티 System for Searching Object Based on Image Search for Robot Process Automation
KR102261793B1 (en) * 2020-12-11 2021-06-09 주식회사 이노룰스 System for rpa robot agent clutstering
KR102483475B1 (en) * 2020-12-29 2022-12-29 주식회사 레이드백 Method and device for automating process with image

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003528358A (en) * 1998-08-24 2003-09-24 富士通株式会社 Workflow system and method
KR101416280B1 (en) * 2013-01-15 2014-07-08 주식회사 엘지씨엔에스 Event handling system and method

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11306244A (en) * 1998-04-16 1999-11-05 Hitachi Ltd Work management system
KR20130057628A (en) * 2011-11-24 2013-06-03 한국전자통신연구원 Method and apparatus for authoring task
KR101449201B1 (en) * 2012-12-27 2014-10-08 주식회사 포스코 Automatic software test system for steel processing
KR101915802B1 (en) 2017-06-21 2018-11-06 넷마블 주식회사 Method and apparatus for detecting macro program

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003528358A (en) * 1998-08-24 2003-09-24 富士通株式会社 Workflow system and method
KR101416280B1 (en) * 2013-01-15 2014-07-08 주식회사 엘지씨엔에스 Event handling system and method

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102453289B1 (en) * 2022-03-29 2022-10-11 주식회사 시메이션 Robotic automation method and systen, and computing device for executing the method

Also Published As

Publication number Publication date
KR20200082839A (en) 2020-07-08

Similar Documents

Publication Publication Date Title
KR102254850B1 (en) Process Editor Apparatus and Robot Process Automation including thereof
KR102160344B1 (en) System and Method for Robot Process Automation
US11176030B2 (en) Conducting automated software testing using centralized controller and distributed test host servers
US20210311858A1 (en) System and method for providing a test manager for use with a mainframe rehosting platform
US20090307763A1 (en) Automated Test Management System and Method
US8281187B1 (en) Unified and extensible meta-testing framework
Bellomo et al. Toward design decisions to enable deployability: Empirical study of three projects reaching for the continuous delivery holy grail
WO2019089446A1 (en) Generating testing infrastructure on a cloud for testing software applications
US10223248B2 (en) Conducting automated software testing using centralized controller and distributed test host servers
US9292413B2 (en) Setting breakpoints in a code debugger used with a GUI object
US9183037B2 (en) Automated administration using composites of atomic operations
KR102243379B1 (en) Method and apparatus for automating game test
US10380526B2 (en) System and method for providing a process player for use with a business process design environment
US20140089900A1 (en) System and method for providing an implementation accelerator and regression testing framework for use with environments such as fusion applications
CN113792341B (en) Automatic detection method, device, equipment and medium for privacy compliance of application program
US11474931B2 (en) Debugging a cross-technology and cross-environment execution
KR102196110B1 (en) Robot Process Automation System including Optical Character Recognition
WO2021021321A1 (en) Parallel cloned workflow execution
CN101344740A (en) Image forming device, program control method and program
KR102294578B1 (en) System for Searching Object for Robot Process Automation
US20240210903A1 (en) Software Development (DevOps) Pipelines for Robotic Process Automation
JP7219389B2 (en) Information processing device, its control method and program
Kanemaru et al. Design and Implementation of Automatic Generation Method for API Adapter Test Code
Ydremark Approaches for Automated Software Installations in Windows
KR20230172244A (en) Robotic process automation system

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant