KR102360885B1 - 클라우드 서비스를 위한 통합 작업흐름관리 시스템 및 그 방법 - Google Patents

클라우드 서비스를 위한 통합 작업흐름관리 시스템 및 그 방법 Download PDF

Info

Publication number
KR102360885B1
KR102360885B1 KR1020190153535A KR20190153535A KR102360885B1 KR 102360885 B1 KR102360885 B1 KR 102360885B1 KR 1020190153535 A KR1020190153535 A KR 1020190153535A KR 20190153535 A KR20190153535 A KR 20190153535A KR 102360885 B1 KR102360885 B1 KR 102360885B1
Authority
KR
South Korea
Prior art keywords
cloud
user
distributed processing
systems
rule
Prior art date
Application number
KR1020190153535A
Other languages
English (en)
Other versions
KR20210064847A (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 KR1020190153535A priority Critical patent/KR102360885B1/ko
Publication of KR20210064847A publication Critical patent/KR20210064847A/ko
Application granted granted Critical
Publication of KR102360885B1 publication Critical patent/KR102360885B1/ko

Links

Images

Classifications

    • 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
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • 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/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5038Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Human Resources & Organizations (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Economics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Strategic Management (AREA)
  • Educational Administration (AREA)
  • Tourism & Hospitality (AREA)
  • Quality & Reliability (AREA)
  • General Business, Economics & Management (AREA)
  • Operations Research (AREA)
  • Marketing (AREA)
  • Game Theory and Decision Science (AREA)
  • Development Economics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

본 발명은 다수의 사용자 시스템들과 호환이 되는 하나의 분산처리 작업흐름관리 시스템을 제공함으로써, 사용자 시스템별로 작업흐름관리 시스템을 구축할 때 발생하는 시스템 구축비용 및 유지관리비용을 절감할 수 있는 효과가 있다. 또한, 본 발명은 클라우드 시스템을 사용하여 사용자 시스템들 각각에게 별도의 클라우드 서비스를 제공하고, 사용자 시스템들 각각이 상기 클라우드 서비스를 이용하여 작업흐름관리 시스템을 운영하도록 함으로써, 호환성과 독립성을 모두 만족시킬 수 있는 장점이 있다. 또한, 본 발명은 로우 레벨(low level) 단의 서비스를 제공하여 융합을 통한 다양한 서비스의 제공이 가능한 장점이 있다.

Description

클라우드 서비스를 위한 통합 작업흐름관리 시스템 및 그 방법{SYSTEM AND METHOD FOR MANAGING WORK FLOW FOR CLOUD SERVICE}
본 발명은 통합 작업흐름관리 시스템 및 그 방법에 관한 것으로서, 특히, 클라우드 서비스를 위한 통합 작업흐름관리 시스템 및 그 방법에 관한 것이다.
정보화 기술의 발전이 가속화되면서, 회사 자원의 효율적 관리와 업무처리의 정확성을 높이기 위하여, 자원 관리 및 의사결정 등 회사에서 이루어지는 다단계의 작업들을 작업흐름관리 시스템으로 처리하고 있다. 이와 같이 다단계의 작업들을 작업흐름관리 시스템으로 처리하는 시스템들을 이하에서는 사용자 시스템이라 한다.
그러나 작업별로 조금씩 상이한 처리절차로 인하여 사용자 시스템마다 각기 다른 작업흐름관리 시스템을 사용하고 있으며, 이러한 사용자 시스템 별 작업흐름관리 시스템이 상호 호환되지 않음으로 인해 많은 자원적 낭비가 발생하는 단점이 있다.
예를 들어, 은행의 경우 계좌관리 시스템, 입출금관리 시스템, 대출관리 시스템, 투자관리 시스템 등 다양한 사용자 시스템들이 존재하며, 업무의 결정권자 및 처리 절차가 다른 이들 각각의 사용자 시스템들은 서로 다른 작업흐름관리 시스템을 사용하였다. 따라서, 이 경우 사용자 시스템간 작업흐름관리 시스템의 연계가 어렵고, 호환을 위해 별도의 모듈 개발 및 프로세스를 구동해야 하는 문제가 있다. 이로 인해 종래에는 상기 각 사용자 시스템별 작업흐름관리 시스템을 구축하기 위한 구축비용 및 추가 유지보수 비용이 발생함으로서 자원적 낭비가 발생하는 문제가 있었다.
대한민국 공개 특허 10-2006-0064725 호(공개일 2006.06.14.)
따라서, 본 발명은 다수의 사용자 시스템들과 호환이 되고, 이들 각각의 작업흐름정보를 저장/관리하는 하나의 분산처리 시스템을 제공함으로써, 사용자 시스템별로 작업흐름관리 시스템을 구축할 때 발생하는 시스템 구축비용 및 유지관리비용을 절감할 수 있는 통합 작업흐름관리 시스템 및 그 방법을 제공하고자 한다.
또한, 본 발명은 사용자 시스템들 각각에게 별도의 클라우드 서비스를 제공하고, 사용자 시스템들 각각이 상기 클라우드 서비스를 이용하여 작업흐름관리 시스템을 운영하도록 함으로써, 호환성과 독립성을 모두 만족시키는 통합 작업흐름관리 시스템 및 그 방법을 제공하고자 한다.
또한, 본 발명은 로우 레벨(low level) 단의 서비스를 제공하여 융합을 통한 다양한 서비스의 제공이 가능한 통합 작업흐름관리 시스템 및 그 방법을 제공하고자 한다.
상기 목적을 달성하기 위해, 본 발명에서 제공하는 통합 작업흐름관리 시스템은 통신망을 통해 클라우드 서비스를 제공하는 외부의 서버 장치로부터, 고유의 클라우드 공간 및 클라우드 자원을 제공받아 개별 작업흐름을 관리하는 다수의 클라우드 시스템들; 및 상기 다수의 클라우드 시스템들과 호환되고, 상기 클라우드 시스템들 각각의 작업 요청 정보 및 처리 정보를 저장/관리하는 분산처리 시스템을 포함하되, 상기 클라우드 시스템은 상기 외부의 서버 장치로부터 제공받은 클라우드 자원들; 및 상기 클라우드 공간 및 클라우드 자원을 이용하여 개별 작업흐름을 관리하는 사용자 시스템을 포함하는 것을 특징으로 한다.
바람직하게는, 상기 클라우드 자원은 대응된 사용자 시스템에서 처리할 수 있는 업무 흐름을 정의하는 룰을 생성하고, 상기 룰의 버전을 관리하는 모델링부; 상기 분산처리 시스템에게, 상기 룰을 실행하기 위한, 프로세스 생성을 요청하고, 상기 프로세스의 중지/구동/종료를 제어하는 프로세스 관리부; 상기 사용자 시스템의 개별 데이터를 저장하는 시스템 데이터베이스부; 및 상기 작업흐름관리 시스템 구축을 위해 필요한 기본 인터페이스를 제공하는 공개 어플리케이션 프로그래머블 인터페이스(Open API)를 포함할 수 있다.
바람직하게는, 상기 분산처리 시스템은 상기 사용자 시스템의 작업 요청 및 그 응답을 송/수신하는 연계 처리부; 상기 연계 처리부와의 데이터 송/수신을 통해, 상기 작업 요청을 수행하기 위한 프로세스를 생성하고 해당 작업의 처리 결과를 관리하는 실행엔진; 상기 클라우드 서비스의 권한 및 설정을 관리하고, 상기 실행엔진에서 생성된 상기 사용자 시스템별 프로세스 및 상기 사용자 시스템별 클라우드 자원을 모니터링하는 시스템 관리부; 및 상기 분산처리 시스템을 이용한 작업 룰 정보, 작업 상태 정보 및 시스템 정보를 저장/관리하는 통합 데이터베이스부를 포함할 수 있다.
바람직하게는, 상기 연계 처리부는 시스템 안정화를 위해 복수로 구성될 수 있다.
바람직하게는, 상기 실행 엔진은 시스템 안정화를 위해 복수로 구성될 수 있다.
바람직하게는, 상기 실행 엔진은 메시지 큐(message queue)를 통해 상기 연계 처리부와 데이터를 송/수신할 수 있다.
한편, 상기 목적을 달성하기 위해, 본 발명에서 제공하는 통합 작업흐름관리 방법은 작업흐름관리가 필요한 다수의 사용자 시스템들 각각에서 수행되는 다양한 작업들 각각의 흐름에 대응된 룰들을 모델링하되, 상기 사용자 시스템들 각각에게 제공된 고유의 클라우드 공간에서 상기 사용자 시스템들 각각에게 제공된 클라우드 자원으로 상기 룰들을 모델링하는 모델링 단계; 상기 사용자 시스템의 요청에 응답하여, 상기 모델링된 룰을 바탕으로 동작 프로세스를 생성하되, 상기 다수의 사용자 시스템들과 호환되고 상기 사용자 시스템들 각각의 작업 요청 정보 및 처리 정보를 저장/관리하는 분산처리 시스템에서 상기 동작 프로세스를 생성하는 프로세스 생성 단계; 상기 사용자 시스템의 제어 명령에 응답하여, 상기 분산처리 시스템에서 상기 동작 프로세스를 진행하는 프로세스 진행 단계; 및 상기 동작 프로세스를 종료시키기 위한 종료 조건이 만족되면, 상기 분산처리 시스템이 상기 동작 프로세스를 종료하고 상기 동작 프로세스 처리 결과를 저장 및 상기 사용자 시스템에게 전달하는 프로세스 종료 단계를 포함하는 것을 특징으로 한다.
바람직하게는, 상기 모델링 단계는 상기 모델링된 룰들을 상기 클라우드 공간에 저장할 수 있다.
바람직하게는, 상기 프로세스 생성 단계는 상기 사용자 시스템이 상기 클라우드 공간에 저장된 룰들을 로딩하는 로딩단계; 및 상기 로딩된 룰의 정보 및 상기 룰을 진행하기 위해 입력된 데이터들을, 상기 사용자 시스템이, 상기 분산처리 시스템으로 전달하여 프로세스 생성을 요청하는 요청단계를 포함할 수 있다.
바람직하게는, 상기 프로세스 진행 단계는 상기 분산처리 시스템에서 상기 제어 명령을 처리하는 명령처리단계; 및 상기 명령에 대응된 이벤트의 존재 여부에 따라 대응된 처리를 하는 이벤트처리단계를 포함할 수 있다.
바람직하게는, 상기 프로세스 종료 단계는 상기 사용자 시스템으로부터 상기 동작 프로세스 종료 명령이 전달되는 경우 상기 동작 프로세스를 종료할 수 있다.
바람직하게는, 상기 프로세스 종료 단계는 상기 명령에 대응된 이벤트 중 처리되지 않고 남은 잔여 이벤트의 존재 여부에 따라 상기 동작 프로세스 종료 여부를 결정할 수 있다.
본 발명의 통합 작업흐름관리 시스템 및 그 방법은 다수의 사용자 시스템들과 호환이 되는 하나의 분산처리 작업흐름관리 시스템을 제공함으로써, 사용자 시스템별로 작업흐름관리 시스템을 구축할 때 발생하는 시스템 구축비용 및 유지관리비용을 절감할 수 있는 효과가 있다. 또한, 본 발명은 클라우드 시스템을 사용하여 사용자 시스템들 각각에게 별도의 클라우드 서비스를 제공하고, 사용자 시스템들 각각이 상기 클라우드 서비스를 이용하여 작업흐름관리 시스템을 운영하도록 함으로써, 호환성과 독립성을 모두 만족시킬 수 있는 장점이 있다. 또한, 본 발명은 로우 레벨(low level) 단의 서비스를 제공하여 융합을 통한 다양한 서비스의 제공이 가능한 장점이 있다.
도 1은 본 발명의 일 실시 예에 따른 통합 작업흐름관리 시스템에 대한 개략적인 블록도이다.
도 2는 본 발명의 일 실시 예에 따른 통합 작업흐름관리 방법에 대한 개략적인 처리 절차도이다.
아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시 예에 대하여 설명하되, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시 예에 한정되지 않는다. 한편 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다. 또한 상세한 설명을 생략하여도 본 기술 분야의 당업자가 쉽게 이해할 수 있는 부분의 설명은 생략하였다.
명세서 및 청구범위 전체에서, 어떤 부분이 어떤 구성 요소를 포함한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성 요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것을 의미한다.
도 1은 본 발명의 일 실시 예에 따른 통합 작업흐름관리 시스템에 대한 개략적인 블록도이다. 도 1을 참조하면 본 발명의 일 실시 예에 따른 통합 작업흐름관리 시스템은 클라우드 시스템(100)과, 분산처리 시스템(200)을 포함한다.
클라우드 시스템(100)은 통신망을 통해 클라우드 서비스를 제공하는 외부의 서버 장치(미도시)로부터, 고유의 클라우드 공간 및 클라우드 자원을 제공받아 개별 작업흐름을 관리하고, 분산처리 시스템(200)은 상기 다수의 클라우드 시스템들과 호환되고, 상기 클라우드 시스템들 각각의 작업 요청 정보 및 처리 정보를 저장/관리한다.
이를 위해, 클라우드 시스템(100)은 상기 외부의 서버 장치로부터 제공받은 클라우드 공간 및 클라우드 자원들(120)과, 상기 클라우드 공간 및 클라우드 자원(120)을 이용하여 개별 작업흐름을 관리하는 사용자 시스템(110)을 포함한다. 이 때, 클라우드 공간 및 클라우드 자원(120)은 사용자 시스템(110)과 일체로 구성되지는 않는다. 즉, 클라우드 공간 및 클라우드 자원(120)은 물리적으로는 상기 외부의 서버 장치(미도시)에 속한 영역이지만, 사용자 시스템(110)에게 할당되어 사용자 시스템(110)이 사용자 시스템(110)에 속한 영역인 것처럼 자유롭게 사용할 수 있도록 허용된 공간 및 자원이다. 따라서, 도 1의 예에서는, 사용자 시스템(110)과 그 사용자 시스템(110)에게 할당된 클라우드 공간 및 클라우드 자원(120)을 하나의 장치인 클라우드 시스템(100)으로 도시하였다.
사용자 시스템(110)은 작업흐름관리(WFM)를 수행하기 위한 각종 기능들(예컨대, 룰 추가/수정/삭제, 프로세스 제어, 노드 추가/수정/삭제, 객체 정보 관리, 이벤트 및 액션 추가/수정/삭제 등의 기능들)을, 클라우드 자원(120)으로부터, 공개 어플리케이션 프로그래머블 인터페이스(Open API) 형태로 제공받고, 상기 API를 조합하여 각 시스템에 맞는 작업흐름관리(WFM)을 사용할 수 있다. 또한, 사용자 시스템(110)은 분산처리시스템(200)으로부터 전달되는 프로세스 정보를 통해 프로세스 모니터링을 할 수 있다. 이를 위해, 사용자 시스템(110)은 모니터링, 사용자 서비스, 관리자 서비스를 제공하기 위한 기능 블록들을 포함할 수 있다.
클라우드 공간 및 클라우드 자원(120)은 모델링도구(121), 관리자 도구(122), 시스템 데이터베이스(123) 및 공개 어플리케이션 프로그래머블 인터페이스(Open API)(미도시)를 포함한다.
모델링 도구(121)는 룰(rule)을 생성하고, 상기 룰(rule)의 버전을 관리한다. 특히, 모델링 도구(121)는 상기 룰(rule)의 각 노드의 동작에 대한 이벤트와 액션을 스크립트로 입력하여 처리하되, 상기 이벤트와 액션 스크립트는 SQL 형식으로 여러 복합적인 조건을 후위식으로 변환/처리할 수 있으며, 상기 조건의 찬(true)/반(false) 여부에 따라 동작하며, 액션의 최종은 프로세스의 동작에 대한 스크립트로 노드 이동, 메일, SMS 등의 기능을 제공할 수 있다.
이 때, 룰(rule)은 작업흐름관리 시스템에서 처리할 수 있는 업무 흐름을 정의하는 다이어그램을 말하고, 상기 룰(rule)이 실행된 경우, 그 룰(rule)의 데이터 및 상태를 프로세스(process)라 한다. 이벤트(event)는 특정한 조건으로 처리할 수 있는 기능을 말하는 것으로서, 복잡한 조건을 and, or 등으로 엮어서 후위식으로 최종 조건을 판단할 수 있다. 액션(action)은 상기 이벤트 조건에 부합한 상태일 때의 동작 기능(예컨대, 상태변경, 이메일(e-mail) 등)을 말한다.
한편, 모델링 도구(121)는 완성된 룰의 등록 및 파일 저장이 가능하며, 동작에 대한 시뮬레이션을 제공할 수 있다. 이를 위해, 모델링 도구(121)는 신규 룰 모델링, 이벤트 및 액션 관리, 룰 수정 및 삭제, 시뮬레이션을 수행하기 위한 기능 블록들을 포함할 수 있다.
관리자 도구(122)는 분산처리 시스템(200)에게, 상기 룰을 실행하기 위한, 프로세스 생성을 요청하고, 상기 프로세스의 중지/구동/종료를 제어한다. 특히, 관리자 도구(122)는 상기 프로세스의 동작 관리/노드 이동 등을 제어할 수 있으며, 이벤트/액션의 제어를 통해 노드의 동작 및 흐름을 변경할 수 있는 기능을 제공할 수 있다. 이를 위해, 관리자 도구(122)는 프로세스 제어, 프로세스 수정, 프로세스 종료, 이벤트/액션 제어를 위한 기능 블록들을 포함할 수 있다.
시스템 데이터베이스부(123)는 사용자 시스템(110)의 개별 데이터를 저장한다. 이 때, 시스템 DB(123)는 클라우드 서비스를 사용하는 사용자 시스템(110)의 개별 데이터를 저장한다. 특히, 시스템 DB(123)는 사용자 시스템(110)의 사용자 (즉, 개별 사용자), 조직, 노드별 업무, 권한 등의 정보를 저장한다. 반면, 분산처리 시스템(200)은 저장된 룰, 실행 중인 프로세스 및 실행 완료된 프로세스의 정보만을 저장한다.
공개 어플리케이션 프로그래머블 인터페이스(Open API)(미도시)는 작업흐름관리 시스템 구축을 위해 필요한 기본 기능을 인터페이스 형태로 제공한다.
한편, 분산처리 시스템(200)은 WFM 연계 시스템(210), WFM 실행엔진(220), WFM 관리 도구(230) 및 통합 DB(240)를 포함한다.
WFM 연계 시스템(210)은 사용자 시스템(110)의 작업 요청 및 그 응답을 송/수신한다. 특히, WFM 연계 시스템(210)은 클라우드 서비스를 사용하는 사용자 시스템(110)의 요청을 송신한 후 그 응답을 전송하고 로드 발란싱을 수행하며, 분산처리될 WFM 실행엔진(220)의 페일오버(failover, 시스템 대체작동)를 관리할 수 있다. 이를 위해, WFM 연계 시스템(210)은 데이터 송수신, 로드 발란싱, WFM 실행엔진 상태 모니터링, WFM 실행엔진 Fail over 지시, 연계서버 Fail over 기능을 수행하기 위한 기능 블록들을 포함할 수 있다. 또한, WFM 연계 시스템(210)은 시스템 안정화를 위해 복수로 구성될 수 있다.
WFM 실행엔진(220)은 WFM 연계 시스템(210)과의 데이터 송/수신을 통해, 작업 요청을 수행하기 위한 프로세스를 생성하고 해당 작업의 처리 결과를 관리한다. 특히, WFM 실행엔진(220)은 WFM 연계 시스템(210)과 메시지 큐(message queue)(250)를 이용하여 연결되고, 다중 메시지 동시 처리 기능, 페일오버(failover, 시스템 대체작동) 기능을 제공하며, 클라우드 시스템(100)에서 전송되는 동작(operation)을 처리할 수 있다. 또한, WFM 실행엔진(220)은 이벤트 및 액션을 분석/처리하는 기능을 수행할 수 있다. 이를 위해, WFM 실행엔진(220)은 데이터 송수신, 프로세스 등록, 프로세스 관리, 오퍼레이션 처리, 룰 관리, 상태 공유 및 Fail over 기능을 수행하기 위한 기능 블록들을 포함할 수 있다. 또한, WFM 실행엔진(220)은 시스템 안정화를 위해 복수로 구성될 수 있다.
WFM 관리 도구(230)는 분산처리 시스템(200) 전체의 동작을 관리하기 위한 장치로서, 클라우드 서비스의 권한 및 설정을 관리하고, WFM 실행엔진(220)에서 생성된 사용자 시스템(110)별 프로세스 및 사용자 시스템(110)별 클라우드 자원을 모니터링한다. 이를 위해, WFM 관리 도구(230)는 클라우드 서비스 관리, WFM 모니터링, 자원 모니터링, DB 관리를 위한 기능 블록들을 포함할 수 있다.
통합 DB(240)는 분산처리 시스템(200)을 이용한 작업 룰 정보, 작업 상태 정보 및 시스템 정보를 저장/관리한다.
도 2는 본 발명의 일 실시 예에 따른 통합 작업흐름관리 방법에 대한 개략적인 처리 절차도이다. 도 2는 사용자 시스템이 클라우드 자원을 할당받아 생성되며 개별 작업흐름을 관리하는 클라우드 시스템(100)과, 클라우드 시스템(100)과 호환되고 클라우드 시스템(100)의 작업 요청 정보 및 처리 정보를 저장하는 분산처리 시스템(200)이 상호 연동하여 통합 작업흐름을 관리하는 처리 절차의 예를 도시하고 있다. 분산처리 시스템(200)은 다수의 클라우드 시스템(100)과 호환되며, 다수의 클라우드 시스템(100)들 각각으로부터의 작업 요청 정보 및 처리 정보를 저장할 수 있지만, 도 2의 예에서는 하나의 클라우드 시스템(100)과 분산처리 시스템(200)간의 처리 절차의 예를 도시하고 있다.
도 1 및 도 2를 참조하면, 본 발명의 일 실시 예에 따른 통합 작업흐름관리 방법은 다음과 같다. 먼저, 단계 S105에서는, 작업흐름관리가 필요한 사용자 시스템(110)에서 수행되는 다양한 작업들 각각의 흐름에 대응된 룰(rule)들을 모델링한다. 즉, 단계 S105에서는, 모델링 도구(121)가 사용자 시스템(110)들 각각에게 제공된 고유의 클라우드 공간에서 상기 사용자 시스템들 각각에게 제공된 클라우드 자원(120)으로 상기 룰들을 모델링하고, 그 결과를 클라우드 공간(예컨대, 시스템 DB(123))에 저장할 수 있다.
단계 S110에서는, 사용자 시스템(110)이 상기 룰을 로딩한다. 즉, 클라우드 공간에 저장된 룰을 사용자 시스템(110) 영역으로 로딩한다.
단계 S115에서는, 사용자가 프로세스의 생성을 요청하는 지 여부를 결정한다.
단계 S120에서는, 단계 S115에서 사용자의 프로세스 생성 요청이 발생한 경우, 그 요청에 응답하여, 분산처리 시스템(200)에게 상기 요청 정보를 전달한다. 이 때, 단계 S120에서 전달되는 정보는 상기 로딩된 룰의 정보 및 상기 룰을 진행하기 위해 입력된 데이터들을 포함할 수 있다.
단계 S125에서는, 분산처리 시스템(200)이 상기 요청에 응답하여 대응된 동작 프로세스를 생성한다. 이 때, 분산처리 시스템(200)은 상기 모델링된 룰을 바탕으로 동작 프로세스를 생성할 수 있다. 그리고, 분산처리 시스템(200)은 해당 동작 프로세스의 진행 정보를 바탕으로 사용자 시스템(110)에게 동작 프로세스 진행(예컨대, 결재, 승인, 반려, 패스 등)을 요청할 수 있다.
단계 S130에서는, 사용자의 제어 명령이 입력되는 지 여부를 결정한다.
단계 S135에서는, 단계 S130에서 제어 명령이 입력된 경우, 클라우드 시스템(100)이 상기 입력된 제어 명령(예컨대, 동작 프로세스의 진행, 수정, 삭제 등)을 분산처리 시스템(200)으로 전달한다.
단계 S140에서는, 분산처리 시스템(200)이 상기 전달된 제어 명령이 종료명령인 지 여부를 결정한다.
단계 S145에서는, 상기 제어 명령이 종료 명령이 아닌 경우, 분산처리 시스템(200)이 해당 명령(예컨대, 동작 프로세스의 진행, 수정, 삭제 등)을 처리한다.
단계 S150에서는, 분산처리 시스템(200)이, 상기 명령에 맞는 이벤트 발생 조건을 체크하여 이벤트 발생 조건이 True 인 경우 이벤트를 발생한다.
단계 S155에서는, 분산처리 시스템(200)이, 잔여 이벤트의 존재 여부를 결정하고, 상기 결정 결과 잔여 이벤트가 존재하지 않는 경우, 단계 S160에서는, 동작 프로세스를 종료한다. 즉, 단계 S155에서는, 상기 명령에 대응된 이벤트 중 처리되지 않고 남은 이벤트인 잔여 이벤트가 존재하는지 여부를 결정하고, 단계 S160에서는 상기 잔여 이벤트가 없는 경우 동작 프로세스를 종료한다.
이 때, 단계 S160에서, 분산처리 시스템(200)은, 상기 동작 프로세스 종료 후 상기 동작 프로세스 처리 결과를 저장 및 상기 사용자 시스템(110)에게 전달하는 단계(미도시)를 더 포함할 수 있다.
한편, 단계 S140에서, 분산처리 시스템(200)이 수신한 제어 명령이 종료명령인 것으로 결정된 경우, 분산처리 시스템(200)은 단계 S160의 프로세스 종료 단계를 수행할 수 있다.
상술한 예시적인 시스템에서, 방법들은 일련의 단계 또는 블록으로써 순서도를 기초로 설명되고 있지만, 본 발명은 단계들의 순서에 한정되는 것은 아니며, 어떤 단계는 상술한 바와 다른 단계와 다른 순서로 또는 동시에 발생할 수 있다.
또한, 당업자라면 순서도에 나타낸 단계들이 배타적이지 않고, 다른 단계가 포함되거나 순서도의 하나 또는 그 이상의 단계가 본 발명의 범위에 영향을 미치지 않고 삭제될 수 있음을 이해할 수 있을 것이다.

Claims (12)

  1. 통신망을 통해 클라우드 서비스를 제공하는 외부의 서버 장치로부터, 고유의 클라우드 공간 및 클라우드 자원을 제공받아 개별 작업흐름을 관리하는 다수의 클라우드 시스템들; 및
    상기 다수의 클라우드 시스템들과 호환되고, 상기 클라우드 시스템들 각각의 작업 요청 정보 및 처리 정보를 저장/관리하는 분산처리 시스템을 포함하되,
    상기 클라우드 시스템은
    상기 외부의 서버 장치로부터 제공받은 클라우드 공간 및 클라우드 자원; 및
    상기 클라우드 공간 및 클라우드 자원을 이용하여 개별 작업흐름을 관리하는 사용자 시스템을 포함하고,
    상기 클라우드 자원은
    대응된 사용자 시스템에서 처리할 수 있는 업무 흐름을 정의하는 룰을 생성하고, 상기 룰의 버전을 관리하는 모델링부;
    상기 분산처리 시스템에게, 상기 룰을 실행하기 위한, 프로세스 생성을 요청하고, 상기 프로세스의 중지/구동/종료를 제어하는 프로세스 관리부;
    상기 사용자 시스템의 개별 데이터를 저장하는 시스템 데이터베이스부; 및
    상기 사용자 시스템 구축을 위해 필요한 기본 인터페이스를 제공하는 공개 어플리케이션 프로그래머블 인터페이스(Open API)들을 포함하고,
    상기 분산처리 시스템은
    상기 사용자 시스템의 작업 요청 및 그 응답을 송/수신하는 연계 처리부;
    상기 연계 처리부와의 데이터 송/수신을 통해, 상기 작업 요청을 수행하기 위한 프로세스를 생성하고 해당 작업의 처리 결과를 관리하는 실행엔진;
    상기 클라우드 서비스의 권한 및 설정을 관리하고, 상기 실행엔진에서 생성된 사용자 시스템별 프로세스 및 사용자 시스템별 클라우드 자원을 모니터링하는 시스템 관리부; 및
    상기 분산처리 시스템을 이용한 작업 룰 정보, 작업 상태 정보 및 시스템 정보를 저장/관리하는 통합 데이터베이스부를 포함하고,
    상기 사용자 시스템은
    상기 클라우드 자원으로부터 적어도 하나의 Open API를 제공받아 상기 개별 작업흐름을 관리하되, 상기 공개 어플리케이션 프로그래머블 인터페이스(Open API)들을 조합하여 상기 개별 작업 흐름을 정의하는 룰을 생성하여 상기 분산처리 시스템으로 작업을 요청하고, 상기 분산처리시스템으로부터 상기 룰의 데이터 및 상태인 프로세스를 전달받아 상기 개별 작업 처리 상태를 모니터링하는 것을 특징으로 하는 통합 작업흐름관리 시스템.
  2. 삭제
  3. 삭제
  4. 제1항에 있어서, 상기 연계 처리부는
    시스템 안정화를 위해 복수로 구성된 것을 특징으로 하는 통합 작업흐름관리 시스템.
  5. 제1항에 있어서, 상기 실행 엔진은
    시스템 안정화를 위해 복수로 구성된 것을 특징으로 하는 통합 작업흐름관리 시스템.
  6. 제1항에 있어서, 상기 실행 엔진은
    메시지 큐(message queue)를 통해 상기 연계 처리부와 데이터를 송/수신하는 것을 특징으로 하는 통합 작업흐름관리 시스템.
  7. 작업흐름관리가 필요한 다수의 사용자 시스템들 각각이, 통신망을 통해 클라우드 서비스를 제공하는 외부의 서버 장치로부터 클라우드 자원을 할당받아 생성되며, 개별 작업흐름을 관리하는 다수의 클라우드 시스템들; 및 상기 다수의 클라우드 시스템들과 호환되고 상기 클라우드 시스템들 각각의 작업 요청 정보 및 처리 정보를 저장하는 분산처리 시스템을 포함하는 통합 작업흐름관리 시스템을 이용한 통합 작업흐름관리 방법에 있어서,
    상기 다수의 클라우드 시스템들 각각이, 대응된 사용자 시스템에서 수행되는 다양한 작업들 각각의 흐름에 대응된 룰들을 모델링하되, 상기 사용자 시스템들 각각에게 제공된 고유의 클라우드 공간에서 상기 사용자 시스템들 각각에게 제공된 클라우드 자원으로 상기 룰들을 모델링하는 모델링 단계;
    상기 사용자 시스템의 요청에 응답하여, 상기 모델링된 룰을 바탕으로 동작 프로세스를 생성하되, 상기 다수의 사용자 시스템들과 호환되고 상기 사용자 시스템들 각각의 작업 요청 정보 및 처리 정보를 저장/관리하는 분산처리 시스템에서 상기 동작 프로세스를 생성하는 프로세스 생성 단계;
    상기 사용자 시스템의 제어 명령에 응답하여, 상기 분산처리 시스템에서 상기 동작 프로세스를 진행하는 프로세스 진행 단계; 및
    상기 동작 프로세스를 종료시키기 위한 종료 조건이 만족되면, 상기 분산처리 시스템이 상기 동작 프로세스를 종료하고 상기 동작 프로세스 처리 결과를 저장 및 상기 사용자 시스템에게 전달하는 프로세스 종료 단계를 포함하는 것을 특징으로 하는 통합 작업흐름관리 방법.
  8. 제7항에 있어서, 상기 모델링 단계는
    상기 모델링된 룰들을 상기 클라우드 공간에 저장하는 것을 특징으로 하는 통합 작업흐름관리 방법.
  9. 제8항에 있어서, 상기 프로세스 생성 단계는
    상기 사용자 시스템이 상기 클라우드 공간에 저장된 룰들을 로딩하는 로딩단계; 및
    상기 로딩된 룰의 정보 및 상기 룰을 진행하기 위해 입력된 데이터들을, 상기 사용자 시스템이, 상기 분산처리 시스템으로 전달하여 프로세스 생성을 요청하는 요청단계를 포함하는 것을 특징으로 하는 통합 작업흐름관리 방법.
  10. 제7항에 있어서, 상기 프로세스 진행 단계는
    상기 분산처리 시스템에서 상기 제어 명령을 처리하는 명령처리단계; 및
    상기 명령에 대응된 이벤트의 존재 여부에 따라 대응된 처리를 하는 이벤트처리단계를 포함하는 것을 특징으로 하는 통합 작업흐름관리 방법.
  11. 제7항에 있어서, 상기 프로세스 종료 단계는
    상기 사용자 시스템으로부터 상기 동작 프로세스 종료 명령이 전달되는 경우 상기 동작 프로세스를 종료하는 것을 특징으로 하는 통합 작업흐름관리 방법.
  12. 제10항에 있어서, 상기 프로세스 종료 단계는
    상기 명령에 대응된 이벤트 중 처리되지 않고 남은 잔여 이벤트의 존재 여부에 따라 상기 동작 프로세스 종료 여부를 결정하는 것을 특징으로 하는 통합 작업흐름관리 방법.
KR1020190153535A 2019-11-26 2019-11-26 클라우드 서비스를 위한 통합 작업흐름관리 시스템 및 그 방법 KR102360885B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190153535A KR102360885B1 (ko) 2019-11-26 2019-11-26 클라우드 서비스를 위한 통합 작업흐름관리 시스템 및 그 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190153535A KR102360885B1 (ko) 2019-11-26 2019-11-26 클라우드 서비스를 위한 통합 작업흐름관리 시스템 및 그 방법

Publications (2)

Publication Number Publication Date
KR20210064847A KR20210064847A (ko) 2021-06-03
KR102360885B1 true KR102360885B1 (ko) 2022-02-08

Family

ID=76396669

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190153535A KR102360885B1 (ko) 2019-11-26 2019-11-26 클라우드 서비스를 위한 통합 작업흐름관리 시스템 및 그 방법

Country Status (1)

Country Link
KR (1) KR102360885B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102656839B1 (ko) * 2023-01-18 2024-04-12 주식회사 신세계아이앤씨 워크플로우 기반의 클라우드 인프라 자원 통합 신청 서비스 제공방법 및 시스템

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008090485A (ja) 2006-09-29 2008-04-17 Nomura Research Institute Ltd ジョブ管理装置、システムおよびプログラム
JP2019161420A (ja) 2018-03-12 2019-09-19 株式会社リコー 情報処理システム、情報処理装置、情報処理方法、及びプログラム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101063619B1 (ko) 2004-12-09 2011-09-07 주식회사 케이티 홈 네트워크 업무 관리 시스템 및 그 업무 흐름 관리 방법
KR101995991B1 (ko) * 2012-11-23 2019-07-03 고려대학교 산학협력단 클라우드 기반 분산병렬 응용 워크플로우 실행 서비스의 제공 방법, 장치 및 시스템
KR20140102478A (ko) * 2013-02-14 2014-08-22 한국전자통신연구원 워크플로우 작업 스케줄링 장치 및 그 방법
KR20150009356A (ko) * 2013-07-16 2015-01-26 한국과학기술정보연구원 시뮬레이션 워크플로우 관리 시스템

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008090485A (ja) 2006-09-29 2008-04-17 Nomura Research Institute Ltd ジョブ管理装置、システムおよびプログラム
JP2019161420A (ja) 2018-03-12 2019-09-19 株式会社リコー 情報処理システム、情報処理装置、情報処理方法、及びプログラム

Also Published As

Publication number Publication date
KR20210064847A (ko) 2021-06-03

Similar Documents

Publication Publication Date Title
US10241835B2 (en) Scheduling storage and computing resources based on task types and service levels
CN110324417B (zh) 一种基于拟态防御的云服务执行体动态重构方法
CN110191063B (zh) 服务请求的处理方法、装置、设备及存储介质
AU2018201052B2 (en) System for optimising distribution of processing an automated process
US20160294774A1 (en) Methods and systems for orchestrating physical and virtual switches to enforce security boundaries
US8850390B2 (en) Status management for phased implementation of configuration changes
US20130080339A1 (en) Business process change controller
US20150067167A1 (en) Hot pluggable extensions for access management system
US8538793B2 (en) System and method for managing real-time batch workflows
KR101992963B1 (ko) 머신러닝을 통한 화이트리스트 명령어 정책 자동 생성 시스템
US11119828B2 (en) Digital processing system for event and/or time based triggering management, and control of tasks
US20140237373A1 (en) Method of provisioning a cloud-based render farm
US10892970B2 (en) Centralized, scalable, resource monitoring system
CN110062041B (zh) 一种基于区块链的iot设备变更的方法及装置
CN101346714A (zh) 程序执行服务窗口
CN111290768A (zh) 一种容器化应用系统的更新方法、装置、设备和介质
KR102360885B1 (ko) 클라우드 서비스를 위한 통합 작업흐름관리 시스템 및 그 방법
EP3839734A1 (en) Integration of an orchestration services with a cloud automation services
CN111274561A (zh) 一种身份管理方法、装置、设备及存储介质
US11663349B2 (en) System and method for managing data object creation
CN113885911A (zh) 基于rpa及ai的机器人版本更新方法及其装置
CN115714816A (zh) 数据中心资源供给方法、装置、电子设备及存储介质
US20230063458A1 (en) Restricted operations due to attachment of compute instances owned by different tenancies
CN111698266A (zh) 服务节点调用方法、装置、设备及可读存储介质
KR102227204B1 (ko) 분산처리를 적용한 실시간 작업흐름관리 시스템

Legal Events

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