KR101438925B1 - 추상화 및 세분화 방식에 기반한 웹 서비스 합성 시스템 및 웹 서비스 합성 방법 - Google Patents

추상화 및 세분화 방식에 기반한 웹 서비스 합성 시스템 및 웹 서비스 합성 방법 Download PDF

Info

Publication number
KR101438925B1
KR101438925B1 KR1020120136156A KR20120136156A KR101438925B1 KR 101438925 B1 KR101438925 B1 KR 101438925B1 KR 1020120136156 A KR1020120136156 A KR 1020120136156A KR 20120136156 A KR20120136156 A KR 20120136156A KR 101438925 B1 KR101438925 B1 KR 101438925B1
Authority
KR
South Korea
Prior art keywords
web service
service set
web
abstraction
abstract
Prior art date
Application number
KR1020120136156A
Other languages
English (en)
Other versions
KR20140068546A (ko
Inventor
남원홍
길현영
Original Assignee
건국대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 건국대학교 산학협력단 filed Critical 건국대학교 산학협력단
Priority to KR1020120136156A priority Critical patent/KR101438925B1/ko
Publication of KR20140068546A publication Critical patent/KR20140068546A/ko
Application granted granted Critical
Publication of KR101438925B1 publication Critical patent/KR101438925B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Stored Programmes (AREA)

Abstract

웹 서비스 합성 시스템이 개시된다. 실시예에 따른 웹 서비스 합성 시스템은 적어도 하나 이상의 웹 서비스 집합 및 목표 정보가 입력된 경우, 적어도 하나 이상의 웹 서비스 집합을 추상화(abstraction) 웹 서비스 집합으로 단순화하는 추상화 모듈(abstraction module), 추상화 웹 서비스 집합에서 상기 목표 정보를 만족시키는 웹 서비스가 미존재할 경우, 추상화 웹 서비스 집합을 세분화(refinement)하는 단계 및 목표 정보에 만족시키는 웹 서비스가 존재할 경우, 해당 웹 서비스를 합성하여 코디네이터 웹 서비스를 생성하는 웹 서비스 합성 모듈(web service composition module)을 포함한다.

Description

추상화 및 세분화 방식에 기반한 웹 서비스 합성 시스템 및 웹 서비스 합성 방법 {SYSTEM AND METHOD FOR WEB SERVICE COMPOSITION BASED ON ABSTRACTION AND REFINEMENT METHODS}
실시예들은 추상화(abstraction) 및 세분화(refinement) 방식에 기반하여 목표 정보에 도달하기 위하여 웹 서비스들을 합성하는 시스템 및 그 방법에 관한 것이다.
최근 웹 기술의 많은 발전과 더불어 다양한 기능을 제공하는 서비스들이 v상에 존재하지만, 사용자의 요구를 만족하기에는 저마다 제한된 기능을 제공한다. 대부분의 단일 서비스는 복잡한 요청에 적절히 응답하는데 한계가 있다. 따라서, 기존 단일 서비스들을 합성하여 제공하는 웹 서비스 합성(web service composition)이 고려되고 있다.
사용자의 다양한 요구를 만족시키기 위하여 새로운 웹 서비스를 만들기보다는, 서비스의 재사용과 효율성 측면에서 기존 다른 웹 서비스들을 합성하여 제공할 필요가 있다. 이 같이 기존의 다른 웹 서비스들을 합성하는 것을 웹 서비스 합성이라 한다.
웹 서비스 합성을 통해 코디네이터 웹 서비스를 생성할 경우, 모든 변수들에 대하여 모두 관측하거나, 부분적으로 관측하게 된다. 이 과정에서 변수들의 관측에 따라 웹 서비스 합성이 계산적인 복잡성을 띄게 되어, 웹 서비스 합성에 문제가 발생하게 된다.
실시예는 웹 서비스 합성에 있어서, 추상화 및 세분화 방식을 통해 다양한 변수들의 관측에 따른 웹 서비스 합성의 문제점을 해결하기 위한 것으로, 계산적으로 단순화된 웹 서비스 합성을 위한 시스템 및 장치를 제공하기 위한 것이다.
실시예에 따른 웹 서비스 합성 시스템은 복수의 웹 서비스를 포함하는 적어도 하나 이상의 웹 서비스 집합 및 목표 정보가 입력된 경우, 상기 적어도 하나 이상의 웹 서비스 집합을 추상화(abstraction) 웹 서비스 집합으로 단순화하는 추상화 모듈(abstraction module) 및 상기 추상화 웹 서비스 집합에서 상기 목표 정보를 만족시키는 웹 서비스가 미존재할 경우, 상기 추상화 웹 서비스 집합을 세분화(refinement)하는 단계 및 상기 목표 정보에 만족시키는 웹 서비스가 존재할 경우, 해당 웹 서비스를 합성하여 코디네이터 웹 서비스를 생성하는 웹 서비스 합성 모듈(web service composition module)을 포함한다.
일 측에 따르면, 상기 추상화 모듈은 서명-보존 추상(signature-preserving abstract) 기법에 기반하여 상기 적어도 하나 이상의 웹 서비스 집합에 포함된 웹 서비스들보다 작은 수로 이루어진 제1 변수들을 이용하고, 상기 적어도 하나 이상의 웹 서비스 집합에서 상기 제1 변수들과 관련된 웹 서비스들을 상기 추상화(abstraction) 웹 서비스 집합으로 단순화할 수 있다.
일 측에 따르면, 상기 세분화 모듈은 상기 추상화 웹 서비스 집합에서 상기 목표 정보를 만족시키는 웹 서비스가 미존재할 경우, 제2 변수들을 추가하여 상기 추상화 웹 서비스 집합을 세분화할 수 있다.
일 측에 따르면, 상기 세분화 모듈은 방향 그래프(directed graph)인 변수 의존 그래프(variable dependency graph)를 이용하여 추가될 상기 제2 변수들을 선택할 수 있다.
일 측에 따르면, 상기 추상화 모듈은 서명-포괄 추상(signature-subsuming abstract) 기법에 기반하여 상기 적어도 하나 이상의 웹 서비스 집합에 포함된 웹 서비스들보다 작은 수로 이루어진 내부 변수 및 출력 변수를 이용하고, 상기 적어도 하나 이상의 웹 서비스 집합에서 상기 내부 변수 및 상기 츨력 변수와 관련된 웹 서비스들을 상기 추상화(abstraction) 웹 서비스 집합으로 단순화할 수 있다.
실시예에 따른 웹 서비스 합성 방법은 복수의 웹 서비스를 포함하는 적어도 하나 이상의 웹 서비스 집합 및 목표 정보가 입력된 경우, 상기 적어도 하나 이상의 웹 서비스 집합을 추상화(abstraction) 웹 서비스 집합으로 단순화하는 단계 및 상기 추상화 웹 서비스 집합에서 상기 목표 정보를 만족시키는 웹 서비스가 미존재할 경우, 상기 추상화 웹 서비스 집합을 세분화(refinement)하는 단계 및 상기 목표 정보에 도달하기 위한 웹 서비스를 합성하여 코디네이터 웹 서비스를 생성하는 단계를 포함한다.
일 측에 따르면, 상기 적어도 하나 이상의 웹 서비스 집합을 추상화(abstraction) 웹 서비스 집합으로 단순화하는 단계는 서명-보존 추상(signature-preserving abstract) 기법에 기반하여 상기 적어도 하나 이상의 웹 서비스 집합에 포함된 웹 서비스들보다 작은 수로 이루어진 제1 변수들을 이용하고, 상기 적어도 하나 이상의 웹 서비스 집합에서 상기 제1 변수들과 관련된 웹 서비스들을 상기 추상화(abstraction) 웹 서비스 집합으로 단순화할 수 있다.
일 측에 따르면, 상기 추상화 웹 서비스 집합을 세분화(refinement)하는 단계는 상기 추상화 웹 서비스 집합에서 상기 목표 정보를 만족시키는 웹 서비스가 미존재할 경우, 제2 변수들을 추가하여 상기 추상화 웹 서비스 집합을 세분화할 수 있다.
일 측에 따르면, 상기 추상화 웹 서비스 집합을 세분화(refinement)하는 단계는 방향 그래프(directed graph)인 변수 의존 그래프(variable dependency graph)를 이용하여 추가될 상기 제2 변수들을 선택할 수 있다.
일 측에 따르면, 상기 적어도 하나 이상의 웹 서비스 집합을 추상화(abstraction) 웹 서비스 집합으로 단순화하는 단계는 서명-포괄 추상(signature-subsuming abstract) 기법에 기반하여 상기 적어도 하나 이상의 웹 서비스 집합에 포함된 웹 서비스들보다 작은 수로 이루어진 내부 변수 및 출력 변수를 이용하고, 상기 적어도 하나 이상의 웹 서비스 집합에서 상기 내부 변수 및 상기 츨력 변수와 관련된 웹 서비스들을 상기 추상화(abstraction) 웹 서비스 집합으로 단순화할 수 있다.
실시예에 따른 웹 서비스 합성 시스템 및 그 방법은 추상화 및 세분화 방식을 통해 다양한 변수들의 관측에 따른 계산적인 복잡성을 단순화하여, 빠른 웹 서비스 합성을 가능하게 한다.
도 1은 실시예에 따른 웹 서비스 합성 시스템의 구성을 나타내는 블록도이다.
도 2는 실시예에 따른 웹 서비스 합성을 위한 알고리즘을 나타낸다.
도 3a 내지 도 3c는 실시예에 따른 추상화(abstraction) 방식을 나타낸다.
도 4는 실시예에 따른 변수 의존성 그래프의 일부를 나타내는 것이다.
도 5는 실시예에 따른 웹 서비스 합성 방법을 설명하기 위한 흐름도이다.
이하 첨부된 도면을 참조하여 본 발명의 실시 예들을 상세히 설명한다. 본 발명을 설명함에 있어서, 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 또한, 본 명세서에서 사용되는 용어(terminology)들은 본 발명의 바람직한 실시 예를 적절히 표현하기 위해 사용된 용어들로서, 이는 사용자, 운용자의 의도 또는 본 발명이 속하는 분야의 관례 등에 따라 달라질 수 있다. 따라서, 본 용어들에 대한 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다. 각 도면에 제시된 동일한 참조 부호는 동일한 구성을 나타낸다.
도 1은 실시예에 따른 웹 서비스 합성 시스템의 구성을 나타내는 블록도이다.
도 1에 도시된 웹 서비스 합성 시스템(100)은 적어도 하나 이상의 웹 서비스들을 합성하여 제공하는 시스템으로, 계산적으로 단순화된 웹 서비스 합성을 위하여 추상화 모듈(abstraction module)(110) 및 세분화 모듈(refinement module)(120)을 포함한다.
웹 서비스 합성이란, 기존 단일 웹 서비스들을 합성하여, 사용자의 다양한 요구를 만족시키는 기술이다. 예를 들어, 사용자가 특정 기간에 특정 목적지로 여행을 가고자 할 경우, 비행기 티켓 예약 및 숙소 예약(예를 들어, 호텔 예약)을 할 수 있다. 이 경우, 비행기 티켓 예약(AR) 웹 서비스(wAR)와 호텔 예약(HR) 웹 서비스(WHR)가 각각 존재할 수 있으며, 사용자는 이 두 개의 웹 서비스를 각각 이용하기 보다는, 결합된 웹 서비스를 이용하기를 원할 수 있다. 이 같은 결합된 웹 서비스를 제공하기 위하여 웹 서비스 합성 시스템은, 비행기 티켓 예약(AR) 웹 서비스 및 호텔 예약(HR) 웹 서비스들과 통신하는 코디네이터 웹 서비스를 자동으로 구성할 수 있다.
예를 들어, 웹 서비스 합성 시스템은 비행기 티켓 예약 및 호텔 예약을 위하여 외부 또는 사용자로부터 입력된 목표 정보(G≡(flightConfirm=reserve)^(hotelConfirm=reserve))와 웹 서비스들의 집합(W={wAR, wHR})을 이용하여 W∥c|=G 와 같은 코디네이터 웹 서비스를 구성할 수 있다. 그러나, 이 같은 방식에는 계산적인 복잡성이 존재한다. 이 계산적인 복잡성은 전체 관측(full observation)에 따른 웹 서비스 합성(WSC with full observation) 및 부분 관측(partial observation)에 따른 웹 서비스 합성(WSC with partial observation)에 따라 다를 수 있다. 즉, 전체 관측에 따른 웹 서비스 합성은 EXP가 어려우며, 부분 관측에 따른 웹 서비스 합성은 2-EXP가 어려울 수 있다.
따라서, 실시예에 따른 웹 서비스 합성 시스템은 추상화 및 세분화 방식을 이용하는 근사법 기반(approaximation-based)으로, 다양한 변수들의 관측에 따른 계산적인 복잡성을 단순화할 수 있다.
추상화 모듈(110)은 웹 서비스 집합 및 목표 정보가 입력된 경우, 웹 서비스 집합을 추상화 웹 서비스(abstraction web service) 집합으로 단순화 한다. 웹 서비스 집합이란, 다양한 웹 서비스들을 포함하는 집합을 의미할 수 있다. 예를 들어, 여행과 관련한 웹 서비스 집합은 비행기 티켓 예약 웹 서비스, 호텔 예약 웹 서비스, 여행사 예약 웹 서비스 또는 그외 여행 관련 웹 서비스들을 포함할 수 있다.
추상화 모듈(110)은 다양한 변수들을 이용하여 웹 서비스 집합을 추상화 웹 서비스 집합으로 단순화시킬 수 있다. 단순화에 따라 추상화 웹 서비스 집합은 웹 서비스 집합에 비해 적은 수의 웹 서비스들을 포함할 수 있다.
추상화 모듈(110)은 두 가지 기법을 이용하여 웹 서비스 집합을 추상화 웹 서비스 집합으로 단순화할 수 있다.
추상화 모듈(110)은 서명-보존 추상(signature-preserving abstract) 기법에 기반하여 적어도 하나 이상의 웹 서비스 집합에 포함된 웹 서비스들보다 작은 수로 이루어진 제1 변수들의 집합을 이용하여 추상화 웹 서비스 집합을 생성할 수 있다. 구체적으로, 웹 서비스 집합에 포함된 웹 서비스들 중에서 제1 변수들과 관련된 웹 서비스들을 이용하여 추상화 웹 서비스 집합으로 단순화할 수 있다.
또는, 추상화 모듈(110)은 서명-포괄 추상(signature-subsuming abstract) 기법에 기반하여 상기 적어도 하나 이상의 웹 서비스 집합에 포함된 웹 서비스들보다 작은 수로 이루어진 출력 변수들을 이용하여 추상화 웹 서비스 집합을 생성할 수 있다.
다양한 변수들에는 내부 변수(internal variables), 입력 변수(input variables), 출력 변수(output variables)가 존재할 수 있다. 서명-보존 추상(signature-preserving abstract) 기법은 내부 변수, 즉, "입력 변수/출력 변수"를 이용하여 추상화 웹 서비스 집합을 생성하는 반면, 서명-포괄 추상(signature-subsuming abstract) 기법의 경우, 내부 변수 외에 출력 변수를 이용하여 웹 서비스 집합을 추상화 웹 서비스 집합으로 단순화시킬 수 있다. 즉, 서명-포괄 추상(signature-subsuming abstract) 기법은 서명-보존 추상(signature-preserving abstract) 기법과 유사 또는 동일한 방식으로 추상화 웹 서비스 집합을 생성할 수 있으나, 추상화에 이용되는 변수들이 내부 변수 및 출력 변수로 확대된 것일 수 있다. 이 경우, 서명-포괄 추상(signature-subsuming abstract) 기법은 동일한 입력 변수를 가지되, 적은 내부 변수들 및 출력 변수들을 적게 가지고 있는 웹 서비스들에 대한 추상화 웹 서비스 집합을 생성할 수 있다.
서명-포괄 추상(signature-subsuming abstract) 기법에 의해 생성된 추상화 웹 서비스 집합은 적어도 하나의 웹 서비스 집합에 비해 적은 출력 변수들을 갖기 때문에, 이 추상화 웹 서비스 집합은 적어도 하나의 웹 서비스 집합의 잉여 출력 변수들을 무시함으로써 적어도 하나의 웹 서비스 집합을 통해 구성될 수 있으며, 코디네이터 웹 서비스는 추상화 웹 서비스로 구성될 수 있다. 다시 말해, 이 추상화 웹 서비스 집합을 이용하여 W'∥c|=G와 같은 코디네이터 웹 서비스를 구성할 수 있다면, 적어도 하나의 웹 서비스 집합을 이용하여 W∥c|=G 와 같은 코디네이터 웹 서비스를 구성할 수도 있다. 여기서, W'는 추상화 웹 서비스 집합이고, G는 목표 정보, c는 코디네이터 웹 서비스를 의미한다.
한편, 변수 의존성 그래프를 이용하여 서명-포괄 추상(signature-subsuming abstract) 기법에 적용하기 위한 출력 변수를 선택할 수 있다. 출력 변수들은 목표 속성(goal predicate)에서 변수들에 따른 내부 변수들에 의존할 수 있으며, 이 출력 변수들은 웹 서비스들을 제어하기 위한 코디네이터 웹 서비스들의 상태에 대한 중요한 정보를 제공할 수 있다.
세분화 모듈(120)은 추상화 웹 서비스 집합에서 목표 정보를 만족시키는 웹 서비스가 미존재할 경우, 제2 변수들을 추가하여 추상화 웹 서비스 집합을 세분화할 수 있다. 즉, 추상화 웹 서비스 집합에 포함된 웹 서비스들을 세분화할 수 있다. 이 경우, 추상화 웹 서비스 집합을 세분화하기 위하여 추가될 제2 변수들은 별도로 정해져 있는 것이 아니라, 방향 그래프(directed graph)인 변수 의존 그래프(vatiable dependency)를 이용하여 선택될 수 있다. 이에 대해서는 하기에서 구체적으로 설명할 것이다.
웹 서비스 합성 모듈(web service composition)(130)은 웹 서비스 합성을 위한 코디네이터가 될 수 있다. 이 웹 서비스 합성 모듈(130)은 추상화 모듈(110)을 통해 단순화된 추상화 웹 서비스 집합에서 목표 정보를 만족시키는 웹 서비스가 존재하거나, 또는, 세분화 모듈(120)을 통해 세분화된 추상화 웹 서비스 집합에서 목표 정보를 만족시키는 웹 서비스가 존재할 경우, 해당 웹 서비스들을 합성하여 코디네이터 웹 서비스를 생성할 수 있다.
도 2는 실시예에 따른 웹 서비스 합성을 위한 알고리즘을 나타낸다. 도 2에 도시된 알고리즘은 서명-보존 추상(signature-preserving abstract) 기법에 기반한 상위 레벨의 행위 명세를 나타내는 것이다.
실시예에 따른 웹 서비스 합성 시스템은 입력(Input)으로 웹 서비스 집합(W)과 목표 정보(G)가 입력되면, 이 알고리즘을 이용하여 출력(Output)으로 코디네이터 웹 서비스(c)를 제공할 수 있다.
알고리즘에 따르면, 입력 변수(XI) 및 출력 변수들(XO)을 제1 변수들(Y)로 설정하고(Y=XI∪XO), 이 입력 변수들 및 출력 변수들로 웹 서비스 집합(W)을 추상화하여 추상화 웹 서비스 집합(WY=Abstraction (W, Y))를 생성할 수 있다.
추상화 웹 서비스 집합(WY)에 포함된 웹 서비스들을 이용하여 목표 정보(G)를 만족시키는 웹 서비스들을 합성하고, 그로부터 코디네이터 웹 서비스를 생성할 수 있다. 이 경우, 코디네이터 웹 서비스는 W∥c|=G 를 만족할 수 있다.
한편, 추상화 웹 서비스 집합(WY)에 포함된 웹 서비스들에서 목표 정보(G)를 만족시키는 웹 서비스가 미존재할 경우, 제1 변수들(Y)에 제2 변수들(New Vars)을 추가한 새로운 변수들(Y)을 이용하여 추상화 웹 서비스 집합(WY)을 세분화한다, 즉, 새로운 변수들(Y)로 세분화된, 추상화 웹 서비스 집합(WY=Abstraction(W, Y))을 생성할 수 있다. 이 세분화된, 추상화 웹 서비스 집합(WY)에 포함된 웹 서비스들에서 목표 정보(G)를 만족시키는 웹 서비스를 합성하여 코디네이터 웹 서비스를 생성할 수 있다.
만약, 세분화된, 추상화 웹 서비스 집합(WY)에 포함된 웹 서비스들에서 목표 정보(G)를 만족시키는 웹 서비스가 미존재할 경우, 알고리즘을 이용하여 추상화 및 세분화 방식을 반복할 수 있다. 이 경우, 제1 변수들(Y) 및 제2 변수들(New Vars)은 변경될 수 있다. 이 알고리즘은 추상화 및 세분화 방식에서, 부분 관측에 따른 웹 서비스 합성(WSCPartialObs)을 이용할 수 있다.
도 3a 내지 도 3c는 실시예에 따른 추상화(abstraction) 방식을 나타낸다. 도 3a는 3개의 내부 변수들("state", "avail", "tr_num")에 대한 원래의 상태들(original states)을 나타내는 것이다. 원래의 상태들은 6개의 상태(s1, s2, s3, s4, s5, s6)를 가질 수 있다. 또한, 각 상태들에 연결된 화살표들은 입력 변수를 나타낸다.
도 3b은 2개의 내부 변수들("state", "avail")에 대한 추상화 상태들(abstract states)을 나타내는 것이다. 이 추상화 상태들은 4개의 상태(s7, s8, s9, s10)를 가질 수 있다. 원래의 상태들에서 s1 및 s4는 추상화 상태들 중 s7 및 s9에 각각 매핑(mapping)될 수 있다. 또한, 원래의 상태들에서 s2 및 s3는 추상화 상태들 중 s8에 포함될 수 있으며, 원래의 상태들에서 s5 및 s6는 추상화 상태들 중 s10에 포함될 수 있다. 따라서, 추상화 상태들은 원래의 상태들에 비해 상태들의 수가 감소하더라도, 원래의 상태들에서의 모든 경로들은 추상화 상태들에서의 경로들 중 하나와 매핑될 수 있다.
또한, 원래의 상태에서 s1로부터 목표 정보(G)를 만족시키는 것이 보장될 경우, 추상화 상태에서는 s1에 대응하는 s7로부터 목표 정보(G)를 만족시킬 수 있다.
도 3c는 1개의 내부 변수("state")에 대한 추상화 상태들(abstract states)을 나타내는 것으로, 대략적 추상화(coarser abstract)가 적용된 결과를 나타낸다. 이 추상화 상태들은 2개의 상태(s11, s12)를 나타낸다.
도 3c에 도시된 추상화 상태들에서 s11은 원래의 상태들 중 s1에 대응하기는 하나, 추상에 의해 상태들이 너무 단순화 되었기 때문에, s11로부터 목표 정보(G)를 만족시킬 수는 없다.
도 4는 실시예에 따른 변수 의존성 그래프의 일부를 나타내는 것이다.
실시예에 따른 웹 서비스 합성 과정에서, 추상화 웹 서비스 집합에서 목표 정보를 만족시키는 웹 서비스가 미존재할 수 있다. 이는, 웹 서비스 집합에 포함된 웹 서비스들을 단순화시키는 과정에서 너무 많은 변수들이 제거됨에 따라, 목표 정보를 만족시키는데 중요한 정보를 포함하는 변수들까지 제거되기 때문이다.
예를 들어, 도 3c에서 내부 변수 "avail"이 제거됨에 따라 원래의 상태들에서 s1과 s4를 구별할 수 없게 되어 목표 정보를 만족시키는 웹 서비스를 찾지 못할 수 있다.
상술한 이유로, 제2 변수들을 추가하여 추상화 웹 서비스 집합을 세분화할 수 있다. 추상화 웹 서비스 집합을 세분화하는데 이용되는 제2 변수들은 별도로 정해져 있는 것이 아니라, 방향 그래프(directed graph)인 변수 의존 그래프(vatiable dependency)를 이용하여 선택될 수 있다.
도 4에 도시된 변수 의존 그래프는 웹 서비스 집합(W)과 목표 정보(G)에 대한 그래프가 될 수 있다. 즉, 웹 서비스 집합(W)과 목표 정보(G)가 입력된 경우, 이 변수 의존 그래프는 G(V, E)로 표현되고, 여기서 V는 정점들(vertex)의 집합이고, E는 간선들(edge)의 집합이 될 수 있다.
의사 코드 "y:=x" 및 "if (x=true) then y:=0"는 y의 값이 x의 값에 의존하는 것을 나타낼 수 있다.
도 4에서 "state", "reply" 및 "tr_num"의 값들은 "state", "action" 및 "avail"의 값들에 의존할 수 있다. 변수 의존 그래프에서 각 값들은 간선들(edges)에 의해 연결될 수 있다. 예를 들어, 간선들에 의해 (state→state), (action→state), (avail→state) 등의 방식으로 연결될 수 있다.
목표 속성(goal predicate)에 포함된 변수들에 강하게 의존하는 변수들은 목표 변수들과 짧은 홉(hop) 수를 가질 수 있다. 따라서, 제2 변수들은 목표 속성에 포함된 변수들과 가장 가까운 홉을 가질 수 있다. 예를 들어, "compirm"은 목표 속성에 포함된 변수이기 때문에, 제2 변수들은 1홉 의존성인 "action, "avail" 및 "state"가 될 수 있다.
한편, 도 4에 도시된 변수 의존성 그래프는 서명-포괄 추상(signature-subsuming abstract) 기법에서 출력 변수를 선택하는데 이용될 수도 있다. 예를 들어, 출력 변수 "reply"는 "state" 및 "avail"에 의존할 수 있으며, state" 및 "avail"는 목표 변수(goal variable) "confirm"에 의존성을 가질 수 있다.
도 5는 실시예에 따른 웹 서비스 합성 시스템의 웹 서비스 합성 방법을 설명하기 위한 흐름도이다.
도 5를 참조하면, 웹 서비스 합성 시스템은 복수의 웹 서비스를 포함하는 적어도 하나 이상의 웹 서비스 집합 및 목표 정보가 입력된 경우(510 단계), 적어도 하나 이상의 웹 서비스 집합을 추상화(abstraction) 웹 서비스 집합으로 단순화한다(520 단계).
웹 서비스 합성 시스템은 추상화 웹 서비스 집합에서 목표 정보를 만족시키는 웹 서비스가 존재하지 않을 경우(530 단계), 추상화 웹 서비스 집합을 세분화(refinement)한다(540 단계).
웹 서비스 합성 시스템은 단순화된 추상화 웹 서비스 집합에서 목표 정보를 만족시키는 웹 서비스가 존재하거나, 또는, 세분화된 추상화 웹 서비스 집합에서 목표 정보를 만족시키는 웹 서비스가 존재할 경우, 해당 웹 서비스들을 합성하여 코디네이터 웹 서비스를 생성할 수 있다(550 단계).
만약, 520 단계 내지 550 단계를 1회 실행한 후에도 목표 정보를 만족시키는 웹 서비스가 존재하지 않는다면, 520 단계 내지 550 단계를 반복 실행할 수 있다.
본 발명에 따른 실시예들은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 이러한 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 기록 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(Floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 본 발명은 비록 한정된 실시 예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시 예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. 그러므로, 본 발명의 범위는 설명된 실시 예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.
100: 웹 서비스 합성 시스템
110: 추상화 모듈
120: 세분화 모듈
130: 웹 서비스 합성 모듈

Claims (11)

  1. 복수의 웹 서비스를 포함하는 적어도 하나 이상의 웹 서비스 집합 및 목표 정보가 입력된 경우, 상기 적어도 하나 이상의 웹 서비스 집합을 추상화(abstraction) 웹 서비스 집합으로 단순화하는 추상화 모듈(abstraction module); 및
    상기 추상화 웹 서비스 집합에서 상기 목표 정보를 만족시키는 웹 서비스가 미존재할 경우, 상기 추상화 웹 서비스 집합을 세분화(refinement)하는 세분화 모듈(refinement module); 및
    상기 목표 정보에 만족시키는 웹 서비스가 존재할 경우, 해당 웹 서비스를 합성하여 코디네이터 웹 서비스를 생성하는 웹 서비스 합성 모듈(web service composition module)
    을 포함하는 웹 서비스 합성 시스템.
  2. 제1항에 있어서,
    상기 추상화 모듈은,
    서명-보존 추상(signature-preserving abstract) 기법에 기반하여 상기 적어도 하나 이상의 웹 서비스 집합에 포함된 웹 서비스들보다 작은 수로 이루어진 제1 변수들을 이용하고, 상기 적어도 하나 이상의 웹 서비스 집합에서 상기 제1 변수들과 관련된 웹 서비스들을 상기 추상화(abstraction) 웹 서비스 집합으로 단순화하는, 웹 서비스 합성 시스템.
  3. 제2항에 있어서,
    상기 세분화 모듈은,
    상기 추상화 웹 서비스 집합에서 상기 목표 정보를 만족시키는 웹 서비스가 미존재할 경우, 제2 변수들을 추가하여 상기 추상화 웹 서비스 집합을 세분화하는, 웹 서비스 합성 시스템.
  4. 제3항에 있어서,
    상기 세분화 모듈은,
    방향 그래프(directed graph)인 변수 의존 그래프(variable dependency graph)를 이용하여 추가될 상기 제2 변수들을 선택하는, 웹 서비스 합성 시스템.
  5. 제1항에 있어서,
    상기 추상화 모듈은,
    서명-포괄 추상(signature-subsuming abstract) 기법에 기반하여 상기 적어도 하나 이상의 웹 서비스 집합에 포함된 웹 서비스들보다 작은 수로 이루어진 내부 변수 및 출력 변수를 이용하고, 상기 적어도 하나 이상의 웹 서비스 집합에서 상기 내부 변수 및 상기 출력 변수와 관련된 웹 서비스들을 상기 추상화(abstraction) 웹 서비스 집합으로 단순화하는, 웹 서비스 합성 시스템.
  6. 복수의 웹 서비스를 포함하는 적어도 하나 이상의 웹 서비스 집합 및 목표 정보가 입력된 경우, 상기 적어도 하나 이상의 웹 서비스 집합을 추상화(abstraction) 웹 서비스 집합으로 단순화하는 단계; 및
    상기 추상화 웹 서비스 집합에서 상기 목표 정보를 만족시키는 웹 서비스가 미존재할 경우, 상기 추상화 웹 서비스 집합을 세분화(refinement)하는 단계; 및
    상기 목표 정보에 도달하기 위한 웹 서비스를 합성하여 코디네이터 웹 서비스를 생성하는 단계
    를 포함하는 웹 서비스 합성 방법
  7. 제6항에 있어서,
    상기 적어도 하나 이상의 웹 서비스 집합을 추상화(abstraction) 웹 서비스 집합으로 단순화하는 단계는,
    서명-보존 추상(signature-preserving abstract) 기법에 기반하여 상기 적어도 하나 이상의 웹 서비스 집합에 포함된 웹 서비스들보다 작은 수로 이루어진 제1 변수들을 이용하고, 상기 적어도 하나 이상의 웹 서비스 집합에서 상기 제1 변수들과 관련된 웹 서비스들을 상기 추상화(abstraction) 웹 서비스 집합으로 단순화하는, 웹 서비스 합성 방법.
  8. 제7항에 있어서,
    상기 추상화 웹 서비스 집합을 세분화(refinement)하는 단계는,
    상기 추상화 웹 서비스 집합에서 상기 목표 정보를 만족시키는 웹 서비스가 미존재할 경우, 제2 변수들을 추가하여 상기 추상화 웹 서비스 집합을 세분화하는, 웹 서비스 합성 방법.
  9. 제8항에 있어서,
    상기 추상화 웹 서비스 집합을 세분화(refinement)하는 단계는,
    방향 그래프(directed graph)인 변수 의존 그래프(variable dependency graph)를 이용하여 추가될 상기 제2 변수들을 선택하는, 웹 서비스 합성 방법.
  10. 제6항에 있어서,
    상기 적어도 하나 이상의 웹 서비스 집합을 추상화(abstraction) 웹 서비스 집합으로 단순화하는 단계는,
    서명-포괄 추상(signature-subsuming abstract) 기법에 기반하여 상기 적어도 하나 이상의 웹 서비스 집합에 포함된 웹 서비스들보다 작은 수로 이루어진 내부 변수 및 출력 변수를 이용하고, 상기 적어도 하나 이상의 웹 서비스 집합에서 상기 내부 변수 및 상기 출력 변수와 관련된 웹 서비스들을 상기 추상화(abstraction) 웹 서비스 집합으로 단순화하는, 웹 서비스 합성 방법.
  11. 제6항 내지 제10항의 방법 중 어느 하나의 항의 방법을 수행하기 위한 프로그램이 기록된 컴퓨터로 판독 가능한 기록 매체.
KR1020120136156A 2012-11-28 2012-11-28 추상화 및 세분화 방식에 기반한 웹 서비스 합성 시스템 및 웹 서비스 합성 방법 KR101438925B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020120136156A KR101438925B1 (ko) 2012-11-28 2012-11-28 추상화 및 세분화 방식에 기반한 웹 서비스 합성 시스템 및 웹 서비스 합성 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120136156A KR101438925B1 (ko) 2012-11-28 2012-11-28 추상화 및 세분화 방식에 기반한 웹 서비스 합성 시스템 및 웹 서비스 합성 방법

Publications (2)

Publication Number Publication Date
KR20140068546A KR20140068546A (ko) 2014-06-09
KR101438925B1 true KR101438925B1 (ko) 2014-09-05

Family

ID=51124273

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120136156A KR101438925B1 (ko) 2012-11-28 2012-11-28 추상화 및 세분화 방식에 기반한 웹 서비스 합성 시스템 및 웹 서비스 합성 방법

Country Status (1)

Country Link
KR (1) KR101438925B1 (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005251067A (ja) * 2004-03-08 2005-09-15 Nippon Telegr & Teleph Corp <Ntt> 合成サービス提供方法、合成サービス提供システム、実行装置およびプログラム

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005251067A (ja) * 2004-03-08 2005-09-15 Nippon Telegr & Teleph Corp <Ntt> 合成サービス提供方法、合成サービス提供システム、実行装置およびプログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
논문1 *

Also Published As

Publication number Publication date
KR20140068546A (ko) 2014-06-09

Similar Documents

Publication Publication Date Title
Artigues et al. A polynomial activity insertion algorithm in a multi-resource schedule with cumulative constraints and multiple modes
Nie et al. Models and algorithms for the traffic assignment problem with link capacity constraints
JP4456137B2 (ja) 電子文書管理プログラム、該プログラムを記録した記録媒体、電子文書管理装置、および電子文書管理方法
CN102901509B (zh) 地图差异数据产生设备和地图差异数据产生方法
JP2011013750A (ja) システムの構成要素の設計アーキテクチャを自動設計する自動設計装置、自動設計方法及び自動設計プログラム
JP4366317B2 (ja) ポーター・ダフ合成法のための背景色除去方法
CN108731692A (zh) 用于提供地图数据的装置和方法及其系统
US9405921B1 (en) Computer-implemented method for role discovery in access control systems
Cirianni et al. A comparison of urban planning systems between the UK and Italy: Commercial development and city logistic plan
US20140340396A1 (en) Method of representing environment object in cyber-physical system using environment data model structure and computer-readable storage medium storing program therefor
JP2008225468A (ja) マッシュアップ地図パーマリンク生成システム及びその方法
WO2014181495A1 (ja) 仮想マシン配置決定装置、仮想マシン配置決定方法および仮想マシン配置決定プログラム
US20110131249A1 (en) Automated generation of modeling language profiles
JP5397678B2 (ja) 画像処理装置、画像形成装置、画像処理方法およびプログラム
JP2012190144A (ja) 情報処理装置、情報処理装置の制御方法、及びコンピュータプログラム
KR101438925B1 (ko) 추상화 및 세분화 방식에 기반한 웹 서비스 합성 시스템 및 웹 서비스 합성 방법
Reuther et al. Optimization of rolling stock rotations
Li et al. Interactive cutting and tearing in projective dynamics with progressive cholesky updates
JP5550452B2 (ja) デフォルメ地図生成装置およびデフォルメ地図生成方法
US8621420B2 (en) Modeling user perceived use case affinity
US20100005469A1 (en) Method and System for Defining One Flow Models with Varied Abstractions for Scalable lean Implementations
US20090037851A1 (en) Context aware sub-circuit layout modification
Himmich et al. Primal column generation framework for vehicle and crew scheduling problems
CN113656507A (zh) 区块链系统中执行交易的方法及装置
KR101247443B1 (ko) Dpl을 이용하는 커뮤니티 기반 그래프 샘플링 방법 및 장치

Legal Events

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

Payment date: 20170901

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20180903

Year of fee payment: 5