KR101127701B1 - 비즈니스 프로세스로부터 사용자 맞춤형 웹 서비스를 생성하는 시스템 및 방법 - Google Patents
비즈니스 프로세스로부터 사용자 맞춤형 웹 서비스를 생성하는 시스템 및 방법 Download PDFInfo
- Publication number
- KR101127701B1 KR101127701B1 KR1020100033665A KR20100033665A KR101127701B1 KR 101127701 B1 KR101127701 B1 KR 101127701B1 KR 1020100033665 A KR1020100033665 A KR 1020100033665A KR 20100033665 A KR20100033665 A KR 20100033665A KR 101127701 B1 KR101127701 B1 KR 101127701B1
- Authority
- KR
- South Korea
- Prior art keywords
- activity
- business process
- bpel
- type
- information
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 287
- 230000008569 process Effects 0.000 title claims abstract description 254
- 230000000694 effects Effects 0.000 claims description 238
- 230000009471 action Effects 0.000 claims description 66
- 238000013507 mapping Methods 0.000 claims description 30
- 238000006243 chemical reaction Methods 0.000 claims description 16
- 230000009466 transformation Effects 0.000 claims description 5
- 230000008859 change Effects 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 8
- 230000002159 abnormal effect Effects 0.000 description 5
- 230000007246 mechanism Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 3
- 238000010923 batch production Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000002411 adverse Effects 0.000 description 1
- 230000002547 anomalous effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000001747 exhibiting effect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000011426 transformation method Methods 0.000 description 1
- 238000013024 troubleshooting Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
- G06F40/186—Templates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion 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/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/70—Type of the data to be coded, other than image and sound
- H03M7/707—Structured 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)에 대한 표현을 지원하는 비즈니스 프로세스 패밀리 모델을 제공하고, 이러한 모델을 컴퓨터 시스템에 의해 실행될 수 있는 웹 서비스로서 실제화하여 사용자의 요구 사항에 부합하는 웹 서비스를 생성할 수 있는 시스템 및 방법을 제공한다.
Description
본 발명은 비즈니스 프로세스로부터 사용자 맞춤형 웹 서비스를 생성하는 시스템 및 방법에 관한 것이다. 보다 구체적으로, 본 발명은 사용자의 비즈니스 프로세스 상의 공통성(commonality)과 가변성(variability)에 대한 표현을 지원하는 비즈니스 프로세스 패밀리 모델을 제공하고, 이러한 모델을 컴퓨터 시스템에 의해 실행될 수 있는 웹 서비스로서 실제화하여 사용자의 요구 사항에 부합하는 웹 서비스를 생성할 수 있는 시스템 및 방법에 관한 것이다.
기업들은 업무 구조의 핵심적 흐름인 고유의 비즈니스 프로세스를 갖는다. 즉, 비즈니스 프로세스는 기업 활동의 핵심 산물로서, 실제 업무와 밀접하게 연관되어 빠르게 변화하며, 많은 기업들이 그들의 비즈니스 프로세스를 관리하기 위해 서비스 지향 컴퓨팅(service-oriented computing; SOC) 시스템 및 이를 위한 환경을 구축하고 있다. 서비스 지향 컴퓨팅이란, 이기종 환경에서도 저비용의 신속, 용이한 분산 시스템 구조의 개발을 지원하기 위하여 서비스(service)를 기본 구성 개념으로 사용하는 새로운 컴퓨팅 패러다임이다. 웹 서비스 기술은 서비스 지향 아키텍처(service-oriented architecture; SOA)를 갖는 SOC 환경을 지원하는 기법 중 하나로서, 유선 또는 무선 네트워크 환경에서 이기종 시스템간의 상호 작용을 지원하는 소프트웨어 개발 기술이며, 기본적으로 분산 컴퓨팅을 지원하는 것을 목적으로 한다. 웹 서비스는 WSDL(web service description language)이라는 문서에 의해 게시되는데, WSDL에 대한 표준은 W3C에 의해 제시되고 현재 WSDL 2.0 버전이 표준으로 채택되어 있다.
SOA, 즉, 서비스 지향 아키텍처는 기업의 비즈니스 프로세스에 대한 관점과 IT(information technology) 관점 간의 연결성에 초점을 맞추며, 상기 웹 서비스 기술이 비즈니스 프로세스를 실제화하기 위해 이용되고 있다. 현대의 산업 구조는 빠르게 변모하고 있고, 이에 따라 기업의 비즈니스 프로세스의 요구 사항 역시 빠르고 다양하게 변화하고 있다. 이런 요구 사항들의 변화를 충족시키기 위해 SOC 시스템이 요구된다. SOC 시스템을 구축하기 위하여 비즈니스 프로세스를 모델링하고 이를 동작 가능한 웹 서비스인 비즈니스 프로세스 실행 언어(Business Process Execution Language; BPEL)로 변환하는 기술이 제안되었다.
한편, 소프트웨어 개발의 성공 포인트는 저비용으로 높은 품질의 소프트웨어를 개발하는 것이다. 그러나 저비용으로 높은 생산성을 나타내는 것과 높은 품질 사이에는 트레이드오프(trade-off)의 관계가 있다. 이러한 품질과 생산성에 대한 요구를 모두 만족시키기 위하여 산업계에서는 제품 계열 공학(product-line engineering) 기법이 이용되어 왔다. 제품 계열 공학의 핵심 메커니즘은 유사 제품군에서 공통적으로 사용되는 부분은 재사용하고, 개별 제품의 가변적 부분만을 생산하는 것이다. 이로써 제품 계열 공학은 품질과 생산성 목표를 동시에 달성할 수 있도록 한다. 소프트웨어 제품 계열 공학은 이러한 제품 계열 공학의 메커니즘을 적용하여 저비용으로 고품질의 소프트웨어를 개발하기 위한 프로세스이다. 소프트웨어 제품 계열(software product line)은 유사한 시스템들 간의 가변성을 지원하기 위한 메커니즘을 제공한다. 시스템들의 공통성과 가변성을 분석하는 것이 제품 계열 공학의 주된 관심사이며, 공통성과 가변성을 분석하고 표현하기 위하여 다양한 연구가 행해지고 있다. 제품 계열 공학의 메커니즘은, 또한, 비즈니스 프로세스의 모델링에도 적용될 수 있다. 즉, 기업의 업무 흐름에서의 요구 사항의 변화로 인해 비즈니스 프로세스의 일부가 변경된 경우, 상기 변경된 프로세스 부분을 가변적 부분으로, 변경되지 않고 유지되는 기존의 비즈니스 프로세스 부분은 공통적 부분으로 보고, 비즈니스 프로세스 상의 공통성과 가변성을 분석하는 것이 가능하다.
비즈니스 프로세스의 변화된 요구 사항은 그로부터 파생되는 웹 서비스의 동작 흐름에 영향을 준다. 그러나 종래의 기술은 비즈니스 프로세스 모델의 웹 서비스로의 변환 기법만을 제공할 뿐, 비즈니스 프로세스 자체의 요구사항 변화에 대해서는 다루지 않고 있다. 따라서, 비즈니스 프로세스에 있어서의 요구 사항이 변화되는 경우, 비즈니스 프로세스 모델을 처음부터 다시 모델링해야 하는 일이 발생한다. 즉, 종래의 기술은 비즈니스 프로세스 모델 자체에서 발생될 수 있는 변화에 대처할 수 있는 대응력이 부족하여, 사용자의 요구 사항에 부합되는 사용자 맞춤형 웹 서비스를 다양하게 생성할 수 없는 문제가 있다.
또한, 비즈니스 프로세스로부터 동작 가능한 웹 서비스를 제작하기 위해서는 비즈니스 프로세스를 BPEL로 변환하는 과정뿐만 아니라, 관련된 웹 서비스를 BPEL 상에 매핑하고 이러한 BPEL을 BPEL 엔진에 배치하는 과정이 요구된다. 그러나, 종래의 기술은 상기 배치 과정을 중요한 부분으로서 다루지 않고 있으며, 각각의 과정을 따로 제공하고 있다. 나아가, 상기 과정을 통합하여 제공하더라도 특정 BPEL 엔진에 대해서만 배치가 가능한 단점이 있다.
상기한 바와 같이, 종래의 기술에 의하면, 기업의 비즈니스 프로세스에 변동이 발생할 때마다 비즈니스 프로세스 모델을 처음부터 다시 모델링해야 하고, 이에 대응되는 웹 서비스 역시 다시 개발될 것이 요구된다. 이는 많은 비용과 오랜 시간을 소모하게 하고, 결과적으로 기업의 비즈니스 프로세스의 개선에 악영향을 끼칠 수밖에 없다.
본 발명은 이러한 종래의 기술이 지닌 문제점을 해결하기 위하여, 비즈니스 프로세스에 발생할 수 있는 요구 사항의 변화를 나타낼 수 있도록 가변성에 대한 표현을 지원하는 비즈니스 프로세스 패밀리 모델을 제공하는 것을 목적으로 한다.
또한 본 발명은, 요구 사항의 변화가 반영된 비즈니스 프로세스 모델을 실제 네트워크 환경에서 동작할 수 있는 웹 서비스로 변환하는 수단을 제공함으로써, 사용자로 하여금 낮은 비용과 짧은 시간으로 맞춤형 웹 서비스를 생성할 수 있는 수단을 제공하는 것을 목적으로 한다.
또한, 본 발명은 비즈니스 프로세스 모델을 BPEL로 변환하는 과정과 BPEL 엔진에 배치하는 과정을 통합함으로써, 비즈니스 프로세스 모델에 대응하여 생성된 웹 서비스를 사용자가 선택한 BPEL 엔진에 배치할 수 있는 수단을 제공하는 것을 목적으로 한다.
상기의 목적을 달성하기 위하여, 본 발명에서는 다음과 같은 과제 해결 수단을 제공한다.
본 발명의 제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을 이용하여 비즈니스 프로세스 모델을 생성하는 액티비티 설정부를 포함한다.
본 발명의 제2 실시예에 의하면, 하나 또는 그 이상의 액티비티(activity)를 포함하는 비즈니스 프로세스(business process)를 모델링하는 시스템을 제공한다. 본 발명의 상기 시스템은, 상기 비즈니스 프로세스에 포함된 각각의 액티비티에 대하여, 각각의 액티비티가 미리 정해진 동작을 수행하도록 규정된 제1 유형의 액티비티 및 미리 정해진 일군(一群)의 동작들과 연관되고 상기 일군의 동작들로부터 선택된 동작을 수행하도록 설정될 수 있는 제2 유형의 액티비티 중 어느 유형의 액티비티에 해당하는지에 관한 정보, 각각의 제1 유형의 액티비티에 의해 수행되는 동작에 관한 정보, 각각의 제2 유형의 액티비티에 연관된 일군의 동작들에 관한 정보, 및 각각의 제2 유형의 액티비티에 의해 수행되는 동작에 관한 정보를 저장하는 비즈니스 프로세스 정보 저장부, 상기 비즈니스 프로세스에 제2 유형의 액티비티가 포함된 경우, 상기 비즈니스 프로세스 정보 저장부로부터 각각의 제2 유형의 액티비티와 연관된 일군의 동작들에 관한 정보를 독출하고, 상기 독출된 정보를 기초로 상기 각각의 제2 유형의 액티비티에 의해 수행될 동작을 선택하고, 상기 선택된 동작에 대한 정보를 상기 비즈니스 프로세스 정보 저장부에 저장하는 액티비티 설정부, 및 상기 비즈니스 프로세스 정보 저장부에 저장된 정보를 기초로, 컴퓨터 시스템에 의해 판독 가능하도록 상기 비즈니스 프로세스의 각각의 액티비티를 BPMN을 이용하여 표기한 비즈니스 프로세스 모델을 생성하는 비즈니스 프로세스 모델 생성부를 포함한다.
본 발명의 제3 실시예에 의하면, 사용자에 의해 규정된 하나 또는 그 이상의 액티비티 - 각각의 액티비티는, 미리 정해진 동작을 수행하도록 규정된 제1 유형의 액티비티 및 미리 정해진 일군(一群)의 동작들과 연관되고 상기 일군의 동작들로부터 선택된 동작을 수행하도록 설정될 수 있는 제2 유형의 액티비티 중 어느 하나의 유형에 해당함 - 를 포함하는 비즈니스 프로세스로부터 사용자 맞춤형 웹 서비스를 생성하는 방법을 제공한다. 본 발명의 상기 방법은, 상기 비즈니스 프로세스로부터 상기 제1 유형의 액티비티에 대한 정보를 보유할 수 있는 제1 모델 요소 및 상기 제2 유형의 액티비티에 대한 정보를 보유할 수 있는 제2 모델 요소를 포함하는 비즈니스 프로세스 패밀리 모델을, 컴퓨터 시스템에 의해 판독 가능하도록 BPMN을 이용하여 생성하는 비즈니스 프로세스 패밀리 모델 생성 단계, 상기 비즈니스 프로세스에 제2 유형의 액티비티가 포함된 경우, 각각의 제2 유형의 액티비티와 연관된 일군의 동작들에 관한 정보를 상기 비즈니스 프로세스 패밀리 모델로부터 독출하고, 상기 독출된 정보를 기초로 상기 각각의 제2 유형의 액티비티에 의해 수행될 동작을 선택하는 액티비티 설정 단계, 상기 선택된 동작에 대한 정보 및 상기 비즈니스 프로세스 패밀리 모델에 대한 정보를 기초로, 상기 컴퓨터 시스템에 의해 판독 가능하도록 상기 BPMN을 이용하여 비즈니스 프로세스 모델을 생성하는 비즈니스 프로세스 모델 생성 단계, 상기 비즈니스 프로세스 모델 생성 단계에서 생성된 상기 비즈니스 프로세스 모델의 각각의 액티비티를, 상기 컴퓨터 시스템에 의해 판독 가능하도록 BPEL을 이용하여 표기한 BPEL 문서를 생성하는 BPEL 변환 단계, 상기 BPEL 변환 단계에서 생성된 상기 BPEL 문서가 상기 컴퓨터 시스템에 의해 실행 가능하도록 상기 BPEL을 이용하여 표기된 상기 각각의 액티비티에 대응하여 미리 정해진 웹 서비스가 호출되도록 설정하는 웹 서비스 매핑 단계, 및 상기 웹 서비스 매핑 단계에서 상기 웹 서비스가 호출되도록 설정된 상기 BPEL 문서를 미리 정해진 BPEL 엔진 상에 배치(deploying)하는 BPEL 엔진 배치 단계를 포함한다.
본 발명의 제4 실시예에 의하면, 하나 또는 그 이상의 액티비티(activity)를 포함하는 비즈니스 프로세스(business process)를 모델링하는 방법을 제공한다. 본 발명의 상기 방법은, 상기 비즈니스 프로세스에 포함된 각각의 액티비티에 대하여, 각각의 액티비티가 미리 정해진 동작을 수행하도록 규정된 제1 유형의 액티비티 및 미리 정해진 일군(一群)의 동작들과 연관되고 상기 일군의 동작들로부터 선택된 동작을 수행하도록 설정될 수 있는 제2 유형의 액티비티 중 어느 유형의 액티비티에 해당하는지에 관한 정보, 각각의 제1 유형의 액티비티에 의해 수행되는 동작에 관한 정보, 각각의 제2 유형의 액티비티에 연관된 일군의 동작들에 관한 정보, 및 각각의 제2 유형의 액티비티에 의해 수행되는 동작에 관한 정보를 저장하는 비즈니스 프로세스 정보 데이터베이스를 구축하는 비즈니스 프로세스 정보 데이터베이스 구축 단계, 상기 비즈니스 프로세스에 제2 유형의 액티비티가 포함된 경우, 상기 비즈니스 프로세스 정보 데이터베이스로부터 각각의 제2 유형의 액티비티와 연관된 일군의 동작들에 관한 정보를 독출하고, 상기 독출된 정보를 기초로 상기 각각의 제2 유형의 액티비티에 의해 수행될 동작을 선택하고, 상기 선택된 동작에 대한 정보를 상기 비즈니스 프로세스 정보 데이터베이스에 저장하는 액티비티 설정 단계, 및 상기 비즈니스 프로세스 정보 데이터베이스에 저장된 정보를 기초로, 컴퓨터 시스템에 의해 판독 가능하도록 상기 비즈니스 프로세스의 각각의 액티비티를 BPMN을 이용하여 표기한 비즈니스 프로세스 모델을 생성하는 비즈니스 프로세스 모델 생성 단계를 포함한다.
본 발명의 사용자 맞춤형 웹 서비스 생성 시스템 및 그 방법에 의하면, 비즈니스 프로세스 모델링을 통해 웹 서비스를 설계하는 경우에, 미리 정해진 하나의 비즈니스 프로세스만을 모델링하는 것이 아니라, 사용자의 요구 사항에 따라 변동 가능한 사항까지 모두 설계에 포함시킬 수 있으므로, 사용자의 요구 및 시스템 사용 환경에 최적화된 웹 서비스 시스템을 생성할 수 있다. 또한, 비즈니스 프로세스를 모델링한 후에도, 상기 모델에 가변 부분에 대한 의사 결정을 통해 변경된 요구 사항이 반영된 웹 서비스 시스템을 생성할 수 있고, 따라서 비즈니스 프로세스에 변동이 발생할 때마다 비즈니스 프로세스 모델을 처음부터 다시 모델링해야 할 필요가 없고, 보다 낮은 비용과 짧은 시간을 소요하여 필요한 변경이 적용된 웹 서비스 시스템을 생성할 수 있다.
또한 본 발명은, 비즈니스 프로세스 모델링 과정에서부터 실제 웹 서비스를 BPEL 엔진에 배치하는 과정을 통합하여 제공하며, 어느 특정 엔진만을 사용하도록 제한되지 않고 사용자는 원하는 웹 서비스 배치 엔진을 사용할 수 있으므로, 사용자 편의를 도모할 수 있다.
또한 본 발명에 따른 웹 서비스 생성 시스템 및 방법에 의하면, 비즈니스 프로세스 모델, BPEL Template, BPEL이 모두 XML 형태의 파일로 저장되므로, 관리가 용이하고 이식성 역시 뛰어난 장점이 있다.
도 1은 본 발명의 일 실시예에 따른 사용자 맞춤용 웹 서비스 생성 시스템 500의 구성을 개략적으로 도시하는 블록도이다.
도 2는 본 발명의 다른 실시예에 따른 사용자 맞춤용 웹 서비스 생성 시스템 500의 구성을 개략적으로 도시하는 블록도이다.
도 3은, 본 발명의 일 실시예에 따른 비즈니스 프로세스 패밀리 모델의 가변성 정보 보유를 위한 모델 요소의 메타 모델을 도시한다.
도 4는 본 발명의 일 실시예에 따른 비즈니스 프로세스 패밀리 모델을 이용하여 "판매"의 비즈니스 프로세스를 모델링한 예이다.
도 5는 본 발명의 일 실시예에 따른 가변성 의사 결정 이후의 비즈니스 프로세스 모델의 일 예이다.
도 6은 본 발명의 일 실시예에 의한, 도 5의 실시예의 비즈니스 프로세스 모델을 BPEL로 변환한 결과를 도시한다.
도 7은 도 6의 "도어 시스템에 메일 전송"이라는 액티비티에 웹 서비스를 매핑한 결과를 도시한다.
도 8은 본 발명의 일 실시예에 따른 사용자 맞춤형 웹 서비스를 생성하는 방법을 도시하는 흐름도이다.
도 2는 본 발명의 다른 실시예에 따른 사용자 맞춤용 웹 서비스 생성 시스템 500의 구성을 개략적으로 도시하는 블록도이다.
도 3은, 본 발명의 일 실시예에 따른 비즈니스 프로세스 패밀리 모델의 가변성 정보 보유를 위한 모델 요소의 메타 모델을 도시한다.
도 4는 본 발명의 일 실시예에 따른 비즈니스 프로세스 패밀리 모델을 이용하여 "판매"의 비즈니스 프로세스를 모델링한 예이다.
도 5는 본 발명의 일 실시예에 따른 가변성 의사 결정 이후의 비즈니스 프로세스 모델의 일 예이다.
도 6은 본 발명의 일 실시예에 의한, 도 5의 실시예의 비즈니스 프로세스 모델을 BPEL로 변환한 결과를 도시한다.
도 7은 도 6의 "도어 시스템에 메일 전송"이라는 액티비티에 웹 서비스를 매핑한 결과를 도시한다.
도 8은 본 발명의 일 실시예에 따른 사용자 맞춤형 웹 서비스를 생성하는 방법을 도시하는 흐름도이다.
이하, 발명의 실시의 형태를 통해 본 발명을 설명하지만, 이하의 실시 형태는 청구의 범위의 발명을 한정하는 것은 아니며, 또한 실시 형태 중에 설명되고 있는 특징의 조합 전체가 발명의 해결 수단에 필수적이라고는 할 수 없다.
도 1은 본 발명의 일 실시예에 의한 사용자 맞춤형 웹 서비스 생성 시스템 500(이하, 웹 서비스 생성 시스템 500이라고도 함)의 구성을 개략적으로 도시하는 블록도이다. 본 발명의 사용자 맞춤형 웹 서비스 생성 시스템 500은, 기업의 업무 흐름(workflow)을 나타내는 비즈니스 프로세스에 있어서의 공통성과 가변성을 표현할 수 있는 비즈니스 프로세스 패밀리 모델을 제공하고, 이러한 모델을 네트워크 환경 하에서 실행될 수 있는 웹 서비스로서 실제화할 수 있는 시스템이다. 즉, 상기한 제품 계열 공학을 이용하여 기업의 비즈니스 프로세스상의 공통성과 가변성을 분석하고, 이를 나타내기 위한 모델 및 이러한 모델을 웹 서비스로 실제화하기 위한 수단을 제공함으로써, 기업과 조직의 비즈니스 프로세스를 실현하여 웹 서비스로 구현된 시스템이 다양하게 변화하는 요구 사항에 빠르게 대응할 수 있도록 한다.
도 1에 도시된 바와 같이, 본 발명의 웹 서비스 생성 시스템 500은 비즈니스 프로세스 모델 생성부 100, BPEL 변환부 130, 웹 서비스 매핑부 140, 및 BPEL 엔진 배치부 150을 포함한다. 또한, 상기 비즈니스 프로세스 모델 생성부 100은 비즈니스 프로세스 패밀리 모델 생성부 110 및 액티비티 설정부 120을 포함한다. 또한, 도 2에 도시된 바와 같이, 본 발명의 웹 서비스 생성 시스템 500은 비즈니스 프로세스 정보 저장부 210 또는 사용자 입력 수취부 220을 더 포함할 수 있다.
이하, 본 발명에 의한 상기 웹 서비스 생성 시스템 500의 각각의 구성요소 및 동작에 대하여 더욱 상세히 설명한다.
본 발명의 웹 서비스 생성 시스템 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 툴의 기술이 이용될 수 있다.
본 발명에 있어서 액티비티(activity)란 비즈니스 프로세스를 구성하는 프로세스의 기본 단위를 일컫는 것으로, 사용자에 의해 미리 정해진 동작을 수행하도록 규정된 제1 유형의 액티비티와, 미리 정해진 일군(一群)의 동작들과 연관되고 상기 일군의 동작들로부터 선택된 동작을 수행하도록 설정될 수 있는 제2 유형의 액티비티를 포함한다. 즉, 제1 유형의 액티비티는 비즈니스 프로세스에 있어서 공통성을 갖는 액티비티에 해당하고, 제2 유형의 액티비티는 가변성을 갖는 액티비티에 해당한다. 사용자는 상기 제2 유형의 액티비티에 의해 수행될 동작을 설정하거나 변경하는 가변성 의사 결정을 할 수 있으며, 이로써 사용자의 요구 사항에 부응하는 웹 서비스를 생성할 수 있다. 또한, 본 발명에 있어서 상기 동작은 특정 시스템에 의해 실행되는 단일 작업(task)일 수 있고, 또는 복수의 작업이 소정의 순서로 열거된 일련의 작업들일 수 있으며, 특정 작업을 수행하지 않는 것일 수도 있다.
보다 구체적으로, 가변성을 나타내는 상기 제2 유형의 액티비티는, 제1 레벨의 가변성과 제2 레벨의 가변성을 가질 수 있다. 여기서 상기 제1 레벨의 가변성은 비즈니스 프로세스에서 특정 작업이 나타나는지 그렇지 않은지를 표현하는 속성이다. 예를 들면, 제1 레벨의 가변성을 갖는 제2 유형의 액티비티는 특정 작업을 수행하는 제1 동작과, 특정 작업을 수행하지 않는 제2 동작을 포함하는 일군(一群)의 동작들과 연관될 수 있다. 이 경우 사용자는, 상기 제1 동작과 제2 동작 중 어느 것이 수행되도록 선택하는지에 따라서 상기 제1 레벨 가변성의 액티비티가 상기 특정 작업을 수행할 것인지 수행하지 않을 것인지에 관한 선택을 할 수 있다. 상기 제2 레벨의 가변성은 단일 작업에 대하여 예측 가능한 가변치를 부여하고, 특정 시스템에 대한 요구 사항이 발생하였을 때 상기 가변치에 따라 비즈니스 프로세스를 재구성하는 보다 복합적인 가변성을 의미한다. 즉, 상기 가변치의 데이터 타입이나 값을 설정함으로써, 제2 레벨의 가변성이 부여된 액티비티의 다양한 가변 패턴을 규정할 수 있다. 상기 가변 패턴은 상기 제2 유형의 액티비티에 의해 수행될 작업이 다른 작업으로 대체되거나, 다른 작업을 추가로 수행하거나, 또는 대체 및 추가가 함께 이루어지는 가변성을 나타낼 수 있다. 또한, 상기 가변 패턴은 당해 패턴이 부여된 액티비티가 아닌 다른 액티비티의 동작을 변경하거나 액티비티들 간의 수행 순서를 변경하는 것을 가리킬 수 있으며, 특정 액티비티에 연관된 일군의 동작들에 대한 정보를 변경하도록 가리킬 수도 있다.
본 발명에 있어서, 상기된 가변성의 표현을 위해 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의 값에 따라서 상기 결정된 수행 조건 또는 수행 순서에 따라서 상기 가변 영역 내의 가변치들이 재구성될 수 있다.
비즈니스 프로세스에 가변성을 갖는 제2 유형의 액티비티가 포함된 경우 상기 가변성에 대한 사용자의 의사 결정을 위해, 본 발명의 웹 서비스 생성 시스템 500은 액티비티 설정부 120을 포함한다. 상기 액티비티 설정부 120은 상기 비즈니스 프로세스 패밀리 모델 생성부 110에 의해 생성된 상기 비즈니스 프로세스 패밀리 모델로부터 가변성을 나타내는 제2 유형의 액티비티와 연관된 일군의 동작들에 관한 정보를 독출하고, 상기 독출된 정보를 기초로 상기 포함된 제2 유형의 액티비티에 의해 수행될 동작을 설정한다. 보다 구체적으로, 상기 액티비티 설정부 120은 상기 BPMN을 확장하여 설계된 상기 비즈니스 프로세스 패밀리 모델(BPFM)을 입력으로 하고 당해 BPFM을 분석하여 가변성에 관한 결정, 즉, 상기 BPFM에 포함된 제2 유형의 액티비티에 의해 수행될 동작의 설정을 할 수 있다. 상기 액티비티 설정부 120은 상기 제2 유형의 액티비티에 의해 수행될 동작에 대한 정보를 기초로 비즈니스 프로세스 모델을 생성한다.
상기 액티비티 설정부 120에 의한 가변성 결정 방법은 다음과 같다. 우선, 상기 비즈니스 프로세스 패밀리 모델 생성부 110에 의해 생성된 BPFM에 제2 유형의 액티비티가 포함되어 있는지 여부를 판정한다. 판정의 결과 제2 유형의 액티비티가 존재하는 경우, 상기 제2 유형의 액티비티가 제1 레벨의 가변성을 갖는지 또는 제2 레벨의 가변성을 갖는지를 판단한다. 제1 레벨 가변성의 액티비티인 경우, 상기 BPFM으로부터 당해 제1 레벨 가변성의 제2 유형의 액티비티와 연관된 일군의 동작들에 관한 정보, 즉, 특정 작업을 수행하는 동작 및 특정 작업을 수행하지 않는 동작에 관한 정보를 독출한다. 다음으로, 당해 제2 유형의 액티비티가 상기 특정 작업을 수행할 것인지 수행하지 않을 것인지를 결정함으로써, 당해 제2 유형의 액티비티에 대한 가변성 의사 결정을 한다.
상기 제2 유형의 액티비티가 제2 레벨의 가변성을 갖는 경우, 당해 액티비티에 부여된 가변치에 대한 정보를 추출하고, 당해 가변치에 따라 당해 액티비티의 동작을 설정할 수 있다. 예를 들면, 상기 제2 레벨의 가변성을 갖는 제2 유형의 액티비티가 제1 동작을 수행하도록 설정되어 있고, 당해 제2 유형의 액티비티와 연관된 일군의 동작은, 제2 작업을 수행하는 제2 동작, 및 제3 작업을 수행하는 제3 동작을 포함하는 경우를 가정한다. 이 때, 상기 가변치가 다른 작업과의 대체를 나타내는 경우라면, 사용자는 당해 제2 액티비티에 대해 상기 제3 동작을 수행하도록 선택함으로써, 상기 제1 동작 대신 제3 동작이 수행되도록 설정할 수 있다. 또한 만약, 상기 가변치가 다른 작업의 추가를 나타내는 경우라면, 사용자는 당해 제2 액티비티에 대해 상기 제3 동작을 수행하도록 선택함으로써, 상기 제1 동작 및 제3 동작이 수행되도록 설정할 수 있다.
도 4는 본 발명의 따른 비즈니스 프로세스 모델의 일 예를 도시한다. 도 4는 "판매"라는 비즈니스 프로세스에 있어서의 공통성과 가변성을 분석하여, 상기 공통성을 제1 유형의 액티비티로 표현하고 상기 가변성을 제2 유형의 액티비티로 표현한 것이다. 도 4에 도시된 바와 같이, 상기 "판매" 비즈니스 프로세스에서는 두 가지의 가변성이 도출되었다. "비정상 상품 판매에 대한 처리"라는 액티비티와, "게이트웨이 도어 개방"이라는 액티비티가 바로 그것이다. 상기 "비정상 상품 판매에 대한 처리" 액티비티는 제2 레벨 가변성의 액티비티로서, 당해 액티비티에 연관된 동작으로서 "비정상 판매 상품 DB에 업데이트"라는 제1 동작과 "점원에게 비정상 판매 목록을 알림"이라는 제2 동작이 연관되어 존재한다. 사용자는 상기 제1 동작 및 제2 동작 중 어느 하나의 동작을 선택하여 상기 "비정상 상품 판매에 대한 처리"로서 수행할 수 있다. 도 5는 상기 제2 동작, 즉, "점원에게 비정상 판매 목록을 알림"을 선택한 경우의 예시를 도시한다. 또한, 상기 "게이트웨이 도어 개방"이라는 액티비티는, 제1 레벨 가변성을 갖는 제2 유형의 액티비티로서, 사용자는 상기 "게이트웨이 도어 개방"이라는 액티비티에 연관된 동작인 "도어 시스템에 의해 게이트웨이 도어 개방" 및 "도어 시스템에 메일 전송"이라는 작업을 수행할 것인지 수행하지 않을 것인지를 선택할 수 있다. 도 5는 상기 작업을 수행하도록 선택한 경우의 예시를 도시한다.
본 발명의 웹 서비스 생성 시스템 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 템플릿의 일 예를 도시한다.
본 발명의 상기 웹 서비스 생성 시스템 500은, 상기 BPEL 변환부 130에 의해 생성된 상기 BPEL 템플릿과 같은 BPEL 문서가 상기 컴퓨터 시스템에 의해 실행 가능하도록 상기 BPEL을 이용하여 표기된 상기 각각의 액티비티에 대응하여 미리 정해진 웹 서비스가 호출되도록 설정하는 웹 서비스 매핑부 140을 포함한다. 상기 BPEL 변환부 130에 의해 생성된 상기 BPEL 템플릿은, 상기 BPMN으로 작성된 것과 동일한 비즈니스 프로세스 흐름을 갖는 모델이며, 단지 표현 방식만이 BPEL로 변경된 것이다. 즉, BPEL 템플릿은 단지 비즈니스 프로세스 흐름을 BPEL로 나타내는 것에 지나지 않고, 실행 가능한 것이 아니다. 따라서, 실제 비즈니스 프로세스의 실현을 위한 웹 서비스를 BPEL 템플릿 내에 기재된 각각의 액티비티에 대응시키는 과정이 요구된다. 이를 매핑(mapping)이라고 한다.
상기 웹 서비스 매핑부 140은, 비즈니스 프로세스를 실현하기 위해 필요한 웹 서비스를 검색하고 해당 웹 서비스에 대한 명세(specification)인 WSDL를 확보한다. 확보된 WSDL은 BPEL에 파트너 링크로서 추가된다. 파트너 링크는 BPEL과 관련 개체들 간의 상호 작용을 정의하는데 사용되며, 여기에는 BPEL 프로세스가 호출하는 웹 서비스, 그리고 BPEL 프로세스를 호출하는 클라이언트에 대한 정의가 함께 포함된다. 상기 웹 서비스 매핑부 140은 상기 파트너 링크 정보를 BPEL에 추가한 후, 파트너 링크에 의해 제공되는 웹 서비스를 BPEL 템플릿의 액티비티에 매핑한다. 이로써 각각의 액티비티는 대응되는 웹 서비스와 연관된다.
단일 웹 서비스 동작은 프로그램 언어에서의 함수와 유사하다. BPEL 템플릿에 매핑된 웹 서비스를 호출하기 위해, 상기 웹 서비스 매핑부 140은 웹 서비스를 호출할 수 있도록 웹 서비스 동작의 호출 파라미터 변수와 반환 변수의 선언, 및 선언된 변수에 값을 할당하는 등과 같은 부가 정보 설정을 수행한다. 예를 들면, BPEL 명세에서, 상기 부가 정보들을 설정하기 위해 <assign> 및 <variable>, <from>, <to>와 같은 메커니즘이 이용된다.
상기 웹 서비스 동작의 파라미터와 리턴 변수를 설정한 후, 상기 웹 서비스 매핑부 140은 실행 가능하도록 된 BPEL 및 WSDL, XSD와 같은 BPEL 관련 파일을 생성한다. 상기 웹 서비스 매핑부 140에 의해 생성되는 모든 파일은 XML로 작성될 수 있다. 또한, 상기 웹 서비스 매핑부 140은 웹 서비스의 매핑과 변수 설정을 위한 GUI(graphical user interface)를 제공할 수 있다.
도 7은 도 6에 도시된 상기 BPEL 변환부 130에 의해 생성된 BPEL 템플릿에 있어서, "도어 시스템에 메일 전송"이라는 액티비티에 실제 웹 서비스와 부가 정보가 설정된 XML의 일 예를 도시한다. 첫번째 박스는 상기 "도어 시스템에 메일 전송"이라는 액티비티에 매핑된 웹 서비스의 파트너링크, 오퍼레이션, 및 포트 타입에 대한 정보이고, 두번째 및 세번째 박스는 각각 입/출력 값에 할당된 변수 정보를 나타낸다.
본 발명의 상기 웹 서비스 생성 시스템 500은, 상기 웹 서비스 매핑부 140에 의해 상기 웹 서비스가 호출되도록 설정된 상기 BPEL 문서를 미리 정해진 BPEL 엔진 상에 배치(deploying)하는 BPEL 엔진 배치부 150을 더 포함한다. 상기 BPEL 엔진 배치부 150의 동작을 보다 상세히 살펴보면 다음과 같다. 상기 BPEL 엔진 배치부 150은 우선 BPEL을 배치하기 위한 BPEL 엔진을 선택한다. 상기 BPEL 엔진은 어느 하나의 특정 엔진만 사용할 수 있는 것이 아니라, 사용자의 선택에 따라서 결정될 수 있다. 따라서, 본 시스템의 사용자는 해당 프로젝트에서 실제 이용되는 BPEL 엔진을 선택하면 되고, 예를 들면, Apache ODE와 ActiveVOS 중 하나를 선택할 수 있다.
BPEL 또는 WS-BPEL은 기준 명세를 갖지만, BPEL 엔진은 기준 명세가 없다. 즉, 배치 과정과 배치 정보 및 관련 파일은 BPEL 엔진에 밀접하게 의존하고, 배치 파일의 구성은 엔진마다 다르다. 그러나, 상기한 바와 같이 BPEL은 기준 명세를 가지므로, BPEL 명세를 지원하는 모든 BPEL 엔진에서 상기 웹 서비스 매핑 모듈 140에 의해 생성된 BPEL, 상기 BPEL에 매핑된 웹 서비스에 대한 정보를 담고 있는 기술자(descriptor)인 WSDL, 및 메시지 정보를 담고 있는 XSD가 이용될 수 있다.
상기 BPEL 엔진 배치부 150은 상기 웹 서비스 매핑 모듈 140에 의해 생성된 파일들에 각 엔진이 지닌 고유한 정보를 더하여 BPEL 배치 파일을 구성한다. 엔진의 고유 정보는 엔진의 종류와 버전, 물리적 주소(IP, port) 등을 포함하며, 엔진마다 고유 정보와 BPEL, WSDL, XSD를 구성하는 법이 다르므로 배치할 엔진의 특징을 파악할 필요가 있다. 예를 들면, 상기 Apache ODE 상의 배치 파일은 디렉터리를 갖지 않는 단일 집(zip) 파일이고, ActiveVOS 상의 배치 가공물은 다수의 디렉터리 및 배치 디스크립터 - 상기 배치 스크립터는, BPEL 배치와 관련 웹 서비스에 관한 정보를 포함함 - 를 포함하는 단일 자르(jar) 파일이다.
상기 BPEL 엔진 배치부 150은 상기 엔진 고유 정보를 기초로 구성된 BPEL 배치 파일을 상기 선택된 BPEL 엔진에 배치한다. 이로써 기업의 비즈니스 프로세스가 웹 서비스로 불리는 수행 가능한 자산으로 실현된다.
한편, 도 2에 도시된 바와 같이, 본 발명의 웹 서비스 생성 시스템 500은 비즈니스 프로세스 정보 저장부 210 또는 사용자 입력 수취부 220을 더 포함할 수 있다.
상기 비즈니스 프로세스 정보 저장부 210은, 비즈니스 프로세스에 포함된 각각의 액티비티에 대하여, 각각의 액티비티가 상기 제1 유형의 액티비티 및 상기 제2 유형의 액티비티 중 어느 유형의 액티비티에 해당하는지에 관한 정보, 각각의 제1 유형의 액티비티에 의해 수행되는 동작에 관한 정보, 각각의 제2 유형의 액티비티에 연관된 일군의 동작들에 관한 정보, 및 각각의 제2 유형의 액티비티에 의해 수행되는 동작에 관한 정보를 저장한다. 또한, 상기 비즈니스 프로세스 정보 저장부 210은 각각의 액티비티 간의 관계에 관한 정보, 상기 비즈니스 프로세스 내에서 각각의 액티비티가 수행되는 순서에 관한 정보 등을 더 포함할 수 있다. 상기 비즈니스 프로세스 정보 저장부 210은, 상기 정보들을 비즈니스 프로세스에 대한 가공되지 않은 상태의 정보로서 저장할 수 있고, 또는 상기 정보들을 기초로 생성된 비즈니스 프로세스 패밀리 모델의 표기 및 구조의 형태로 가공되어 저장될 수도 있다.
상기 액티비티 설정부 120은, 상기 비즈니스 프로세스 정보 저장부 210에 저장된 정보들을 기초로, 제2 유형의 액티비티와 연관된 일군의 동작들에 관한 정보를 독출하고, 각각의 제2 유형의 액티비티에 의해 수행될 동작을 선택할 수 있다. 상기 선택된 동작에 대한 정보는 다시 상기 비즈니스 프로세스 정보 저장부 210에 저장됨으로써 갱신될 수 있고, 상기 액티비티 설정부 210은 상기 비즈니스 프로세스 정보 저장부 210에 저장된 가변성에 대한 의사 결정 정보를 기초로 비즈니스 프로세스 모델을 생성할 수 있다.
또한 본 발명의 웹 서비스 생성 시스템 500은, 사용자 입력 수취부 220을 더 포함함으로써 사용자로 하여금 상기 제2 유형의 액티비티에 의해 수행될 동작을 직접 선택하도록 할 수 있다. 보다 구체적으로, 상기 사용자 입력 수취부 220은, 제2 유형의 액티비티에 대하여, 상기 제2 유형의 액티비티와 연관된 일군의 동작들에 관한 정보를 사용자에게 제공하고, 상기 사용자로부터 상기 연관된 일군의 동작들 중 상기 포함된 제2 유형의 액티비티에 의해 수행될 동작을 선택하는 입력을 수취한다. 상기 사용자에게 제공될 정보는 상기 비즈니스 프로세스 패밀리 모델 생성부 110에 의해 생성된 비즈니스 프로세스 패밀리 모델로부터 독출될 수 있고, 또는 상기 비즈니스 프로세스 정보 저장부 210에 저장된 정보로부터 제공될 수 있다. 상기 사용자 입력 수취부 220은 사용자에게 소정의 정보를 제공하고 입력을 수취하기 위한 GUI를 제공할 수 있다. 나아가 상기 액티비티 설정부 120은, 상기 사용자 입력 수취부 220에 의해 상기 사용자로부터 수취된 입력을 기초로 상기 제2 유형의 액티비티에 의해 수행될 동작을 선택하도록 설정할 수 있다. 또한 상기 액티비티 설정부 120은 상기 사용자로부터의 입력을 기초로 설정된 상기 제2 유형의 액티비티에 의해 수행될 동작에 대한 정보를 상기 비즈니스 프로세스 정보 저장부 210에 저장할 수 있다.
다음으로 도 8를 참조하면, 도 8는 본 발명의 일 실시예에 의한 사용자 맞춤형 웹 서비스 생성 방법을 도시하는 흐름도이다. 도 8에 도시된 바와 같이, 사용자에 의해 정보가 입력되거나 소정의 데이터베이스에 저장된 정보를 기초로, 미리 정해진 동작을 수행하도록 규정된 제1 유형의 액티비티 및/또는 미리 정해진 일군(一群)의 동작들과 연관되고 상기 일군의 동작들로부터 선택된 동작을 수행하도록 설정될 수 있는 제2 유형의 액티비티를 포함하는 비즈니스 프로세스로부터 비즈니스 프로세스 패밀리 모델을 생성한다(도 8의 단계 1010). 즉, 상기 단계 1010에서 획득되는 비즈니스 프로세스 모델은 컴퓨터 시스템에 의해 판독 가능하도록 상기 비즈니스 프로세스의 각각의 액티비티를 BPMN을 이용하여 표기한 비즈니스 프로세스 패밀리 모델로서, 상기 제2 유형의 액티비티에 대한 표현을 지원하기 위해 기존의 BPMN에 상기 제2 유형의 액티비티에 대한 정보를 보유할 수 있는 모델 요소, 예를 들면, 도 3에 도시된 바와 같은 메타 모델이 추가될 수 있다는 것은 상기 비즈니스 프로세스 패밀리 모델 생성부 110 및 상기 액티비티 설정부 120과 관련하여 설명한 바와 같다.
다음으로, 본 발명의 웹 서비스 생성 방법은, 상기 비즈니스 프로세스에 포함된 각각의 제2 유형의 액티비티에 대하여, 상기 각각의 제2 유형의 액티비티와 연관된 일군의 동작들에 관한 정보를 상기 비즈니스 프로세스 패밀리 모델로부터 독출한다. 만약 상기 비즈니스 프로세스에 대한 정보를 저장하는 데이터베이스가 구축된 상태라면, 상기 데이터베이스에 저장된 정보로부터 상기 제2 유형의 액티비티와 연관된 일군의 동작들에 관한 정보를 독출할 수 있다.
상기 데이터베이스를 구축하는 단계는, 통상적으로 상기 비즈니스 프로세스 패밀리 모델을 생성하는 단계 이전에 수행되어 상기 비즈니스 프로세스 패밀리 모델을 모델링하기 위한 정보가 저장되지만, 상기 비즈니스 프로세스 패밀리 모델 생성 단계 이후에 구축됨으로써, 비즈니스 프로세스 자체에 대한 정보는 물론이고 상기 BPMN 형식으로 생성된 비즈니스 프로세스 패밀리 모델의 표기 및 구조에 대한 데이터 자체를 저장할 수도 있다.
본 발명의 웹 서비스 생성 방법은, 상기 독출된 정보를 기초로 각각의 제2 유형의 액티비티에 의해 수행될 동작을 설정한다(도 8의 단계 1020). 만약 상기 비즈니스 프로세스 정보 데이터베이스가 구축되었다면, 상기 제2 유형의 액티비티에 의해 수행될 동작에 대한 정보를 상기 데이터베이스에 저장할 수 있다. 또한, 본 발명의 웹 서비스 생성 방법은 상기 제2 유형의 액티비티에 의해 수행될 동작을 선택하는 입력을 사용자로부터 수취하고, 상기 수취된 입력을 기초로 상기 동작을 설정할 수 있다는 것은 상기 사용자 입력 수취부 220과 관련하여 이미 설명한 바와 같다.
다음으로, 본 발명의 웹 서비스 생성 방법은 상기 단계 1020에서 설정된 상기 각각의 제2 유형의 액티비티에 의해 수행될 동작에 관한 정보 및 상기 비즈니스 프로세스 패밀리 모델에 대한 정보를 기초로, 상기 컴퓨터 시스템에 의해 판독 가능하도록 상기 BPMN을 이용하여 상기 비즈니스 프로세스 모델을 생성한다(도 8의 단계 1030). 이로써 상기한 바와 같이 가변성에 대한 사용자의 의사 결정이 반영된 비즈니스 프로세스 모델이 생성된다.
상기 생성된 비즈니스 프로세스 모델은 상기 컴퓨터 시스템에 의해 판독 가능하도록 BPEL을 이용하여 표기되도록 변환되고, 변환의 결과로서 BPEL 문서가 생성된다(도 8의 단계 1040). 비즈니스 프로세스 모델의 BPEL 변환 모델은 BPMN 2.0 명세를 따르며, 만약 BPEL로 변환할 수 없는 구성요소가 존재한다면 이를 변환 가능하도록 수정한 후, 비즈니스 프로세스 모델을 BPEL 템플릿으로 변환한다.
다음으로 도 8의 단계 1050에서, 비즈니스 프로세스를 실현하기 위해 필요한 웹 서비스를 상기 BPEL 템플릿에 매칭시킨다. 보다 구체적으로, 상기 BPEL 템플릿에 표기된 각각의 액티비티에 대응하는 웹 서비스를 검색하고 해당 웹 서비스에 대한 명세인 WSDL 및 XSD를 획득한다. 상기 획득된 WSDL은 상기 BPEL 내에 파트너 링크로서 추가되고, 상기 BPEL 템플릿의 각각의 액티비티에 해당하는 웹 서비스를 상기 파트너 링크를 통해 찾아서 매핑한다. 다음으로, 상기 웹 서비스를 호출하기 위한 파라미터와 반환 변수의 설정 등과 같은 동작에 대해서는 상기 웹 서비스 매핑부 140과 관련하여 기재된 바와 같다.
다음으로 본 발명의 웹 서비스 생성 방법은, 상기 단계 1050에서 상기 웹 서비스가 호출되도록 설정된 상기 BPEL 문서를 미리 정해진 BPEL 엔진 상에 배치한다(도 8의 단계 1060). 상기 단계 1060에서, 사용자의 입력을 기초로 BPEL 템플릿을 비롯한 실행 가능하도록 변환되고 매핑된 BPEL 문서들을 배치할 엔진을 선택하고, 선택된 엔진에 대한 엔진 종류 및 번호 등과 같은 고유 정보를 기초로 BPEL 배치 파일을 생성하며, 상기 생성된 BPEL 배치 파일들을 상기 선택된 BPEL 엔진에 배치함으로써, 기업의 비즈니스 프로세스가 최종적으로 실행 가능한 웹 서비스로 실제화된다.
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 모델 요소에 보유된 정보를 기초로 상기 비즈니스 프로세스 모델을 생성하는 액티비티 설정부를 포함하는, 사용자 맞춤형 웹 서비스 생성 시스템.
- 제1항에 있어서,
상기 비즈니스 프로세스에 포함된 각각의 액티비티에 대하여, 각각의 액티비티가 제1 유형의 액티비티 및 제2 유형의 액티비티 중 어느 유형의 액티비티에 해당하는지에 관한 정보, 각각의 제1 유형의 액티비티에 의해 수행되는 동작에 관한 정보, 각각의 제2 유형의 액티비티에 연관된 일군의 동작들에 관한 정보, 및 각각의 제2 유형의 액티비티에 의해 수행되는 동작에 관한 정보를 저장하는 비즈니스 프로세스 정보 저장부를 더 포함하되,
상기 액티비티 설정부는, 상기 비즈니스 프로세스에 제2 유형의 액티비티가 포함된 경우, 상기 비즈니스 프로세스 정보 저장부로부터 각각의 제2 유형의 액티비티와 연관된 일군의 동작들에 관한 정보를 독출하고, 상기 독출된 정보를 기초로 상기 각각의 제2 유형의 액티비티에 의해 수행될 동작을 선택하고, 상기 선택된 동작에 대한 정보를 상기 비즈니스 프로세스 정보 저장부에 저장하는, 사용자 맞춤형 웹 서비스 생성 시스템.
- 제1항 또는 제2항에 있어서,
상기 비즈니스 프로세스에 제2 유형의 액티비티가 포함된 경우, 각각의 제2 유형의 액티비티와 연관된 일군의 동작들에 관한 정보를 사용자에게 제공하고, 상기 연관된 일군의 동작들 중 상기 각각의 제2 유형의 액티비티에 의해 수행될 동작을 선택하는 입력을 상기 사용자로부터 수취하는 사용자 입력 수취부를 더 포함하되,
상기 액티비티 설정부는, 상기 사용자 입력 수취부에 의해 수취된 입력을 기초로 상기 각각의 제2 유형의 액티비티에 의해 수행될 동작을 선택하는, 사용자 맞춤형 웹 서비스 생성 시스템.
- 제1항 또는 제2항에 있어서,
상기 BPEL 변환부는, XML로 작성된 BPEL 템플릿(template) 파일을 상기 BPEL 문서로서 생성하는, 사용자 맞춤형 웹 서비스 생성 시스템.
- 제4항에 있어서,
상기 웹 서비스 매핑부는, 상기 미리 정해진 웹 서비스에 대한 명세(specification)인 WSDL(web service description language) 및 XSD(XML schema document)를 기초로, 상기 미리 정해진 웹 서비스를 파트너 링크(partner link)를 이용하여 상기 BPEL 템플릿 파일에 추가함으로써, 상기 BPEL을 이용하여 표기된 각각의 액티비티에 대응하여 상기 미리 정해진 웹 서비스가 호출되도록 설정하는, 사용자 맞춤형 웹 서비스 생성 시스템.
- 제1항 또는 제2항에 있어서,
상기 BPEL 엔진 배치부는, Apache ODE 및 ActiveVOS 중 어느 하나를 선택하고, 상기 선택된 엔진에 상기 BPEL 문서를 배치하는, 사용자 맞춤형 웹 서비스 생성 시스템.
- 삭제
- 삭제
- 비즈니스 프로세스 모델 생성부, BPEL 변환부, 웹 서비스 매핑부 및 BPEL 엔진 배치부를 구비하는 사용자 맞춤형 웹 서비스 생성 시스템에서 사용자에 의해 규정된 하나 또는 그 이상의 액티비티 - 각각의 액티비티는, 미리 정해진 동작을 수행하도록 규정된 제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 문서를 미리 정해진 BPEL 엔진 상에 배치하는 BPEL 엔진 배치 단계를 포함하는, 사용자 맞춤형 웹 서비스 생성 방법.
- 제9항에 있어서,
상기 사용자 맞춤형 웹 서비스 생성 시스템은 사용자 입력 수취부를 더 포함하고, 상기 사용자 입력 수취부에 의해 상기 비즈니스 프로세스 패밀리 모델 생성 단계 이후 및 상기 액티비티 설정 단계 이전에, 상기 비즈니스 프로세스에 포함된 각각의 제2 유형의 액티비티에 대하여, 상기 각각의 제2 유형의 액티비티와 연관된 일군의 동작들에 관한 정보를 사용자에게 제공하고, 상기 연관된 일군의 동작들 중 상기 각각의 제2 유형의 액티비티에 의해 수행될 동작을 선택하는 입력을 상기 사용자로부터 수취하는 사용자 입력 수취 단계를 더 포함하되,
상기 액티비티 설정부가 상기 액티비티 설정 단계에서, 상기 사용자 입력 수취 단계에서 수취된 입력을 기초로 상기 각각의 제2 유형의 액티비티에 의해 수행될 동작을 선택하는, 사용자 맞춤형 웹 서비스 생성 방법.
- 제9항 또는 제10항에 있어서,
상기 사용자 맞춤형 웹 서비스 생성 시스템은 비즈니스 프로세스 정보 저장부를 더 포함하고, 상기 비즈니스 프로세스 정보 저장부에 의해 상기 비즈니스 프로세스 패밀리 모델 생성 단계 이전에, 상기 비즈니스 프로세스에 포함된 각각의 액티비티에 대하여, 각각의 액티비티가 상기 제1 유형의 액티비티 및 상기 제2 유형의 액티비티 중 어느 유형의 액티비티에 해당하는지에 관한 정보, 각각의 제1 유형의 액티비티에 의해 수행되는 동작에 관한 정보, 각각의 제2 유형의 액티비티에 연관된 일군의 동작들에 관한 정보, 및 각각의 제2 유형의 액티비티에 의해 수행되는 동작에 관한 정보를 저장하는 비즈니스 프로세스 정보 데이터베이스를 구축하는 데이터베이스 구축 단계를 더 포함하되,
상기 액티비티 설정부는 상기 액티비티 설정 단계에서, 상기 비즈니스 프로세스에 포함된 각각의 제2 유형의 액티비티에 대하여, 상기 비즈니스 프로세스 정보 데이터베이스로부터 상기 각각의 제2 유형의 액티비티와 연관된 일군의 동작들에 관한 정보를 독출하고, 상기 독출된 정보를 기초로 상기 포함된 제2 유형의 액티비티에 의해 수행될 동작을 선택하고, 상기 선택된 동작에 대한 정보를 상기 비즈니스 프로세스 정보 데이터베이스에 저장하며,
상기 비즈니스 프로세스 모델 생성부는 상기 비즈니스 프로세스 모델 생성 단계에서, 상기 비즈니스 프로세스 정보 데이터베이스에 저장된 정보를 기초로, 상기 BPMN을 이용하여 표기된 상기 비즈니스 프로세스의 각각의 액티비티를 포함하는 비즈니스 프로세스 모델을 생성하는, 사용자 맞춤형 웹 서비스 생성 방법.
- 제9항 또는 제10항에 있어서,
상기 BPEL 변환 단계에서, BPEL 변환부는 XML로 작성된 BPEL 템플릿 파일을 상기 BPEL 문서로서 생성하는, 사용자 맞춤형 웹 서비스 생성 방법.
- 제12항에 있어서,
상기 웹 서비스 매핑 단계에서, 상기 웹 서비스 매핑부는 상기 미리 정해진 웹 서비스에 대한 명세(specification)인 WSDL(web service description language) 및 XSD(XML schema document)를 기초로, 상기 미리 정해진 웹 서비스를 파트너 링크(partner link)를 이용하여 상기 BPEL 템플릿 파일에 추가함으로써, 상기 BPEL을 이용하여 표기된 각각의 액티비티에 대응하여 상기 미리 정해진 웹 서비스가 호출되도록 설정하는, 사용자 맞춤형 웹 서비스 생성 방법. - 삭제
- 삭제
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020100033665A KR101127701B1 (ko) | 2010-04-13 | 2010-04-13 | 비즈니스 프로세스로부터 사용자 맞춤형 웹 서비스를 생성하는 시스템 및 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020100033665A KR101127701B1 (ko) | 2010-04-13 | 2010-04-13 | 비즈니스 프로세스로부터 사용자 맞춤형 웹 서비스를 생성하는 시스템 및 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20110114173A KR20110114173A (ko) | 2011-10-19 |
KR101127701B1 true KR101127701B1 (ko) | 2012-03-22 |
Family
ID=45029305
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020100033665A KR101127701B1 (ko) | 2010-04-13 | 2010-04-13 | 비즈니스 프로세스로부터 사용자 맞춤형 웹 서비스를 생성하는 시스템 및 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101127701B1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102363373B1 (ko) | 2021-08-03 | 2022-02-16 | (주)메가투스 | 인공신경망을 이용한 액티비티 추천 시스템, 인공신경망을 이용한 액티비티 추천 방법, 이를 위한 컴퓨터 프로그램 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101898481B1 (ko) * | 2017-04-04 | 2018-09-14 | 국방과학연구소 | 임무 서비스를 이용한 주차 관리 시스템 |
CN112230933A (zh) * | 2020-09-16 | 2021-01-15 | 贝壳技术有限公司 | 流程引擎自动转换方法、装置、电子介质及存储介质 |
WO2022196882A1 (ko) * | 2021-03-19 | 2022-09-22 | 인제대학교 산학협력단 | 플랜트 절차서를 음성 인터페이싱을 지원하는 스마트 절차서로 변환하는 방법 및 시스템 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20100006494A (ko) * | 2008-07-09 | 2010-01-19 | 윤영하 | 비즈니스 프로세스 관리 시스템 및 방법 |
-
2010
- 2010-04-13 KR KR1020100033665A patent/KR101127701B1/ko not_active IP Right Cessation
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20100006494A (ko) * | 2008-07-09 | 2010-01-19 | 윤영하 | 비즈니스 프로세스 관리 시스템 및 방법 |
Non-Patent Citations (1)
Title |
---|
비즈니스 프로세스 패밀리 모델을 이용한 비즈니스 프로세스 모델 자동 생성 도구(정보과학회논문지, 소프트웨어 및 응용 제35권 제8호, 염근혁 외2인, 페이지479-492, 2008.8월 발행)* |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102363373B1 (ko) | 2021-08-03 | 2022-02-16 | (주)메가투스 | 인공신경망을 이용한 액티비티 추천 시스템, 인공신경망을 이용한 액티비티 추천 방법, 이를 위한 컴퓨터 프로그램 |
Also Published As
Publication number | Publication date |
---|---|
KR20110114173A (ko) | 2011-10-19 |
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 | |
US20140180750A1 (en) | Systems and methods for modeling costed entities and performing a value chain analysis | |
US20100121740A1 (en) | Data driven orchestration of business processes | |
US8838627B2 (en) | Systems and methods for providing template based output management | |
US11106743B2 (en) | Binding traits to case nodes | |
Porouhan et al. | Process and deviation exploration through Alpha-algorithm and Heuristic miner techniques | |
Hurtado Alegría et al. | MDE‐based process tailoring strategy | |
Wieland et al. | Towards a rule-based manufacturing integration assistant | |
Hurtado et al. | MDE software process lines in small companies | |
JP2007122135A (ja) | 開発支援装置、開発支援方法、および、開発支援プログラム | |
US8595288B2 (en) | Enabling SOA governance using a service lifecycle approach | |
KR101127701B1 (ko) | 비즈니스 프로세스로부터 사용자 맞춤형 웹 서비스를 생성하는 시스템 및 방법 | |
He et al. | ISA-95 tool for enterprise modeling | |
CN112100984A (zh) | 一种由ebom到sbom的数据转换方法及系统 | |
JP2006338303A (ja) | 表記変換装置、整合性チェック装置、及びプログラム | |
Capilla et al. | On the role of architectural design decisions in software product line engineering | |
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 (zh) | 非功能需求实现策略的量化选择方法 | |
Lin et al. | An expanded SEMATECH CIM framework for heterogeneous applications integration | |
Chawla et al. | A Goal based methodology for Web specific Requirements Engineering | |
Rodríguez-Echeverría et al. | Model-driven Generation of a REST API from a Legacy Web Application |
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 |