KR102322885B1 - 자동화 업무 플로우의 개선 프로세스를 추천하는 로보틱 처리 자동화 시스템 - Google Patents

자동화 업무 플로우의 개선 프로세스를 추천하는 로보틱 처리 자동화 시스템 Download PDF

Info

Publication number
KR102322885B1
KR102322885B1 KR1020210069911A KR20210069911A KR102322885B1 KR 102322885 B1 KR102322885 B1 KR 102322885B1 KR 1020210069911 A KR1020210069911 A KR 1020210069911A KR 20210069911 A KR20210069911 A KR 20210069911A KR 102322885 B1 KR102322885 B1 KR 102322885B1
Authority
KR
South Korea
Prior art keywords
unit
template
script
similarity
user
Prior art date
Application number
KR1020210069911A
Other languages
English (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 KR1020210069911A priority Critical patent/KR102322885B1/ko
Application granted granted Critical
Publication of KR102322885B1 publication Critical patent/KR102322885B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/33Intelligent editors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/36Software reuse
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/38Creation or generation of source code for implementing user interfaces
    • 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/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • G06Q10/06316Sequencing of tasks or work
    • 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/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0633Workflow analysis
    • 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

Abstract

본 발명은 자동화 업무 플로우의 개선 프로세스를 추천하는 로보틱 처리 자동화 시스템에 관한 것으로서, 더욱 상세하게는 스크립트 작성 개발 기술이 없는 업무 담당자도 흐름도를 기반으로 해당 이미지만 찾아서 드래그 앤 드롭을 수행하는 방식으로 손쉽게 스크립트 작성이 가능하며, 그에 따라 자동화 업무 플로우를 실행하도록 하는 템플릿이 생성되는 로보틱 처리 자동화 시스템에서, 자동화 업무 플로우를 실행하도록 기생성된 각 템플릿의 프로세스들을 분할하여 유사 작업에 대한 다수의 다른 템플릿들로부터 상호 연관되는 구성요소를 찾아 그에 대응하는 프로세스의 개선을 위한 성능 모델을 설계하고, 상기 성능 모델에 근거하여 추론된 다수의 후보 프로세스들에 대하여 성능 점수를 계산하여 가장 높은 점수를 가지는 후보 프로세스가 대체되도록 추천함으로써, 각 템플릿에서 수행되는 자동화 업무 플로우가 최적화되는 것이 가능한 자동화 업무 플로우의 개선 프로세스를 추천하는 로보틱 처리 자동화 시스템을 제공한다.

Description

자동화 업무 플로우의 개선 프로세스를 추천하는 로보틱 처리 자동화 시스템{ROBOTIC PROCESS AUTOMATION SYSTEM FOR RECOMMENDING IMPROVEMENT PROCESS OF AUTOMATED WORK FLOW}
본 발명은 자동화 업무 플로우의 개선 프로세스를 추천하는 로보틱 처리 자동화 시스템에 관한 것으로서, 더욱 상세하게는 스크립트 작성 개발 기술이 없는 업무 담당자도 흐름도를 기반으로 해당 이미지만 찾아서 드래그 앤 드롭을 수행하는 방식으로 손쉽게 스크립트 작성이 가능하며, 그에 따라 자동화 업무 플로우를 실행하도록 하는 템플릿이 생성되는 로보틱 처리 자동화 시스템에서, 자동화 업무 플로우를 실행하도록 기생성된 각 템플릿의 프로세스들을 분할하여 유사 작업에 대한 다수의 다른 템플릿들로부터 상호 연관되는 구성요소를 찾아 그에 대응하는 프로세스의 개선을 위한 성능 모델을 설계하고, 상기 성능 모델에 근거하여 추론된 다수의 후보 프로세스들에 대하여 성능 점수를 계산하여 가장 높은 점수를 가지는 후보 프로세스가 대체되도록 추천함으로써, 각 템플릿에서 수행되는 자동화 업무 플로우가 최적화되는 것이 가능한 자동화 업무 플로우의 개선 프로세스를 추천하는 로보틱 처리 자동화 시스템에 관한 것이다.
로보틱 처리 자동화(RPA; Robotic Process Automation) 기술은 업무 과정에 발생되는 데이터를 정형화하고 논리적으로 자동 수행하는 기술로, 기업의 재무, 회계, 제조, 구매, 고객 관리 등에서 데이터 수집, 입력, 비교 등과 같이 반복되는 단순 업무를 자동화하여 빠르고 정밀하게 수행한다.
즉, 경영 전반의 업무 시간을 단축하고 비용을 절감할 수 있다.
지능형의 로봇 소프트웨어을 활용한 비즈니스 자동화 기술은 1990년대부터 웹 사이트 화면에서 필요한 정보를 수집하는 스크린 스크래핑(screen scraping)이나 업무 관련된 제반 사항을 자동으로 처리 관리하는 워크플로 자동화 등에 활용되었다.
일반 비즈니스 자동화는 인공 지능(AI)과 기계 학습(Machine Learning) 기술을 적용한 비즈니스 관리 위주의 프로세스로 구축된 반면, RPA는 최종 사용자의 관점에서 규칙 기반 비즈니스 프로세스로 설계되어 사람 대신 단순 반복 작업을 끊임없이 대량으로 수행한다. RPA는 현재 규칙이 확실하게 규정된 작업만 처리할 수 있고 사람의 판단력을 대체할 수준은 아니다.
기계 학습, 음성 인식, 자연어 처리와 같은 인지 기술을 적용하여 사람의 인지 능력이 필요한 의료 분야의 암 진단, 금융업계에서의 고객 자산 관리, 법률 판례 분석 등에도 활용될 수 있다.
그러나, 로보틱 처리 자동화는 스크립트 작성에 숙련된 사용자가 자동화 작업을 해야 했다. 따라서, 스크립트 작성에 숙련된 사용자가, 자동화 작업을 해야 하는 업무를 담당하는 업무 담당자의 업무를 숙지한 후 자동화 작업을 진행했기 때문에, 자동화 작업에 소요되는 시간이 길어지는 문제가 있다.
또한, 업무 담당자의 업무를 숙지하는 과정에서 잘못 이해한 내용들로 인해 자동화 작업 진행 후 해당 업무 담당자의 검토를 거치며, 장기간 수정해야 하는 문제가 있다.
한국공개특허 [10-2001-0099047]에서는 수출서류 자동화 시스템과 그의 문서 관리방법 및 기록매체가 개시되어 있다.
이미 생성된 템플릿들에 대해서는, 검색에 의해 찾아 볼 수 있으며, 어떤 업무인지에 대한 간략 설명만 있다. 따라서 사용자(개발자)가 기생성된 템플릿들을 다수 살펴보아야만 적절한 템플릿을 선택할 수 있으며, 스크립트 작성 개발 기술이 없는 사용자의 경우 선택한 템플릿을 사용하기 위해서 어떤 부분을 어떻게 수정 또는 편집해야 하는지 알기 어려운 점이 있다.
이에, 사용자가 손쉽게 스크립트를 생성(작성)할 수 있도록 하는 과정이 필요하다.
한국공개특허 [10-2001-0099047](공개일자: 2001년11월09일)
따라서, 본 발명은 상기한 바와 같은 문제점을 해결하기 위하여 안출된 것으로, 본 발명의 목적은 스크립트 작성 개발 기술이 없는 업무 담당자도 흐름도를 기반으로 해당 이미지만 찾아서 드래그 앤 드롭을 수행하는 방식으로 손쉽게 스크립트 작성이 가능하며, 그에 따라 자동화 업무 플로우를 실행하도록 하는 템플릿이 생성되는 로보틱 처리 자동화 시스템에서, 자동화 업무 플로우를 실행하도록 기생성된 각 템플릿의 프로세스들을 분할하여 유사 작업에 대한 다수의 다른 템플릿들로부터 상호 연관되는 구성요소를 찾아 그에 대응하는 프로세스ㅍ의 개선을 위한 성능 모델을 설계하고, 상기 성능 모델에 근거하여 추론된 다수의 후보 프로세스들에 대하여 성능 점수를 계산하여 가장 높은 점수를 가지는 후보 프로세스가 대체되도록 추천함으로써, 각 템플릿에서 수행되는 자동화 업무 플로우가 최적화되는 것이 가능한 자동화 업무 플로우의 개선 프로세스를 추천하는 로보틱 처리 자동화 시스템을 제공하는 것이다.
본 발명의 실 시예들의 목적은 이상에서 언급한 목적으로 제한되지 않으며, 언급되지 않은 또 다른 목적들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
상기한 바와 같은 목적을 달성하기 위한 본 발명의 일 실시예에 따른 로보틱 처리 자동화 시스템은, 컴퓨터를 포함하는 연산처리수단에 의하여 실행되는 프로그램 형태로 이루어지는 로보틱 처리 자동화 시스템에 있어서, 흐름도 기반으로 하여, 사용자가 미리 정의해 둔 업무 절차와 룰을 참조해 상기 사용자가 하는 업무를 동일하게 수행하도록 하는 업무 프로세스의 레코딩 및 스크립트 배치를 통해 모델링된 작업플레이어를 생성하는 모델링도구모듈(100); 상기 모델링도구모듈(100)로 모델링된 작업플레이어를 실행시켜, 업무 자동화를 수행하고, 자동화 결과 데이터를 수집 및 가공하는 자동실행모듈(200); 특정 업무 영역을 자동화하기 위한 업무 프로세스의 기본 구성 형식과 디자인 양식이 포함된 템플릿을 제작할 수 있는 템플릿 개발도구를 제공하는 템플릿툴모듈(300); 및 상기 모델링도구모듈(100)로 모델링된 작업플레이어의 수행 현황을 모니터링하고, 계정관리 및 일정관리가 가능하며, 이벤트 성공 및 실패 모니터링 및 알람관리가 가능하고, 실시간 추적정보가 가능하며, 서버 자원 모니터링이 가능하고, 통계분석이 가능한 컨트롤센터(400);를 포함하는 것을 특징으로 한다.
또한, 상기 모델링도구모듈(100)은 흐름도를 기반으로 업무 순서인 업무 프로세스를 정의하고, 상기 흐름도 상의 각 작업 단위별로 업무 활동을 정의하며, 흐름도에서 업무 순서를 변경하면 변경된 업무 순서에 따라 자동화된 스크립트가 생성되어 반영되며, 세부작업내역별로 정의된 스크립트에 의하여 작업의 자동화 지원이 가능한 것을 특징으로 한다.
또, 상기 모델링도구모듈(100)은 컴퓨터의 화면상에, 흐름도에 사용되는 기호의 집합으로 구성된 흐름도집합창(110); 업무 프로세스의 논리적 흐름을 상기 기호를 사용하여 도식적으로 모델링 작업을 수행하는 모델링작업창(120); 흐름도에 사용되는 기호에 해당되는 이벤트의 속성정보를 정의하는 속성정의창(130); 및 흐름도에 사용되는 기호에 해당되는 이벤트에 사용되는 변수정보를 정의하는 변수정의창(140);이 표시되도록 하며, 상기 흐름도집합창(110)에서 필요로 하는 기호를 선택하거나, 상기 흐름도집합창(110)에서 필요로 하는 구성을 모델링 작업창(B)에 드래그 앤 드롭 하여 모델링 작업창(120)으로 불러와 모델링 작업을 수행하는 것을 특징으로 하고, 상기 속성정보는 이벤트 명칭, 에러 발생 시 중지 여부, 수행 시간 임계치, 입력 종류, 클릭 X좌표, 클릭 Y 좌표에 대한 정보를 포함하고, 상기 변수정보는 스크립트에서 사용할 변수를 의미하며, 변수 명칭, 변수 타입, 변수 설명, 변수 초기값에 대한 정보를 포함하는 것을 특징으로 한다.
또한, 상기 모델링도구모듈(100)은 상기 사용자가 상기 컴퓨터를 이용하여 상기 업무 프로세스를 수동으로 진행하는 과정 중 보여지는 컴퓨터의 디스플레이 화면 중 획득된 적어도 하나의 이미지에 대해서 컴퓨터 비전 기술을 적용하여 저장하고, 상기 업무 프로세스에 대해 상기 업무 프로세스를 수동으로 진행하는 과정에서 식별된 적어도 하나의 입력을 식별하여 이와 관련된 입력정보를 획득하여 저장하는 것을 특징으로 한다.
또, 상기 획득된 이미지는 커서의 위치 또는 터치된 지점을 기준으로 일정 영역에 해당되는 이미지인 것을 특징으로 한다.
또한, 상기 입력정보는 트리거, 화면 전환, 마우스 입력, 키보드 입력 및 터치 입력 중 선택되는 적어도 하나인 것을 특징으로 한다.
또, 상기 모델링도구모듈(100)은 정형화된 데이터를 추출하는 스크린 스크래핑(screen scraping) 기능을 포함하는 것을 특징으로 한다.
또한, 상기 모델링도구모듈(100)은 웹 상에서 데이터를 추출하는 데이터 스크래핑(data scraping) 기능을 포함하는 것을 특징으로 한다.
또한, 상기 템플릿툴모듈(300)은 특정 업무에서 표준화하여 사용이 가능한 자동화 템플릿의 등록 및 다운로드가 가능한 템플릿 스토어를 관리하는 것을 특징으로 한다.
아울러, 상기 컨트롤센터(400)는 세부 업종별로 도메인을 구분하여 관리하는 것을 특징으로 한다.
또한, 상기한 바와 같은 목적을 달성하기 위한 본 발명의 일 실시예에 따른 자동화 업무 플로우의 개선 프로세스를 추천하는 로보틱 처리 자동화 시스템은, 자동화 프로세스의 맞춤형 스크립트를 생성하되, 자동화 업무 플로우를 실행하도록 기생성된 각 템플릿에서 분할된 어느 하나의 프로세스에 대하여 개선을 위한 성능 모델을 설계하고, 상기 성능 모델에 근거하여 추론된 다수의 후보 프로세스들에 대하여 성능 점수가 가장 높은 후보 프로세스를 상기 템플릿의 개선된 프로세스로 추천하는 로보틱 자동화 서버(430); 및 상기 로보틱 자동화 서버에 접속하여 사용자가 자동화하고자 하는 업무를 위한 액션 입력에 따른 맞춤형 스크립트를 제공받고, 자동화 업무 플로우를 실행하도록 기생성된 각 템플릿에서 성능 모델에 근거하여 개성된 프로세스를 추천받는 사용자 단말(410, 420)을 포함하고, 상기 로보틱 자동화 서버(430)는, 자동화 프로세스의 맞춤형 스크립트 생성을 위한 데이터의 전송 및 수신을 위해 필요한 그래픽 사용자 인터페이스를 상기 사용자 단말에 제공하기 위한 인터페이스부(131); 상기 인터페이스부를 통하여 송수신되는 데이터를 분석하여 상기 자동화 프로세스의 맞춤형 스크립트 생성을 위한 각종 처리를 수행하기 위한 처리부(133); 상기 사용자가 자동화하고자 하는 업무의 스크립트를 생성하는데 필요한 데이터를 저장하고 있는 데이터베이스 관리부(134); 스크립트를 생성하기 위한 스크립트 생성부(135); 자동화 업무 플로우를 실행하도록 기생성된 각 템플릿에 대하여 다수의 다른 템플릿들로부터 상호 연관되는 구성요소를 찾아 그에 대응하는 프로세스의 개선을 위한 성능 모델을 설계하고, 상기 성능 모델에 근거하여 추론된 다수의 후보 프로세스들에 대하여 성능 점수가 가장 높은 후보 프로세스를 추천하기 위한 프로세스 개선부(136); 및 상기 인터페이스부, 상기 처리부, 상기 데이터베이스 관리부, 상기 스크립트 생성부 및 상기 프로세스 개선부 간의 데이터 흐름를 제어하기 위한 제어부(132)를 포함하는 것을 특징으로 한다.
상기 프로세스 개선부(136)는, 기생성된 템플릿의 프로세스를 분할하기 위한 프로세스 분할부(801); 템플릿 특성 데이터베이스에 기반하여 다수의 다른 템플릿들로부터 상호 연관되는 구성요소를 획득하기 위한 상호연관성 분석부(802); 상기 획득한 상호 연관되는 구성요소에 대응하는 프로세스의 개선을 위한 성능 모델을 설계하기 위한 성능 모델 설계부(803); 상기 성능 모델에 근거하여 다수의 후보 프로세스들을 추론하기 위한 프로세스 추론부(804); 상기 다수의 후보 프로세스들에 대한 성능 점수를 계산하기 위한 계산부(805); 및 상기 성능 점수 중 가장 높은 점수를 가지는 후보 프로세스를 상기 해당 프로세스로 추천하기 위한 프로세스 추천부(806)를 포함하는 것을 특징으로 한다.
상기 데이터베이스 관리부(134)는, 프로세스의 개선을 위한 성능 모델 변수의 설정 방법 및 성능 모델 변수 설정에 따른 후보 프로세스 추론을 위한 데이터를 저장하고 있는 성능 모델 데이터베이스(134g)를 포함하는 것을 특징으로 하고, 상기 후보 프로세스들은 상기 성능 모델 변수들의 조절에 의해 생성되는 것을 특징으로 한다.
상기 각 후보 프로세스에 대한 성능 점수는, 응답시간(reponse time), 대기시간(think time), 호출 간격(request interval), 동시 사용자(concurrent user), 엑티브 사용자(active user), 처리율(throughput), 처리율과 응담시간 상관관계, 및 CPU 사용률과 응답시간 상관관계 중 적어도 어느 하나 이상에 대하여 시뮬레이션 하여 측정 및 추정하여 점수로 환산한 것을 특징으로 한다.
상기 처리부(133)는, 로보틱 프로세스 자동화(Robotic Process Automation, RPA) 모델에 기반하여 기작성된 템플릿들에 대한 제1 시퀀스 요소를 추출하여 해당 템플릿에 대응하여 저장하고, 상기 액션 입력의 제2 시퀀스 요소를 추출하는 것을 특징으로 하고, 상기 제1 시퀀스 요소는, 업무 종류, 시나리오, 사용 함수, 이벤트 종류, 이벤트 내용, 이벤트 속성, 입력 변수 속성, 출력 내용, 및 스크립트 코드를 포함하는 것을 특징으로 하고, 상기 제2 시퀀스 요소는, RPA 모델에 근거하여 상기 액션입력에 따라 획득한 업무흐름, 업무 종류, 이벤트 종류, 이벤트 내용, 이벤트 속성, 입력 변수 속성, 및 출력 내용을 포함하는 것을 특징으로 한다.
상기 처리부(133)는, 템플릿 데이터베이스로부터 전달받은 다수의 템플릿에 대하여 업무 특성 및 업무 흐름에 따라 분할하기 위한 템플릿 분할부(501); 상기 RPA 모델에 기반하여 상기 분할된 템플릿의 구성 요소를 분석하기 위한 템플릿 분석부(502); 상기 분석된 템플릿의 구성 요소로부터 제1 시퀀스 요소를 추출하기 위한 제1 시퀀스 요소 추출부(503); 상기 제1 시퀀스 요소를 해당 템플릿 특성 데이터베이스에 저장하기 위한 특성 저장부(504); 상기 사용자 단말을 통한 액션 입력으로부터 사용자 입력 데이터를 프로세스 요소로 변환하기 위한 데이터 변환부(505); 및 상기 변환된 프로세스 요소로부터 제2 시퀀스 요소를 추출하기 위한 제2 시퀀스 요소 추출부(506)를 포함하는 것을 특징으로 하고, 상기 제1 시퀀스 요소는, 상기 템플릿 특성 데이터베이스에 저장되고, 템플릿 특성벡터 형태로 사용되는 것을 특징으로 하고, 상기 제2 시퀀스 요소는, 사용자 특성벡터 형태로 사용되는 것을 특징으로 한다.
상기 스크립트 생성부(135)는, 상기 처리부에서 추출한 시퀀스 요소를 이용하여 상기 사용자가 자동화하고자 하는 업무를 위한 액션 입력과 기저장된 템플릿을 비교하여 유사도를 계산하고, 유사도가 높은 순서에 따라 기설정 개수의 템플릿들을 추천하고, 상기 추천된 템플릿들 중에 선택되는 템플릿에 대한 수정인터페이스를 출력하고, 수정 및 편집 사항을 반영하여 자동으로 스크립트를 생성하는 것을 특징으로 한다.
상기 스크립트 생성부(135)는, 상기 템플릿 특성벡터 및 상기 사용자 특성벡터를 처리하기 위한 데이터 수신처리부(601); 유사도 분석 데이터베이스에 근거하여, 상기 템플릿 특성벡터 및 상기 사용자 특성벡터의 유사도를 계산하기 위한 유사도 계산부(602); 상기 기저장된 템플릿 중에서, 상기 계산한 유사도가 높은 순서에 따라 기설정 개수의 템플릿들을 결정하여 추천하기 위한 템플릿 추천부(603); 상기 템플릿 추천부에서 추천한 템플릿들 중에 상기 사용자 단말을 통해 선택을 입력받는 템플릿 선택부(604); 상기 템플릿 선택부에서의 선택 입력에 따라, 해당 템플릿을 상기 사용자가 자동화하고자 하는 업무로 수정하는 수정인터페이스를 출력하기 위한 수정인터페이스 출력부(605); 상기 수정인터페이스 출력부를 통해 수정 및 편집된 내용에 근거하여 상기 사용자가 자동화하고자 하는 업무의 맞춤형 스크립트를 작성하기 위한 스크립트 작성부(606); 및 상기 작성한 스크립트의 실행시 발생하는 오류의 디버깅을 수행하기 위한 오류 검출부(607)를 포함하는 것을 특징으로 하고, 상기 유사도 계산부(602)는, 코사인 유사도, 유클리디안 유사도, 맨하튼 유사도, 삼각혁 면적 유사도, 부채꼴 면적 유사도, 및 피어슨 유사도 중 적어도 한 개 이상을 사용하여 유사도를 계산하는 것을 특징으로 하고, 상기 템플릿 추천부(603)는, 기작성된 템플릿이 다수 병합되는 방법을 추천하는 것을 특징으로 한다.
본 발명의 일 실시예에 따른 로보틱 처리 자동화 시스템에 의하면, 스크립트 작성 개발 기술이 없는 업무 담당자도 흐름도를 기반으로 해당 이미지만 찾아서 드래그 앤 드롭을 수행하는 방식으로 손쉽게 스크립트 작성이 가능함에 따라, RPA를 보다 용이하게 구현할 수 있는 효과가 있다.
또한, 본 발명의 일 실시예에 따른 로보틱 처리 자동화 시스템에 의하면, 기작성된 템플릿의 제1 시퀀스 요소를 추출하여 상기 템플릿에 대응하여 저장하고, 사용자 단말을 통한 자동화하고자 하는 업무를 위한 액션 입력으로부터 제2 시퀀스 요소를 추출하여 기저장된 템플릿과의 유사도를 판단하고, 유사도가 높은 순서에 따라 기설정 개수의 템플릿들을 추천하고, 상기 추천된 템플릿들 중에 선택되는 템플릿에 대한 맞춤형 수정이 가능한 인터페이스 및 수정 사항을 직관적으로 제공함으로써, 자동화를 위한 스크립트를 작성하기 위해 유사한 템플릿을 일일이 검색하지 않아도 추천받을 수 있고, 쉽게 수정 및 편집하여 맞춤형 자동화 프로세스를 위한 스크립트의 작성이 가능한 효과가 있다.
또한, 자동화 업무 플로우를 실행하도록 기생성된 각 템플릿의 구성요소를 분할여 유사 작업에 대한 다수의 다른 템플릿들로부터 상호 연관되는 구성요소를 찾아 해당 프로세스의 개선을 위한 성능 모델을 설계하고, 상기 성능 모델에 근거하여 추론된 다수의 후보 프로세스들에 대하여 성능 점수를 계산하여 가장 높은 점수를 가지는 프로세스를 상기 해당 프로세스로 추천함으로써, 각 템플릿에서 수행되는 자동화 업무 플로우가 최적화되는 효과가 있다.
또한, 이미지 인식 및 OCR(Optical Character Recognition), 스크립트 자동 생성기술, 스크린 스크래핑, 데이터 스크래핑 등을 기반으로 반복적 업무를 규칙적 프로세스로 전환, 자동 반복 수행하여 업무 담당자들이 고부가가치의 창조적인 업무시간 확보 및 효율적 업무수행을 가능하게 하는 효과가 있다.
또, 기존 시스템 구축은 분석, 설계, 구축, 이행의 개발 방법에 따라 수행되지만, RPA는 사람의 행동을 모방하도록 설정되어 빠르게 실무에 적용할 수 있으며, 업무량 변화에 따라 유연한 배치와 대응이 가능하고, 기존 업무 프로세스와 시스템을 그대로 사용하므로 도입과 적용 모두 기존 시스템 구축보다 효율적인 효과가 있다.
아울러, 소프트웨어 로봇은 사람보다 빠르고, 정확하며, 쉬지 않고 일할 수 있음으로써, 적용대상을 늘려 갈수록 비용을 절감할 수 있는 효과가 있다.
도 1은 본 발명의 일 실시예에 따른 로보틱 처리 자동화 시스템의 블록도.
도 2는 본 발명의 일 실시예에 따른 로보틱 처리 자동화 시스템의 모델링도구에 의해 컴퓨터 화면상에 표시된 화면의 예시도.
도 3은 본 발명의 일 실시예에 따라 스크립트가 작성된 화면과 흐름도를 이용하여 모델링 작업하고 있는 예시도.
도 4는 본 발명의 다른 실시예에 따른 로보틱 처리 자동화 시스템의 구성도.
도 5는 도 4의 로보틱 자동화 서버(430)에서 처리부(133)의 일실시예 상세 구성도.
도 6은 도 4의 로보틱 자동화 서버(430)에서 스크립트 생성부(135)의 일실시예 상세 구성도.
도 7은 본 발명에 따른 자동화 업무 플로우의 개선 프로세스를 추천하는 로보틱 처리 자동화 시스템의 일실시예 구성도.
도 8은 도 7의 로보틱 자동화 서버(430)에서 프로세스 개선부(136)의 일실시예 상세 구성도.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다. 그러나 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야한다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다.
반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
본 명세서에서 사용되는 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 공정, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 공정, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미가 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미가 있는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 첨부된 도면을 참조하여 본 발명을 더욱 상세하게 설명한다. 이에 앞서, 본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정하여 해석되어서는 아니 되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위해 용어의 개념을 적절하게 정의할 수 있다는 원칙에 입각하여, 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다. 또한, 사용되는 기술 용어 및 과학 용어에 있어서 다른 정의가 없다면, 이 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 통상적으로 이해하고 있는 의미를 가지며, 하기의 설명 및 첨부 도면에서 본 발명의 요지를 불필요하게 흐릴 수 있는 공지 기능 및 구성에 대한 설명은 생략한다. 다음에 소개되는 도면들은 당업자에게 본 발명의 사상이 충분히 전달될 수 있도록 하기 위해 예로서 제공되는 것이다. 따라서, 본 발명은 이하 제시되는 도면들에 한정되지 않고 다른 형태로 구체화될 수도 있다. 또한, 명세서 전반에 걸쳐서 동일한 참조번호들은 동일한 구성요소들을 나타낸다. 도면들 중 동일한 구성요소들은 가능한 한 어느 곳에서든지 동일한 부호들로 나타내고 있음에 유의해야 한다.
도 1은 본 발명의 일 실시예에 따른 로보틱 처리 자동화 시스템의 블록도이고, 도 2는 본 발명의 일 실시예에 따른 로보틱 처리 자동화 시스템의 모델링도구에 의해 컴퓨터 화면상에 표시된 화면의 예시도이며, 도 3은 본 발명의 일 실시예에 따라 스크립트가 작성된 화면과 흐름도를 이용하여 모델링 작업하고 있는 예시도이다.
본 발명의 일 실시예에 따른 로보틱 처리 자동화 시스템은 글로벌 화두인 디지털트랜스포메이션을 현실화하기 위한 기반 솔루션으로, 사람이 하고 있는 반복적 업무를 자동화하여 소프트웨어 로봇(Robot)이 대신 수행하도록 하기 위한 것이다.
RPA기술을 적용하면 메일발송을 비롯하여 파일을 열어서 특정 정보를 일정한 규칙에 의거하여 재가공하여 데이터를 입력하는 등 사람이 하는 일 중에서 단순반복적인 대부분의 업무를 자동화 할 수 있다.
예를 들면, Email 열기, Email에 파일 첨부하기, Email 보내기, 웹 및 시스템 로그인, 파일 및 폴더 이동, 복사 및 붙여넛기, 지전된 양식으로 입력, 데이터베이스 읽고 쓰기, 웹을 통한 데이터 스크래핑, API 등을 통한 시스템 연계 처리, 자동화된 사칙연산 등의 계산처리, 문서로부터 구조화된 데이터 추출, SNS 통계 데이터 수집, 규칙화된 판단 로직 적용 등이 가능하다.
RPA솔루션은 자동화할 대상 업무를 선정하고 이를 적용하여 업무 규칙에 따라 자동화할 수 있도록 자동화 스크립트를 생성한 다음 소프트웨어 Bot을 실행하여 주기적이고 반복적인 업무를 자동화하여 처리할 수 있다.
도 1에 도시된 바와 같이, 본 발명의 일 실시예에 따른 로보틱 처리 자동화 시스템은 컴퓨터를 포함하는 연산처리수단에 의하여 실행되는 프로그램 형태로 이루어지는 로보틱 처리 자동화 시스템에 있어서, 모델링도구모듈(100), 자동실행모듈(200), 템플릿툴모듈(300) 및 컨트롤센터(400)를 포함한다.
모델링도구모듈(100)은 흐름도를 기반으로 하여, 사용자가 미리 정의해 둔 업무 절차와 룰을 참조해 상기 사용자가 하는 업무를 동일하게 수행하도록 하는 업무 프로세스의 레코딩 및 스크립트 배치를 통해 모델링된 작업플레이어를 생성한다.
상기 모델링도구모듈(100)은 로보틱 처리 자동화(RPA; Robotic Process Automation) 스크립트를 작성하여 자동화된 업무 프로세스를 구현하기 위한 것으로, 필요로 하는 데이터를 수집 및 가공하고 자동화된 업무 프로세스가 실행된 결과를 산출한다.
이를 위해, 상기 모델링도구모듈(100)은 상기 사용자가 상기 컴퓨터를 이용하여 상기 업무 프로세스를 수동으로 진행하는 과정을 녹화하여, 녹화된 과정을 반복적으로 수행하도록 모델링 하는 레코딩 기능을 포함하는 것을 특징으로 할 수 있다. 즉, 사람이 처리하던 반복적 업무를 녹화하는 과정을 통해 규칙적인 프로세스로 등록할 수 있다.
레코딩은 사용자의 업무를 녹화하여, 녹화된 업무를 반복적으로 수행할 수 있도록 하는 것이다.
또한, 상기 모델링도구모듈(100)은 데이터를 수집 및 가공하는데에 OCR 인식, 이미지 인식(Image recognition), 이미지 매칭(머신러닝 적용), Web 오브젝트 인식, 챗봇 기술 등의 기술을 적용할 수 있다.
OCR(Optical Character Recognition) 인식 기술은 이미지에서 광학적인 음영을 통해 정보(텍스트 등)를 추출하는 기술이며, 이미지 인식(Image recognition) 기술은 이미지 또는 비디오상의 객체를 식별하는 컴퓨터 비전 기술로 딥러닝과 머신러닝 알고리즘을 통해 산출되는 핵심 기술이고, 챗봇 기술은 텍스트나 음성으로 인간과 대화하는 소프트웨어 로봇으로 패턴인식(Patern Recognition), 자연어처리(Natural Language Procesing), 시멘티 웹(Symantic Web), 텍스트 마이닝(Text Mining), 상황인식컴퓨팅(Context Aware Computing) 기술이다.
상기 모델링도구모듈(100)은 업무 진행 단계별 스크립트를 분리하여 작성하고, 상기 모델링도구모듈(100)에서 모델링(구성)된 흐름에 따라 스크립트가 자동으로 호출되어 실행되는 구조의 작업플레이어를 생성할 수 있다.
즉, 상기 모델링도구모듈(100)은 업무 관점에서의 비즈니스 업무를 레코딩 및 구성할 수 있다.
다시 말해, 상기 모델링도구모듈(100)은 업무 담당자가 익숙한 흐름도를 생성하여 레코딩 및 스크립트 배치 구성을 완성시켜 준다.
스크립트는 스크립트 코드 기반의 작업을 수행하는데, C# 코드를 이용하면 높은 확장성과 유연성을 지원할 수 있다.
자동실행모듈(200)은 상기 모델링도구모듈(100)로 모델링된 작업플레이어를 실행시켜, 업무 자동화를 수행(반복수행 가능)하고, 자동화 결과 데이터를 수집 및 가공한다.
상기 자동실행모듈(200)은 상기 작업플레이어를 실행시키며, 상기 자동실행모듈(200)로 실행된 상기 작업플레이어가 상기 업무 프로세스에 따른 자동화 업무를 수행한다.
이때, 상기 자동실행모듈(200)로 실행된 상기 작업플레이어는 동일한 과정을 반복 수행하여 대량의 결과 데이터를 확보할 수 있다.
또한 상기 자동실행모듈(200)은 이렇게 확보된 자동화 결과 데이터를 수집, 가공 및 관리할 수 있다.
상기에서 업무 프로세스를 모델링하여 작업플레이어를 생성하는 모델링도구모듈(100)와 작업플레이어를 실행시키는 자동실행모듈(200)을 별도로 구성하는 이유는, 권한이 없는 임의의 사용자가 업무 프로세스의 변경을 임의로 하지 못하도록 하기 위함이다.
즉, 권한이 있는 관리자 급의 사용자가 상기 모델링도구모듈(100)을 통해 업무 프로세스의 모델링 작업 또는 변경을 하여 다른 사용자(직원 등)들에게 작업플레이어를 제공하고, 다른 사용자들은 제공받은 작업플레이어를 사용하여 반복적인 업무를 수행하도록 함으로써, 일괄적인 결과물이 산출되도록 관리하기 위함이다.
작업플레이어를 제공받은 사용자가 프로세스의 모델링 수정 작업이 필요하다고 판단되면, 관리자 급의 사용자에게 수정 작업을 요청하고, 수정된 내용이 반영된 작업플레이어를 다시 일괄 제공하여 사용하도록 한다면, 어떠한 사용자가 작업한다 하더라도 동일한 결과물이 산출되도록 관리할 수 있다.
템플릿툴모듈(300)은 특정 업무 영역을 자동화하기 위한 업무 프로세스의 기본 구성 형식과 디자인 양식이 포함된 템플릿을 제작할 수 있는 템플릿 개발도구(모델링도구(100)에서 불러와 사용 가능)를 제공한다.
상기 템플릿툴모듈(300)은 템플릿 개발 도구로서, 업종별 표준 업무 프로세스를 도출하여 템플릿을 제작하고, 제작된 업종별 프로세스 템플릿을 제공하여, 중소기업에 최적화되고 저비용으로 도입하여 활용할 수 있는 RPA솔루션을 제공할 수 있도록 하기 위한 것이다.
예를 들어, 세무사, 회계사, 변호사, 법무사, 약국, 병원, 부동산, 마트, 전자상거래, 고객관리 등 중소기업의 주요 업종별 업무별 최적화 프로세스 템플릿을 제작하여 배포하면, 해당 업무 환경에 최적화된 업무 환경에 자동화 할 수 있는 솔루션 구축이 가능하도록 할 수 있다.
또한, 통신대리점의 청약업무나 세무, 회계, 병의원, 약국등 주요 업종별로 공공기관이나 특정 솔루션별로 표준화된 업무들에 대하여 미리 개발하여 제공하는 표준 자동화템플릿을 통하여, 별도의 로그인작업 등 초기 식별단계만 재 정의하면 표준 업무 프로세스에 따라 자동으로 업무를 수행하도록 하여, 기술적으로 취약한 중소기업에서도 쉽고 편하게 RPA솔루션을 적용할 수 있도록 제공할 수 있다.
템플릿 개발자 또는 사용자가 표준 업무 환경을 정의하여 해당 업무에 적합하도록 템플릿을 개발하여 템플릿을 스토어에 등록하고, 이를 판매할 수 있도록 하여, 동일한 업무를 수행하는 유사업종에서 템플릿을 바로 구매 및 내려 받아서 사용할 수 있도록 하여 업종별 템플릿을 기반으로 하는 생태계를 구축하는 것도 가능하다.
즉, 본 발명에서 템플릿은 자동화 업무 플로우를 실행하도록 생성된(제작된) 프로세스들을 모아놓은 자동화 프로그램인 것으로, 기생성된 템플릿을 이용하여 특정 업무를 자동으로 수행할 수 있다.
아울러, 약국의 처방전업무, 법원의 등기업무, 병/의원 등의 보험금 청구 업무 등 모든 사업자들이 동일하게 표준업무환경에 수행하는 업무에 대한 표준 프로세스는, 자동으로 미리 레코딩하여 제공하고 각 사업자의 초기 로그인이나 화면에서 프로그램 기동 등 상이한 부분만 업무를 재정의 하면 이에 따라 스크립트가 자동 생성되어 실행되도록 제공하는 것도 가능하다.
컨트롤센터(400)는 상기 모델링도구모듈(100)로 모델링된 작업플레이어의 수행 현황을 모니터링하고, 계정관리 및 일정관리가 가능하며, 이벤트 성공 및 실패 모니터링 및 알람관리가 가능하고, 실시간 추적정보가 가능하며, 서버 자원 모니터링이 가능하고, 통계분석이 가능하다.
상기 컨트롤센터(400)는 서버 역할을 하는 것으로, 모니터링 및 관리기능을 수행한다.
전체 업무 프로세스의 성공과 실패 여부는 종료로 이동했는지 안했는지에 따라 정해질 수 있다.
본 발명의 일 실시예에 따른 로보틱 처리 자동화 시스템의 모델링도구모듈(100)은 흐름도를 기반으로 업무 순서인 업무 프로세스를 정의하고, 상기 흐름도 상의 각 작업 단위별로 업무 활동을 정의하며, 흐름도에서 업무 순서를 변경하면 변경된 업무 순서에 따라 자동화된 스크립트가 생성되어 반영되며, 세부작업내역별로 정의된 스크립트에 의하여 작업의 자동화 지원이 가능한 것을 특징으로 할 수 있다.
흐름도에 사용되는 기호는 시작, 종료, 입력, 출력, 처리, 비교, 판단, 선택, 반복, 호출, 에러 등 각각을 나타내는 도형으로 이루어질 수 있다.
상기 업무 프로세스는 시작을 나타내는 도형에서 시작하여 종료를 나타내는 도형으로 끝나도록 작업하는 것이 바람직하다.
흐름도를 기반으로 업무 순서인 업무 프로세스를 정의한다는 것은, 흐름도에 사용되는 기호(도형) 하나마다 수행해야 할 업무를 정의하고, 각각의 기호(도형)간의 연결관계(업무 순서)를 설정하는 것을 의미한다.
상기 모델링도구모듈(100)은 이렇게 정의되고 설정된 내용에 따라 자동으로 스크립트를 생성한다.
도 2에 도시된 바와 같이, 본 발명의 일 실시예에 따른 로보틱 처리 자동화 시스템의 모델링도구모듈(100)은 컴퓨터의 화면상에, 흐름도에 사용되는 기호의 집합으로 구성된 흐름도집합창(110), 업무 프로세스의 논리적 흐름을 상기 기호를 사용하여 도식적으로 모델링 작업을 수행하는 모델링작업창(120), 흐름도에 사용되는 기호에 해당되는 이벤트의 속성정보를 정의하는 속성정의창(130) 및 흐름도에 사용되는 기호에 해당되는 이벤트에 사용되는 변수정보를 정의하는 변수정의창(140)이 표시되도록 하며,
상기 흐름도집합창(110)에서 필요로 하는 기호를 선택(클릭, 클릭 후 엔터, 더블클릭 등)하거나, 상기 흐름도집합창(110)에서 필요로 하는 구성을 모델링 작업창(B)에 드래그 앤 드롭 하여 모델링 작업창(120)으로 불러와 모델링 작업을 수행하는 것을 특징으로 하고,
상기 속성정보는 이벤트 명칭, 에러 발생 시 중지 여부, 수행 시간 임계치(임계치 초과 시 실패), 입력 종류(마우스 좌클릭, 우클릭 등), 클릭 X좌표, 클릭 Y 좌표에 대한 정보를 포함하고,
상기 변수정보는 스크립트에서 사용할 변수를 의미하며, 변수 명칭, 변수 타입, 변수 설명, 변수 초기값에 대한 정보를 포함할 수 있다.
상기 모델링도구모듈(100)은 흐름도집합창(110), 모델링작업창(120), 속성정의창(130) 및 변수정의창(140)이 컴퓨터의 화면상에 표시되도록 함으로써, 사용자가 바라보는 화면은 매우 직관적이고 간단히 구성되어, 개발을 잘 모르는 업무 담당자도 매우 간단한 조작만으로 자동화 스크립트를 작성할 수 있다.
도 3의 상부 검정색 바탕 두 개의 화면은 스크립트가 작성된 화면이고, 그 아래 4 개의 화면은 업무프로세스를 흐름도를 이용하여 모델링 작업하고 있는 화면이다. 도 3을 예로 설명하면, 업무프로세스를 흐름도를 이용하여 모델링 작업을 하면 그에 따른 스크립트가 자동으로 작성된다.
상기 모델링도구모듈(100)을 이용하여 자동화를 수행 하고자 하는 업무를 해당 어플리케이션(Application)에서 레코딩 할 수 있다.
상기 모델링도구모듈(100)은 어플리케이션의 리퀘스트(Request)를 레코딩(Recording) 하는 방식이 아닌 GUI 방식의 운영체제(Windows 등) 내 이벤트를 수행하는 이미지를 인식하여, 실제 사용자와 동일하게 마우스 클릭에 의한 이벤트를 호출하는 방식으로 모델링 하여 작업플레이어를 생성한다.
즉, 기존 Object action 호출 방식과 다른, 실 사용자와 동일한 이벤트를 발생시킨다.
또한 매우 빠른 Object 인식을 통하여 브라우저와 Windows 프로그램을 하나의 Object 이벤트 Type으로 스크립트를 작성할 수도 있다.
그와 더불어, 사용자 직관적인 메뉴로 매우 간단히 사용자의 업무를 자동화 할 수 있다.
즉, Windows 상에서 구동되는 모든 어플리케이션에 적용이 가능하며, 특별히 웹브라우저(Web Browser) 외 어떠한 어플리케이션에서도 매우 빠른 속도로 구동된다.
컴퓨터 화면상에 표시된 화면은 매우 직관적이고 간단히 구성되어, 개발을 잘 모르는 업무 담당자도 매우 간단한 조작만으로 자동화 업무 정의 및 자동화 스크립트를 작성할 수 있다.
상기 속성정보는 진행하는 이벤트의 성격을 나타내는 것이며, 이벤트의 속성별 상세 수행정보, 이벤트가 수행되기 전에 실행할 C# 코드, 이벤트가 수행된 후에 실행할 C# 코드 등으로 구분할 수 있다.
이벤트의 예로는, 사이트 접속, 로그인, 공인인증, 조회 등이 될 수 있다.
상기 속성정보의 예로는, 이벤트 명칭으로는 이미지 클릭, 에러 발생 시 중지 여부는 Yes, 수행 시간 임계치sms 5분, 입력 종류는 마우스 좌클릭, 클릭 X좌표는 50, 클릭 Y 좌표는 25 등이 입력될 수 있다.
상기 속성정보는 이벤트 옵션에 대한 설명, 이벤트의 종류 등이 추가로 입력될 수 있다.
이벤트 옵션에 대한 설명은 이미지 클릭, 오브젝트 클릭 등이 될 수 있고, 이벤트의 종류는 컨트롤 타입과 이미지 타입 등이 될 수 있다.
상기 속성정보는 이벤트 등록 시 입력 종류, 클릭 X좌표, 클릭 Y 좌표 등은 자동으로 입력되는 것이 바람직하며, 이벤트 명칭, 에러 발생 시 중지 여부, 수행 시간 임계치 등은 수동으로 입력하는 것이 바람직하다.
자동으로 입력되는 정보는 이벤트 녹화 시 획득 가능한 정보가 될 수 있다.
상기 변수는 타입이 존재하며, 이벤트마다 리턴 타입이 다를 수 있다.
상기 변수는 시스템에서 기본으로 제공하는 시스템변수와 사용자가 직접 지정하여 사용하는 사용자변수가 있다.
변수 명칭 및 변수 설명은 사용자가 직접 입력할 수 있고, 변수 타입은 리스트에서 선택하여 입력할 수 있으며, 변수 초기값에 대한 정보는 자동으로 설정될 수 있으나 변경 가능하도록 할 수 있다.
상기 변수는 플로우(Flow) 변수와 태스크(Task) 변수로 구분할 수 있고, 플로우 변수를 태스크 변수에 드래그 앤 드롭(drag & drop)으로 연결시킬 수 있다.
플로우 변수와 태스크 변수의 연결은 동일 타입에만 연결 가능하며 연결의 종류는, 플로우 변수를 태스크 변수에 보내기만 하는 것 / 플로우 변수와 태스크 변수를 동기화 시키는 것 / 태스크 변수를 플로우 변수에 받기만 하는 것, 3가지로 구분할 수 있다.
흐름도 상에서 시작은 하나만 존재할 수 있으며 시작에서 시작되는 연결은 분기를 설정할 수 없으며, 다음 단계의 연결에서 부터 분기를 설정할 수 있다.
흐름도 상에서 각각의 객체(기호, 도형) 간의 연결은 분기시킬 수 있다.
연결의 종류는, 성공여부와 상관없이 다음 객체로 이동 / 현재 진행 중인 객체에 대한 업무 진행이 성공일 때 다음 객체로 이동 / 현재 진행 중인 객체에 대한 업무 진행이가 실패일 때 다음 객체로 이동 / C# 코드에 따라 분기를 처리하는 것 4 가지로 구분할 수 있다.
성공과 실패 여부는 구성요소 종료로 이동했는지 안했는지에 따라 판단할 수 있다.
본 발명의 일 실시예에 따른 로보틱 처리 자동화 시스템의 모델링도구모듈(100)은 상기 사용자가 상기 컴퓨터를 이용하여 상기 업무 프로세스를 수동으로 진행하는 과정 중 보여지는 컴퓨터의 디스플레이 화면 중 획득된 적어도 하나의 이미지에 대해서 컴퓨터 비전 기술을 적용하여 (상기 이미지를) 저장하고, 상기 업무 프로세스에 대해 상기 업무 프로세스를 수동으로 진행하는 과정에서 식별된 적어도 하나의 입력을 식별하여 이와 관련된 입력정보를 획득하여 저장하는 것을 특징으로 할 수 있다.
즉, 이미지와 입력정보 두 가지를 획득하여 저장하는 것으로 업무 프로세스를 레코딩 할 수 있다.
상기 모델링도구모듈(100)은 GUI 방식의 운영체제 내 이벤트를 수행하는 이미지를 인식하여, 실제 사용자와 동일하게 마우스 클릭 및 키보드 입력에 의한 이벤트 호출 방식을 적용할 수 있다.
즉, 기존 Object action 호출 방식과 다른 실 사용자와 동일한 이벤트를 발생시킬 수 있다.
따라서, 매우 빠른 Object 인식을 통하여 브라우저와 Windows 프로그램을 하나의 Object 이벤트 Type으로 스크립트를 작성할 수 있다.
예를 들어, 마우스 클릭에 의한 인터넷 브라우저 실행/주소 입력에 의한 해당 사이트 접속/해당 사이트의 로그인/필요 페이지 접속/필요 작업 수행/ 마우스 클릭에 의한 필요 프로그램 실행(엑셀 등) 등의 과정을 실제 사용자와 동일하게 마우스 클릭 및 키보드 입력에 의한 이벤트 호출 방식을 적용할 수 있다.
본 발명의 일 실시예에 따른 로보틱 처리 자동화 시스템의 상기 획득된 이미지는 커서의 위치 또는 터치된 지점을 기준으로 일정 영역에 해당되는 이미지인 것을 특징으로 할 수 있다.
이는, 상기 모델링도구모듈(100)가 획득한 이미지의 크기를 줄여 저장 용량을 줄이기 위한 것으로, 프로그램 실행에 대한 이벤트의 경우 해당 프로그램의 아이콘 정도 크기의 이미지만 저장하면 해당 프로그램을 자동으로 실행시키는데 충분하기 때문이다.
본 발명의 일 실시예에 따른 로보틱 처리 자동화 시스템의 상기 입력정보는 트리거, 화면 전환, 마우스 입력, 키보드 입력 및 터치 입력 중 선택되는 적어도 하나인 것을 특징으로 할 수 있다.
상기 입력정보는 상기 모델링도구모듈(100)가 획득 가능한 정보로, 컴퓨터의 화면상에서 변화된 정보 또는 입력수단에 의해 입력된 정보 등이 될 수 있다.
트리거는 미리 정해 놓은 조건을 만족하거나 어떤 동작이 수행되면 자동적으로 수행되는 동작을 말하는 것으로, 예를 들어, 인증의 경우 별도의 인증창이 활성화 되는 것 등이 될 수 있다.
화면전환은 동일한 창 내에서 화면이 변경되는 것을 말하는 것으로, 사이트에 접속하여 필요로 하는 페이지에 접속하는 동안 화면상에 페이지가 바뀌는 것 등이 될 수 있다.
공인인증을 선택하고 / 인증창이 뜰 때 까지 기다린 후 / 비밀번호 기재란에 비밀번호를 기재하는 공인인증의 경우, 마우스 클릭(마우스 입력) / 인증창 대기(트리거) / 비밀번호 입력(키보드 입력)
본 발명의 일 실시예에 따른 로보틱 처리 자동화 시스템의 모델링도구모듈(100)은 정형화된 데이터를 추출하는 스크린 스크래핑(screen scraping) 기능을 포함하는 것을 특징으로 할 수 있다.
스크린 스크래핑(screen scraping)은 정형화된 데이터를 추출하기 위한 것으로, 인터넷 스크린에 보여지는 데이터 중에서 필요한 데이터만을 추출하도록 만들어진 프로그램이며, 웹 스크래핑(web scraping)이라고도 한다.
각 사이트로부터 데이터를 수집해 오는 기술, 일정 포맷으로 변환하는 기술, 스크래핑 구동 기술이 핵심이다.
구조 형태에 따라 서버 의존형, 클라이언트 의존형, 혼합형으로 구분된다.
이용 분야로는 계좌 통합 관리 분야(각 금융 기관에 흩어져 있는 금융 자산을 통합해 한 번에 조회, 이체 등의 거래를 하고 관리함), 이메일 통합 조회(여러 웹 메일을 사용하는 경우 한 번에 종합 확인), 호텔, 항공사, 렌터카, 주유소 마일리지 등 각종 보상 프로그램 활용, 전자 상거래에서 경매 진행 상황 추적, 물류 서비스의 배송 정보 추적, 뉴스, 날씨 등이 있다.
본 발명의 일 실시예에 따른 로보틱 처리 자동화 시스템의 모델링도구모듈(100)은 웹 상에서 데이터를 추출하는 데이터 스크래핑(data scraping) 기능을 포함하는 것을 특징으로 할 수 있다.
데이터 스크래핑(data scraping)은 컴퓨터 프로그램이 다른 프로그램으로부터 들어오는 인간이 읽을 수 있는 출력으로부터 데이터를 추출하는 기법이다.
일반적으로 프로그램들 간의 데이터 전송은 사람이 아닌 컴퓨터에 의한 자동화된 처리에 적합한 자료 구조를 사용하여 수행된다. 이러한 교환식 포맷과 프로토콜들은 보통 완고하게 구조화되어 있고 잘 문서화되어 있으며 쉽게 구문 분석이 가능하고 모호성을 최소한으로 유지시킨다. 아주 가끔은 인간이 읽기 쉽지 않은 형태로 구성되어 있는 경우가 있다.
그러므로 데이터 스크래핑을 정규적인 구문 분석과 구별하는 주요 요소는 "스크래핑"이 되는 출력물이 최종 사용자에게 표시할 것을 염두에 둔다는 점이다. (다른 프로그램에게 입력을 전달하는 것이 아니라) 그러므로 편리한 구문 분석을 위해 문서화/구조화가 되어 있지 않을 수 있다. 데이터 스크래핑은 바이너리 데이터(일반적으로 이미지나 멀티미디어 데이터), 디스플레이 서식 지정, 과잉 레이블, 과도한 주석, 자동화된 처리를 저해하는 기타 정보를 수반하기도 한다.
본 발명의 일 실시예에 따른 로보틱 처리 자동화 시스템의 템플릿툴모듈(300)은 특정 업무에서 표준화하여 사용이 가능한 자동화 템플릿의 등록 및 다운로드가 가능한 템플릿 스토어를 관리하는 것을 특징으로 할 수 있다.
상기 템플릿 스토어는 템플릿의 판매 및 구매에 따라 결제솔루션과 연동되도록 구성할 수 있으며, 템플릿 판매에 따른 수익금 정산이 가능하다.
본 발명의 일 실시예에 따른 로보틱 처리 자동화 시스템의 컨트롤센터(400)는 세부 업종별로 도메인을 구분하여 관리하는 것을 특징으로 할 수 있다.
즉, 상기 자동실행모듈(200)을 사용하는 사용자는 사용자 마다 도메인을 받아 사용하게 되며, 업종별 도메인 관리는 특정 관리자가 공통적으로 등록하여 관리할 수 있으며, 해당 정보가 소프트웨어 업데이트를 통하여 자동 반영되도록 할 수 있다.
이는, 업종별 자동화 템플릿을 개발 및 거래하기 위한 기준으로 사용하기 위함이다.
도 4는 본 발명의 다른 실시예에 따른 로보틱 처리 자동화 시스템의 구성도이다.
도 4에 도시된 바와 같이, 본 발명의 다른 실시예에 따른 로보틱 처리 자동화 시스템은, 자동화 프로세스의 맞춤형 스크립트를 생성하기 위한 로보틱 자동화 서버(430) 및 상기 로보틱 자동화 서버(430)에 접속하여 사용자가 자동화하고자 하는 업무를 위한 액션 입력에 따른 템플릿들을 추천받고, 선택한 템플릿에 대한 수정 사항을 안내받아 해당 업무의 스크립트 제공받는 다수의 사용자 단말(410, 420)을 포함한다.
통신 네트워크를 통하여 제1 사용자 단말(410) 및 제2 사용자 단말(420)과 통신하는 상기 로보틱 자동화 서버(430)는 인터페이스부(131), 제어부(132), 처리부(133), 데이터베이스 관리부(134) 및 스크립트 생성부(135) 등을 포함한다. 상기 인터페이스부(131), 상기 제어부(132), 상기 처리부(133), 상기 데이터베이스 관리부(134) 및 상기 스크립트 생성부(135)는 그 중 적어도 일부가 로보틱 자동화 서버(430)와 통신하는 프로그램 모듈들일 수 있다. 이러한 프로그램 모듈들은 운영 시스템, 응용 프로그램 모듈 및 기타 프로그램 모듈의 형태로 로보틱 자동화 서버(430)에 포함될 수 있으며, 물리적으로는 여러 가지 공지의 기억 장치 상에 저장될 수 있다. 또한, 이러한 프로그램 모듈들은 로보틱 자동화 서버(430)과 통신 가능한 원격 기억 장치에 저장될 수도 있다. 한편, 이러한 프로그램 모듈들은 본 발명에 따라 후술할 특정 업무를 수행하거나 특정 추상 데이터 유형을 실행하는 루틴, 서브루틴, 프로그램, 오브젝트, 컴포넌트, 데이터 구조 등을 포괄하지만, 이에 제한되지는 않는다.
여기서, 통신 네트워크는 유선 및 무선 등과 같은 그 통신 양태를 가리지 않고 구성될 수 있으며, 근거리 통신망(LAN; Local Area Network), 도시권 통신망(MAN; Metropolitan Area Network), 광역 통신망(WAN; Wide Area Network) 등 다양한 통신망으로 구성될 수 있다. 바람직하게는, 본 발명에서 말하는 통신 네트워크는 공지의 월드와이드웹(WWW; World Wide Web)일 수 있다.
상기 로보틱 자동화 서버(430)는 통신 네트워크를 통하여 제1 사용자 단말(410) 및 제2 사용자 단말(420)과 통신하며, 사용자 단말(410, 420)로/으로부터 자동화 프로세스의 맞춤형 스크립트를 생성(작성)하는데 필요한 데이터를 전송/수신한다.
상기 사용자 단말(410, 420)은 자동화 프로세스의 맞춤형 스크립트를 직관적으로 생성하는 데에 관심을 가진 자가 통신 네트워크를 통하여 상기 로보틱 자동화 서버(430)에 접속한 후 통신할 수 있도록 하는 기능을 포함하는 디지털 기기로서, 개인용 컴퓨터(예를 들어, 데스크탑 컴퓨터, 노트북 컴퓨터 등), 워크스테이션, PDA, 웹 패드, 이동 전화기 등과 같이 메모리 수단을 구비하고 마이크로 프로세서를 탑재하여 연산 능력을 갖춘 디지털 기기라면 얼마든지 본 발명에 따른 사용자 단말(410, 420)로서 채택될 수 있다.
한편, 상기 인터페이스부(131)는 로보틱 자동화 서버(430)가 사용자 단말(410, 420)과 통신을 수행할 수 있도록 인터페이싱하며, 자동화 프로세스의 맞춤형 스크립트 생성을 위한 데이터의 전송 및 수신을 위해 필요한 그래픽 사용자 인터페이스를 상기 사용자 단말(410, 420)에 제공할 수 있다.
상기 제어부(132)는 상술한 바와 같은 인터페이스부(131)와, 후술할 처리부(133), 데이터베이스 관리부(134) 및 스크립트 생성부(135) 간의 데이터의 흐름을 제어하는 기능을 수행한다.
상기 처리부(133)는 기작성된 템플릿에 기반하여 유사도 분석을 통해 상기 인터페이스부(131)를 통하여 송수신되는 데이터를 분석하여 상기 자동화 프로세스의 맞춤형 스크립트 생성을 위한 각종 처리를 수행한다. 본 발명에 따른 이러한 처리 과정은 후술하기로 한다.
상기 처리부(133)는 로보틱 프로세스 자동화(Robotic Process Automation, RPA) 모델에 기반하여 기작성된 템플릿들에 대한 제1 시퀀스 요소를 추출하여 해당 템플릿에 대응하여 저장하고, 상기 액션 입력의 제2 시퀀스 요소를 추출한다.
상기 제1 시퀀스 요소는, 업무 종류, 시나리오, 사용 함수, 이벤트 종류, 이벤트 내용, 이벤트 속성, 입력 변수 속성, 출력 내용, 및 스크립트 코드 등을 포함한다. 한편, 상기 제2 시퀀스 요소는, RPA 모델에 근거하여 상기 액션입력에 따라 획득한 업무흐름, 업무 종류, 이벤트 종류, 이벤트 내용, 이벤트 속성, 입력 변수 속성, 및 출력 내용 등을 포함한다.
한편, 상기 사용자 단말(410, 420)을 통한 액션 입력은 트리거, 화면 전환, 마우스 입력, 키보드 입력 및 터치 입력 중 선택되는 적어도 하나인 것을 특징으로 할 수 있다.
상기 데이터베이스 관리부(134)는, 기작성된 템플릿을 저장하고 있는 템플릿 데이터베이스(134a), 상기 각 템플릿으로부터 추출된 템플릿 특성을 저장하고 있는 템플릿 특성 데이터베이스(134b), 상기 각 템플릿에 대응하는 스크립트를 저장하고 있는 스크립트 저장 데이터베이스(134c), 사용자의 액션 입력에 따른 업무 프로세스 분석 및 그에 따른 맞춤형 스크립트 자동 생성 과정으로부터 학습하여 생성한 로보틱 프로세스 자동화(Robotic Process Automation, RPA) 모델을 저장하고 있는 RPA 데이터베이스(134d), 유사도 분석을 위한 데이터를 저장하고 있는 유사도 분석 데이터베이스(134e), 및 선택한 템플릿에 대한 직관적 수정 및 편집을 위한 데이터를 저장하고 있는 수정편집 데이터베이스(134f) 등을 포함할 수 있다.
상기 실시예에서는, 본 발명의 구현을 위한 정보를 저장하는 데이터베이스를템플릿 데이터베이스(134a), 템플릿 특성 데이터베이스(134b), 스크립트 저장 데이터베이스(134c), RPA 모델 데이터베이스(134d), 유사도계산 데이터베이스(134e) 및 수정 편집 데이터베이스(134f)의 여섯 가지 데이터베이스로 분류하였지만, 이러한 분류를 포함한 데이터베이스의 구성은 당업자의 필요에 따라 변경될 수 있다.
한편, 본 발명에 있어서, 데이터베이스란, 협의의 데이터베이스뿐만 아니라, 컴퓨터 파일 시스템에 기반을 둔 데이터 기록 등을 포함하는 넓은 의미의 데이터베이스까지 포함하는 개념으로서, 단순한 연산 처리 로그의 집합이라도 이를 검색하여 소정의 데이터를 추출할 수 있다면 본 발명에서 말하는 데이터베이스에 포함될 수 있음이 이해되어야 한다.
상기 스크립트 생성부(135)는, 상기 처리부(133)에서 추출한 시퀀스 요소를 이용하여 상기 사용자가 자동화하고자 하는 업무를 위한 액션 입력과 기저장된 템플릿을 비교하여 유사도를 계산하고, 유사도가 높은 순서에 따라 기설정 개수의 템플릿들을 추천하고, 상기 추천된 템플릿들 중에 선택되는 템플릿에 대한 수정인터페이스를 출력하고, 수정 및 편집 사항을 반영하여 자동으로 스크립트를 생성한다.
한편, 상기 로보틱 자동화 서버(430)는, 결제서버(미도시됨)와의 데이터 통신을 통해 사용자가 자동화하고자 하는 업무의 자동화 프로세스를 위한 맞춤형 스크립트 생성 서비스를 제공받는 비용을 결제하는데 이용할 수도 있다.
한편, 본 발명에 따른 로보틱 자동화 처리 시스템은 모델링부(미도시됨)를 더 포함한다. 상기 모델리부는, 상기 RPA 모델을 기반으로 추출한 상기 시퀀스 요소의 특성으로부터 학습 및 추론하여 새로운 조건, 특성 및 RPA 모델을 수립하기 위한 학습 및 추론부(미도시됨), 상기 새로운 조건, 업무 흐름, 시퀀스 요소의 분석 및 그에 따른 생성 스크립트의 타당성을 검토하기 위한 타당성 검토부(미도시됨), 및 상기 RPA 모델을 업데이트하기 위한 RPA 모델링부(미도시됨)을 더 포함할 수 있다.
즉, 본 발명에 따른 로보틱 자동화 서버(430)는 빅데이터의 데이터 마이닝 알고리즘 및 머신러닝 알고리즘을 이용하여 RPA 모델을 업데이트하면서, 사용자가 자동화하고자 하는 업무의 자동화 프로세스를 위한 맞춤형 스크립트를 자동으로 제공하는 것을 특징으로 한다.
도 5는 도4의 로보틱 자동화 서버(430)에서 처리부(133)의 일실시예 상세 구성도이다.
도 5에 도시된 바와 같이, 본 발명에 따른 로보틱 자동화 서버(430)의 처리부(133)는, 템플릿 분할부(501), 템플릿 분석부(502), 제1 시퀀스 요소 추출부(503), 특성 저장부(504), 데이터 변환부(505), 및 제2 시퀀스 요소 추출부(506)를 포함한다.
상기 템플릿 분할부(501)는 상기 템플릿 데이터베이스(134a)로부터 전달받은 각 템플릿에 대하여 업무 특성 및 업무 흐름에 따라 분할한다.
상기 템플릿 분석부(502)는 상기 RPA 모델에 기반하여 상기 분할된 템플릿의 구성 요소를 분석한다.
상기 제1 시퀀스 요소 추출부(503)는 상기 분석된 템플릿의 구성 요소로부터 제1 시퀀스 요소를 추출한다.
상기 특성 저장부(504)는 상기 제1 시퀀스 요소를 해당 템플릿 특성 데이터베이스(134b)에 저장한다.
상기 데이터 변환부(505)는 상기 사용자 단말(410, 420)을 통한 액션 입력으로부터 사용자 입력 데이터를 프로세스 요소로 변환한다.
상기 제2 시퀀스 요소 추출부(506)는 상기 RPA 모델에 기반하여 상기 변환된 프로세스 요소로부터 시퀀스 요소를 추출한다.
상기 제1 시퀀스 요소는, 상기 템플릿 특성 데이터베이스(134b)에 저장되고, 템플릿 특성벡터 형태로 사용되고, 상기 제2 시퀀스 요소는, 사용자 특성벡터 형태로 사용된다.
도 6은 도 4의 로보틱 자동화 서버(430)에서 스크립트 생성부(135)의 일실시예 상세 구성도이다.
도 6에 도시된 바와 같이, 본 발명에 따른 로보틱 자동화 서버(430)의 스크립트 생성부(135)는, 데이터 수신처리부(601), 유사도 계산부(602), 템플릿 추천부(603), 템플릿 선택부(604), 수정인터페이스 출력부(605), 스크립트 작성부(606), 및 오류 검출부(607)를 포함한다.
상기 데이터 수신처리부(601)는 상기 템플릿 특성벡터 및 상기 사용자 특성벡터를 처리한다.
상기 데이터 수신처리부(601)는 유사도 계산을 위해 다수의 각 템플릿에 대하여 다수의 특성들을 벡터(vector)의 형태로 사용하는 상기 템플릿 특성벡터 내부의 형식이나 위치를 조정한다. 또한, 상기 데이터 수신처리부(601)는 유사도 계산을 위해 상기 사용자 단말을 통한 액션 입력으로부터 획득한 사용자 특성벡터의 형식이나 벡터 구성요소들의 위치를 조정한다.
상기 유사도 계산부(602)는 상기 유사도 분석 데이터베이스(134e)에 근거하여, 상기 템플릿 특성벡터 및 상기 사용자 특성벡터의 유사도를 계산한다.
상기 템플릿 추천부(603)는 상기 기저장된 템플릿 중에서, 상기 계산한 유사도가 높은 순서에 따라 기설정 개수의 템플릿들을 결정하여 추천한다.
한편, 상기 템플릿 추천부(603)는 다수의 기작성된 템플릿이 병합되어 상기 사용자가 자동화하고자 하는 업무 프로세스를 수행할 수 있는 방법에 대해서도 추천해 줄 수 있다.
상기 템플릿 선택부(604)는 상기 템플릿 추천부(603)에서 추천한 템플릿들 중에서 상기 사용자 단말(410, 420)을 통한 선택을 입력받는다.
상기 수정인터페이스 출력부(605)는 상기 템플릿 선택부(604)에서의 선택 입력에 따라, 해당 템플릿을 상기 사용자가 자동화하고자 하는 업무로 수정하는 수정인터페이스를 출력한다.
상기 스크립트 작성부(606)는 상기 수정인터페이스 출력부(605)를 통해 수정 및 편집된 내용에 근거하여 상기 사용자가 자동화하고자 하는 업무의 맞춤형 스크립트를 작성한다.
상기 오류 검출부(607)는 상기 작성한 스크립트의 실행시 발생하는 오류의 디버깅을 수행한다.
상기 유사도 계산부(602)는, 코사인 유사도(내적 계수), 유클리디안 유사도, 맨하튼 유사도, 삼각혁 면적 유사도(Triangle's Area Similarity, TS), 부채꼴 면적 유사도(Sector's Area Similarity, SS), 및 피어슨 유사도(Pearson Similarity) 중 적어도 한 개 이상을 사용하여 유사도를 계산할 수 있다.
즉, 상기 유사도 계산부(602)는, 코사인 유사도(내적 계수), 유클리디안 유사도, 맨하튼 유사도, 삼각혁 면적 유사도, 부채꼴 면적 유사도, 및 피어슨 유사도 중 적어도 두 개 이상의 조합으로 유사도를 계산 및 측정하는 것이 가능하다.
상기 코사인 유사도는 두 벡터를 단위 벡터화시킨 뒤 내적하여 계산한. 두 백터가 이루는 각도가 작을수록 코사인 유사도는 커지므로, 벡터의 크기와 상관없이 특정 단어가 등장한 비율만을 유사도 계산에 반영한다는 특징이 있다. 범위는 0 내지 1이며 1이면 완전 일치, 0이면 두 벡터가 완전 불일치가 된다.
상기 코사인 유사도는 하기 [수학식 1]과 같이 계산된다.
[수학식 1]
Figure 112021062492820-pat00001
여기서, A, B는 두 벡터이고, CosSim(A,B)는 A 벡터와 B 벡터의 코사인 유사도이다.
상기 유클리디안 유사도는 전통적인 좌표 평면 상의 거리 계산 공식을 이용한다. 두 벡터를 좌표 상에 찍었을 때 실제로 얼마나 가까이 위치하는지를 보는 것이다. 이 경우는 두 벡터가 이루는 각도는 무시되고 거리만 유사도 계산에 반영된다. 이 경우 거리가 0인 경우 완전 일치하고, 그 값이 커질수록 유사하지 않다고 판단한다.
상기 유클리디안 유사도는 하기 [수학식 2]와 같이 계산된다.
[수학식 2]
Figure 112021062492820-pat00002
여기서, A, B는 두 벡터이고, EucDist(A,B)는 A 벡터와 B 벡터의 유클리디안 유사도(유클리디안 거리)이다.
한편, 유클리드 거리가 대각선으로 최단 거리를 재는 방법이라면, 상기 맨하튼 유사도는 경우 군인이 직각보행 하는 것 같이 대각선 없이 축 방향으로만 직각으로 이동하여 거리를 측정하는 방법이다. 대체적으로 유클리도 거리와 유사한 성질을 가지나 더 품질이 낮은 경향이 있다. 이 경우 역시 거리가 0인 경우 완전 일치하고, 그 값이 커질수록 유사하지 않다고 판단한다.
상기 맨하튼 유사도는 하기 [수학식 3]과 같이 계산한다.
[수학식 3]
Figure 112021062492820-pat00003
여기서, A, B는 두 벡터이고, MabDist(A,B)는 A 벡터와 B 벡터의 맨하튼 유사도이다.
한편, 상기 삼각혁 면적 유사도는, 두 벡터 A,B와 원점이 이루는 삼각형의 넓이를 통해 유사도를 계산한다. 당연히 삼각형 면적은 0 이상의 값일 것이고, 0일 때 가장 유사하다. 두 선분(벡터)의 길이와 그 끼인각을 알 때 삼각형 넓이는 하기 [수학식 4]과 같이 계산된다.
[수학식 4]
Figure 112021062492820-pat00004
(여기서, S는 삼각형의 넓이, a는 벡터 A의 길이, b는 벡터 B의 길이, θs는 두 벡터 사이의 끼인각)
다만 [수학식 4]를 그대로 이용할 경우 A와 B가 같은 각도를 이룰 경우 항상 넓이가 0이 되므로 θ값을 10도 늘려서 사용한다. 즉 정리하면 하기 [수학식 5]와 같이 계산한다. (여기서 α = 10도)
[수학식 5]
Figure 112021062492820-pat00005
여기서, A, B는 두 벡터이고, θ는 두 벡터 사이의 끼인각, α는 오프셋각이고, TS(A, B)는 삼각형 면적 유사도이다.
한편, 상기 부채꼴 면적 유사도는 두 벡터 간의 유클리드 거리에 벡터의 크기 차이를 합한 값을 반지름으로 하는 부채꼴을 그려서 그 넓이를 유사도로 사용한다. 그때 부채꼴의 각으로는 상기 [수학식 5]에서 사용하는 끼인각과 같이 θ+α를 사용한다. 반지름과 그 각을 알 때 부채꼴의 넓이는 하기 [수학식 6]과 같이 계산된다.
[수학식 6]
Figure 112021062492820-pat00006
(여기서, S는 부채꼴의 넓이, r은 부채꼴의 반지름, θ는 두 벡터 사이의 끼인각)
상기 [수학식 6]에서 부채꼴의 반지름은 두 벡터 간의 유클리드 거리에 벡터의 크기 차이를 합한 값으로, 하기 [수학식 7]과 같이 계산한다.
[수학식 7]
Figure 112021062492820-pat00007
여기서, r은 부채꼴의 반지름,A, B는 두 벡터이고, EucDist(A,B)는 A 벡터와 B 벡터의 유클리디안 거리이다.
[수학식 8]
Figure 112021062492820-pat00008
여기서, A, B는 두 벡터이고, θ는 두 벡터 사이의 끼인각, α는 오프셋각이고, SS(A, B)는 부채꼴 면적 유사도이다.
한편, 상기 피어슨 유사도는 두 변수 X 와 Y 간의 선형 상관 관계를 계량화한 수치인 피어슨 상관 계수(Pearson Correlation Coefficient, PCC)를 이용한 유사도 측정 방법이다. 피어슨 상관 계수는 코시-슈바르츠 부등식에 의해 +1과 -1 사이의 값을 가지며, +1은 완벽한 양의 선형 상관 관계, 0은 선형 상관 관계 없음, -1은 완벽한 음의 선형 상관 관계를 의미한다.
피어슨 상관 계수는 등간척도나 비례척도의 데이타에서 두 변수의 공분산 을 표준 편차의 곱으로 나눈 값으로 하기 [수학식 9] 및 [수학식 10]과 같이 계산한다.
[수학식 9]
Figure 112021062492820-pat00009
[수학식 10]
Figure 112021062492820-pat00010
도 7은 본 발명에 따른 자동화 업무 플로우의 개선 프로세스를 추천하는 로보틱 처리 자동화 시스템의 일실시예 구성도이다.
도 7에 도시된 바와 같이, 본 발명에 따른 자동화 업무 플로우의 개선 프로세스를 추천하는 로보틱 처리 자동화 시스템은, 자동화 프로세스의 맞춤형 스크립트를 생성하되, 자동화 업무 플로우를 실행하도록 기생성된 각 템플릿에서 분할된 어느 하나의 프로세스에 대하여 개선을 위한 성능 모델을 설계하고, 상기 성능 모델에 근거하여 추론된 다수의 후보 프로세스들에 대하여 성능 점수가 가장 높은 후보 프로세스를 상기 템플릿의 개선된 프로세스로 추천하는 로보틱 자동화 서버(430) 및 상기 로보틱 자동화 서버(430)에 접속하여 사용자가 자동화하고자 하는 업무를 위한 액션 입력에 따른 맞춤형 스크립트를 제공받고, 자동화 업무 플로우를 실행하도록 기생성된 각 템플릿에서 성능 모델에 근거하여 개성된 프로세스를 추천받는 다수의 사용자 단말(410, 420)을 포함한다.
통신 네트워크를 통하여 제1 사용자 단말(410) 및 제2 사용자 단말(420)과 통신하는 상기 로보틱 자동화 서버(430)는 인터페이스부(131), 제어부(132), 처리부(133), 데이터베이스 관리부(134), 스크립트 생성부(135) 및 프로세스 개선부(136) 등을 포함한다. 상기 인터페이스부(131), 상기 제어부(132), 상기 처리부(133), 상기 데이터베이스 관리부(134), 상기 스크립트 생성부(135), 및 상기 프로세스 개선부(136)는 그 중 적어도 일부가 로보틱 자동화 서버(430)와 통신하는 프로그램 모듈들일 수 있다. 이러한 프로그램 모듈들은 운영 시스템, 응용 프로그램 모듈 및 기타 프로그램 모듈의 형태로 로보틱 자동화 서버(430)에 포함될 수 있으며, 물리적으로는 여러 가지 공지의 기억 장치 상에 저장될 수 있다. 또한, 이러한 프로그램 모듈들은 로보틱 자동화 서버(430)과 통신 가능한 원격 기억 장치에 저장될 수도 있다. 한편, 이러한 프로그램 모듈들은 본 발명에 따라 후술할 특정 업무를 수행하거나 특정 추상 데이터 유형을 실행하는 루틴, 서브루틴, 프로그램, 오브젝트, 컴포넌트, 데이터 구조 등을 포괄하지만, 이에 제한되지는 않는다.
여기서, 통신 네트워크는 유선 및 무선 등과 같은 그 통신 양태를 가리지 않고 구성될 수 있으며, 근거리 통신망(LAN; Local Area Network), 도시권 통신망(MAN; Metropolitan Area Network), 광역 통신망(WAN; Wide Area Network) 등 다양한 통신망으로 구성될 수 있다. 바람직하게는, 본 발명에서 말하는 통신 네트워크는 공지의 월드와이드웹(WWW; World Wide Web)일 수 있다.
상기 로보틱 자동화 서버(430)는 통신 네트워크를 통하여 제1 사용자 단말(410) 및 제2 사용자 단말(420)과 통신하며, 사용자 단말(410, 420)로/으로부터 자동화 프로세스의 맞춤형 스크립트를 생성(작성)하는데 필요한 데이터를 전송/수신한다.
상기 사용자 단말(410, 420)은 자동화 프로세스의 맞춤형 스크립트를 직관적으로 생성하는 데에 관심을 가진 자가 통신 네트워크를 통하여 상기 로보틱 자동화 서버(430)에 접속한 후 통신할 수 있도록 하는 기능을 포함하는 디지털 기기로서, 개인용 컴퓨터(예를 들어, 데스크탑 컴퓨터, 노트북 컴퓨터 등), 워크스테이션, PDA, 웹 패드, 이동 전화기 등과 같이 메모리 수단을 구비하고 마이크로 프로세서를 탑재하여 연산 능력을 갖춘 디지털 기기라면 얼마든지 본 발명에 따른 사용자 단말(410, 420)로서 채택될 수 있다.
한편, 상기 인터페이스부(131)는 로보틱 자동화 서버(430)가 사용자 단말(410, 420)과 통신을 수행할 수 있도록 인터페이싱하며, 자동화 프로세스의 맞춤형 스크립트 생성을 위한 데이터의 전송 및 수신을 위해 필요한 그래픽 사용자 인터페이스를 상기 사용자 단말(410, 420)에 제공할 수 있다.
상기 제어부(132)는 상술한 바와 같은 인터페이스부(131)와, 후술할 처리부(133), 데이터베이스 관리부(134), 스크립트 생성부(135) 및 프로세스 개선부(136) 간의 데이터의 흐름을 제어하는 기능을 수행한다.
상기 처리부(133)는 기작성된 템플릿에 기반하여 유사도 분석을 통해 상기 인터페이스부(131)를 통하여 송수신되는 데이터를 분석하여 상기 자동화 프로세스의 맞춤형 스크립트 생성을 위한 각종 처리를 수행한다. 본 발명에 따른 이러한 처리 과정은 후술하기로 한다.
상기 처리부(133)는 로보틱 프로세스 자동화(Robotic Process Automation, RPA) 모델에 기반하여 기작성된 템플릿들에 대한 제1 시퀀스 요소를 추출하여 해당 템플릿에 대응하여 저장하고, 상기 액션 입력의 제2 시퀀스 요소를 추출한다.
상기 제1 시퀀스 요소는, 업무 종류, 시나리오, 사용 함수, 이벤트 종류, 이벤트 내용, 이벤트 속성, 입력 변수 속성, 출력 내용, 및 스크립트 코드 등을 포함한다. 한편, 상기 제2 시퀀스 요소는, RPA 모델에 근거하여 상기 액션입력에 따라 획득한 업무흐름, 업무 종류, 이벤트 종류, 이벤트 내용, 이벤트 속성, 입력 변수 속성, 및 출력 내용 등을 포함한다.
한편, 상기 사용자 단말(410, 420)을 통한 액션 입력은 트리거, 화면 전환, 마우스 입력, 키보드 입력 및 터치 입력 중 선택되는 적어도 하나인 것을 특징으로 할 수 있다.
상기 데이터베이스 관리부(134)는, 기작성된 템플릿을 저장하고 있는 템플릿 데이터베이스(134a), 상기 각 템플릿으로부터 추출된 템플릿 특성을 저장하고 있는 템플릿 특성 데이터베이스(134b), 상기 각 템플릿에 대응하는 스크립트를 저장하고 있는 스크립트 저장 데이터베이스(134c), 사용자의 액션 입력에 따른 업무 프로세스 분석 및 그에 따른 맞춤형 스크립트 자동 생성 과정으로부터 학습하여 생성한 로보틱 프로세스 자동화(Robotic Process Automation, RPA) 모델을 저장하고 있는 RPA 데이터베이스(134d), 유사도 분석을 위한 데이터를 저장하고 있는 유사도 분석 데이터베이스(134e), 선택한 템플릿에 대한 직관적 수정 및 편집을 위한 데이터를 저장하고 있는 수정편집 데이터베이스(134f), 및 프로세스의 개선을 위한 성능 모델 변수의 설정 방법 및 성능 모델 변수 설정에 따른 후보 프로세스 추론을 위한 데이터를 저장하고 있는 성능 모델 데이터베이스(134g) 등을 포함할 수 있다.
상기 실시예에서는, 본 발명의 구현을 위한 정보를 저장하는 데이터베이스를템플릿 데이터베이스(134a), 템플릿 특성 데이터베이스(134b), 스크립트 저장 데이터베이스(134c), RPA 모델 데이터베이스(134d), 유사도계산 데이터베이스(134e), 수정 편집 데이터베이스(134f), 및 성능 모델 데이터베이스(134g)의 일곱 가지 데이터베이스로 분류하였지만, 이러한 분류를 포함한 데이터베이스의 구성은 당업자의 필요에 따라 변경될 수 있다.
한편, 본 발명에 있어서, 데이터베이스란, 협의의 데이터베이스뿐만 아니라, 컴퓨터 파일 시스템에 기반을 둔 데이터 기록 등을 포함하는 넓은 의미의 데이터베이스까지 포함하는 개념으로서, 단순한 연산 처리 로그의 집합이라도 이를 검색하여 소정의 데이터를 추출할 수 있다면 본 발명에서 말하는 데이터베이스에 포함될 수 있음이 이해되어야 한다.
상기 스크립트 생성부(135)는, 상기 처리부(133)에서 추출한 시퀀스 요소를 이용하여 상기 사용자가 자동화하고자 하는 업무를 위한 액션 입력과 기저장된 템플릿을 비교하여 유사도를 계산하고, 유사도가 높은 순서에 따라 기설정 개수의 템플릿들을 추천하고, 상기 추천된 템플릿들 중에 선택되는 템플릿에 대한 수정인터페이스를 출력하고, 수정 및 편집 사항을 반영하여 자동으로 스크립트를 생성한다.
한편, 상기 로보틱 자동화 서버(430)는, 결제서버(미도시됨)와의 데이터 통신을 통해 사용자가 자동화하고자 하는 업무의 자동화 프로세스를 위한 맞춤형 스크립트 생성 서비스를 제공받는 비용을 결제하는데 이용할 수도 있다.
한편, 본 발명에 따른 로보틱 자동화 처리 시스템은 모델링부(미도시됨)를 더 포함한다. 상기 모델리부는, 상기 RPA 모델을 기반으로 추출한 상기 시퀀스 요소의 특성으로부터 학습 및 추론하여 새로운 조건, 특성 및 RPA 모델을 수립하기 위한 학습 및 추론부(미도시됨), 상기 새로운 조건, 업무 흐름, 시퀀스 요소의 분석 및 그에 따른 생성 스크립트의 타당성을 검토하기 위한 타당성 검토부(미도시됨), 및 상기 RPA 모델을 업데이트하기 위한 RPA 모델링부(미도시됨)을 더 포함할 수 있다.
즉, 본 발명에 따른 로보틱 자동화 서버(430)는 빅데이터의 데이터 마이닝 알고리즘 및 머신러닝 알고리즘을 이용하여 RPA 모델을 업데이트하면서, 사용자가 자동화하고자 하는 업무의 자동화 프로세스를 위한 맞춤형 스크립트를 자동으로 제공하는 것을 특징으로 한다.
또한, 본 발명에 따른 로보틱 자동화 서버(430)의 프로세스 개선부(136)는 자동화 업무 플로우를 실행하도록 기생성된 각 템플릿에서 프로세스의 개선을 위한 성능 모델을 설계하고, 상기 성능 모델에 근거하여 추론된 다수의 후보 프로세스들에 대하여 성능 점수가 가장 높은 후보 프로세스를 추천하여 자동화 업무 플로우의 성능이 개선되도록 하는 것을 특징으로 한다.
도 7의 로보틱 자동화 서버(430)의 처리부(133) 및 스크립트 생성부(135)는 도 4의 로보틱 자동화 서버(430)의 처리부(133) 및 스크립트 생성부(135)와 구성이 동일하며, 각각 도 5 및 도 6에서 상세히 설명하였으므로, 다시 설명하지 않기로 한다.
도 8은 도 7의 로보틱 자동화 서버(430)에서 프로세스 개선부(136)의 일실시예 상세 구성도이다.
도 8에 도시된 바와 같이, 본 발명에 따른 로보틱 자동화 서버(430)의 프로세스 개선부(136)는, 프로세스 분할부(801), 상호연관성 분석부(802), 성능 모델 설계부(803), 프로세스 추론부(804), 계산부(805) 및 프로세스 추천부(806)를 포함한다.
상기 프로세스 분할부(801)는 기생성된 템플릿의 프로세스를 다수의 개별 프로세스로 분할한다.
상기 상호연관성 분석부(802)는 템플릿 특성 데이터베이스(134b)에 저장된 상기 기생성된 템플릿의 특성에 기반하여 다수의 다른 템플릿들로부터 상호 연관되는 구성요소를 획득한다.
상기 성능 모델 설계부(803)는 상기 획득한 상호 연관되는 구성요소에 대응하는 프로세스의 개선을 위한 성능 모델을 설계한다.
성능 모델과 관련하여 설명하면 다음과 같다.
현실세계에서 일어나는 현상에 대해서 근본원리를 이해하고자 할 때 수학적 모델을 정립하여 활용하곤 한다. 즉 어떤 현상의 특성 및 구조를 가장 잘 대표하는 변수들을 찾아내고, 그 변수들의 상관관계를 수식적으로 재구성함으로써 수학적 가상공간을 설정하고, 수식과 논리의 해법을 통해 의미 있는 결론 혹은 현상을 이해하게 된다. 그런 다음 현실세계의 현상에 다시 적용함으로써 복잡하게만 보이는 현상을 이해할 수 있고, 하나의 변수가 변화할 경우 어떻게 현상이 진행될 것인가를 예측할 수 있게 된다.
정보 기술 분야도 마찬가지다. 정보 시스템에 대한 성능 분석 활동 - 벤치마크, 성능 테스트, 용량 계획- 의 근본원리를 이해하기 위해서는 수학적 모델에 기반한 성능 모델 정립은 반드시 필요하다. 지난 80년대를 풍미했던 IBM 메인프레임부터 90년대 CS시스템/TP-MONITOR에 이르기까지 여러 시대에 걸쳐 다양한 분야에 활용되고 있는 수학적 모델은 큐잉 이론이다. 이 이론은 복잡한 정보 시스템을 단일 큐 또는 단일 큐들의 조합으로 구성된 큐잉 네트워크로 표현하고, 성능 모델 변수들간의 상관관계를 수식으로 계산하여 시스템 성능을 예측하는데 활용되고 있다.
상기 프로세스 추론부(804)는 상기 성능 모델에 근거하여 다수의 후보 프로세스들을 추론한다. 후보 프로세스들은 상기 성능 모델 변수들의 제어로 생성된다.
상기 계산부(805)는 상기 다수의 후보 프로세스들에 대한 성능 점수를 계산한다.
각 후보 프로세스에 대한 성능 점수는, 응답시간(reponse time), 대기시간(think time), 호출 간격(request interval), 동시 사용자(concurrent user), 엑티브 사용자(active user), 처리율(throughput), 처리율과 응담시간 상관관계, 및 CPU 사용률과 응답시간 상관관계 중 적어도 어느 하나 이상에 대하여 시뮬레이션 하여 측정 및 추정하여 점수로 환산하여 얻을 수 있다.
상기 프로세스 추천부(806)는 상기 성능 점수 중 가장 높은 점수를 가지는 후보 프로세스를 상기 해당 프로세스로 추천하여 해당 템플릿의 자동화 업무 플로우를 최적화 한다.
본 발명은 상기한 실시예에 한정되지 아니하며, 적용범위가 다양함은 물론이고, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 다양한 변형 실시가 가능한 것은 물론이다.
100: 모델링도구모듈
110: 흐름도집합창 120: 모델링작업창
130: 속성정의창 140: 변수정의창
200: 자동실행모듈
300: 템플릿툴모듈
400: 컨트롤센터
410: 제1 사용자 단말 420: 제2 사용자 단말
430: 로보틱 자동화 서버
131: 인터페이스부 132: 제어부
133: 처리부 134: 데이터베이스 관리부
135: 스크립트 생성부 136: 프로세스 개선부
501: 템플릿 분할부 502: 템플릿 분석부
503: 제1 시퀀스 요소 추출부 504: 특성 저장부
505: 데이터 변환부 506: 제2 시퀀스 요소 추출부
601: 데이터 수신처리부 602: 유사도 계산부
603: 템플릿 추천부 604: 템플릿 선택부
605: 수정인터페이스 출력부 606: 스크립트 작성부
607: 오류 검출부
801: 프로세스 분할부 802: 상호연관성 분석부
803: 성능 모델 설계부 804: 프로세스 추론부
805: 계산부 806: 프로세스 추천부

Claims (8)

  1. 컴퓨터를 포함하는 연산처리수단에 의하여 실행되는 프로그램 형태로 이루어지는 자동화 업무 플로우의 개선 프로세스를 추천하는 로보틱 처리 자동화 시스템에 있어서,
    자동화 프로세스의 맞춤형 스크립트를 생성하되, 자동화 업무 플로우를 실행하도록 기생성된 각 템플릿에서 분할된 어느 하나의 프로세스에 대하여 개선을 위한 성능 모델을 설계하고, 상기 성능 모델에 근거하여 추론된 다수의 후보 프로세스들에 대하여 성능 점수가 가장 높은 후보 프로세스를 상기 템플릿의 개선된 프로세스로 추천하는 로보틱 자동화 서버(430); 및
    상기 로보틱 자동화 서버에 접속하여 사용자가 자동화하고자 하는 업무를 위한 액션 입력에 따른 맞춤형 스크립트를 제공받고, 자동화 업무 플로우를 실행하도록 기생성된 각 템플릿에서 성능 모델에 근거하여 개성된 프로세스를 추천받는 사용자 단말(410, 420)
    을 포함하고,
    상기 로보틱 자동화 서버(430)는,
    자동화 프로세스의 맞춤형 스크립트 생성을 위한 데이터의 전송 및 수신을 위해 필요한 그래픽 사용자 인터페이스를 상기 사용자 단말에 제공하기 위한 인터페이스부(131);
    상기 인터페이스부를 통하여 송수신되는 데이터를 분석하여 상기 자동화 프로세스의 맞춤형 스크립트 생성을 위한 각종 처리를 수행하기 위한 처리부(133);
    상기 사용자가 자동화하고자 하는 업무의 스크립트를 생성하는데 필요한 데이터를 저장하고 있는 데이터베이스 관리부(134);
    스크립트를 생성하기 위한 스크립트 생성부(135);
    자동화 업무 플로우를 실행하도록 기생성된 각 템플릿에 대하여 다수의 다른 템플릿들로부터 상호 연관되는 구성요소를 찾아 그에 대응하는 프로세스의 개선을 위한 성능 모델을 설계하고, 상기 성능 모델에 근거하여 추론된 다수의 후보 프로세스들에 대하여 성능 점수가 가장 높은 후보 프로세스를 추천하기 위한 프로세스 개선부(136); 및
    상기 인터페이스부, 상기 처리부, 상기 데이터베이스 관리부, 상기 스크립트 생성부 및 상기 프로세스 개선부 간의 데이터 흐름를 제어하기 위한 제어부(132)
    를 포함하는 것을 특징으로 하고,
    상기 템플릿은, 특정 업무 영역을 자동화하기 위한 시퀀스 요소를 가지는 업무 프로세스의 기본 구성 형식 및 디자인 양식과, 이로부터 생성되는 스크립트 코드를 포함하여 구성되는 것을 특징으로 하고,
    상기 처리부(133)는,
    로보틱 프로세스 자동화(Robotic Process Automation, RPA) 모델에 기반하여 기작성된 템플릿들에 대한 제1 시퀀스 요소를 추출하여 해당 템플릿에 대응하여 저장하고, 상기 액션 입력의 제2 시퀀스 요소를 추출하는 것을 특징으로 하고,
    상기 데이터베이스 관리부(134)는,
    템플릿 데이터베이스(134a), 템플릿 특성 데이터베이스(134b), 스크립트 데이터베이스(134c), RPA 모델 데이터베이스(134d), 유사도 분석 데이터베이스(134e), 수정편집 데이터베이스(134f)를 포함하는 것을 특징으로 하고,
    상기 제1 시퀀스 요소는,
    업무 종류, 시나리오, 사용 함수, 이벤트 종류, 이벤트 내용, 이벤트 속성, 입력 변수 속성, 출력 내용, 및 스크립트 코드를 포함하는 것을 특징으로 하고,
    상기 제2 시퀀스 요소는,
    RPA 모델에 근거하여 상기 액션입력에 따라 획득한 업무흐름, 업무 종류, 이벤트 종류, 이벤트 내용, 이벤트 속성, 입력 변수 속성, 및 출력 내용을 포함하는 것을 특징으로 하고,
    상기 처리부(133)는,
    상기 템플릿 데이터베이스로부터 전달받은 다수의 템플릿에 대하여 업무 특성 및 업무 흐름에 따라 분할하기 위한 템플릿 분할부(501);
    상기 RPA 모델에 기반하여 상기 분할된 템플릿의 구성 요소를 분석하기 위한 템플릿 분석부(502);
    상기 분석된 템플릿의 구성 요소로부터 제1 시퀀스 요소를 추출하기 위한 제1 시퀀스 요소 추출부(503);
    상기 제1 시퀀스 요소를 해당 템플릿 특성 데이터베이스에 저장하기 위한 특성 저장부(504);
    상기 사용자 단말을 통한 액션 입력으로부터 사용자 입력 데이터를 프로세스 요소로 변환하기 위한 데이터 변환부(505); 및
    상기 변환된 프로세스 요소로부터 제2 시퀀스 요소를 추출하기 위한 제2 시퀀스 요소 추출부(506)
    를 포함하는 것을 특징으로 하고,
    상기 제1 시퀀스 요소는,
    상기 템플릿 특성 데이터베이스에 저장되고, 템플릿 특성벡터 형태로 사용되는 것을 특징으로 하고,
    상기 제2 시퀀스 요소는,
    사용자 특성벡터 형태로 사용되는 것을 특징으로 하고,
    상기 스크립트 생성부(135)는,
    상기 템플릿 특성벡터 및 상기 사용자 특성벡터를 처리하기 위한 데이터 수신처리부(601);
    상기 유사도 분석 데이터베이스에 근거하여, 상기 템플릿 특성벡터 및 상기 사용자 특성벡터의 유사도를 계산하기 위한 유사도 계산부(602);
    상기 기저장된 템플릿 중에서, 상기 계산한 유사도가 높은 순서에 따라 기설정 개수의 템플릿들을 결정하여 추천하기 위한 템플릿 추천부(603);
    상기 템플릿 추천부에서 추천한 템플릿들 중에 상기 사용자 단말을 통해 선택을 입력받는 템플릿 선택부(604);
    상기 템플릿 선택부에서의 선택 입력에 따라, 해당 템플릿을 상기 사용자가 자동화하고자 하는 업무로 수정하는 수정인터페이스를 출력하기 위한 수정인터페이스 출력부(605);
    상기 수정인터페이스 출력부를 통해 수정 및 편집된 내용에 근거하여 상기 사용자가 자동화하고자 하는 업무의 맞춤형 스크립트를 작성하기 위한 스크립트 작성부(606); 및
    상기 작성한 스크립트의 실행시 발생하는 오류의 디버깅을 수행하기 위한 오류 검출부(607)
    를 포함하는 것을 특징으로 하고,
    상기 유사도 계산부(602)는,
    코사인 유사도, 유클리디안 유사도, 맨하튼 유사도, 삼각혁 면적 유사도, 부채꼴 면적 유사도, 및 피어슨 유사도 중 적어도 한 개 이상을 사용하여 유사도를 계산하는 것을 특징으로 하고,
    상기 템플릿 추천부(603)는,
    기작성된 템플릿이 다수 병합되는 방법을 추천하는 것을 특징으로 하는 자동화 업무 플로우의 개선 프로세스를 추천하는 로보틱 처리 자동화 시스템.
  2. 제1항에 있어서,
    상기 프로세스 개선부(136)는,
    기생성된 템플릿의 프로세스를 분할하기 위한 프로세스 분할부(801);
    템플릿 특성 데이터베이스에 기반하여 다수의 다른 템플릿들로부터 상호 연관되는 구성요소를 획득하기 위한 상호연관성 분석부(802);
    상기 획득한 상호 연관되는 구성요소에 대응하는 프로세스의 개선을 위한 성능 모델을 설계하기 위한 성능 모델 설계부(803);
    상기 성능 모델에 근거하여 다수의 후보 프로세스들을 추론하기 위한 프로세스 추론부(804);
    상기 다수의 후보 프로세스들에 대한 성능 점수를 계산하기 위한 계산부(805); 및
    상기 성능 점수 중 가장 높은 점수를 가지는 후보 프로세스를 상기 해당 프로세스로 추천하기 위한 프로세스 추천부(806)
    를 포함하는 것을 특징으로 하는 자동화 업무 플로우의 개선 프로세스를 추천하는 로보틱 처리 자동화 시스템.
  3. 제2항에 있어서,
    상기 데이터베이스 관리부(134)는,
    프로세스의 개선을 위한 성능 모델 변수의 설정 방법 및 성능 모델 변수 설정에 따른 후보 프로세스 추론을 위한 데이터를 저장하고 있는 성능 모델 데이터베이스(134g)를 포함하는 것을 특징으로 하고,
    상기 후보 프로세스들은 상기 성능 모델 변수들의 조절에 의해 생성되는 것을 특징으로 하는 자동화 업무 플로우의 개선 프로세스를 추천하는 로보틱 처리 자동화 시스템.


  4. 제3항에 있어서,
    상기 각 후보 프로세스에 대한 성능 점수는,
    응답시간(reponse time), 대기시간(think time), 호출 간격(request interval), 동시 사용자(concurrent user), 엑티브 사용자(active user), 처리율(throughput), 처리율과 응담시간 상관관계, 및 CPU 사용률과 응답시간 상관관계 중 적어도 어느 하나 이상에 대하여 시뮬레이션 하여 측정 및 추정하여 점수로 환산한 것을 특징으로 하는 자동화 업무 플로우의 개선 프로세스를 추천하는 로보틱 처리 자동화 시스템.
  5. 삭제
  6. 삭제
  7. 제1항에 있어서,
    상기 스크립트 생성부(135)는,
    상기 처리부에서 추출한 시퀀스 요소를 이용하여 상기 사용자가 자동화하고자 하는 업무를 위한 액션 입력과 기저장된 템플릿을 비교하여 유사도를 계산하고, 유사도가 높은 순서에 따라 기설정 개수의 템플릿들을 추천하고, 상기 추천된 템플릿들 중에 선택되는 템플릿에 대한 수정인터페이스를 출력하고, 수정 및 편집 사항을 반영하여 자동으로 스크립트를 생성하는 것을 특징으로 하는 자동화 업무 플로우의 개선 프로세스를 추천하는 로보틱 처리 자동화 시스템.
  8. 삭제
KR1020210069911A 2021-05-31 2021-05-31 자동화 업무 플로우의 개선 프로세스를 추천하는 로보틱 처리 자동화 시스템 KR102322885B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210069911A KR102322885B1 (ko) 2021-05-31 2021-05-31 자동화 업무 플로우의 개선 프로세스를 추천하는 로보틱 처리 자동화 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210069911A KR102322885B1 (ko) 2021-05-31 2021-05-31 자동화 업무 플로우의 개선 프로세스를 추천하는 로보틱 처리 자동화 시스템

Publications (1)

Publication Number Publication Date
KR102322885B1 true KR102322885B1 (ko) 2021-11-05

Family

ID=78507796

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210069911A KR102322885B1 (ko) 2021-05-31 2021-05-31 자동화 업무 플로우의 개선 프로세스를 추천하는 로보틱 처리 자동화 시스템

Country Status (1)

Country Link
KR (1) KR102322885B1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102411816B1 (ko) * 2021-12-24 2022-06-22 주식회사 케이씨씨건설 로보틱 처리 자동화(rpa) 포털을 이용한 업무 자동화 서비스 제공방법, 서버 및 컴퓨터프로그램
KR102418739B1 (ko) * 2022-03-29 2022-07-08 주식회사 시메이션 로보틱 자동화 방법 및 이를 수행하기 위한 컴퓨팅 장치
KR102494034B1 (ko) * 2022-09-26 2023-01-31 메이저위드(주) 기업 업무 메뉴얼 표준화 자동화 방법, 장치 및 시스템

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010099047A (ko) 2001-08-17 2001-11-09 전효진 수출서류 자동화 시스템과 그의 문서 관리방법 및 기록매체
KR101345068B1 (ko) * 2013-06-12 2013-12-26 성결대학교 산학협력단 워크플로우 모델링 및 시뮬레이션 시스템 및 방법
KR20150060174A (ko) * 2013-11-26 2015-06-03 신성우 비즈니스 프로세스 자동화를 위한 자동 소스 생성 방법
JP2015201103A (ja) * 2014-04-09 2015-11-12 富士通株式会社 業務記述の管理プログラム、業務記述の管理方法、及び業務記述の管理装置
KR101951719B1 (ko) * 2018-07-26 2019-02-25 (주)비아이매트릭스 그래픽 인터페이스 기반으로 이벤트 동작을 프로그래밍 하는 웹 레포팅 디자인 시스템
KR20210048865A (ko) * 2019-10-24 2021-05-04 삼성에스디에스 주식회사 로봇 프로세스 자동화 장치 및 그것의 변경점 탐지 방법

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010099047A (ko) 2001-08-17 2001-11-09 전효진 수출서류 자동화 시스템과 그의 문서 관리방법 및 기록매체
KR101345068B1 (ko) * 2013-06-12 2013-12-26 성결대학교 산학협력단 워크플로우 모델링 및 시뮬레이션 시스템 및 방법
KR20150060174A (ko) * 2013-11-26 2015-06-03 신성우 비즈니스 프로세스 자동화를 위한 자동 소스 생성 방법
JP2015201103A (ja) * 2014-04-09 2015-11-12 富士通株式会社 業務記述の管理プログラム、業務記述の管理方法、及び業務記述の管理装置
KR101951719B1 (ko) * 2018-07-26 2019-02-25 (주)비아이매트릭스 그래픽 인터페이스 기반으로 이벤트 동작을 프로그래밍 하는 웹 레포팅 디자인 시스템
KR20210048865A (ko) * 2019-10-24 2021-05-04 삼성에스디에스 주식회사 로봇 프로세스 자동화 장치 및 그것의 변경점 탐지 방법

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102411816B1 (ko) * 2021-12-24 2022-06-22 주식회사 케이씨씨건설 로보틱 처리 자동화(rpa) 포털을 이용한 업무 자동화 서비스 제공방법, 서버 및 컴퓨터프로그램
KR102418739B1 (ko) * 2022-03-29 2022-07-08 주식회사 시메이션 로보틱 자동화 방법 및 이를 수행하기 위한 컴퓨팅 장치
KR102494034B1 (ko) * 2022-09-26 2023-01-31 메이저위드(주) 기업 업무 메뉴얼 표준화 자동화 방법, 장치 및 시스템

Similar Documents

Publication Publication Date Title
KR102307471B1 (ko) 로보틱 처리 자동화 시스템
US10943274B2 (en) Automation and digitizalization of document processing systems
US11816455B2 (en) System and method for generating actionable intelligence based on platform and community originated data
KR102322885B1 (ko) 자동화 업무 플로우의 개선 프로세스를 추천하는 로보틱 처리 자동화 시스템
US8271541B2 (en) Method and apparatus for developing composite applications
US9984054B2 (en) Web interface including the review and manipulation of a web document and utilizing permission based control
JP2023511601A (ja) テキストベースの会話におけるユーザへの意図提案を提供するためのユーザインターフェイス、及びプロセスフロー
US20190272071A1 (en) Automatic generation of a hierarchically layered collaboratively edited document view
JP7389522B2 (ja) 高速スクリーニングのためのドメイン固有言語インタープリタ及び対話型視覚インターフェース
US20200117427A1 (en) Relevance of a source code change to compliance requirements
US10977156B2 (en) Linking source code with compliance requirements
Khalajzadeh et al. Survey and analysis of current end-user data analytics tool support
US20210216579A1 (en) Implicit and explicit cognitive analyses for data content comprehension
Saini Fuzzy and mathematical effort estimation models for web applications
US20220309391A1 (en) Interactive machine learning optimization
US20160132797A1 (en) Business process model analyzer and runtime selector
US20220229970A1 (en) Multi-faceted site evaluator integrating user defined evaluation engines
US20230056772A1 (en) Influence function in machine learning for interpretation of lengthy and noisy documents
Yin et al. Predicting changes in user-driven requirements using conditional random fields in agile software development
Shadab Software is Scholarship
US20220083561A1 (en) Extensible data objects for use in machine learning models
Khan Self-Service Analytics Simplified: How to Plan and Implement
Daradkeh Determinants of Data Science Adoption in Organizations: Insights From Analyzing the Digital Voice of Practitioners
Artem Analysis of Financial Reports in Companies Using Machine Learning
Piven Analysis of Financial Reports in Companies Using Machine Learning

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant