KR102560244B1 - 프로세스 자동화 시스템 및 방법 - Google Patents

프로세스 자동화 시스템 및 방법 Download PDF

Info

Publication number
KR102560244B1
KR102560244B1 KR1020200178063A KR20200178063A KR102560244B1 KR 102560244 B1 KR102560244 B1 KR 102560244B1 KR 1020200178063 A KR1020200178063 A KR 1020200178063A KR 20200178063 A KR20200178063 A KR 20200178063A KR 102560244 B1 KR102560244 B1 KR 102560244B1
Authority
KR
South Korea
Prior art keywords
message
automation
business
module
chatbot
Prior art date
Application number
KR1020200178063A
Other languages
English (en)
Other versions
KR20220087727A (ko
Inventor
추원호
Original Assignee
주식회사 이콜트리
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 이콜트리 filed Critical 주식회사 이콜트리
Priority to KR1020200178063A priority Critical patent/KR102560244B1/ko
Publication of KR20220087727A publication Critical patent/KR20220087727A/ko
Application granted granted Critical
Publication of KR102560244B1 publication Critical patent/KR102560244B1/ko

Links

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
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/02User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail using automatic reactions or user delegation, e.g. automatic replies or chatbot-generated messages

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Human Resources & Organizations (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Strategic Management (AREA)
  • Theoretical Computer Science (AREA)
  • Economics (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • Quality & Reliability (AREA)
  • Operations Research (AREA)
  • Marketing (AREA)
  • Tourism & Hospitality (AREA)
  • Development Economics (AREA)
  • Game Theory and Decision Science (AREA)
  • Educational Administration (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

본 발명의 일 실시예에 따른 프로세스 자동화 방법은, 운영자 단말로부터 입력된 복수의 비즈니스 프로세스가 저장되는 단계; 사용자 단말로부터 메일 메시지 또는 챗봇 메시지를 수신하고, 트리거링 부에서 복수의 비즈니스 프로세스 중 어느 하나의 비즈니스 프로세스를 매칭하여 트리거링하는 단계; 수행부에서 상기 어느 하나의 비즈니스 프로세스에 포함된 복수의 프로세스 모듈을 순차적으로 수행시키는 단계; 및 상기 복수의 프로세스 모듈 중 마지막 프로세스 모듈이 수행된 후, 상기 사용자 단말에 결과값을 송부하는 단계를 포함하되, 상기 어느 하나의 비즈니스 프로세스를 매칭하는 것은, 상기 트리거링 부에서 자연어 처리를 통하여 상기 메일 메시지 또는 챗봇 메시지로부터 수행자 및 동작을 추출하는 단계를 포함할 수 있다.

Description

프로세스 자동화 시스템 및 방법{A SYSTEM AND METHOD FOR AUTOMATING PROCESSES}
본 발명은 프로세스 자동화 시스템 및 방법에 관한 것으로, 보다 구체적으로는 메일, 챗봇 등을 통하여 프로세스를 지동으로 진행하고 관리하고 설계할 수 있는 초자동화(Hyperautomation) 툴을 포함하는 프로세스 자동화 시스템 및 방법에 관한 것이다.
초자동화(Hyperautomation)는 사람이 반복적으로 처리해야 하는 단순 업무를 로봇 소프트웨어를 통해 자동화하는 솔루션인 로봇 프로세스 자동화(RPA; Robot Process Automation)에서 시작된 개념으로, 다수의 머신러닝, 인공지능, 패키징된 소프트웨어, 자동화 툴, 자동화 프로세스를 결합시켜 업무를 수행하는 것을 의미한다. 이 경우, 자동화 프로세스는 감지, 분석, 설계, 자동화, 측정 모니터링, 재평가 등 다양한 자동화된 프로세스를 포함할 수 있다. 이 때, 초자동화 기술은 자동화의 범위, 자동화 프로세스/툴 사이의 관계, 자동화 프로세스/툴이 결합되고 조직화되는 방법 등을 이해하는 것에 초점이 맞추어져 있다.
과거에도 ERP 시스템 등에 있어서, 일부 RPA를 통하여 재고 관리, 회계 등의 프로세스 또는 결제 프로세스 등이 일부 자동화된 방법으로 진행될 수 있었다. 단, 업무 담당자는 최초 업무 수행시에 각각의 RPA를 찾기 위하여 상당한 시간과 노력을 기울여야 했다. 특히, 큰 조직에서는 수없이 많은 레거시 프로그램들이 존재하기 때문에 이와 같은 레거시 시스템을 활용하기 위하여 많은 시간이 필요했고, 이에 따른 업무 효율성 저하가 상당했다.
이러한 과거의 문제점들을 이용하여, 일부 레거시 RPA들을 호출하여 연계하는 종래 기술들이 있었다. (특허문헌 1 참조) 그러나, 이러한 일부 RPA를 연계하는 수준의 시스템은 대규모 작업장에서 수천 수만가지 연계 비즈니스 프로세스가 존재하는 환경에서 사용자의 편의성을 제공하면서 챗봇이나 이메일을 통하여 정확한 프로세스를 트리거 시키는 것이 매우 어려웠고, 따라서, 정확하고 효율적인 업무를 위하여 레거시 RPA들에 연계하여 사용자가 편리하게 활용할 수 있는 솔루션이 절실하게 요구되고 있는 상황이다.
(특허문헌 1) KR10-2020-0127695 A
따라서, 본 발명에 따르면, 아주 복잡한 조직에서도 간단하게 메일이나 챗봇을 통하여 정확한 비즈니스 프로세스를 밟을 수 있게 되고, 전체적인 비즈니스 프로세스 매니지먼트(BPM)의 자동화가 수행되는 프로세스 자동화 시스템 및 방법이 제공될 수 있다.
특히, 딥 러닝을 이용하여 챗봇 및 이메일로부터 수신된 데이터로부터 수행자 및 동작을 찾고, 매칭되는 비즈니스 프로세스를 찾을 수 있는 프로세스 자동화 시스템 및 방법이 제공될 수 있다.
전술한 바와 같은 과제를 해결하기 위하여 본 발명의 일 실시예에 따른 프로세스 자동화 방법은, 운영자 단말로부터 입력된 복수의 비즈니스 프로세스가 저장되는 단계; 사용자 단말로부터 메일 메시지 또는 챗봇 메시지를 수신하고, 트리거링 부에서 복수의 비즈니스 프로세스 중 어느 하나의 비즈니스 프로세스를 매칭하여 트리거링하는 단계; 수행부에서 상기 어느 하나의 비즈니스 프로세스에 포함된 복수의 프로세스 모듈을 순차적으로 수행시키는 단계; 및 상기 복수의 프로세스 모듈 중 마지막 프로세스 모듈이 수행된 후, 상기 사용자 단말에 결과값을 송부하는 단계를 포함하되, 상기 어느 하나의 비즈니스 프로세스를 매칭하는 것은, 상기 트리거링 부에서 자연어 처리를 통하여 상기 메일 메시지 또는 챗봇 메시지로부터 수행자 및 동작을 추출하는 단계를 포함할 수 있다.
이 경우, 상기 복수의 비즈니스 프로세스 각각은 복수의 프로세스 모듈을 포함하고, 상기 복수의 프로세스 모듈은 대응하는 자동화 모듈을 가지며, 상기 대응하는 자동화 모듈과 해당하는 프로세스 모듈은 커넥터에 의하여 연결될 수 있다.
또한, 상기 커넥터는 상기 대응하는 자동화 모듈의 리소스에 대한 정보 및 접속 정보를 포함할 수 있다.
또한, 상기 복수의 비즈니스 프로세스를 저장하는 단계는 상기 운영자 단말이 프로세스 자동화 서버의 저작툴에 의하여 상기 복수의 비즈니스 프로세스 각각이 입력될 수 있다.
또한, 상기 저작툴은 상기 대응하는 자동화 모듈의 리소스에 대한 정보 및 접속 정보를 입력할 수 있는 입력 수단을 제공할 수 있다.
또한, 상기 메일 메시지 또는 챗봇 메시지로부터 수행자 및 동작을 추출하는 단계는: 상기 챗봇 메시지 또는 상기 메일 메시지로부터 단어들을 추출하여 문장을 분해하는 단계; 상기 분해된 문장으로부터 수행자 및 동작을 추출하는 단계; 추출된 수행자 및 동작을 결합하는 단계; 및 결합된 수행자 및 동작을 이용하여 상기 어느 하나의 비즈니스 프로세스를 매칭하는 단계;를 포함할 수 있다.
또한, 상기 분해된 문장으로부터 수행자 및 동작을 추출하는 단계는 상기 챗봇 메시지 및 상기 메일 메시지로부터 n*d 행렬을 생성하는 단계(단, n은 미리 정해진 단어 수, d는 임의의 수); 상기 n*d 행렬을 필터 사이즈 m인 행렬과 컨볼루션 하는 컨볼루션 단계; 상기 컨볼루션된 행렬을 풀링하는 풀링 단계; 상기 컨볼루션 단계와 풀링 단계의 반복을 통하여 풀리 커넥티드 레이어(Fully connected layer)가 획득되는 단계; 및 상기 풀리 커넥티드 레이어로부터 은닉층을 거쳐 수행자 및 동작을 획득하는 단계;를 포함할 수 있다.
또한, 상기 n*d 행렬은 d 차원의 워드 임베딩에 기초하여 생성될 수 있다.
또한, 상기 풀리 커넥티드 레이어가 획득되는 단계는 상기 폴딩 단계를 포함할 수 있다.
기타 실시예의 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.
따라서, 본 발명은 아주 복잡한 조직에서도 간단하게 메일이나 챗봇을 통하여 정확한 비즈니스 프로세스를 밟을 수 있게 되고, 전체적인 비즈니스 프로세스 매니지먼트(BPM)의 자동화가 수행될 수 있다.
또한, 딥 러닝을 이용하여 챗봇 및 이메일로부터 수신된 데이터로부터 수행자 및 동작을 찾고, 매칭되는 비즈니스 프로세스를 찾을 수 있는 프로세스 자동화 시스템 및 방법이 제공되어, 사용자는 극히 간단한 방법으로 복잡한 비즈니스 프로세스를 찾을 수 있다.
본 발명에 따른 효과는 이상에서 예시된 내용에 의해 제한되지 않으며, 더욱 다양한 효과들이 본 명세서 내에 포함되어 있다.
도 1은, 본 발명의 일 실시예에 따른 프로세스 자동화 시스템을 나타낸 도면이다.
도 2는 본 발명의 일 실시예에 따른 프로세스 자동화 서버를 나타낸 도면이다.
도 3은 본 발명의 일 실시예에 따른 프로세스 자동화 방법을 나타낸 도면이다.
도 4 내지 도 6은 본 발명의 일 실시예에 따른 비즈니스 프로세스 설계 화면을 나타낸 도면이다.
도 7은 본 발명의 일 실시예에 따른 챗봇 메시지를 예시한 도면이다.
도 8은 본 발명의 일 실시예에 따른 프로세스 자동화 시스템의 동작을 나타낸 도면이다.
도 9 및 도 10은 본 발명의 일 실시예에 따른 비즈니스 프로세스 매칭 동작을 설명한 흐름도이다.
이하의 내용은 단지 발명의 원리를 예시한다. 그러므로 당업자는 비록 본 명세서에 명확히 설명되거나 도시되지 않았지만 발명의 원리를 구현하고 발명의 개념과 범위에 포함된 다양한 장치를 발명할 수 있는 것이다. 또한, 본 명세서에 열거된 모든 조건부 용어 및 실시예들은 원칙적으로, 발명의 개념이 이해되도록 하기 위한 목적으로만 명백히 의도되고, 이와 같이 특별히 열거된 실시예들 및 상태들에 제한적이지 않는 것으로 이해되어야 한다.
또한, 이하의 설명에서 제1, 제2 등과 같은 서수식 표현은 서로 동등하고 독립된 객체를 설명하기 위한 것이며, 그 순서에 주(main)/부(sub) 또는 주(master)/종(slave)의 의미는 없는 것으로 이해되어야 한다.
상술한 목적, 특징 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해질 것이며, 그에 따라 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다.
본 발명의 여러 실시예들의 각각 특징들이 부분적으로 또는 전체적으로 서로 결합 또는 조합 가능하며, 당업자가 충분히 이해할 수 있듯이 기술적으로 다양한 연동 및 구동이 가능하며, 각 실시예들이 서로에 대하여 독립적으로 실시 가능할 수도 있고 연관 관계로 함께 실시 가능할 수도 있다.
본 명세서의 해석의 명확함을 위해, 이하에서는 본 명세서에서 사용되는 용어들을 정의하기로 한다.
본 명세서에서 사용되는 용어 “BPM(Business Process Management)”은 비즈니스 프로세스를 발견, 모델링, 분석, 측정, 개선, 최적화 및 자동화하기 위해 다양한 방법을 사용하는 운영 관리 기법을 의미하는 것이다. 또한, 좁은 의미에서 BPM은 업무 프로세스를 사전에 모델링하고 설계된 프로세스대로 업무 결재, 승인, 구매 등의 업무 등이 자동화되어 흘러갈 수 있도록 도와주는 IT 시스템을 의미할 수 있다.
본 명세서에서 사용되는 용어 “RPA”는 로봇 프로세스 자동화(Robot Process Automation)의 약자로, 소프트웨어 로봇 또는 인공지능(AI)을 기반으로 사람이 하는 단순 반복 업무를 자동화는 기술을 의미하는 것이다. 현재 RPA 플랫폼은 AI 기능을 제공하지만, RPA는 주로 규칙 기반(Rule base)의 업무를 수행하고, AI는 적응 및 예측 업무를 담당하며 각각 독립적인 역할을 수행하고 있다.
다시 말해, BPM은 프로세스 개선을 위해 프로세스 자체를 재설계하고 변경하는 방식이라면, RPA는 사람이 하던 현재 방식을 그대로 모방하여 소프트웨어로 대체하여 자동화하는 방식인 것으로 이해되는 것이 바람직하다.
이에 따라, 본 발명은 실시예에 따른 ~ 이와 관련된 상세한 설명은 후술하기로 한다.
본 명세서에서 사용되는 용어 “SAP”는 경영 활동 프로세스들을 통합적으로 연계해 관리하고 공유하는 ERP(전사적 자원 관리) 시스템 중에 하나인 것을 의미한다.
이하에서는, 도 1을 참조하여, 본 발명의 일 실시예에 따른 프로세스 자동화 시스템을 설명하기로 한다.
도 1을 참조하면, 본 발명의 일 실시예에 따른 프로세스 자동화 시스템은, 프로세스 자동화 서버(100)에 구현되며, 운영자 단말(200) 및 사용자 단말(300)에 연결될 수 있다. 프로세스 자동화 서버(100)은 단일 서버 또는 서버군으로 구성되며, 운영자 단말(200)을 통해 설계된 프로세스들이 저장되는 프로세스 저장소(600)를 더 포함할 수 있다.
운영자 단말(200)은 네트워크(500)를 통하여 프로세스 자동화 서버(100)에 구현될 웹 인터페이스에 의하여 자동화 저작툴을 제공받게 되며, 사용자 단말(300 및 330)은 자동화 저작툴을 통해 생성된 자동화 프로세스를 이용하여 업무를 수행할 수 있다. 이 경우, 사용자 단말(300 및 330)은 컴퓨팅 기능 및 통신 기능을 가지고 있는 단말이면 가능하며, 이메일 또는 챗봇 등을 통하여 프로세스 자동화 서버(100)의 웹 인터페이스와 접속 가능한 단말이다. 사용자 단말(300 및 330)은 휴대폰, 태블릿 PC 등의 휴대가능한 단말(330)도 가능하다..
이하에서는 도 2 및 도 3을 참조하여, 프로세스 자동화 서버(100)의 구성 및 기능에 대하여 상세하게 설명한다.
도 2를 참조하면, 본 발명에 따른 프로세스 자동화 서버(100)는 통신부(110), 디스플레이부(120), 입력부(130), 프로세서(140), 버스(150) 및 메모리(160)를 포함할 수 있다. 이 경우, 통신부(110)는 네트워크(500)를 통하여, 운영자 단말(200) 및 사용자 단말(300 및 330)과 통신을 할 수 있다.
한편, 디스플레이부(120) 및 입력부(130)는 각각 본 발명의 일 실시예에 따른 프로세스 자동화 서버(100)의 운용 및 관리를 위한 표시 장치 및 입력 수단이다. 버스(150)는 상술한 통신부(110), 디스플레이부(120), 입력부(130), 프로세서(140) 및 메모리(160) 사이의 내부 통신을 담당하고 있으며, 프로세서(140)는 메모리(160) 상에 탑재된 소프트웨어 및/또는 소프트웨어 모듈들의 실행을 위한 마이크로프로세서 일 수 있다.
한편, 메모리(160)는 저작툴(161), 수행부(162), 커넥팅 레이어(163), 학습부(164), 트리거링부(165) 및 웹 인터페이스(166)를 포함할 수 있다. 본 실시예의 경우에는 하나의 서버 상에서 버스(150)를 통해 통신하는 장치로 표현하였으나, 앞서 설명한 바와 같이, 서버군으로 구성되어 통신부(110)에 의하여 연결되는 소프트웨어 및/또는 소프트웨어 모듈일 수 있다. 예컨대, 학습부(164)의 경우에는 큰 리소스를 필요로 할 수 있으므로, 별도의 외부 서버로 구현될 수 있다. 각각의 저작툴(161), 수행부(162), 커넥팅 레이어(163), 학습부(164), 트리거링부(165) 및 웹 인터페이스(166)는 소프트웨어, 소프트웨어 모듈, 하드웨어 또는 소프트웨어 및 하드웨어의 결합으로 구현될 수 있다.
이하에서는 도 3 내지 도 7을 참조하여 메모리(160) 상에 구현된 저작툴(161), 수행부(162), 커넥팅 레이어(163), 학습부(164), 트리거링부(165) 및 웹 인터페이스(166)의 프로세스 자동화 수행 방법에 대하여 설명한다.
먼저, 도 3을 참조하면, 본 발명의 일 실시예에 따른 프로세스 자동화 수행 방법은 최초, 운영자 단말(200)로부터 입력을 통하여 비즈니스 프로세스(250)를 설계하는 단계를 거친다. (S310) 예컨대, 도 4를 참조하면, 프로세스 운영자는 운영자 단말(200) 및 웹 인터페이스(166)를 통해서 도 4와 같은 GUI(Graphical User Interface)를 제공받을 수 있다. 이러한 GUI를 통하여, 운영자는 프로세스 모듈들(410)을 활용하여 비즈니스 프로세스(250)를 설계할 수 있다. 이 경우, 운영자는 각 프로세스 모듈들(410)을 연산자(420)를 통해서 결합시켜서 병렬 또는 순차 진행할 수 있게 할 수 있다.
예컨대, 프로세스 모듈(410-1)은 프로세스 모듈들(410-2 및 410-3)과 순차적으로 연결되며, 프로세스 모듈(410-2 및 410-3)은 병렬로 진행되게 된다. 한편, 운영자는 종료 연산자(430)를 통하여 비즈니스 프로세스(250)를 종료시키고 트리거링부(165)에 비즈니스 프로세스(250)의 결과값을 리턴할 수 있다.
예를 들어, 비즈니스 프로세스(250)의 결과값은, 분석 프로세스인 경우에는 분석 후 분석 결과값을 리턴할 수 있고, 예컨대, 비용 결재 프로세스인 경우에는 비용 승인, 비용 승인 거절 등의 결과값을 리턴할 수 있다.
각각의 프로세스 모듈(410)은 커넥팅 레이어(163)를 통하여 자동화 모듈 (레거시 RPA, 입력 모듈(이메일, 챗봇 등))와 연결될 수 있다. 예컨대, 도 5를 참조하면, 운영자가 프로세스 모듈(410-2)를 클릭하면, 프로세스 모듈 설정 메뉴(411)가 나타나고, 설정 메뉴(411)를 통하여, 연결될 자동화 모듈의 리소스, 입력 파라미터 등을 설정할 수 있다.
이 때, 설정 메뉴에서 연결될 자동화 모듈을 선택하면, 연결될 자동화 모듈의 세부 사항을 입력할 수 있는 화면이 나타난다. (도 6 참조) 이 경우, 커넥팅 레이어(163)는 복수의 커넥터(163-1, … 163-n)을 포함할 수 있다. 운영자는 커넥터(163-1, … 163-n) 중 어느 하나의 커넥터 기본 정보(510), 자동화 모듈 리소스(520), 자동화 모듈 접속 정보(530)을 입력할 수 있다.
한편, 이렇게 설계된 비즈니스 프로세스(250)는 메모리(160) 또는 별도의 프로세스 저장소(600)에 저장될 수 있다.
다시 도 3을 참조하면, 사용자 단말(300 또는 330)에서 트리거가 생성되어 프로세스 자동화 서버(100)로 전달되면, 트리거링부(165)가 저장된 비즈니스 프로세스(250) 중 해당되는 비즈니스 프로세스(250)를 실행시킨다. (S320)
도 7의 실시예에서는 사용자가 사용자 단말(330)의 챗봇 앱에 메시지(331)를 보내면서 해당 비즈니스 프로세스가 시작된다. 이 경우, 트리거링부(165)는 메시지 (331)를 파싱하여 자연어로 처리한 후, 메시지와 연관된 비즈니스 프로세스를 시작시킬 수 있다. 한편, 해당 비즈니스 프로세스에서 처리하기에 필요한 데이터가 입력이 되지 않은 경우, 챗봇은 필요한 데이터를 요청하는 메시지(333)를 송부할 수 있으며, 요청에 따른 필요한 데이터(335, 336)가 입력되면, 챗봇은 비즈니스 프로세스를 시작할 수 있다. 또는 비즈니스 프로세스가 시작된 후, 챗봇이 필요한 데이터를 요청하는 메시지(333)을 보내고, 요청에 따른 필요한 데이터(335, 336)가 입력되면, 해당 프로세스 모듈에 데이터를 전송할 수도 있다.
이 경우, 메시지의 파싱과 자연어 처리에 대해서는 도 10에 대한 설명을 통하여 상세하게 후술한다.
보다 상세하게 도 8을 참조하면, 사용자들 중 어느 하나(800)가 사용자 단말(330)을 통하여 웹 인터페이스(166)에 접속하여 메시지(331)를 보내게 되면, 트리거링부(165)는 이를 파싱하여, 수행부(162)를 통하여 해당되는 비즈니스 프로세스를 실행시키게 된다.
이 때, 수행부(162)는 트리거링부(165)에서 실행시킨 비즈니스 프로세스(250)의 각 프로세스 모듈(162-1, …, 162-n)을 운영자 단말(200)에서 설계한 순서대로 실행시킨다. 프로세스 모듈(162-1, …, 162-n)은 각각에 대응하는 커넥터(163-1, …, 163-n)를 통하여 연결된 각각에 대응하는 자동화 모듈(650-1, …, 650-n)에서 해당 업무를 수행시킨다.
이 경우, 자동화 모듈(650-1, …, 650-n)은 예를 들어, 레거시 RPA, 예컨대, SAP 등의 ERP 시스템이나, OCR 시스템, 챗봇, 또는 이메일 시스템일 수 있다. 각각의 자동화 모듈(650-1, …, 650-n)은 기존에 자동화된 처리를 수행하던 레거시 RPA 모듈일 수 있으며, 별도의 시스템으로 프로세스 자동화 서버(100) 외부에 구현된 것일 수도 있고, 프로세스 자동화 서버(100) 내부에 구현된 것일 수도 있다.
자동화 모듈은 트리거링부(165)로부터 각 자동화 모듈(650-1)에 예컨대, SAP의 경우 ODATA, OCR 시스템인 경우에는 사진 파일 등의 필요한 데이터를 수신하여 해당 프로세스를 수행한 후 결과를 다시 대응하는 프로세스 모듈에 전송한다. 그리고, 운영자 단말(200)에서 설계한 마지막 프로세스 모듈의 프로세스가 종료되면, 다시 트리거링부(165) 및 웹 인터페이스(166)를 통하여 결과를 사용자(800)에게 전달하게 된다.
이 경우, 각 자동화 모듈(650-1, …, 650-n)에서 필요한 데이터들은 해당 비즈니스 프로세스에서 전단계에 있는 자동화 모듈에서 제공할 수도 있고, 또는 최초 사용자가 입력하여 트리거링부(165)를 통해 제공된 것일 수도 있다.
각 자동화 모듈(650-1, …, 650-n)은 별도의 데이터 베이스(653)를 운용할 수도 있는데, 별도의 데이터 베이스에서 해당 자동화 모듈에서 필요한 자료를 직접 요청 및 수신할 수도 있다.
이하에서는 도 9를 참조하여, 본 발명의 일 실시예에 따른 트리거링부(165)의 자연어 처리 과정에 대하여 기술한다.
트리거링부(165)에서, 도 8과 같이 챗봇을 통해 채팅 메시지(331) 또는 이메일 메시지를 수신하게 되면, 수신한 메시지의 단어들을 추출하여 문장들을 분해하게 된다. (S910) 이 때, 영어 등 조사가 없는 언어의 경우에는 단어를 그대로 추출할 수 있으나, 한국어 등 조사가 있는 언어의 경우에는 형태소 분석을 통하여 단어들을 추출하여 분해할 수 있다.
그리고, 분해된 단어에서 수행자 및 동작들을 추출한다. (S920)
예를 들어, 도 10을 참조하면, 트리거링부(165)는 전체 매시지 중, 연속된 n개의 단어를 d 차원의 벡터로 변환시킨다.(S1010) n 및 d는 임의의 정수이다. 영어로 된 단어는 그대로 입력하고, 한글인 경우에는 형태소 분석 후에 입력하게 된다. 이 때, 예를 들어, 각 메시지 또는 이메일의 헤더까지 텍스트로서 전달하고, 연속된 n개의 단어를 각각 d 차원의 벡터로 변환시킬 수 있다. 각 단어를 벡터로 변환시키는 것은 워드 임베딩을 활용하여, 예컨대, word2vec의 워드 임베딩을 d 차원의 벡터로 변환시킬 수 있다.
이렇게 생성된 n*d 차원의 벡터를 가중치 벡터(weights vector) m 행렬과 와이드 컨볼루션할 수 있다. 1차원의 m 행렬의 m은 필터인 가중치 크기를 의미한다. (S1020)
와이드 컨볼루션 후에는 풀링(pooling) 단계를 거친다. 풀링에서는 예를 들어, 맥스 풀링(Max pooling)을 사용할 수 있다.(S1030)
다시, 풀링 단계를 거친 벡터를 와이드 컨볼루션 한 뒤(S1040), 폴딩 단계(S1050)를 거친다. 위에서 사용한 벡터가 1차원의 m 행렬을 사용하였는데, 풀링보다도 좀 더 행렬 사이즈를 줄이기 위하여 간단한 절차인 폴딩 방식을 사용할 수도 있다. 폴딩 단계는 마지막 컨볼루션 단계에서 생성한 피쳐맵 중 홀수열 또는 짝수열 또는 전체 피처맵의 d/2열부터 d 열까지의 열을 생략하여 전체 피쳐맵을 1/2로 줄이는 단계를 말한다.
리고, 마지막으로 풀링 단계를 한 번 더 거친 후(S1060), 마지막으로 풀리 커넥티드 레이어(Fully Connected Layer, S1070)를 획득하게 된다.
그리고, 이러한 풀리 커넥티드 레이어에서, 추가적인 은닉층(Hidden Layer)를 거친 후(S1080), 마지막으로 수행자 및 동작에 대한 결과값을 획득하게 된다.(S1090)
다시 도 9를 참조하면, 수행자 및 동작에 대한 결과값을 획득한 후, 다시 수행자 및 동작을 결합하고(S940) 이에 매칭되는 비즈니스 프로세스 또는 프로세스 모듈을 매칭하게 된다.(S950)
이렇게 입력된 채팅 메시지 또는 메일 메시지와 비즈니스 프로세스와 매칭 수행 결과 및 각 프로세스 모듈에서의 실행 시간, 실행 결과들은 로그 파일에 타임 스템프와 함께 프로세스 저장소(600)에 저장되게 된다.
학습부(164)는 프로세스 저장소(600)에 저장된 데이터에 기초하여 역전파를 이용하여 학습을 수행하고, 상술한 필터의 필터 값을 학습하게 된다. 이 때, 학습된 필터값에 의하여 비즈니스 프로세스 매칭은 더욱더 정확하고 정교해지게 된다.
종래 기술에 따르면, 단순하게 챗봇을 통하여 연계된 RPA를 개별 실행시켜서 결과를 얻을 수 있었으나, 비즈니스 프로세스가 많은 대기업들에서는 사용하기가 어려웠다. 특히, 대기업은 수백개의 부서들이 있으며, 각 부서들마다도 수많은 프로세스가 있기 때문에, 종래 기술의 매칭 결과를 이용하여 프로세스를 진행하기는 매우 어려웠고 부정확한 경우가 많았다.
그러나, 본 발명에 따르면, 아주 복잡한 조직에서도 간단하게 메일이나 챗봇을 통하여 정확한 비즈니스 프로세스를 밟을 수 있게 되고, 전체적인 BPM의 자동화가 수행될 수 있게 되었다.
이상 첨부된 도면을 참조하여 본 발명의 실시예들을 더욱 상세하게 설명하였으나, 본 발명은 반드시 이러한 실시예로 국한되는 것은 아니고, 본 발명의 기술사상을 벗어나지 않는 범위 내에서 다양하게 변형 실시될 수 있다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 그러므로, 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
100: 프로세스 자동화 서버 160: 메모리
161: 저작툴 162: 수행부
163: 커넥팅 레이어 164: 학습부
165: 트리거링부 166: 웹 인터페이스
200: 운영자 단말 300: 사용자 단말
330: 사용자 단말(모바일) 500: 네트워크
600: 프로세스 저장소

Claims (9)

  1. 프로세스 자동화 서버의 프로세스 자동화 방법에 있어서,
    프로세스 저장소가, 운영자 단말로부터 입력된 복수의 비즈니스 프로세스를 저장하는 단계;
    트리거링 부가, 사용자 단말로부터 메일 메시지 또는 챗봇 메시지를 수신하고, 복수의 비즈니스 프로세스 중 어느 하나의 비즈니스 프로세스를 매칭하여 트리거링하는 단계;
    상기 트리거링 부가, 수행부를 통해 상기 어느 하나의 비즈니스 프로세스에 포함된 복수의 프로세스 모듈을 순차적으로 수행시키는 단계; 및
    상기 트리거링 부가, 상기 복수의 프로세스 모듈 중 마지막 프로세스 모듈이 수행된 후, 상기 사용자 단말에 결과값을 송부하는 단계를 포함하되,
    상기 어느 하나의 비즈니스 프로세스를 매칭하는 것은, 상기 트리거링 부에서 자연어 처리를 통하여 상기 메일 메시지 또는 챗봇 메시지로부터 수행자 및 동작을 추출하는 단계를 포함하고,
    상기 메일 메시지 또는 챗봇 메시지로부터 수행자 및 동작을 추출하는 단계는:
    상기 챗봇 메시지 또는 상기 메일 메시지로부터 단어들을 추출하여 문장을 분해하는 단계;
    상기 분해된 문장으로부터 수행자 및 동작을 추출하는 단계;
    추출된 수행자 및 동작을 결합하는 단계; 및
    결합된 수행자 및 동작을 이용하여 상기 어느 하나의 비즈니스 프로세스를 매칭하는 단계;를 포함하며,
    상기 분해된 문장으로부터 수행자 및 동작을 추출하는 단계는
    상기 챗봇 메시지 및 상기 메일 메시지로부터 미리 정해진 단어 수 n 및 워드 임베딩에 기초하는 d에 기초하여 연속된 n개의 단어를 각각의 d 차원 벡터로 변환하는 n*d 행렬을 생성하는 단계;
    상기 n*d 행렬을 필터 가중치 사이즈 m인 행렬에 기초하여 컨볼루션 하는 컨볼루션 단계;
    상기 컨볼루션된 행렬을 풀링하는 풀링 단계;
    상기 컨볼루션 단계와 풀링 단계의 반복을 통하여 풀리 커넥티드 레이어(Fully connected layer)가 획득되는 단계; 및
    상기 풀리 커넥티드 레이어로부터 은닉층을 거쳐 수행자 및 동작을 획득하는 단계;를 포함하는, 프로세스 자동화 방법.
  2. 제 1 항에 있어서,
    상기 복수의 비즈니스 프로세스 각각은 복수의 프로세스 모듈을 포함하고, 상기 복수의 프로세스 모듈은 대응하는 자동화 모듈을 가지며, 상기 대응하는 자동화 모듈과 해당하는 프로세스 모듈은 커넥터에 의하여 연결되는,
    프로세스 자동화 방법.
  3. 제 2 항에 있어서,
    상기 커넥터는 상기 대응하는 자동화 모듈의 리소스에 대한 정보 및 접속 정보를 포함하는,
    프로세스 자동화 방법.
  4. 제 3 항에 있어서,
    상기 복수의 비즈니스 프로세스를 저장하는 단계는 상기 운영자 단말이 프로세스 자동화 서버의 저작툴에 의하여 상기 복수의 비즈니스 프로세스 각각이 입력되는,
    프로세스 자동화 방법.
  5. 제 4 항에 있어서,
    상기 저작툴은 상기 대응하는 자동화 모듈의 리소스에 대한 정보 및 접속 정보를 입력할 수 있는 입력 수단을 제공하는,
    프로세스 자동화 방법.
  6. 삭제
  7. 삭제
  8. 삭제
  9. 제 1 항에 있어서,
    상기 풀리 커넥티드 레이어가 획득되는 단계는 마지막 컨볼루션 레이어에서 생성된 피처맵을 폴딩하는 폴딩 단계를 포함하는,
    프로세스 자동화 방법.
KR1020200178063A 2020-12-18 2020-12-18 프로세스 자동화 시스템 및 방법 KR102560244B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200178063A KR102560244B1 (ko) 2020-12-18 2020-12-18 프로세스 자동화 시스템 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200178063A KR102560244B1 (ko) 2020-12-18 2020-12-18 프로세스 자동화 시스템 및 방법

Publications (2)

Publication Number Publication Date
KR20220087727A KR20220087727A (ko) 2022-06-27
KR102560244B1 true KR102560244B1 (ko) 2023-07-27

Family

ID=82246794

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200178063A KR102560244B1 (ko) 2020-12-18 2020-12-18 프로세스 자동화 시스템 및 방법

Country Status (1)

Country Link
KR (1) KR102560244B1 (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102190459B1 (ko) * 2020-04-28 2020-12-11 농업협동조합중앙회 Rpa의 공유를 위한 사용자 인터페이스 장치

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102338618B1 (ko) * 2017-07-25 2021-12-10 삼성에스디에스 주식회사 휴먼 에이전트에 의하여 보조 되는 무인 대화 서비스 제공 방법
KR20200045802A (ko) * 2018-10-23 2020-05-06 아이보우소프트 주식회사 조선산업용 plm 프로세스 관리를 위한 워크플로우 모델러

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102190459B1 (ko) * 2020-04-28 2020-12-11 농업협동조합중앙회 Rpa의 공유를 위한 사용자 인터페이스 장치

Also Published As

Publication number Publication date
KR20220087727A (ko) 2022-06-27

Similar Documents

Publication Publication Date Title
US7801756B1 (en) Hybrid machine/human computing arrangement
CN107943945A (zh) 一种大数据分析开发平台中异构算子管理方法
CN1313972A (zh) 自适应的自然语言接口
US20220129637A1 (en) Computerized selection of semantic frame elements from textual task descriptions
US11443102B1 (en) Methods and systems for artificial intelligence-assisted document annotation
CN114625353A (zh) 模型框架代码生成系统及方法
WO2008131028A2 (en) Enterprise integrated business proces schema
Soliman et al. Enriching architecture knowledge with technology design decisions
US11645462B2 (en) Continuous machine learning method and system for information extraction
CN111371673A (zh) Notes邮件自动处理方法和装置
US7257735B2 (en) Identifying solutions to computer problems in client/server system
CN113238740A (zh) 代码生成方法、代码生成装置、存储介质及电子设备
Sommerville et al. Process viewpoints
CN111783415A (zh) 模板配置方法以及装置
CN115480810A (zh) 一种基于云原生的低代码平台
US20060095392A1 (en) Identifying solutions to computer problems by expert system using contexts and distinguishing versions
KR102560244B1 (ko) 프로세스 자동화 시스템 및 방법
EP1416384A1 (en) Identifying solutions to computer problems in main system by service system in distributed system landscape
US7403933B2 (en) Identifying solutions to computer problems in main system by service system
CN117314139A (zh) 业务流程的建模方法、装置、终端设备及存储介质
Varela et al. Aspect-oriented analysis for software product lines requirements engineering
CN116346660A (zh) 基于依赖替换服务的数据处理方法、装置、设备及介质
US20230418859A1 (en) Unified data classification techniques
CN114860566A (zh) 源代码测试方法、装置、电子设备及存储介质
CN112328871A (zh) 一种基于rpa模块的回复生成方法、装置、设备及存储介质

Legal Events

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