KR20110114173A - A system and a method for generating web service customized based on business process - Google Patents

A system and a method for generating web service customized based on business process Download PDF

Info

Publication number
KR20110114173A
KR20110114173A KR1020100033665A KR20100033665A KR20110114173A KR 20110114173 A KR20110114173 A KR 20110114173A KR 1020100033665 A KR1020100033665 A KR 1020100033665A KR 20100033665 A KR20100033665 A KR 20100033665A KR 20110114173 A KR20110114173 A KR 20110114173A
Authority
KR
South Korea
Prior art keywords
activity
business process
type
information
bpel
Prior art date
Application number
KR1020100033665A
Other languages
Korean (ko)
Other versions
KR101127701B1 (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 KR1020100033665A priority Critical patent/KR101127701B1/en
Publication of KR20110114173A publication Critical patent/KR20110114173A/en
Application granted granted Critical
Publication of KR101127701B1 publication Critical patent/KR101127701B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/186Templates
    • 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
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/70Type of the data to be coded, other than image and sound
    • H03M7/707Structured documents, e.g. XML

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Economics (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • Tourism & Hospitality (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • General Health & Medical Sciences (AREA)
  • Entrepreneurship & Innovation (AREA)
  • General Business, Economics & Management (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Primary Health Care (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Development Economics (AREA)
  • Educational Administration (AREA)
  • General Engineering & Computer Science (AREA)
  • Game Theory and Decision Science (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Stored Programmes (AREA)

Abstract

본 발명은 비즈니스 프로세스로부터 사용자 맞춤형 웹 서비스를 생성하는 시스템 및 방법을 제공하다. 즉, 본 발명은 사용자의 비즈니스 프로세스 상의 공통성(commonality)과 가변성(variability)에 대한 표현을 지원하는 비즈니스 프로세스 패밀리 모델을 제공하고, 이러한 모델을 컴퓨터 시스템에 의해 실행될 수 있는 웹 서비스로서 실제화하여 사용자의 요구 사항에 부합하는 웹 서비스를 생성할 수 있는 시스템 및 방법을 제공한다.The present invention provides a system and method for creating a custom web service from a business process. That is, the present invention provides a business process family model that supports the expression of commonality and variability in the business process of the user, and actualizes the model as a web service that can be executed by a computer system. Provides a system and method for creating a web service that meets the requirements.

Description

비즈니스 프로세스로부터 사용자 맞춤형 웹 서비스를 생성하는 시스템 및 방법{A SYSTEM AND A METHOD FOR GENERATING WEB SERVICE CUSTOMIZED BASED ON BUSINESS PROCESS}A SYSTEM AND A METHOD FOR GENERATING WEB SERVICE CUSTOMIZED BASED ON BUSINESS PROCESS}

본 발명은 비즈니스 프로세스로부터 사용자 맞춤형 웹 서비스를 생성하는 시스템 및 방법에 관한 것이다. 보다 구체적으로, 본 발명은 사용자의 비즈니스 프로세스 상의 공통성(commonality)과 가변성(variability)에 대한 표현을 지원하는 비즈니스 프로세스 패밀리 모델을 제공하고, 이러한 모델을 컴퓨터 시스템에 의해 실행될 수 있는 웹 서비스로서 실제화하여 사용자의 요구 사항에 부합하는 웹 서비스를 생성할 수 있는 시스템 및 방법에 관한 것이다.
The present invention relates to a system and method for creating a custom web service from a business process. More specifically, the present invention provides a business process family model that supports the representation of commonality and variability in a business process of a user, and actualizes this model as a web service that can be executed by a computer system. The present invention relates to a system and a method for creating a web service that meets user requirements.

기업들은 업무 구조의 핵심적 흐름인 고유의 비즈니스 프로세스를 갖는다. 즉, 비즈니스 프로세스는 기업 활동의 핵심 산물로서, 실제 업무와 밀접하게 연관되어 빠르게 변화하며, 많은 기업들이 그들의 비즈니스 프로세스를 관리하기 위해 서비스 지향 컴퓨팅(service-oriented computing; SOC) 시스템 및 이를 위한 환경을 구축하고 있다. 서비스 지향 컴퓨팅이란, 이기종 환경에서도 저비용의 신속, 용이한 분산 시스템 구조의 개발을 지원하기 위하여 서비스(service)를 기본 구성 개념으로 사용하는 새로운 컴퓨팅 패러다임이다. 웹 서비스 기술은 서비스 지향 아키텍처(service-oriented architecture; SOA)를 갖는 SOC 환경을 지원하는 기법 중 하나로서, 유선 또는 무선 네트워크 환경에서 이기종 시스템간의 상호 작용을 지원하는 소프트웨어 개발 기술이며, 기본적으로 분산 컴퓨팅을 지원하는 것을 목적으로 한다. 웹 서비스는 WSDL(web service description language)이라는 문서에 의해 게시되는데, WSDL에 대한 표준은 W3C에 의해 제시되고 현재 WSDL 2.0 버전이 표준으로 채택되어 있다.Companies have their own business processes, which are the core flow of the business structure. In other words, business processes are a key product of corporate activities and are rapidly changing, closely related to real-world work, and many companies have established service-oriented computing (SOC) systems and environments for managing their business processes. Building. Service-oriented computing is a new computing paradigm that uses a service as a basic construction concept to support the development of a low cost, quick and easy distributed system architecture even in heterogeneous environments. Web service technology is one of the techniques to support SOC environment with service-oriented architecture (SOA). It is a software development technology that supports the interaction between heterogeneous systems in wired or wireless network environment. It is aimed at supporting this. Web services are published by a document called web service description language (WSDL). The standard for WSDL is proposed by the W3C and the current WSDL 2.0 version is adopted as the standard.

SOA, 즉, 서비스 지향 아키텍처는 기업의 비즈니스 프로세스에 대한 관점과 IT(information technology) 관점 간의 연결성에 초점을 맞추며, 상기 웹 서비스 기술이 비즈니스 프로세스를 실제화하기 위해 이용되고 있다. 현대의 산업 구조는 빠르게 변모하고 있고, 이에 따라 기업의 비즈니스 프로세스의 요구 사항 역시 빠르고 다양하게 변화하고 있다. 이런 요구 사항들의 변화를 충족시키기 위해 SOC 시스템이 요구된다. SOC 시스템을 구축하기 위하여 비즈니스 프로세스를 모델링하고 이를 동작 가능한 웹 서비스인 비즈니스 프로세스 실행 언어(Business Process Execution Language; BPEL)로 변환하는 기술이 제안되었다.SOA, or service-oriented architecture, focuses on the connectivity between the perspective of an enterprise's business process and the information technology (IT), and the web services technology is being used to make the business process a reality. Modern industrial structures are changing rapidly, and so are the demands of a business's business processes. SOC systems are required to meet these changes. In order to build an SOC system, a technology for modeling a business process and converting it into a business process execution language (BPEL), which is an operable web service, has been proposed.

한편, 소프트웨어 개발의 성공 포인트는 저비용으로 높은 품질의 소프트웨어를 개발하는 것이다. 그러나 저비용으로 높은 생산성을 나타내는 것과 높은 품질 사이에는 트레이드오프(trade-off)의 관계가 있다. 이러한 품질과 생산성에 대한 요구를 모두 만족시키기 위하여 산업계에서는 제품 계열 공학(product-line engineering) 기법이 이용되어 왔다. 제품 계열 공학의 핵심 메커니즘은 유사 제품군에서 공통적으로 사용되는 부분은 재사용하고, 개별 제품의 가변적 부분만을 생산하는 것이다. 이로써 제품 계열 공학은 품질과 생산성 목표를 동시에 달성할 수 있도록 한다. 소프트웨어 제품 계열 공학은 이러한 제품 계열 공학의 메커니즘을 적용하여 저비용으로 고품질의 소프트웨어를 개발하기 위한 프로세스이다. 소프트웨어 제품 계열(software product line)은 유사한 시스템들 간의 가변성을 지원하기 위한 메커니즘을 제공한다. 시스템들의 공통성과 가변성을 분석하는 것이 제품 계열 공학의 주된 관심사이며, 공통성과 가변성을 분석하고 표현하기 위하여 다양한 연구가 행해지고 있다. 제품 계열 공학의 메커니즘은, 또한, 비즈니스 프로세스의 모델링에도 적용될 수 있다. 즉, 기업의 업무 흐름에서의 요구 사항의 변화로 인해 비즈니스 프로세스의 일부가 변경된 경우, 상기 변경된 프로세스 부분을 가변적 부분으로, 변경되지 않고 유지되는 기존의 비즈니스 프로세스 부분은 공통적 부분으로 보고, 비즈니스 프로세스 상의 공통성과 가변성을 분석하는 것이 가능하다.On the other hand, the success point of software development is to develop high quality software at low cost. But there is a trade-off between high productivity at low cost and high quality. Product-line engineering techniques have been used in industry to meet both these quality and productivity demands. The core mechanism of product line engineering is to reuse parts that are commonly used in similar products and to produce only variable parts of individual products. This enables product line engineering to simultaneously meet quality and productivity goals. Software product line engineering is the process of developing high quality software at low cost by applying the mechanism of this product line engineering. The software product line provides a mechanism to support variability between similar systems. Analyzing the commonality and variability of systems is a major concern of product family engineering, and various studies have been conducted to analyze and express commonality and variability. The mechanisms of product line engineering can also be applied to the modeling of business processes. In other words, when a part of a business process is changed due to a change in requirements in an enterprise's work flow, the changed process part is regarded as a variable part, and an existing business process part that remains unchanged is viewed as a common part. It is possible to analyze commonality and variability.

비즈니스 프로세스의 변화된 요구 사항은 그로부터 파생되는 웹 서비스의 동작 흐름에 영향을 준다. 그러나 종래의 기술은 비즈니스 프로세스 모델의 웹 서비스로의 변환 기법만을 제공할 뿐, 비즈니스 프로세스 자체의 요구사항 변화에 대해서는 다루지 않고 있다. 따라서, 비즈니스 프로세스에 있어서의 요구 사항이 변화되는 경우, 비즈니스 프로세스 모델을 처음부터 다시 모델링해야 하는 일이 발생한다. 즉, 종래의 기술은 비즈니스 프로세스 모델 자체에서 발생될 수 있는 변화에 대처할 수 있는 대응력이 부족하여, 사용자의 요구 사항에 부합되는 사용자 맞춤형 웹 서비스를 다양하게 생성할 수 없는 문제가 있다.The changing requirements of business processes affect the behavior of the web services that derive from them. However, the conventional technology only provides a transformation method of a business process model into a web service, and does not deal with changing requirements of the business process itself. Thus, when requirements in the business process change, there is a need to remodel the business process model from scratch. That is, the conventional technology lacks the ability to cope with changes that may occur in the business process model itself, there is a problem that it is not possible to create a variety of customized web services that meet the user's requirements.

또한, 비즈니스 프로세스로부터 동작 가능한 웹 서비스를 제작하기 위해서는 비즈니스 프로세스를 BPEL로 변환하는 과정뿐만 아니라, 관련된 웹 서비스를 BPEL 상에 매핑하고 이러한 BPEL을 BPEL 엔진에 배치하는 과정이 요구된다. 그러나, 종래의 기술은 상기 배치 과정을 중요한 부분으로서 다루지 않고 있으며, 각각의 과정을 따로 제공하고 있다. 나아가, 상기 과정을 통합하여 제공하더라도 특정 BPEL 엔진에 대해서만 배치가 가능한 단점이 있다.
In addition, in order to produce an operable web service from a business process, not only a process of converting a business process into a BPEL, but also a process of mapping a related web service onto a BPEL and deploying the BPEL to a BPEL engine. However, the prior art does not deal with the batch process as an important part, and provides each process separately. Furthermore, even if the integrated process is provided, there is a disadvantage that it can be arranged only for a specific BPEL engine.

상기한 바와 같이, 종래의 기술에 의하면, 기업의 비즈니스 프로세스에 변동이 발생할 때마다 비즈니스 프로세스 모델을 처음부터 다시 모델링해야 하고, 이에 대응되는 웹 서비스 역시 다시 개발될 것이 요구된다. 이는 많은 비용과 오랜 시간을 소모하게 하고, 결과적으로 기업의 비즈니스 프로세스의 개선에 악영향을 끼칠 수밖에 없다. As described above, according to the related art, whenever a change occurs in a business process of an enterprise, the business process model must be remodeled from the beginning, and a corresponding web service is required to be developed again. This can be costly and time consuming, and consequently adversely affecting the business process of the enterprise.

본 발명은 이러한 종래의 기술이 지닌 문제점을 해결하기 위하여, 비즈니스 프로세스에 발생할 수 있는 요구 사항의 변화를 나타낼 수 있도록 가변성에 대한 표현을 지원하는 비즈니스 프로세스 패밀리 모델을 제공하는 것을 목적으로 한다. In order to solve the problems of the related art, an object of the present invention is to provide a business process family model that supports the representation of variability so as to represent a change in requirements that may occur in a business process.

또한 본 발명은, 요구 사항의 변화가 반영된 비즈니스 프로세스 모델을 실제 네트워크 환경에서 동작할 수 있는 웹 서비스로 변환하는 수단을 제공함으로써, 사용자로 하여금 낮은 비용과 짧은 시간으로 맞춤형 웹 서비스를 생성할 수 있는 수단을 제공하는 것을 목적으로 한다. In addition, the present invention provides a means for converting a business process model reflecting a change in requirements into a web service that can operate in a real network environment, thereby allowing a user to create a customized web service at low cost and in a short time. The purpose is to provide a means.

또한, 본 발명은 비즈니스 프로세스 모델을 BPEL로 변환하는 과정과 BPEL 엔진에 배치하는 과정을 통합함으로써, 비즈니스 프로세스 모델에 대응하여 생성된 웹 서비스를 사용자가 선택한 BPEL 엔진에 배치할 수 있는 수단을 제공하는 것을 목적으로 한다.
In addition, the present invention integrates a process of converting a business process model into a BPEL and a process of deploying the BPEL engine, thereby providing a means for deploying a web service generated corresponding to the business process model to a BPEL engine selected by a user. For the purpose of

상기의 목적을 달성하기 위하여, 본 발명에서는 다음과 같은 과제 해결 수단을 제공한다.In order to achieve the above object, the present invention provides the following problem solving means.

본 발명의 제1 실시예에 의하면, 사용자에 의해 규정된 비즈니스 프로세스(business process)로부터 사용자 맞춤형 웹 서비스(web service)를 생성하는 시스템을 제공한다. 상기 시스템은, 하나 또는 그 이상의 액티비티(activity) - 각각의 액티비티는, 미리 정해진 동작을 수행하도록 규정된 제1 유형의 액티비티 및 미리 정해진 일군(一群)의 동작들과 연관되고 상기 일군의 동작들로부터 선택된 동작을 수행하도록 설정될 수 있는 제2 유형의 액티비티 중 어느 하나의 유형에 해당함 - 를 포함하는 비즈니스 프로세스로부터 컴퓨터 시스템에 의해 판독 가능하도록 BPMN(business process modeling notation)을 이용하여 비즈니스 프로세스 모델을 생성하는 비즈니스 프로세스 모델 생성부를 포함한다. 또한 상기 시스템은, 상기 비즈니스 프로세스 모델에 있어서 상기 BPMN을 이용하여 표기된 상기 각각의 액티비티를, 상기 컴퓨터 시스템에 의해 판독 가능하도록 BPEL(business process execution language)을 이용하여 표기한 BPEL 문서를 생성하는 BPEL 변환부, 상기 BPEL 변환부에 의해 생성된 상기 BPEL 문서가 상기 컴퓨터 시스템에 의해 실행 가능하도록 상기 BPEL을 이용하여 표기된 상기 각각의 액티비티에 대응하여 미리 정해진 웹 서비스가 호출되도록 설정하는 웹 서비스 매핑부, 및 상기 웹 서비스 매핑부에 의해 상기 웹 서비스가 호출되도록 설정된 상기 BPEL 문서를 미리 정해진 BPEL 엔진 상에 배치(deploying)하는 BPEL 엔진 배치부를 포함한다. 상기 비즈니스 프로세스 모델 생성부는, 상기 비즈니스 프로세스로부터 상기 제1 유형의 액티비티에 대한 정보를 보유할 수 있는 제1 모델 요소 및 상기 제2 유형의 액티비티에 대한 정보를 보유할 수 있는 제2 모델 요소를 포함하는 비즈니스 프로세스 패밀리 모델을, 상기 컴퓨터 시스템에 의해 판독 가능하도록 상기 BPMN을 이용하여 생성하는 비즈니스 프로세스 패밀리 모델 생성부, 및 상기 비즈니스 프로세스에 제2 유형의 액티비티가 포함된 경우, 각각의 제2 유형의 액티비티와 연관된 일군의 동작들에 관한 정보를 상기 비즈니스 프로세스 패밀리 모델로부터 독출하고, 상기 독출된 정보를 기초로 상기 각각의 제2 유형의 액티비티에 의해 수행될 동작을 선택하며, 상기 선택된 동작에 대한 정보 및 상기 비즈니스 프로세스 패밀리 모델에 대한 정보를 기초로, 상기 컴퓨터 시스템에 의해 판독 가능하도록 상기 BPMN을 이용하여 비즈니스 프로세스 모델을 생성하는 액티비티 설정부를 포함한다.According to a first embodiment of the present invention, there is provided a system for creating a custom web service from a business process defined by a user. The system may include one or more activities, each activity associated with a first type of activity and a predetermined group of actions defined to perform a predetermined action and from the group of actions. Generate a business process model using business process modeling notation (BPMN) to be readable by a computer system from a business process that includes a second type of activity that can be set to perform a selected action. It includes a business process model generation unit. The system further includes a BPEL transformation for generating a BPEL document in which the respective activities, which are marked using the BPMN in the business process model, are marked using a business process execution language (BPEL) to be read by the computer system. A web service mapping unit for setting a predetermined web service to be called in correspondence to each of the activities marked using the BPEL such that the BPEL document generated by the BPEL conversion unit is executable by the computer system, and And a BPEL engine deployment unit for deploying the BPEL document set to be called by the web service mapping unit on a predetermined BPEL engine. The business process model generation unit may include a first model element capable of retaining information on the first type of activity from the business process and a second model element capable of retaining information on the second type of activity. A business process family model generator for generating a business process family model using the BPMN to be readable by the computer system, and when the business process includes a second type of activity, Reads information about the group of actions associated with the activity from the business process family model, selects an action to be performed by the second type of activity based on the read information, and information about the selected action And information about the business process family model Include the basis, activities setting unit for generating a business process model using the BPMN to be readable by the computer system.

본 발명의 제2 실시예에 의하면, 하나 또는 그 이상의 액티비티(activity)를 포함하는 비즈니스 프로세스(business process)를 모델링하는 시스템을 제공한다. 본 발명의 상기 시스템은, 상기 비즈니스 프로세스에 포함된 각각의 액티비티에 대하여, 각각의 액티비티가 미리 정해진 동작을 수행하도록 규정된 제1 유형의 액티비티 및 미리 정해진 일군(一群)의 동작들과 연관되고 상기 일군의 동작들로부터 선택된 동작을 수행하도록 설정될 수 있는 제2 유형의 액티비티 중 어느 유형의 액티비티에 해당하는지에 관한 정보, 각각의 제1 유형의 액티비티에 의해 수행되는 동작에 관한 정보, 각각의 제2 유형의 액티비티에 연관된 일군의 동작들에 관한 정보, 및 각각의 제2 유형의 액티비티에 의해 수행되는 동작에 관한 정보를 저장하는 비즈니스 프로세스 정보 저장부, 상기 비즈니스 프로세스에 제2 유형의 액티비티가 포함된 경우, 상기 비즈니스 프로세스 정보 저장부로부터 각각의 제2 유형의 액티비티와 연관된 일군의 동작들에 관한 정보를 독출하고, 상기 독출된 정보를 기초로 상기 각각의 제2 유형의 액티비티에 의해 수행될 동작을 선택하고, 상기 선택된 동작에 대한 정보를 상기 비즈니스 프로세스 정보 저장부에 저장하는 액티비티 설정부, 및 상기 비즈니스 프로세스 정보 저장부에 저장된 정보를 기초로, 컴퓨터 시스템에 의해 판독 가능하도록 상기 비즈니스 프로세스의 각각의 액티비티를 BPMN을 이용하여 표기한 비즈니스 프로세스 모델을 생성하는 비즈니스 프로세스 모델 생성부를 포함한다.According to a second embodiment of the present invention, there is provided a system for modeling a business process including one or more activities. The system of the present invention is associated with the first type of activity and a predetermined group of operations in which each activity is defined to perform, for each activity included in the business process, the Information about which type of activity of a second type of activity that may be set to perform a selected action from a group of actions, information about an action performed by each first type of activity, each agent A business process information storage that stores information about a group of actions associated with two types of activity, and information about an action performed by each second type of activity, wherein the business process includes a second type of activity Associated with each second type of activity from the business process information store. Read information about a group of actions, select an action to be performed by the second type of activity based on the read information, and store information about the selected action in the business process information storage. A business process model generation for generating a business process model indicating each activity of the business process using BPMN to be readable by a computer system based on the activity setting unit and the information stored in the business process information storage unit Contains wealth.

본 발명의 제3 실시예에 의하면, 사용자에 의해 규정된 하나 또는 그 이상의 액티비티 - 각각의 액티비티는, 미리 정해진 동작을 수행하도록 규정된 제1 유형의 액티비티 및 미리 정해진 일군(一群)의 동작들과 연관되고 상기 일군의 동작들로부터 선택된 동작을 수행하도록 설정될 수 있는 제2 유형의 액티비티 중 어느 하나의 유형에 해당함 - 를 포함하는 비즈니스 프로세스로부터 사용자 맞춤형 웹 서비스를 생성하는 방법을 제공한다. 본 발명의 상기 방법은, 상기 비즈니스 프로세스로부터 상기 제1 유형의 액티비티에 대한 정보를 보유할 수 있는 제1 모델 요소 및 상기 제2 유형의 액티비티에 대한 정보를 보유할 수 있는 제2 모델 요소를 포함하는 비즈니스 프로세스 패밀리 모델을, 컴퓨터 시스템에 의해 판독 가능하도록 BPMN을 이용하여 생성하는 비즈니스 프로세스 패밀리 모델 생성 단계, 상기 비즈니스 프로세스에 제2 유형의 액티비티가 포함된 경우, 각각의 제2 유형의 액티비티와 연관된 일군의 동작들에 관한 정보를 상기 비즈니스 프로세스 패밀리 모델로부터 독출하고, 상기 독출된 정보를 기초로 상기 각각의 제2 유형의 액티비티에 의해 수행될 동작을 선택하는 액티비티 설정 단계, 상기 선택된 동작에 대한 정보 및 상기 비즈니스 프로세스 패밀리 모델에 대한 정보를 기초로, 상기 컴퓨터 시스템에 의해 판독 가능하도록 상기 BPMN을 이용하여 비즈니스 프로세스 모델을 생성하는 비즈니스 프로세스 모델 생성 단계, 상기 비즈니스 프로세스 모델 생성 단계에서 생성된 상기 비즈니스 프로세스 모델의 각각의 액티비티를, 상기 컴퓨터 시스템에 의해 판독 가능하도록 BPEL을 이용하여 표기한 BPEL 문서를 생성하는 BPEL 변환 단계, 상기 BPEL 변환 단계에서 생성된 상기 BPEL 문서가 상기 컴퓨터 시스템에 의해 실행 가능하도록 상기 BPEL을 이용하여 표기된 상기 각각의 액티비티에 대응하여 미리 정해진 웹 서비스가 호출되도록 설정하는 웹 서비스 매핑 단계, 및 상기 웹 서비스 매핑 단계에서 상기 웹 서비스가 호출되도록 설정된 상기 BPEL 문서를 미리 정해진 BPEL 엔진 상에 배치(deploying)하는 BPEL 엔진 배치 단계를 포함한다.According to a third embodiment of the present invention, one or more activities defined by a user, each activity comprising: a first type of activity and a predetermined group of operations defined to perform a predetermined action; A method of creating a custom web service from a business process comprising an associated and corresponding to any one of a second type of activity that may be set to perform a selected action from the group of actions. The method of the present invention includes a first model element capable of retaining information about the first type of activity from the business process and a second model element capable of retaining information about the second type of activity. A business process family model generation step of generating a business process family model using BPMN to be readable by the computer system, and if the business process includes a second type of activity, associated with each second type of activity An activity setting step of reading information about a group of actions from the business process family model, and selecting an action to be performed by the respective second type of activity based on the read information, information on the selected action And based on information about the business process family model. Generating, by the computer system, each activity of the business process model generated in the business process model generation step of generating a business process model using the BPMN and readable by the computer system; A BPEL conversion step of generating a BPEL document written using BPEL to be readable, corresponding to each activity marked using the BPEL such that the BPEL document generated in the BPEL conversion step is executable by the computer system A web service mapping step of setting a predetermined web service to be called, and a BPEL engine deployment step of deploying the BPEL document on which the web service is set to be called at the web service mapping step on a predetermined BPEL engine. .

본 발명의 제4 실시예에 의하면, 하나 또는 그 이상의 액티비티(activity)를 포함하는 비즈니스 프로세스(business process)를 모델링하는 방법을 제공한다. 본 발명의 상기 방법은, 상기 비즈니스 프로세스에 포함된 각각의 액티비티에 대하여, 각각의 액티비티가 미리 정해진 동작을 수행하도록 규정된 제1 유형의 액티비티 및 미리 정해진 일군(一群)의 동작들과 연관되고 상기 일군의 동작들로부터 선택된 동작을 수행하도록 설정될 수 있는 제2 유형의 액티비티 중 어느 유형의 액티비티에 해당하는지에 관한 정보, 각각의 제1 유형의 액티비티에 의해 수행되는 동작에 관한 정보, 각각의 제2 유형의 액티비티에 연관된 일군의 동작들에 관한 정보, 및 각각의 제2 유형의 액티비티에 의해 수행되는 동작에 관한 정보를 저장하는 비즈니스 프로세스 정보 데이터베이스를 구축하는 비즈니스 프로세스 정보 데이터베이스 구축 단계, 상기 비즈니스 프로세스에 제2 유형의 액티비티가 포함된 경우, 상기 비즈니스 프로세스 정보 데이터베이스로부터 각각의 제2 유형의 액티비티와 연관된 일군의 동작들에 관한 정보를 독출하고, 상기 독출된 정보를 기초로 상기 각각의 제2 유형의 액티비티에 의해 수행될 동작을 선택하고, 상기 선택된 동작에 대한 정보를 상기 비즈니스 프로세스 정보 데이터베이스에 저장하는 액티비티 설정 단계, 및 상기 비즈니스 프로세스 정보 데이터베이스에 저장된 정보를 기초로, 컴퓨터 시스템에 의해 판독 가능하도록 상기 비즈니스 프로세스의 각각의 액티비티를 BPMN을 이용하여 표기한 비즈니스 프로세스 모델을 생성하는 비즈니스 프로세스 모델 생성 단계를 포함한다.
According to a fourth embodiment of the present invention, there is provided a method of modeling a business process including one or more activities. The method of the present invention relates to a first type of activity and a predetermined group of operations in which, for each activity included in the business process, each activity is defined to perform a predetermined action, and Information about which type of activity of a second type of activity that may be set to perform a selected action from a group of actions, information about an action performed by each first type of activity, each agent A business process information database building step of constructing a business process information database that stores information about a group of actions associated with two types of activities, and information about actions performed by each second type of activity, the business process Business contains a second type of activity, Reads information about a group of actions associated with each second type of activity from a process information database, selects an action to be performed by the second type of activity based on the read information, and selects the selected An activity setting step of storing information about an operation in the business process information database, and each activity of the business process is marked using BPMN to be readable by a computer system based on the information stored in the business process information database. Business process model generation step of generating a business process model.

본 발명의 사용자 맞춤형 웹 서비스 생성 시스템 및 그 방법에 의하면, 비즈니스 프로세스 모델링을 통해 웹 서비스를 설계하는 경우에, 미리 정해진 하나의 비즈니스 프로세스만을 모델링하는 것이 아니라, 사용자의 요구 사항에 따라 변동 가능한 사항까지 모두 설계에 포함시킬 수 있으므로, 사용자의 요구 및 시스템 사용 환경에 최적화된 웹 서비스 시스템을 생성할 수 있다. 또한, 비즈니스 프로세스를 모델링한 후에도, 상기 모델에 가변 부분에 대한 의사 결정을 통해 변경된 요구 사항이 반영된 웹 서비스 시스템을 생성할 수 있고, 따라서 비즈니스 프로세스에 변동이 발생할 때마다 비즈니스 프로세스 모델을 처음부터 다시 모델링해야 할 필요가 없고, 보다 낮은 비용과 짧은 시간을 소요하여 필요한 변경이 적용된 웹 서비스 시스템을 생성할 수 있다.According to the user-customized web service generation system and method thereof according to the present invention, when designing a web service through business process modeling, not only one predetermined business process is modeled, but also a matter that can be changed according to user requirements. All can be included in the design, creating a web service system that is optimized for the user's needs and system usage. In addition, even after modeling a business process, it is possible to create a web service system that reflects the changed requirements through decision making on the variable parts in the model, so that whenever a change occurs in the business process, the business process model is restarted from the beginning. There is no need to model, and you can create a Web service system with the necessary changes at a lower cost and less time.

또한 본 발명은, 비즈니스 프로세스 모델링 과정에서부터 실제 웹 서비스를 BPEL 엔진에 배치하는 과정을 통합하여 제공하며, 어느 특정 엔진만을 사용하도록 제한되지 않고 사용자는 원하는 웹 서비스 배치 엔진을 사용할 수 있으므로, 사용자 편의를 도모할 수 있다.In addition, the present invention integrates and provides a process of deploying a real web service to a BPEL engine from a business process modeling process. We can plan.

또한 본 발명에 따른 웹 서비스 생성 시스템 및 방법에 의하면, 비즈니스 프로세스 모델, BPEL Template, BPEL이 모두 XML 형태의 파일로 저장되므로, 관리가 용이하고 이식성 역시 뛰어난 장점이 있다.
In addition, according to the web service generation system and method according to the present invention, because the business process model, BPEL Template, BPEL are all stored as an XML file, it is easy to manage and excellent portability.

도 1은 본 발명의 일 실시예에 따른 사용자 맞춤용 웹 서비스 생성 시스템 500의 구성을 개략적으로 도시하는 블록도이다.
도 2는 본 발명의 다른 실시예에 따른 사용자 맞춤용 웹 서비스 생성 시스템 500의 구성을 개략적으로 도시하는 블록도이다.
도 3은, 본 발명의 일 실시예에 따른 비즈니스 프로세스 패밀리 모델의 가변성 정보 보유를 위한 모델 요소의 메타 모델을 도시한다.
도 4는 본 발명의 일 실시예에 따른 비즈니스 프로세스 패밀리 모델을 이용하여 "판매"의 비즈니스 프로세스를 모델링한 예이다.
도 5는 본 발명의 일 실시예에 따른 가변성 의사 결정 이후의 비즈니스 프로세스 모델의 일 예이다.
도 6은 본 발명의 일 실시예에 의한, 도 5의 실시예의 비즈니스 프로세스 모델을 BPEL로 변환한 결과를 도시한다.
도 7은 도 6의 "도어 시스템에 메일 전송"이라는 액티비티에 웹 서비스를 매핑한 결과를 도시한다.
도 8은 본 발명의 일 실시예에 따른 사용자 맞춤형 웹 서비스를 생성하는 방법을 도시하는 흐름도이다.
1 is a block diagram schematically illustrating a configuration of a user-customizable web service generation system 500 according to an embodiment of the present invention.
2 is a block diagram schematically illustrating a configuration of a user-customizable web service generating system 500 according to another embodiment of the present invention.
3 illustrates a metamodel of a model element for retaining variability information of a business process family model according to an embodiment of the present invention.
4 is an example of modeling a business process of "sales" using a business process family model according to an embodiment of the present invention.
5 is an example of a business process model after variability decision making according to an embodiment of the present invention.
FIG. 6 illustrates the results of converting the business process model of the embodiment of FIG. 5 to BPEL, according to one embodiment of the invention.
FIG. 7 shows the result of mapping a web service to an activity called “send mail to door system” in FIG. 6.
8 is a flowchart illustrating a method of creating a user-customized web service according to an embodiment of the present invention.

이하, 발명의 실시의 형태를 통해 본 발명을 설명하지만, 이하의 실시 형태는 청구의 범위의 발명을 한정하는 것은 아니며, 또한 실시 형태 중에 설명되고 있는 특징의 조합 전체가 발명의 해결 수단에 필수적이라고는 할 수 없다.EMBODIMENT OF THE INVENTION Hereinafter, although this invention is demonstrated through embodiment of invention, the following embodiment does not limit invention of a claim, and also the whole combination of the feature demonstrated in embodiment is essential for the solution of this invention. Can not.

도 1은 본 발명의 일 실시예에 의한 사용자 맞춤형 웹 서비스 생성 시스템 500(이하, 웹 서비스 생성 시스템 500이라고도 함)의 구성을 개략적으로 도시하는 블록도이다. 본 발명의 사용자 맞춤형 웹 서비스 생성 시스템 500은, 기업의 업무 흐름(workflow)을 나타내는 비즈니스 프로세스에 있어서의 공통성과 가변성을 표현할 수 있는 비즈니스 프로세스 패밀리 모델을 제공하고, 이러한 모델을 네트워크 환경 하에서 실행될 수 있는 웹 서비스로서 실제화할 수 있는 시스템이다. 즉, 상기한 제품 계열 공학을 이용하여 기업의 비즈니스 프로세스상의 공통성과 가변성을 분석하고, 이를 나타내기 위한 모델 및 이러한 모델을 웹 서비스로 실제화하기 위한 수단을 제공함으로써, 기업과 조직의 비즈니스 프로세스를 실현하여 웹 서비스로 구현된 시스템이 다양하게 변화하는 요구 사항에 빠르게 대응할 수 있도록 한다.1 is a block diagram schematically illustrating a configuration of a user-customized web service generation system 500 (hereinafter also referred to as a web service generation system 500) according to an embodiment of the present invention. The user-customized web service generation system 500 of the present invention provides a business process family model that can express commonality and variability in a business process representing a company's workflow, and the model can be executed in a network environment. It is a system that can be actualized as a web service. In other words, by using the above-mentioned product line engineering, we analyze the commonality and variability of the business process of the company, and provide a model to represent it and a means to actualize such a model as a web service, thereby realizing the business process of the company and the organization. This enables the system implemented as a web service to respond quickly to various changing requirements.

도 1에 도시된 바와 같이, 본 발명의 웹 서비스 생성 시스템 500은 비즈니스 프로세스 모델 생성부 100, BPEL 변환부 130, 웹 서비스 매핑부 140, 및 BPEL 엔진 배치부 150을 포함한다. 또한, 상기 비즈니스 프로세스 모델 생성부 100은 비즈니스 프로세스 패밀리 모델 생성부 110 및 액티비티 설정부 120을 포함한다. 또한, 도 2에 도시된 바와 같이, 본 발명의 웹 서비스 생성 시스템 500은 비즈니스 프로세스 정보 저장부 210 또는 사용자 입력 수취부 220을 더 포함할 수 있다. As shown in FIG. 1, the web service generation system 500 of the present invention includes a business process model generation unit 100, a BPEL conversion unit 130, a web service mapping unit 140, and a BPEL engine deployment unit 150. In addition, the business process model generator 100 includes a business process family model generator 110 and an activity setup unit 120. In addition, as shown in FIG. 2, the web service generation system 500 of the present invention may further include a business process information storage unit 210 or a user input receiver 220.

이하, 본 발명에 의한 상기 웹 서비스 생성 시스템 500의 각각의 구성요소 및 동작에 대하여 더욱 상세히 설명한다.Hereinafter, each component and operation of the web service generation system 500 according to the present invention will be described in more detail.

본 발명의 웹 서비스 생성 시스템 500의 상기 비즈니스 프로세스 모델 생성부 100은, 하나 또는 그 이상의 액티비티(activity)를 포함하는 비즈니스 프로세스로부터, 컴퓨터 시스템에 의해 판독 가능하도록 상기 비즈니스 프로세스의 각각의 액티비티를 프로세스 모델링 표기법(business process modeling notation; BPMN)을 이용하여 표기한 비즈니스 프로세스 모델을 생성한다. 이를 위하여, 상기 비즈니스 프로세스 모델 생성부 100은, 비즈니스 프로세스 패밀리 모델 생성부 110 및 액티비티 설정부 120을 포함한다. 상기 비즈니스 프로세스 패밀리 모델 생성부 110은 비즈니스 프로세스 상의 공통성과 가변성을 나타내는 제1 액티비티와 제2 액티비티를 표현하기 위해, 상기 BPMN을 확장하여 설계된 비즈니스 프로세스 패밀리 모델(business process family model; BPFM)을 생성한다. 즉, 상기 비즈니스 프로세스 패밀리 모델은 상기 제1 상기 제1 유형의 액티비티에 대한 정보를 보유할 수 있는 제1 모델 요소 및 상기 제2 유형의 액티비티에 대한 정보를 보유할 수 있는 제2 모델 요소를 포함한다. 또한, 상기 액티비티 설정부 120은, 상기 비즈니스 프로세스에 제2 유형의 액티비티가 포함된 경우, 각각의 제2 유형의 액티비티와 연관된 일군의 동작들에 관한 정보를 상기 비즈니스 프로세스 패밀리 모델로부터 독출하고, 상기 독출된 정보를 기초로 상기 각각의 제2 유형의 액티비티에 의해 수행될 동작을 선택하며, 상기 선택된 동작에 대한 정보 및 상기 비즈니스 프로세스 패밀리 모델에 대한 정보를 기초로, 상기 컴퓨터 시스템에 의해 판독 가능하도록 상기 BPMN을 이용하여 비즈니스 프로세스 모델을 생성한다. 상기 비즈니스 프로세스 패밀리 모델 생성부 110 및 상기 액티비티 설정부 120에 의해 생성되는 상기 BPFM 및 비즈니스 프로세스 모델은 XML 파일 형태로 생성될 수 있고, 각각의 모델의 생성을 위해 예를 들면 BPMN 모델러(modeler)와 같은 기존의 SOA 툴의 기술이 이용될 수 있다.The business process model generation unit 100 of the web service generation system 500 of the present invention processes modeling each activity of the business process to be readable by a computer system from a business process including one or more activities. Create business process models that are marked using business process modeling notation (BPMN). To this end, the business process model generator 100 includes a business process family model generator 110 and an activity setup unit 120. The business process family model generation unit 110 generates a business process family model (BPFM) designed by extending the BPMN to express a first activity and a second activity representing commonality and variability in a business process. . That is, the business process family model includes a first model element that can hold information about the first type of activity and a second model element that can hold information about the second type of activity. do. In addition, when the business process includes a second type of activity, the activity setting unit 120 reads information about a group of operations associated with each second type of activity from the business process family model, and Selecting an operation to be performed by each of the second types of activities based on the read information, and being readable by the computer system based on the information about the selected operation and the information about the business process family model. Create a business process model using the BPMN. The BPFM and the business process model generated by the business process family model generation unit 110 and the activity setting unit 120 may be generated in the form of an XML file. For example, a BPMN modeler may be used to generate each model. The same technology of existing SOA tools can be used.

본 발명에 있어서 액티비티(activity)란 비즈니스 프로세스를 구성하는 프로세스의 기본 단위를 일컫는 것으로, 사용자에 의해 미리 정해진 동작을 수행하도록 규정된 제1 유형의 액티비티와, 미리 정해진 일군(一群)의 동작들과 연관되고 상기 일군의 동작들로부터 선택된 동작을 수행하도록 설정될 수 있는 제2 유형의 액티비티를 포함한다. 즉, 제1 유형의 액티비티는 비즈니스 프로세스에 있어서 공통성을 갖는 액티비티에 해당하고, 제2 유형의 액티비티는 가변성을 갖는 액티비티에 해당한다. 사용자는 상기 제2 유형의 액티비티에 의해 수행될 동작을 설정하거나 변경하는 가변성 의사 결정을 할 수 있으며, 이로써 사용자의 요구 사항에 부응하는 웹 서비스를 생성할 수 있다. 또한, 본 발명에 있어서 상기 동작은 특정 시스템에 의해 실행되는 단일 작업(task)일 수 있고, 또는 복수의 작업이 소정의 순서로 열거된 일련의 작업들일 수 있으며, 특정 작업을 수행하지 않는 것일 수도 있다.In the present invention, activity refers to a basic unit of a process constituting a business process, and includes a first type of activity defined to perform a predetermined operation by a user, a predetermined group of operations, and And a second type of activity that may be associated and set to perform an action selected from the group of actions. That is, an activity of the first type corresponds to an activity having commonalities in a business process, and an activity of the second type corresponds to an activity having variability. The user can make variability decisions that set or change the operations to be performed by the second type of activity, thereby creating a web service that meets the user's requirements. Further, in the present invention, the operation may be a single task executed by a specific system, or a plurality of tasks may be a series of tasks listed in a predetermined order, or may not perform a specific task. have.

보다 구체적으로, 가변성을 나타내는 상기 제2 유형의 액티비티는, 제1 레벨의 가변성과 제2 레벨의 가변성을 가질 수 있다. 여기서 상기 제1 레벨의 가변성은 비즈니스 프로세스에서 특정 작업이 나타나는지 그렇지 않은지를 표현하는 속성이다. 예를 들면, 제1 레벨의 가변성을 갖는 제2 유형의 액티비티는 특정 작업을 수행하는 제1 동작과, 특정 작업을 수행하지 않는 제2 동작을 포함하는 일군(一群)의 동작들과 연관될 수 있다. 이 경우 사용자는, 상기 제1 동작과 제2 동작 중 어느 것이 수행되도록 선택하는지에 따라서 상기 제1 레벨 가변성의 액티비티가 상기 특정 작업을 수행할 것인지 수행하지 않을 것인지에 관한 선택을 할 수 있다. 상기 제2 레벨의 가변성은 단일 작업에 대하여 예측 가능한 가변치를 부여하고, 특정 시스템에 대한 요구 사항이 발생하였을 때 상기 가변치에 따라 비즈니스 프로세스를 재구성하는 보다 복합적인 가변성을 의미한다. 즉, 상기 가변치의 데이터 타입이나 값을 설정함으로써, 제2 레벨의 가변성이 부여된 액티비티의 다양한 가변 패턴을 규정할 수 있다. 상기 가변 패턴은 상기 제2 유형의 액티비티에 의해 수행될 작업이 다른 작업으로 대체되거나, 다른 작업을 추가로 수행하거나, 또는 대체 및 추가가 함께 이루어지는 가변성을 나타낼 수 있다. 또한, 상기 가변 패턴은 당해 패턴이 부여된 액티비티가 아닌 다른 액티비티의 동작을 변경하거나 액티비티들 간의 수행 순서를 변경하는 것을 가리킬 수 있으며, 특정 액티비티에 연관된 일군의 동작들에 대한 정보를 변경하도록 가리킬 수도 있다.More specifically, the second type of activity exhibiting variability may have a first level of variability and a second level of variability. The first level of variability is an attribute that expresses whether or not a particular task appears in a business process. For example, a second type of activity with a first level of variability may be associated with a group of actions including a first action that performs a particular task and a second action that does not perform the particular task. have. In this case, the user may make a selection as to whether the activity of the first level variability performs the specific task or not according to which of the first operation and the second operation is selected to be performed. The second level of variability implies a more complex variability that gives a predictable variance for a single task and reconfigures the business process according to the variance when requirements for a particular system arise. In other words, by setting the data type and the value of the variable value, various variable patterns of the activity to which the second level of variability is provided can be defined. The variable pattern may indicate a variability in which a task to be performed by the second type of activity is replaced with another task, additionally performs another task, or is replaced and added together. In addition, the variable pattern may refer to changing the operation of activities other than the activity to which the pattern is assigned or changing the order of execution among the activities, and may point to changing information on a group of actions associated with a specific activity. have.

본 발명에 있어서, 상기된 가변성의 표현을 위해 BPMN에 추가된 메타(meta) 모델의 실시예가 도 3에 도시되어 있다. 도 3에 도시된 바와 같이, 제1 레벨의 가변성을 표현하기 위하여 OptionalTask를 정의하고, OptionalDefinition을 연관지어 상기 제1 레벨의 가변성의 의미를 부여한다. 제2 레벨의 가변성의 표현을 위하여 DomainTask를 정의하고 바운더리와 가변성 속성을 갖는 VariationPointDefinition을 DomainTask와 연관지어 상기 제2 레벨 가변성의 의미를 부여한다. 상기 가변치를 표현하기 위한 추상 클래스인 Variant는 VariantDefinition과 연관된다. 단일 프로세스의 가변치는 VariantTask로 표현한다. 그러나 VariantTask만으로는 복수의 프로세스 또는 프로세스의 흐름을 표현할 수 없으므로, 가변치와 흐름 정보를 포함할 수 있는 VariantRegion을 정의한다. VPBinding은 상기 제2 레벨의 가변성에서 가변성을 가진 단일 프로세스인 DomainTask와 프로세스의 예측 가능한 변화를 표현하는 가변치인 Variant 사이의 관계를 표현한다. 예를 들면, 도 3의 실시예에서, 상기 가변치를 표현하는 추상 클래스인 Variant가 불린(Boolean) 타입인 경우 상기 가변 영역 내 가변치들의 사용 여부가 결정될 수 있고, 만약 상기 Variant의 기수(cardinality)가 1인 경우 가변치들 중 하나가 수행 동작으로서 선택될 수 있으며, 상기 Variant의 상기 기수가 2 이상인 경우, 가변치들의 수행 조건이 결정되거나 또는 가변치들의 수행 순서가 결정될 수 있다. 또한 상기 Variant의 값에 따라서 상기 결정된 수행 조건 또는 수행 순서에 따라서 상기 가변 영역 내의 가변치들이 재구성될 수 있다.In the present invention, an embodiment of a meta model added to the BPMN to represent the variability described above is shown in FIG. 3. As shown in FIG. 3, an OptionalTask is defined to represent a first level of variability, and an OptionalDefinition is associated to give a meaning of the first level of variability. For the representation of the second level of variability, DomainTask is defined, and VariationPointDefinition with boundary and variability attributes is associated with DomainTask to impart the meaning of the second level of variability. Variant, an abstract class for representing the variable, is associated with VariantDefinition. The variable value of a single process is represented by a VariantTask. However, since VariantTask alone cannot express multiple processes or process flows, VariantRegion can be defined that can contain variable values and flow information. VPBinding represents a relationship between DomainTask, which is a single process of variability in the second level of variability, and Variant, which is a variable representing a predictable change in the process. For example, in the embodiment of FIG. 3, when Variant, an abstract class representing the variable value, is a Boolean type, whether or not to use the variable values in the variable region may be determined. Is 1, one of the variable values may be selected as an execution operation. When the radix of the variant is 2 or more, an execution condition of the variable values may be determined or an execution order of the variable values may be determined. The variable values in the variable region may be reconstructed according to the determined execution condition or execution order according to the value of the variant.

비즈니스 프로세스에 가변성을 갖는 제2 유형의 액티비티가 포함된 경우 상기 가변성에 대한 사용자의 의사 결정을 위해, 본 발명의 웹 서비스 생성 시스템 500은 액티비티 설정부 120을 포함한다. 상기 액티비티 설정부 120은 상기 비즈니스 프로세스 패밀리 모델 생성부 110에 의해 생성된 상기 비즈니스 프로세스 패밀리 모델로부터 가변성을 나타내는 제2 유형의 액티비티와 연관된 일군의 동작들에 관한 정보를 독출하고, 상기 독출된 정보를 기초로 상기 포함된 제2 유형의 액티비티에 의해 수행될 동작을 설정한다. 보다 구체적으로, 상기 액티비티 설정부 120은 상기 BPMN을 확장하여 설계된 상기 비즈니스 프로세스 패밀리 모델(BPFM)을 입력으로 하고 당해 BPFM을 분석하여 가변성에 관한 결정, 즉, 상기 BPFM에 포함된 제2 유형의 액티비티에 의해 수행될 동작의 설정을 할 수 있다. 상기 액티비티 설정부 120은 상기 제2 유형의 액티비티에 의해 수행될 동작에 대한 정보를 기초로 비즈니스 프로세스 모델을 생성한다.When the business process includes a second type of activity having a variability, the web service generation system 500 of the present invention includes an activity setting unit 120 to determine a user about the variability. The activity setting unit 120 reads information about a group of operations associated with an activity of a second type indicating variability from the business process family model generated by the business process family model generation unit 110, and reads the read information. Set an action to be performed by the included second type of activity as a basis. More specifically, the activity setting unit 120 receives the business process family model (BPFM) designed by extending the BPMN and analyzes the BPFM to determine variability, that is, a second type of activity included in the BPFM. It is possible to set the operation to be performed. The activity setting unit 120 generates a business process model based on information about an operation to be performed by the second type of activity.

상기 액티비티 설정부 120에 의한 가변성 결정 방법은 다음과 같다. 우선, 상기 비즈니스 프로세스 패밀리 모델 생성부 110에 의해 생성된 BPFM에 제2 유형의 액티비티가 포함되어 있는지 여부를 판정한다. 판정의 결과 제2 유형의 액티비티가 존재하는 경우, 상기 제2 유형의 액티비티가 제1 레벨의 가변성을 갖는지 또는 제2 레벨의 가변성을 갖는지를 판단한다. 제1 레벨 가변성의 액티비티인 경우, 상기 BPFM으로부터 당해 제1 레벨 가변성의 제2 유형의 액티비티와 연관된 일군의 동작들에 관한 정보, 즉, 특정 작업을 수행하는 동작 및 특정 작업을 수행하지 않는 동작에 관한 정보를 독출한다. 다음으로, 당해 제2 유형의 액티비티가 상기 특정 작업을 수행할 것인지 수행하지 않을 것인지를 결정함으로써, 당해 제2 유형의 액티비티에 대한 가변성 의사 결정을 한다.The variability determination method by the activity setting unit 120 is as follows. First, it is determined whether the second type of activity is included in the BPFM generated by the business process family model generation unit 110. If there is a second type of activity as a result of the determination, it is determined whether the second type of activity has a first level of variability or a second level of variability. In the case of an activity of a first level variability, information about a group of operations associated with an activity of a second type of the first level variability from the BPFM, that is, an operation to perform a specific task and an operation not to perform a specific task. Read information about Next, a variability decision is made for the second type of activity by determining whether the second type of activity will or will not perform the particular task.

상기 제2 유형의 액티비티가 제2 레벨의 가변성을 갖는 경우, 당해 액티비티에 부여된 가변치에 대한 정보를 추출하고, 당해 가변치에 따라 당해 액티비티의 동작을 설정할 수 있다. 예를 들면, 상기 제2 레벨의 가변성을 갖는 제2 유형의 액티비티가 제1 동작을 수행하도록 설정되어 있고, 당해 제2 유형의 액티비티와 연관된 일군의 동작은, 제2 작업을 수행하는 제2 동작, 및 제3 작업을 수행하는 제3 동작을 포함하는 경우를 가정한다. 이 때, 상기 가변치가 다른 작업과의 대체를 나타내는 경우라면, 사용자는 당해 제2 액티비티에 대해 상기 제3 동작을 수행하도록 선택함으로써, 상기 제1 동작 대신 제3 동작이 수행되도록 설정할 수 있다. 또한 만약, 상기 가변치가 다른 작업의 추가를 나타내는 경우라면, 사용자는 당해 제2 액티비티에 대해 상기 제3 동작을 수행하도록 선택함으로써, 상기 제1 동작 및 제3 동작이 수행되도록 설정할 수 있다.When the second type of activity has a second level of variability, information about a variable value assigned to the activity may be extracted, and an operation of the activity may be set according to the variable value. For example, a second type of activity with the second level of variability is set to perform a first operation, and the group of actions associated with the second type of activity is a second operation that performs a second task. Assume a case that includes, and a third operation for performing the third operation. In this case, if the variable value represents a substitute for another task, the user may select to perform the third operation on the second activity, so that the third operation may be performed instead of the first operation. In addition, if the variable value indicates the addition of another task, the user may set the first operation and the third operation to be performed by selecting to perform the third operation on the second activity.

도 4는 본 발명의 따른 비즈니스 프로세스 모델의 일 예를 도시한다. 도 4는 "판매"라는 비즈니스 프로세스에 있어서의 공통성과 가변성을 분석하여, 상기 공통성을 제1 유형의 액티비티로 표현하고 상기 가변성을 제2 유형의 액티비티로 표현한 것이다. 도 4에 도시된 바와 같이, 상기 "판매" 비즈니스 프로세스에서는 두 가지의 가변성이 도출되었다. "비정상 상품 판매에 대한 처리"라는 액티비티와, "게이트웨이 도어 개방"이라는 액티비티가 바로 그것이다. 상기 "비정상 상품 판매에 대한 처리" 액티비티는 제2 레벨 가변성의 액티비티로서, 당해 액티비티에 연관된 동작으로서 "비정상 판매 상품 DB에 업데이트"라는 제1 동작과 "점원에게 비정상 판매 목록을 알림"이라는 제2 동작이 연관되어 존재한다. 사용자는 상기 제1 동작 및 제2 동작 중 어느 하나의 동작을 선택하여 상기 "비정상 상품 판매에 대한 처리"로서 수행할 수 있다. 도 5는 상기 제2 동작, 즉, "점원에게 비정상 판매 목록을 알림"을 선택한 경우의 예시를 도시한다. 또한, 상기 "게이트웨이 도어 개방"이라는 액티비티는, 제1 레벨 가변성을 갖는 제2 유형의 액티비티로서, 사용자는 상기 "게이트웨이 도어 개방"이라는 액티비티에 연관된 동작인 "도어 시스템에 의해 게이트웨이 도어 개방" 및 "도어 시스템에 메일 전송"이라는 작업을 수행할 것인지 수행하지 않을 것인지를 선택할 수 있다. 도 5는 상기 작업을 수행하도록 선택한 경우의 예시를 도시한다.4 illustrates an example of a business process model in accordance with the present invention. Fig. 4 analyzes the commonality and variability in the business process of "sales", expressing the commonality as the first type of activity and expressing the variability as the second type of activity. As shown in FIG. 4, two variability was derived from the “sales” business process. This is the activity called "Troubleshooting anomalous merchandise" and an activity called "Opening a gateway door." The "treatment for abnormal goods sale" activity is an activity of a second level variability, which is associated with the activity, a first action called "update to abnormal sale goods DB" and a second "notifying clerk an abnormal sales list". The action is associated and exists. The user may select any one of the first operation and the second operation and perform it as the "process for selling abnormal goods". FIG. 5 shows an example of the second operation, that is, "notifying the clerk of an abnormal sale list". In addition, the activity called "gateway door opening" is a second type of activity having a first level of variability, in which a user is referred to as "gateway door opening by door system" and "operation related to the activity called" gateway door opening ". You can choose whether or not to perform the action "Send mail to door system". 5 shows an example of the case where the user chooses to perform the above operation.

본 발명의 웹 서비스 생성 시스템 500은, 상기 비즈니스 프로세스 모델에 있어서 상기 BPMN을 이용하여 표기된 상기 각각의 액티비티를 상기 컴퓨터 시스템에 의해 판독 가능하도록 BPEL(business process execution language)을 이용하여 표기한 BPEL 문서를 생성하는 BPEL 변환부 130을 더 포함한다. 상기 BPEL 변환부 130의 동작을 보다 상세히 살펴보면 다음과 같다. 상기 비즈니스 프로세스 패밀리 모델 생성부 110에 의해 생성된 BPFM을 기초로 상기 액티비티 설정부 120에 의해 제2 유형의 액티비티의 동작이 결정되어 생성된 비즈니스 프로세스 모델로부터, 각각의 액티비티에 대한 정보 및 액티비티들 간의 관계에 대한 정보 등 동작 흐름에 대한 정보를 독출하고, 상기 독출된 정보로부터 BPEL로의 변환이 가능한지 판단한다. 만약 BPEL로의 변환이 가능한 경우, 상기 BPEL 변환부 130은 상기 비즈니스 프로세스 모델의 각각의 액티비티를 포함하는 BPMN에 의해 표기된 구성 요소들을 BPEL 형식의 표기 및 구조로 변환한다. 비즈니스 프로세스 모델의 BPEL 변환 모델은 BPMN 2.0 명세를 따르며, 기존의 BPMN-BPEL 변환 기법이 이용될 수 있다. 만약 상기 BPMN으로 표기된 비즈니스 프로세스 모델에 BPEL로 변환할 수 없는 구성 요소가 존재한다면, 해당 구성 요소를 BPEL로 표현 가능하도록 수정한 후 상기 비즈니스 프로세스 모델을 BPEL로 변환한다. 상기 변환의 결과로서, XML 형태의 BPEL 템플릿(Template) 파일이 생성될 수 있다. 도 6은, 도 5에 도시된 비즈니스 프로세스 모델로부터 상기 BPEL 변환부 130의 동작에 의해 생성된 BPEL 템플릿의 일 예를 도시한다. Web service generation system 500 of the present invention, BPEL document is written using BPEL (business process execution language) so that the computer system can read each of the activities represented by the BPMN in the business process model. The apparatus further includes a BPEL converter 130 to generate. Looking at the operation of the BPEL converter 130 in more detail as follows. Based on the BPFM generated by the business process family model generator 110, the activity setting unit 120 determines the operation of the activity of the second type, and is generated from the business process model. Information on the operation flow such as information on the relationship is read, and it is determined whether the conversion from the read information to the BPEL is possible. If conversion to BPEL is possible, the BPEL conversion unit 130 converts the components represented by the BPMN including each activity of the business process model into a BPEL format representation and structure. The BPEL transformation model of the business process model follows the BPMN 2.0 specification, and existing BPMN-BPEL transformation techniques can be used. If a component that cannot be converted into BPEL exists in the business process model indicated by the BPMN, the component is modified to be expressed in BPEL and then the business process model is converted into BPEL. As a result of the conversion, a BPEL template file in XML format may be generated. FIG. 6 illustrates an example of a BPEL template generated by the operation of the BPEL converter 130 from the business process model shown in FIG. 5.

본 발명의 상기 웹 서비스 생성 시스템 500은, 상기 BPEL 변환부 130에 의해 생성된 상기 BPEL 템플릿과 같은 BPEL 문서가 상기 컴퓨터 시스템에 의해 실행 가능하도록 상기 BPEL을 이용하여 표기된 상기 각각의 액티비티에 대응하여 미리 정해진 웹 서비스가 호출되도록 설정하는 웹 서비스 매핑부 140을 포함한다. 상기 BPEL 변환부 130에 의해 생성된 상기 BPEL 템플릿은, 상기 BPMN으로 작성된 것과 동일한 비즈니스 프로세스 흐름을 갖는 모델이며, 단지 표현 방식만이 BPEL로 변경된 것이다. 즉, BPEL 템플릿은 단지 비즈니스 프로세스 흐름을 BPEL로 나타내는 것에 지나지 않고, 실행 가능한 것이 아니다. 따라서, 실제 비즈니스 프로세스의 실현을 위한 웹 서비스를 BPEL 템플릿 내에 기재된 각각의 액티비티에 대응시키는 과정이 요구된다. 이를 매핑(mapping)이라고 한다. The web service generation system 500 according to the present invention may correspond in advance to each of the activities marked by using the BPEL such that a BPEL document such as the BPEL template generated by the BPEL conversion unit 130 is executable by the computer system. And a web service mapping unit 140 configured to set a predetermined web service to be called. The BPEL template generated by the BPEL converter 130 is a model having the same business process flow as that written in the BPMN, and only the presentation method is changed to BPEL. In other words, a BPEL template is simply a representation of a business process flow in BPEL and is not executable. Therefore, a process of mapping a web service for realization of an actual business process to each activity described in the BPEL template is required. This is called mapping.

상기 웹 서비스 매핑부 140은, 비즈니스 프로세스를 실현하기 위해 필요한 웹 서비스를 검색하고 해당 웹 서비스에 대한 명세(specification)인 WSDL를 확보한다. 확보된 WSDL은 BPEL에 파트너 링크로서 추가된다. 파트너 링크는 BPEL과 관련 개체들 간의 상호 작용을 정의하는데 사용되며, 여기에는 BPEL 프로세스가 호출하는 웹 서비스, 그리고 BPEL 프로세스를 호출하는 클라이언트에 대한 정의가 함께 포함된다. 상기 웹 서비스 매핑부 140은 상기 파트너 링크 정보를 BPEL에 추가한 후, 파트너 링크에 의해 제공되는 웹 서비스를 BPEL 템플릿의 액티비티에 매핑한다. 이로써 각각의 액티비티는 대응되는 웹 서비스와 연관된다.The web service mapping unit 140 searches for a web service necessary to realize a business process and secures a WSDL that is a specification of the web service. The acquired WSDL is added to the BPEL as a partner link. Partner links are used to define the interaction between BPEL and related entities, including the definition of the web service that the BPEL process invokes and the client that invokes the BPEL process. The web service mapping unit 140 adds the partner link information to the BPEL, and then maps the web service provided by the partner link to the activity of the BPEL template. Each activity is then associated with a corresponding web service.

단일 웹 서비스 동작은 프로그램 언어에서의 함수와 유사하다. BPEL 템플릿에 매핑된 웹 서비스를 호출하기 위해, 상기 웹 서비스 매핑부 140은 웹 서비스를 호출할 수 있도록 웹 서비스 동작의 호출 파라미터 변수와 반환 변수의 선언, 및 선언된 변수에 값을 할당하는 등과 같은 부가 정보 설정을 수행한다. 예를 들면, BPEL 명세에서, 상기 부가 정보들을 설정하기 위해 <assign> 및 <variable>, <from>, <to>와 같은 메커니즘이 이용된다.The behavior of a single web service is similar to a function in a programming language. In order to call a web service mapped to a BPEL template, the web service mapping unit 140 may declare a call parameter variable and a return variable of a web service operation so as to call the web service, and assign a value to the declared variable. Perform additional information setting. For example, in the BPEL specification, mechanisms such as <assign> and <variable>, <from>, and <to> are used to set the additional information.

상기 웹 서비스 동작의 파라미터와 리턴 변수를 설정한 후, 상기 웹 서비스 매핑부 140은 실행 가능하도록 된 BPEL 및 WSDL, XSD와 같은 BPEL 관련 파일을 생성한다. 상기 웹 서비스 매핑부 140에 의해 생성되는 모든 파일은 XML로 작성될 수 있다. 또한, 상기 웹 서비스 매핑부 140은 웹 서비스의 매핑과 변수 설정을 위한 GUI(graphical user interface)를 제공할 수 있다.After setting parameters and return variables of the web service operation, the web service mapping unit 140 generates BPEL related files such as BPEL, WSDL, and XSD which are made executable. All files generated by the web service mapping unit 140 may be written in XML. In addition, the web service mapping unit 140 may provide a graphical user interface (GUI) for mapping a web service and setting a variable.

도 7은 도 6에 도시된 상기 BPEL 변환부 130에 의해 생성된 BPEL 템플릿에 있어서, "도어 시스템에 메일 전송"이라는 액티비티에 실제 웹 서비스와 부가 정보가 설정된 XML의 일 예를 도시한다. 첫번째 박스는 상기 "도어 시스템에 메일 전송"이라는 액티비티에 매핑된 웹 서비스의 파트너링크, 오퍼레이션, 및 포트 타입에 대한 정보이고, 두번째 및 세번째 박스는 각각 입/출력 값에 할당된 변수 정보를 나타낸다. FIG. 7 illustrates an example of XML in which a web service and additional information are set in an activity called "send mail to door system" in the BPEL template generated by the BPEL converter 130 shown in FIG. 6. The first box is information on the partner link, operation, and port type of the web service mapped to the activity "send mail to the door system", and the second and third boxes respectively indicate variable information assigned to input / output values.

본 발명의 상기 웹 서비스 생성 시스템 500은, 상기 웹 서비스 매핑부 140에 의해 상기 웹 서비스가 호출되도록 설정된 상기 BPEL 문서를 미리 정해진 BPEL 엔진 상에 배치(deploying)하는 BPEL 엔진 배치부 150을 더 포함한다. 상기 BPEL 엔진 배치부 150의 동작을 보다 상세히 살펴보면 다음과 같다. 상기 BPEL 엔진 배치부 150은 우선 BPEL을 배치하기 위한 BPEL 엔진을 선택한다. 상기 BPEL 엔진은 어느 하나의 특정 엔진만 사용할 수 있는 것이 아니라, 사용자의 선택에 따라서 결정될 수 있다. 따라서, 본 시스템의 사용자는 해당 프로젝트에서 실제 이용되는 BPEL 엔진을 선택하면 되고, 예를 들면, Apache ODE와 ActiveVOS 중 하나를 선택할 수 있다.The web service generation system 500 of the present invention further includes a BPEL engine deployment unit 150 for deploying the BPEL document configured to be called by the web service mapping unit 140 on a predetermined BPEL engine. . Looking at the operation of the BPEL engine placement unit 150 in more detail as follows. The BPEL engine placement unit 150 first selects a BPEL engine for placing a BPEL. The BPEL engine may not be used by any one specific engine but may be determined according to a user's selection. Therefore, the user of this system can select the BPEL engine actually used in the project, for example, one of Apache ODE and ActiveVOS can be selected.

BPEL 또는 WS-BPEL은 기준 명세를 갖지만, BPEL 엔진은 기준 명세가 없다. 즉, 배치 과정과 배치 정보 및 관련 파일은 BPEL 엔진에 밀접하게 의존하고, 배치 파일의 구성은 엔진마다 다르다. 그러나, 상기한 바와 같이 BPEL은 기준 명세를 가지므로, BPEL 명세를 지원하는 모든 BPEL 엔진에서 상기 웹 서비스 매핑 모듈 140에 의해 생성된 BPEL, 상기 BPEL에 매핑된 웹 서비스에 대한 정보를 담고 있는 기술자(descriptor)인 WSDL, 및 메시지 정보를 담고 있는 XSD가 이용될 수 있다. The BPEL or WS-BPEL has a reference specification, but the BPEL engine does not have a reference specification. That is, the batch process, batch information, and related files are closely dependent on the BPEL engine, and the configuration of the batch file varies from engine to engine. However, as described above, since the BPEL has a reference specification, the BPEL generated by the web service mapping module 140 and the descriptor containing information about the web service mapped to the BPEL in all the BPEL engines supporting the BPEL specification ( WSDL, which is a descriptor), and an XSD including message information may be used.

상기 BPEL 엔진 배치부 150은 상기 웹 서비스 매핑 모듈 140에 의해 생성된 파일들에 각 엔진이 지닌 고유한 정보를 더하여 BPEL 배치 파일을 구성한다. 엔진의 고유 정보는 엔진의 종류와 버전, 물리적 주소(IP, port) 등을 포함하며, 엔진마다 고유 정보와 BPEL, WSDL, XSD를 구성하는 법이 다르므로 배치할 엔진의 특징을 파악할 필요가 있다. 예를 들면, 상기 Apache ODE 상의 배치 파일은 디렉터리를 갖지 않는 단일 집(zip) 파일이고, ActiveVOS 상의 배치 가공물은 다수의 디렉터리 및 배치 디스크립터 - 상기 배치 스크립터는, BPEL 배치와 관련 웹 서비스에 관한 정보를 포함함 - 를 포함하는 단일 자르(jar) 파일이다.The BPEL engine deployment unit 150 configures a BPEL deployment file by adding unique information of each engine to the files generated by the web service mapping module 140. The unique information of the engine includes the type and version of the engine, the physical address (IP, port), etc. Since the unique information and how to configure BPEL, WSDL, and XSD are different for each engine, it is necessary to understand the characteristics of the engine to be deployed. . For example, the batch file on Apache ODE is a single zip file with no directory, and the batch artifacts on ActiveVOS may contain multiple directories and batch descriptors-the batch script may provide information about BPEL batches and related web services. Contains-A single jar file containing.

상기 BPEL 엔진 배치부 150은 상기 엔진 고유 정보를 기초로 구성된 BPEL 배치 파일을 상기 선택된 BPEL 엔진에 배치한다. 이로써 기업의 비즈니스 프로세스가 웹 서비스로 불리는 수행 가능한 자산으로 실현된다.The BPEL engine arranging unit 150 arranges a BPEL batch file configured based on the engine specific information in the selected BPEL engine. This makes the business process of the enterprise a viable asset called a web service.

한편, 도 2에 도시된 바와 같이, 본 발명의 웹 서비스 생성 시스템 500은 비즈니스 프로세스 정보 저장부 210 또는 사용자 입력 수취부 220을 더 포함할 수 있다.As illustrated in FIG. 2, the web service generation system 500 of the present invention may further include a business process information storage unit 210 or a user input receiver 220.

상기 비즈니스 프로세스 정보 저장부 210은, 비즈니스 프로세스에 포함된 각각의 액티비티에 대하여, 각각의 액티비티가 상기 제1 유형의 액티비티 및 상기 제2 유형의 액티비티 중 어느 유형의 액티비티에 해당하는지에 관한 정보, 각각의 제1 유형의 액티비티에 의해 수행되는 동작에 관한 정보, 각각의 제2 유형의 액티비티에 연관된 일군의 동작들에 관한 정보, 및 각각의 제2 유형의 액티비티에 의해 수행되는 동작에 관한 정보를 저장한다. 또한, 상기 비즈니스 프로세스 정보 저장부 210은 각각의 액티비티 간의 관계에 관한 정보, 상기 비즈니스 프로세스 내에서 각각의 액티비티가 수행되는 순서에 관한 정보 등을 더 포함할 수 있다. 상기 비즈니스 프로세스 정보 저장부 210은, 상기 정보들을 비즈니스 프로세스에 대한 가공되지 않은 상태의 정보로서 저장할 수 있고, 또는 상기 정보들을 기초로 생성된 비즈니스 프로세스 패밀리 모델의 표기 및 구조의 형태로 가공되어 저장될 수도 있다. The business process information storage unit 210, for each activity included in the business process, information about which type of activity of the activity of the first type and the activity of the second type, respectively, for each activity Information about an action performed by an activity of the first type of, information about a group of actions associated with each second type of activity, and information about an action performed by each second type of activity. do. In addition, the business process information storage unit 210 may further include information about a relationship between each activity, information about the order in which each activity is performed in the business process. The business process information storage unit 210 may store the information as unprocessed state information about a business process, or may be processed and stored in the form of a representation and structure of a business process family model generated based on the information. It may be.

상기 액티비티 설정부 120은, 상기 비즈니스 프로세스 정보 저장부 210에 저장된 정보들을 기초로, 제2 유형의 액티비티와 연관된 일군의 동작들에 관한 정보를 독출하고, 각각의 제2 유형의 액티비티에 의해 수행될 동작을 선택할 수 있다. 상기 선택된 동작에 대한 정보는 다시 상기 비즈니스 프로세스 정보 저장부 210에 저장됨으로써 갱신될 수 있고, 상기 액티비티 설정부 210은 상기 비즈니스 프로세스 정보 저장부 210에 저장된 가변성에 대한 의사 결정 정보를 기초로 비즈니스 프로세스 모델을 생성할 수 있다. The activity setting unit 120 reads information about a group of operations associated with the second type of activity based on the information stored in the business process information storage unit 210, and is to be performed by each second type of activity. You can select the action. The information on the selected operation may be updated again by being stored in the business process information storage 210, and the activity setting unit 210 may be a business process model based on decision information about variability stored in the business process information storage 210. Can be generated.

또한 본 발명의 웹 서비스 생성 시스템 500은, 사용자 입력 수취부 220을 더 포함함으로써 사용자로 하여금 상기 제2 유형의 액티비티에 의해 수행될 동작을 직접 선택하도록 할 수 있다. 보다 구체적으로, 상기 사용자 입력 수취부 220은, 제2 유형의 액티비티에 대하여, 상기 제2 유형의 액티비티와 연관된 일군의 동작들에 관한 정보를 사용자에게 제공하고, 상기 사용자로부터 상기 연관된 일군의 동작들 중 상기 포함된 제2 유형의 액티비티에 의해 수행될 동작을 선택하는 입력을 수취한다. 상기 사용자에게 제공될 정보는 상기 비즈니스 프로세스 패밀리 모델 생성부 110에 의해 생성된 비즈니스 프로세스 패밀리 모델로부터 독출될 수 있고, 또는 상기 비즈니스 프로세스 정보 저장부 210에 저장된 정보로부터 제공될 수 있다. 상기 사용자 입력 수취부 220은 사용자에게 소정의 정보를 제공하고 입력을 수취하기 위한 GUI를 제공할 수 있다. 나아가 상기 액티비티 설정부 120은, 상기 사용자 입력 수취부 220에 의해 상기 사용자로부터 수취된 입력을 기초로 상기 제2 유형의 액티비티에 의해 수행될 동작을 선택하도록 설정할 수 있다. 또한 상기 액티비티 설정부 120은 상기 사용자로부터의 입력을 기초로 설정된 상기 제2 유형의 액티비티에 의해 수행될 동작에 대한 정보를 상기 비즈니스 프로세스 정보 저장부 210에 저장할 수 있다.In addition, the web service generation system 500 of the present invention may further include a user input receiver 220 to allow a user to directly select an operation to be performed by the second type of activity. More specifically, the user input receiver 220 provides the user with information regarding the group of actions associated with the activity of the second type, and provides the user with the associated group of actions from the user. Receives an input for selecting an operation to be performed by the included second type of activity. The information to be provided to the user may be read from the business process family model generated by the business process family model generator 110 or may be provided from the information stored in the business process information storage 210. The user input receiver 220 may provide a user with a GUI for providing predetermined information and receiving an input. Further, the activity setting unit 120 may set to select an operation to be performed by the second type of activity based on the input received from the user by the user input receiving unit 220. In addition, the activity setting unit 120 may store information about an operation to be performed by the second type of activity set based on an input from the user, in the business process information storage unit 210.

다음으로 도 8를 참조하면, 도 8는 본 발명의 일 실시예에 의한 사용자 맞춤형 웹 서비스 생성 방법을 도시하는 흐름도이다. 도 8에 도시된 바와 같이, 사용자에 의해 정보가 입력되거나 소정의 데이터베이스에 저장된 정보를 기초로, 미리 정해진 동작을 수행하도록 규정된 제1 유형의 액티비티 및/또는 미리 정해진 일군(一群)의 동작들과 연관되고 상기 일군의 동작들로부터 선택된 동작을 수행하도록 설정될 수 있는 제2 유형의 액티비티를 포함하는 비즈니스 프로세스로부터 비즈니스 프로세스 패밀리 모델을 생성한다(도 8의 단계 1010). 즉, 상기 단계 1010에서 획득되는 비즈니스 프로세스 모델은 컴퓨터 시스템에 의해 판독 가능하도록 상기 비즈니스 프로세스의 각각의 액티비티를 BPMN을 이용하여 표기한 비즈니스 프로세스 패밀리 모델로서, 상기 제2 유형의 액티비티에 대한 표현을 지원하기 위해 기존의 BPMN에 상기 제2 유형의 액티비티에 대한 정보를 보유할 수 있는 모델 요소, 예를 들면, 도 3에 도시된 바와 같은 메타 모델이 추가될 수 있다는 것은 상기 비즈니스 프로세스 패밀리 모델 생성부 110 및 상기 액티비티 설정부 120과 관련하여 설명한 바와 같다.Next, referring to FIG. 8, FIG. 8 is a flowchart illustrating a user-customized web service generating method according to an embodiment of the present invention. As shown in FIG. 8, a first type of activity and / or a predetermined set of operations defined to perform a predetermined operation based on information inputted by a user or stored in a predetermined database. Generate a business process family model from a business process that includes a second type of activity associated with and configured to perform a selected action from the group of actions (step 1010 of FIG. 8). That is, the business process model obtained in step 1010 is a business process family model in which each activity of the business process is marked using BPMN to be readable by a computer system, and supports a representation of the second type of activity. For example, a model element capable of holding information on the second type of activity may be added to an existing BPMN, for example, a metamodel as shown in FIG. 3. And as described in relation to the activity setting unit 120.

다음으로, 본 발명의 웹 서비스 생성 방법은, 상기 비즈니스 프로세스에 포함된 각각의 제2 유형의 액티비티에 대하여, 상기 각각의 제2 유형의 액티비티와 연관된 일군의 동작들에 관한 정보를 상기 비즈니스 프로세스 패밀리 모델로부터 독출한다. 만약 상기 비즈니스 프로세스에 대한 정보를 저장하는 데이터베이스가 구축된 상태라면, 상기 데이터베이스에 저장된 정보로부터 상기 제2 유형의 액티비티와 연관된 일군의 동작들에 관한 정보를 독출할 수 있다. Next, the web service creation method of the present invention, for each second type of activity included in the business process, the information about the group of operations associated with each of the second type of activity, the business process family Read from the model. If a database for storing information about the business process is established, information about a group of operations associated with the second type of activity may be read from the information stored in the database.

상기 데이터베이스를 구축하는 단계는, 통상적으로 상기 비즈니스 프로세스 패밀리 모델을 생성하는 단계 이전에 수행되어 상기 비즈니스 프로세스 패밀리 모델을 모델링하기 위한 정보가 저장되지만, 상기 비즈니스 프로세스 패밀리 모델 생성 단계 이후에 구축됨으로써, 비즈니스 프로세스 자체에 대한 정보는 물론이고 상기 BPMN 형식으로 생성된 비즈니스 프로세스 패밀리 모델의 표기 및 구조에 대한 데이터 자체를 저장할 수도 있다.The step of building the database is typically performed prior to generating the business process family model to store information for modeling the business process family model, but is built after the business process family model generation step, thereby In addition to the information about the process itself, data about the representation and structure of the business process family model generated in the BPMN format may be stored.

본 발명의 웹 서비스 생성 방법은, 상기 독출된 정보를 기초로 각각의 제2 유형의 액티비티에 의해 수행될 동작을 설정한다(도 8의 단계 1020). 만약 상기 비즈니스 프로세스 정보 데이터베이스가 구축되었다면, 상기 제2 유형의 액티비티에 의해 수행될 동작에 대한 정보를 상기 데이터베이스에 저장할 수 있다. 또한, 본 발명의 웹 서비스 생성 방법은 상기 제2 유형의 액티비티에 의해 수행될 동작을 선택하는 입력을 사용자로부터 수취하고, 상기 수취된 입력을 기초로 상기 동작을 설정할 수 있다는 것은 상기 사용자 입력 수취부 220과 관련하여 이미 설명한 바와 같다.The web service generation method of the present invention sets an operation to be performed by each second type of activity based on the read information (step 1020 of FIG. 8). If the business process information database has been established, information about the operation to be performed by the second type of activity may be stored in the database. In addition, the method for generating a web service of the present invention may receive an input for selecting an operation to be performed by the second type of activity from a user, and set the operation based on the received input. As already described in connection with 220.

다음으로, 본 발명의 웹 서비스 생성 방법은 상기 단계 1020에서 설정된 상기 각각의 제2 유형의 액티비티에 의해 수행될 동작에 관한 정보 및 상기 비즈니스 프로세스 패밀리 모델에 대한 정보를 기초로, 상기 컴퓨터 시스템에 의해 판독 가능하도록 상기 BPMN을 이용하여 상기 비즈니스 프로세스 모델을 생성한다(도 8의 단계 1030). 이로써 상기한 바와 같이 가변성에 대한 사용자의 의사 결정이 반영된 비즈니스 프로세스 모델이 생성된다.Next, the web service generation method of the present invention is executed by the computer system based on the information on the business process family model and the information about the operation to be performed by each of the second type of activities set in step 1020. The business process model is generated using the BPMN to be readable (step 1030 of FIG. 8). This creates a business process model that reflects the user's decision about variability as described above.

상기 생성된 비즈니스 프로세스 모델은 상기 컴퓨터 시스템에 의해 판독 가능하도록 BPEL을 이용하여 표기되도록 변환되고, 변환의 결과로서 BPEL 문서가 생성된다(도 8의 단계 1040). 비즈니스 프로세스 모델의 BPEL 변환 모델은 BPMN 2.0 명세를 따르며, 만약 BPEL로 변환할 수 없는 구성요소가 존재한다면 이를 변환 가능하도록 수정한 후, 비즈니스 프로세스 모델을 BPEL 템플릿으로 변환한다. The generated business process model is converted to be marked using BPEL to be readable by the computer system, and a BPEL document is generated as a result of the conversion (step 1040 of FIG. 8). The BPEL transformation model of the business process model follows the BPMN 2.0 specification. If there is a component that cannot be converted to BPEL, modify it to convert it and then convert the business process model into a BPEL template.

다음으로 도 8의 단계 1050에서, 비즈니스 프로세스를 실현하기 위해 필요한 웹 서비스를 상기 BPEL 템플릿에 매칭시킨다. 보다 구체적으로, 상기 BPEL 템플릿에 표기된 각각의 액티비티에 대응하는 웹 서비스를 검색하고 해당 웹 서비스에 대한 명세인 WSDL 및 XSD를 획득한다. 상기 획득된 WSDL은 상기 BPEL 내에 파트너 링크로서 추가되고, 상기 BPEL 템플릿의 각각의 액티비티에 해당하는 웹 서비스를 상기 파트너 링크를 통해 찾아서 매핑한다. 다음으로, 상기 웹 서비스를 호출하기 위한 파라미터와 반환 변수의 설정 등과 같은 동작에 대해서는 상기 웹 서비스 매핑부 140과 관련하여 기재된 바와 같다.Next, in step 1050 of FIG. 8, a web service necessary to realize a business process is matched to the BPEL template. More specifically, the web service corresponding to each activity indicated in the BPEL template is searched and the WSDL and the XSD which are specifications of the web service are obtained. The obtained WSDL is added as a partner link in the BPEL, and finds and maps a web service corresponding to each activity of the BPEL template through the partner link. Next, operations such as setting parameters and return variables for calling the web service are as described with reference to the web service mapping unit 140.

다음으로 본 발명의 웹 서비스 생성 방법은, 상기 단계 1050에서 상기 웹 서비스가 호출되도록 설정된 상기 BPEL 문서를 미리 정해진 BPEL 엔진 상에 배치한다(도 8의 단계 1060). 상기 단계 1060에서, 사용자의 입력을 기초로 BPEL 템플릿을 비롯한 실행 가능하도록 변환되고 매핑된 BPEL 문서들을 배치할 엔진을 선택하고, 선택된 엔진에 대한 엔진 종류 및 번호 등과 같은 고유 정보를 기초로 BPEL 배치 파일을 생성하며, 상기 생성된 BPEL 배치 파일들을 상기 선택된 BPEL 엔진에 배치함으로써, 기업의 비즈니스 프로세스가 최종적으로 실행 가능한 웹 서비스로 실제화된다.
Next, in the method of generating a web service of the present invention, the BPEL document in which the web service is set to be called in step 1050 is placed on a predetermined BPEL engine (step 1060 of FIG. 8). In step 1060, an engine to place executable BPEL documents including a BPEL template to be executed, including a BPEL template is selected based on a user input, and a BPEL batch file is based on unique information such as an engine type and number for the selected engine. By generating the generated BPEL batch files in the selected BPEL engine, the business process of the enterprise is realized as a finally executable web service.

Claims (15)

사용자에 의해 규정된 하나 또는 그 이상의 액티비티(activity)를 포함하는 비즈니스 프로세스(business process)로부터 사용자 맞춤형 웹 서비스(web service)를 생성하는 시스템에 있어서,
상기 비즈니스 프로세스에 포함된 각각의 액티비티를 컴퓨터 시스템에 의해 판독 가능하도록 BPMN(business process modeling notation)을 이용하여 표기하고, 상기 표기된 각각의 액티비티를 포함하는 비즈니스 프로세스 모델을 생성하는 비즈니스 프로세스 모델 생성부;
상기 비즈니스 프로세스 모델에 있어서 BPMN을 이용하여 표기된 각각의 액티비티를, 상기 컴퓨터 시스템에 의해 판독 가능하도록 BPEL(business process execution language)을 이용하여 표기하고, 상기 BPEL을 이용하여 표기된 각각의 액티비티를 포함하는 BPEL 문서를 생성하는 BPEL 변환부;
상기 BPEL 변환부에 의해 생성된 상기 BPEL 문서가 상기 컴퓨터 시스템에 의해 실행 가능하도록, 상기 BPEL 문서에 포함된 각각의 액티비티에 대응하여 미리 정해진 웹 서비스가 호출되도록 설정하는 웹 서비스 매핑부; 및
상기 웹 서비스 매핑부에 의해 웹 서비스가 호출되도록 설정된 상기 BPEL 문서를 미리 정해진 BPEL 엔진 상에 배치(deploy)하는 BPEL 엔진 배치부를 포함하되,
상기 비즈니스 프로세스 모델 생성부는,
상기 비즈니스 프로세스에 포함된 각각의 액티비티 - 상기 각각의 액티비티는, 미리 정해진 동작을 수행하도록 규정된 제1 유형의 액티비티 및 미리 정해진 일군(一群)의 동작들과 연관되고 상기 일군의 동작들로부터 선택된 동작을 수행하도록 설정될 수 있는 제2 유형의 액티비티 중 어느 하나의 유형에 해당함 - 를 상기 컴퓨터 시스템에 의해 판독 가능하도록 BPMN을 이용하여 표기하고, 상기 제1 유형의 액티비티에 관한 정보를 보유하는 제1 모델 요소 및 상기 제2 유형의 액티비티에 관한 정보를 보유하는 제2 모델 요소에 상기 BPMN을 이용하여 표기된 각각의 액티비티에 대한 정보를 보유하게 함으로써, 상기 제1 모델 요소 및 상기 제2 모델 요소를 포함하는 비즈니스 프로세스 패밀리 모델을 생성하는 비즈니스 프로세스 패밀리 모델 생성부; 및
상기 비즈니스 프로세스에 제2 유형의 액티비티가 포함된 경우, 각각의 제2 유형의 액티비티와 연관된 일군의 동작들에 관한 정보를 상기 비즈니스 프로세스 패밀리 모델로부터 독출하고, 상기 독출된 정보를 기초로 상기 각각의 제2 유형의 액티비티에 의해 수행될 동작을 선택하며, 상기 선택된 동작 및 상기 비즈니스 프로세스 패밀리 모델의 제1 모델 요소에 보유된 정보를 기초로 상기 비즈니스 프로세스 모델을 생성하는 액티비티 설정부를 포함하는, 사용자 맞춤형 웹 서비스 생성 시스템.
A system for creating a custom web service from a business process comprising one or more activities defined by a user,
A business process model generation unit for marking each activity included in the business process using a business process modeling notation (BPMN) so as to be readable by a computer system, and generating a business process model including each of the marked activities;
In the business process model, each activity marked with BPMN is marked using BPEL (business process execution language) to be read by the computer system, and the BPEL including each activity marked with the BPEL. A BPEL conversion unit for generating a document;
A web service mapping unit for setting a predetermined web service to be called corresponding to each activity included in the BPEL document so that the BPEL document generated by the BPEL conversion unit is executable by the computer system; And
And a BPEL engine deployment unit for deploying the BPEL document set to be called by the web service mapping unit on a predetermined BPEL engine.
The business process model generation unit,
Each activity included in the business process, wherein each activity is associated with a first type of activity defined to perform a predetermined action and an action group selected from the group of actions; Corresponds to any one of a second type of activity that can be set to perform a first indication using BPMN to be readable by the computer system, and retains information about the first type of activity. Including the first model element and the second model element by having a second model element holding information about a model element and activity of the second type retaining information about each activity marked using the BPMN. A business process family model generation unit for generating a business process family model; And
If the business process includes a second type of activity, read information about the group of actions associated with each second type of activity from the business process family model and based on the read information An activity setting unit for selecting an operation to be performed by an activity of a second type and including an activity setting unit for generating the business process model based on the selected operation and information held in a first model element of the business process family model Web service generation system.
제1항에 있어서,
상기 비즈니스 프로세스에 포함된 각각의 액티비티에 대하여, 각각의 액티비티가 제1 유형의 액티비티 및 제2 유형의 액티비티 중 어느 유형의 액티비티에 해당하는지에 관한 정보, 각각의 제1 유형의 액티비티에 의해 수행되는 동작에 관한 정보, 각각의 제2 유형의 액티비티에 연관된 일군의 동작들에 관한 정보, 및 각각의 제2 유형의 액티비티에 의해 수행되는 동작에 관한 정보를 저장하는 비즈니스 프로세스 정보 저장부를 더 포함하되,
상기 액티비티 설정부는, 상기 비즈니스 프로세스에 제2 유형의 액티비티가 포함된 경우, 상기 비즈니스 프로세스 정보 저장부로부터 각각의 제2 유형의 액티비티와 연관된 일군의 동작들에 관한 정보를 독출하고, 상기 독출된 정보를 기초로 상기 각각의 제2 유형의 액티비티에 의해 수행될 동작을 선택하고, 상기 선택된 동작에 대한 정보를 상기 비즈니스 프로세스 정보 저장부에 저장하는, 사용자 맞춤형 웹 서비스 생성 시스템.
The method of claim 1,
For each activity included in the business process, information regarding which type of activity of the first type of activity and the second type of activity, performed by each first type of activity A business process information storage unit for storing information about an action, information about a group of actions associated with each second type of activity, and information about an action performed by each second type of activity,
When the business process includes a second type of activity, the activity setting unit reads information about a group of operations associated with each second type of activity from the business process information storage, and reads the read information. Select an operation to be performed by each of the second types of activities, and store information about the selected operation in the business process information storage unit.
제1항 또는 제2항에 있어서,
상기 비즈니스 프로세스에 제2 유형의 액티비티가 포함된 경우, 각각의 제2 유형의 액티비티와 연관된 일군의 동작들에 관한 정보를 사용자에게 제공하고, 상기 연관된 일군의 동작들 중 상기 각각의 제2 유형의 액티비티에 의해 수행될 동작을 선택하는 입력을 상기 사용자로부터 수취하는 사용자 입력 수취부를 더 포함하되,
상기 액티비티 설정부는, 상기 사용자 입력 수취부에 의해 수취된 입력을 기초로 상기 각각의 제2 유형의 액티비티에 의해 수행될 동작을 선택하는, 사용자 맞춤형 웹 서비스 생성 시스템.
The method according to claim 1 or 2,
If the business process includes a second type of activity, provide the user with information about the group of actions associated with each second type of activity, and provide the user with information about the second group of A user input receiving unit for receiving input from the user for selecting an action to be performed by the activity,
And the activity setting unit selects an operation to be performed by each of the second types of activities based on the input received by the user input receiving unit.
제1항 또는 제2항에 있어서,
상기 BPEL 변환부는, XML로 작성된 BPEL 템플릿(template) 파일을 상기 BPEL 문서로서 생성하는, 사용자 맞춤형 웹 서비스 생성 시스템.
The method according to claim 1 or 2,
The BPEL converter generates a BPEL template file written in XML as the BPEL document.
제4항에 있어서,
상기 웹 서비스 매핑부는, 상기 미리 정해진 웹 서비스에 대한 명세(specification)인 WSDL(web service description language) 및 XSD(XML schema document)를 기초로, 상기 미리 정해진 웹 서비스를 파트너 링크(partner link)를 이용하여 상기 BPEL 템플릿 파일에 추가함으로써, 상기 BPEL을 이용하여 표기된 각각의 액티비티에 대응하여 상기 미리 정해진 웹 서비스가 호출되도록 설정하는, 사용자 맞춤형 웹 서비스 생성 시스템.
The method of claim 4, wherein
The web service mapping unit uses a partner link for the predetermined web service based on a web service description language (WSDL) and an XML schema document (XSD), which are specifications for the predetermined web service. And setting the predetermined web service to be called in correspondence with each activity marked using the BPEL by adding it to the BPEL template file.
제1항 또는 제2항에 있어서,
상기 BPEL 엔진 배치부는, Apache ODE 및 ActiveVOS 중 어느 하나를 선택하고, 상기 선택된 엔진에 상기 BPEL 문서를 배치하는, 사용자 맞춤형 웹 서비스 생성 시스템.
The method according to claim 1 or 2,
The BPEL engine deployment unit selects any one of Apache ODE and ActiveVOS, and deploys the BPEL document to the selected engine, the user-defined web service generation system.
하나 또는 그 이상의 액티비티(activity)를 포함하는 비즈니스 프로세스(business process)를 모델링하는 시스템에 있어서,
상기 비즈니스 프로세스에 포함된 각각의 액티비티에 대하여, 각각의 액티비티가 미리 정해진 동작을 수행하도록 규정된 제1 유형의 액티비티 및 미리 정해진 일군(一群)의 동작들과 연관되고 상기 일군의 동작들로부터 선택된 동작을 수행하도록 설정될 수 있는 제2 유형의 액티비티 중 어느 유형의 액티비티에 해당하는지에 관한 정보, 각각의 제1 유형의 액티비티에 의해 수행되는 동작에 관한 정보, 각각의 제2 유형의 액티비티에 연관된 일군의 동작들에 관한 정보, 및 각각의 제2 유형의 액티비티에 의해 수행되는 동작에 관한 정보를 저장하는 비즈니스 프로세스 정보 저장부;
상기 비즈니스 프로세스에 제2 유형의 액티비티가 포함된 경우, 상기 비즈니스 프로세스 정보 저장부로부터 각각의 제2 유형의 액티비티와 연관된 일군의 동작들에 관한 정보를 독출하고, 상기 독출된 정보를 기초로 상기 각각의 제2 유형의 액티비티에 의해 수행될 동작을 선택하고, 상기 선택된 동작에 대한 정보를 상기 비즈니스 프로세스 정보 저장부에 저장하는 액티비티 설정부; 및
상기 비즈니스 프로세스 정보 저장부에 저장된 정보를 기초로, 상기 비즈니스 프로세스에 포함된 각각의 액티비티를 컴퓨터 시스템에 의해 판독 가능하도록 BPMN을 이용하여 표기하고, 상기 표기된 각각의 액티비티를 포함하는 비즈니스 프로세스 모델을 생성하는 비즈니스 프로세스 모델 생성부를 포함하는, 비즈니스 프로세스 모델링 시스템.
In a system for modeling a business process that includes one or more activities,
For each activity included in the business process, each activity is associated with a first type of activity defined to perform a predetermined action and a predetermined group of actions and selected from the group of actions. Information about which type of activity that can be configured to perform the following, information about the action performed by each first type of activity, and a group associated with each second type of activity A business process information storage unit for storing information relating to the operations of the first operation, and information relating to the operation performed by each second type of activity;
If the business process includes a second type of activity, read information about a group of operations associated with each second type of activity from the business process information storage, and based on the read information An activity setting unit for selecting an operation to be performed by the second type of activity and storing information on the selected operation in the business process information storage unit; And
Based on the information stored in the business process information storage unit, each activity included in the business process is marked using a BPMN to be read by a computer system, and a business process model is generated that includes each of the marked activities. A business process modeling system comprising a business process model generator.
제7항에 있어서,
상기 비즈니스 프로세스에 포함된 제2 유형의 액티비티에 대하여, 각각의 제2 유형의 액티비티와 연관된 일군의 동작들에 관한 정보를 사용자에게 제공하고, 상기 연관된 일군의 동작들 중 상기 각각의 제2 유형의 액티비티에 의해 수행될 동작을 선택하는 입력을 상기 사용자로부터 수취하는 사용자 입력 수취부를 더 포함하되,
상기 액티비티 설정부는, 상기 사용자 입력 수취부에 의해 수취된 입력을 기초로 상기 각각의 제2 유형의 액티비티에 의해 수행될 동작을 선택하고, 상기 선택된 동작에 대한 정보를 상기 비즈니스 프로세스 정보 저장부에 저장하는, 비즈니스 프로세스 모델링 시스템.
The method of claim 7, wherein
For a second type of activity included in the business process, provide the user with information about a group of actions associated with each second type of activity, and wherein the second group of activities A user input receiving unit for receiving input from the user for selecting an action to be performed by the activity,
The activity setting unit selects an operation to be performed by the second type of activity based on an input received by the user input receiving unit, and stores information about the selected operation in the business process information storage unit. , Business process modeling system.
사용자에 의해 규정된 하나 또는 그 이상의 액티비티 - 각각의 액티비티는, 미리 정해진 동작을 수행하도록 규정된 제1 유형의 액티비티 및 미리 정해진 일군(一群)의 동작들과 연관되고 상기 일군의 동작들로부터 선택된 동작을 수행하도록 설정될 수 있는 제2 유형의 액티비티 중 어느 하나의 유형에 해당함 - 를 포함하는 비즈니스 프로세스로부터 사용자 맞춤형 웹 서비스를 생성하는 방법에 있어서,
상기 비즈니스 프로세스에 포함된 각각의 액티비티를 컴퓨터 시스템에 의해 판독 가능하도록 BPMN을 이용하여 표기하고, 상기 제1 유형의 액티비티에 관한 정보를 보유하는 제1 모델 요소 및 상기 제2 유형의 액티비티에 관한 정보를 보유하는 제2 모델 요소에 상기 BPMN을 이용하여 표기된 각각의 액티비티에 대한 정보를 보유하게 함으로써, 상기 제1 모델 요소 및 상기 제2 모델 요소를 포함하는 상기 비즈니스 프로세스 패밀리 모델을 생성하는 비즈니스 프로세스 패밀리 모델 생성 단계;
상기 비즈니스 프로세스에 제2 유형의 액티비티가 포함된 경우, 각각의 제2 유형의 액티비티와 연관된 일군의 동작들에 관한 정보를 상기 비즈니스 프로세스 패밀리 모델로부터 독출하고, 상기 독출된 정보를 기초로 상기 각각의 제2 유형의 액티비티에 의해 수행될 동작을 선택하는 액티비티 설정 단계;
상기 선택된 동작에 대한 정보 및 상기 비즈니스 프로세스 패밀리 모델의 상기 제1 모델 요소에 보유된 정보를 기초로, 상기 BPMN을 이용하여 표기된 상기 비즈니스 프로세스의 각각의 액티비티를 포함하는 비즈니스 프로세스 모델을 생성하는 비즈니스 프로세스 모델 생성 단계;
상기 비즈니스 프로세스 모델 생성 단계에서 생성된 상기 비즈니스 프로세스 모델의 각각의 액티비티를, 상기 컴퓨터 시스템에 의해 판독 가능하도록 BPEL을 이용하여 표기하고, 상기 BPEL을 이용하여 표기된 각각의 액티비티를 포함하는 BPEL 문서를 생성하는 BPEL 변환 단계;
상기 BPEL 변환 단계에서 생성된 상기 BPEL 문서가 상기 컴퓨터 시스템에 의해 실행 가능하도록, 상기 BPEL 문서에 포함된 각각의 액티비티에 대응하여 미리 정해진 웹 서비스가 호출되도록 설정하는 웹 서비스 매핑 단계; 및
상기 웹 서비스 매핑 단계에서 웹 서비스가 호출되도록 설정된 상기 BPEL 문서를 미리 정해진 BPEL 엔진 상에 배치하는 BPEL 엔진 배치 단계를 포함하는, 사용자 맞춤형 웹 서비스 생성 방법.
One or more activities defined by the user, each activity associated with a first type of activity defined to perform a predetermined action and a predetermined group of actions and selected from the group of actions. A method of creating a custom web service from a business process comprising:-corresponding to any one of a second type of activity that can be configured to perform:
Represent each activity included in the business process using a BPMN to be readable by a computer system, and contain information about the first model element and the second type of activity that hold information about the first type of activity. A business process family for generating the business process family model including the first model element and the second model element by having information on each activity marked using the BPMN in a second model element having a Model generation step;
If the business process includes a second type of activity, read information about the group of actions associated with each second type of activity from the business process family model and based on the read information An activity setting step of selecting an action to be performed by the second type of activity;
A business process that generates a business process model that includes each activity of the business process marked using the BPMN based on the information about the selected action and information held in the first model element of the business process family model Model generation step;
Each activity of the business process model generated in the business process model generation step is marked using BPEL to be readable by the computer system, and a BPEL document is generated that includes each activity marked using the BPEL. A BPEL transformation step;
A web service mapping step of setting a predetermined web service to be called in correspondence with each activity included in the BPEL document so that the BPEL document generated in the BPEL conversion step is executable by the computer system; And
And a BPEL engine deployment step of disposing the BPEL document on which a web service is set to be called in the web service mapping step on a predetermined BPEL engine.
제9항에 있어서,
상기 비즈니스 프로세스 패밀리 모델 생성 단계 이후 및 상기 액티비티 설정 단계 이전에, 상기 비즈니스 프로세스에 포함된 각각의 제2 유형의 액티비티에 대하여, 상기 각각의 제2 유형의 액티비티와 연관된 일군의 동작들에 관한 정보를 사용자에게 제공하고, 상기 연관된 일군의 동작들 중 상기 각각의 제2 유형의 액티비티에 의해 수행될 동작을 선택하는 입력을 상기 사용자로부터 수취하는 사용자 입력 수취 단계를 더 포함하되,
상기 액티비티 설정 단계에서, 상기 사용자 입력 수취 단계에서 수취된 입력을 기초로 상기 각각의 제2 유형의 액티비티에 의해 수행될 동작을 선택하는, 사용자 맞춤형 웹 서비스 생성 방법.
10. The method of claim 9,
After each business process family model generation step and before the activity setup step, for each second type of activity included in the business process, information about a group of actions associated with each second type of activity is obtained. A user input receiving step for receiving from the user an input provided to the user and selecting an action to be performed by the respective second type of activity among the associated group of actions,
In the activity setting step, selecting an action to be performed by each of the second types of activities based on the input received in the user input receiving step.
제9항 또는 제10항에 있어서,
상기 비즈니스 프로세스 패밀리 모델 생성 단계 이전에, 상기 비즈니스 프로세스에 포함된 각각의 액티비티에 대하여, 각각의 액티비티가 상기 제1 유형의 액티비티 및 상기 제2 유형의 액티비티 중 어느 유형의 액티비티에 해당하는지에 관한 정보, 각각의 제1 유형의 액티비티에 의해 수행되는 동작에 관한 정보, 각각의 제2 유형의 액티비티에 연관된 일군의 동작들에 관한 정보, 및 각각의 제2 유형의 액티비티에 의해 수행되는 동작에 관한 정보를 저장하는 비즈니스 프로세스 정보 데이터베이스를 구축하는 데이터베이스 구축 단계를 더 포함하되,
상기 액티비티 설정 단계에서, 상기 비즈니스 프로세스에 포함된 각각의 제2 유형의 액티비티에 대하여, 상기 비즈니스 프로세스 정보 데이터베이스로부터 상기 각각의 제2 유형의 액티비티와 연관된 일군의 동작들에 관한 정보를 독출하고, 상기 독출된 정보를 기초로 상기 포함된 제2 유형의 액티비티에 의해 수행될 동작을 선택하고, 상기 선택된 동작에 대한 정보를 상기 비즈니스 프로세스 정보 데이터베이스에 저장하며,
상기 비즈니스 프로세스 모델 생성 단계에서, 상기 비즈니스 프로세스 정보 데이터베이스에 저장된 정보를 기초로, 상기 BPMN을 이용하여 표기된 상기 비즈니스 프로세스의 각각의 액티비티를 포함하는 비즈니스 프로세스 모델을 생성하는, 사용자 맞춤형 웹 서비스 생성 방법.
The method of claim 9 or 10,
Before each business process family model generation step, for each activity included in the business process, information on which type of activity of the first type of activity and the second type of activity corresponds to each activity Information about an action performed by each first type of activity, information about a group of actions associated with each second type of activity, and information about an action performed by each second type of activity Further comprising the database building step of building a business process information database for storing the;
In the activity setting step, for each second type of activity included in the business process, information about the group of actions associated with the respective second type of activity is read from the business process information database, and Select an operation to be performed by the included second type of activity based on the read information, store information about the selected operation in the business process information database,
In the business process model generation step, generating a business process model including each activity of the business process marked using the BPMN, based on the information stored in the business process information database.
제9항 또는 제10항에 있어서,
상기 BPEL 변환 단계에서, XML로 작성된 BPEL 템플릿 파일을 상기 BPEL 문서로서 생성하는, 사용자 맞춤형 웹 서비스 생성 방법.
The method of claim 9 or 10,
In the BPEL conversion step, generating a BPEL template file written in XML as the BPEL document, Custom Web service generation method.
제12항에 있어서,
상기 웹 서비스 매핑 단계에서, 상기 미리 정해진 웹 서비스에 대한 명세(specification)인 WSDL(web service description language) 및 XSD(XML schema document)를 기초로, 상기 미리 정해진 웹 서비스를 파트너 링크(partner link)를 이용하여 상기 BPEL 템플릿 파일에 추가함으로써, 상기 BPEL을 이용하여 표기된 각각의 액티비티에 대응하여 상기 미리 정해진 웹 서비스가 호출되도록 설정하는, 사용자 맞춤형 웹 서비스 생성 방법.
The method of claim 12,
In the web service mapping step, based on a web service description language (WSDL) and an XML schema document (XSD), which are specifications for the predetermined web service, a partner link is established for the predetermined web service. And adding to the BPEL template file to set the predetermined web service to be called corresponding to each activity marked using the BPEL.
하나 또는 그 이상의 액티비티(activity)를 포함하는 비즈니스 프로세스(business process)를 모델링하는 방법에 있어서,
상기 비즈니스 프로세스에 포함된 각각의 액티비티에 대하여, 각각의 액티비티가 미리 정해진 동작을 수행하도록 규정된 제1 유형의 액티비티 및 미리 정해진 일군(一群)의 동작들과 연관되고 상기 일군의 동작들로부터 선택된 동작을 수행하도록 설정될 수 있는 제2 유형의 액티비티 중 어느 유형의 액티비티에 해당하는지에 관한 정보, 각각의 제1 유형의 액티비티에 의해 수행되는 동작에 관한 정보, 각각의 제2 유형의 액티비티에 연관된 일군의 동작들에 관한 정보, 및 각각의 제2 유형의 액티비티에 의해 수행되는 동작에 관한 정보를 저장하는 비즈니스 프로세스 정보 데이터베이스를 구축하는 비즈니스 프로세스 정보 데이터베이스 구축 단계;
상기 비즈니스 프로세스에 제2 유형의 액티비티가 포함된 경우, 상기 비즈니스 프로세스 정보 데이터베이스로부터 각각의 제2 유형의 액티비티와 연관된 일군의 동작들에 관한 정보를 독출하고, 상기 독출된 정보를 기초로 상기 각각의 제2 유형의 액티비티에 의해 수행될 동작을 선택하고, 상기 선택된 동작에 대한 정보를 상기 비즈니스 프로세스 정보 데이터베이스에 저장하는 액티비티 설정 단계; 및
상기 비즈니스 프로세스 정보 데이터베이스에 저장된 정보를 기초로, 상기 비즈니스 프로세스에 포함된 각각의 액티비티를 컴퓨터 시스템에 의해 판독 가능하도록 BPMN을 이용하여 표기하고, 상기 표기된 각각의 액티비티를 포함하는 비즈니스 프로세스 모델을 생성하는 비즈니스 프로세스 모델 생성 단계를 포함하는, 비즈니스 프로세스 모델링 방법.
In the method of modeling a business process including one or more activities,
For each activity included in the business process, each activity is associated with a first type of activity defined to perform a predetermined action and a predetermined group of actions and selected from the group of actions. Information about which type of activity that can be configured to perform the following, information about the action performed by each first type of activity, and a group associated with each second type of activity A business process information database building step of constructing a business process information database that stores information relating to the operations of and the information about the operations performed by each second type of activity;
If the business process includes a second type of activity, read information about a group of actions associated with each second type of activity from the business process information database, and based on the read information Selecting an operation to be performed by an activity of a second type, and setting an activity for storing information about the selected operation in the business process information database; And
Based on the information stored in the business process information database, each activity included in the business process is marked using BPMN to be readable by a computer system, and generates a business process model including each of the marked activities. A business process modeling method comprising the step of generating a business process model.
제14항에 있어서,
상기 비즈니스 프로세스 정보 데이터베이스 구축 단계 이후 및 상기 액티비티 설정 단계 이전에, 상기 비즈니스 프로세스에 포함된 각각의 제2 유형의 액티비티에 대하여, 상기 각각의 제2 유형의 액티비티와 연관된 일군의 동작들에 관한 정보를 사용자에게 제공하고, 상기 사용자로부터 상기 연관된 일군의 동작들 중 상기 각각의 제2 유형의 액티비티에 의해 수행될 동작을 선택하는 입력을 수취하는 사용자 입력 수취 단계를 더 포함하되,
상기 액티비티 설정 단계에서, 상기 사용자 입력 수취부에 의해 수취된 입력을 기초로 상기 각각의 제2 유형의 액티비티에 의해 수행될 동작을 선택하고, 상기 선택된 동작에 대한 정보를 상기 비즈니스 프로세스 정보 데이터베이스에 저장하는, 비즈니스 프로세스 모델링 방법.
The method of claim 14,
After the business process information database building step and before the activity setting step, for each second type of activity included in the business process, information about a group of actions associated with each second type of activity is obtained. A user input receiving step for providing to a user and receiving input from the user to select an action to be performed by the respective second type of activity among the associated group of actions, wherein
In the activity setting step, select an operation to be performed by each of the second types of activities based on the input received by the user input receiving unit, and store information about the selected operation in the business process information database. , Business process modeling method.
KR1020100033665A 2010-04-13 2010-04-13 A system and a method for generating web service customized based on business process KR101127701B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020100033665A KR101127701B1 (en) 2010-04-13 2010-04-13 A system and a method for generating web service customized based on business process

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100033665A KR101127701B1 (en) 2010-04-13 2010-04-13 A system and a method for generating web service customized based on business process

Publications (2)

Publication Number Publication Date
KR20110114173A true KR20110114173A (en) 2011-10-19
KR101127701B1 KR101127701B1 (en) 2012-03-22

Family

ID=45029305

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100033665A KR101127701B1 (en) 2010-04-13 2010-04-13 A system and a method for generating web service customized based on business process

Country Status (1)

Country Link
KR (1) KR101127701B1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101898481B1 (en) * 2017-04-04 2018-09-14 국방과학연구소 Parking management system using mission service
CN112230933A (en) * 2020-09-16 2021-01-15 贝壳技术有限公司 Automatic process engine conversion method and device, electronic medium and storage medium
WO2022196882A1 (en) * 2021-03-19 2022-09-22 인제대학교 산학협력단 Method and system for converting plant procedures to smart procedures supporting voice interfacing

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102363373B1 (en) 2021-08-03 2022-02-16 (주)메가투스 System of recommending activity using artificial neural network, method of recommending activity using artificial neural network and computer program therefor

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100006494A (en) * 2008-07-09 2010-01-19 윤영하 Business process management system and method

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101898481B1 (en) * 2017-04-04 2018-09-14 국방과학연구소 Parking management system using mission service
CN112230933A (en) * 2020-09-16 2021-01-15 贝壳技术有限公司 Automatic process engine conversion method and device, electronic medium and storage medium
WO2022196882A1 (en) * 2021-03-19 2022-09-22 인제대학교 산학협력단 Method and system for converting plant procedures to smart procedures supporting voice interfacing

Also Published As

Publication number Publication date
KR101127701B1 (en) 2012-03-22

Similar Documents

Publication Publication Date Title
US8271935B2 (en) Methods and tools for data-driven application engineering
Dhungana et al. Structuring the modeling space and supporting evolution in software product line engineering
US7949997B2 (en) Integration of software into an existing information technology (IT) infrastructure
US20140180750A1 (en) Systems and methods for modeling costed entities and performing a value chain analysis
Hallerbach et al. Context-based configuration of process variants
US20100121740A1 (en) Data driven orchestration of business processes
US8838627B2 (en) Systems and methods for providing template based output management
US20070061731A1 (en) Automated interface-specification generation for enterprise architectures
US11893066B2 (en) Binding traits to case nodes
Hallerbach et al. Issues in modeling process variants with provop
Hurtado Alegria et al. MDE‐based process tailoring strategy
Porouhan et al. Process and deviation exploration through Alpha-algorithm and Heuristic miner techniques
JP2007122135A (en) Development support device, development support method and development support program
Wieland et al. Towards a rule-based manufacturing integration assistant
Hurtado et al. MDE software process lines in small companies
KR101127701B1 (en) A system and a method for generating web service customized based on business process
Pohl et al. Variant management solution for large scale software product lines
He et al. ISA-95 tool for enterprise modeling
Bhattacharjee et al. A model-driven approach to automate the deployment and management of cloud services
CN112100984A (en) Data conversion method and system from EBOM to SBOM
Al-Ali et al. Translating bpmn to business rules
da Costa Cordeiro et al. ChangeLedge: Change design and planning in networked systems based on reuse of knowledge and automation
Etedali et al. Automated constraint-based multi-tenant saas configuration support using XML filtering techniques
da Costa Cordeiro et al. A template-based solution to support knowledge reuse in IT change design
CN104765602B (en) The Quantitatively Selecting method of nonfunction requirement implementation strategy

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20150226

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee