KR20090039437A - 웹 서비스의 서비스 품질에 기초하여 웹 서비스를 선정하는방법 - Google Patents
웹 서비스의 서비스 품질에 기초하여 웹 서비스를 선정하는방법 Download PDFInfo
- Publication number
- KR20090039437A KR20090039437A KR1020070105080A KR20070105080A KR20090039437A KR 20090039437 A KR20090039437 A KR 20090039437A KR 1020070105080 A KR1020070105080 A KR 1020070105080A KR 20070105080 A KR20070105080 A KR 20070105080A KR 20090039437 A KR20090039437 A KR 20090039437A
- Authority
- KR
- South Korea
- Prior art keywords
- web service
- service
- web
- client terminal
- quality
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/51—Discovery or management thereof, e.g. service location protocol [SLP] or web services
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
Abstract
본 발명은 웹 서비스의 제공 방법에 관한 것으로, 보다 구체적으로 웹 서비스 제공자 서버가 제공하는 웹 서비스에 대한 품질 데이터를 웹 서비스의 사용시 추출하고 추출한 품질 데이터에 기초하여 사용자의 의도에 부합하는 웹 서비스를 선정하여 사용자에 제공하는 방법에 관한 것이다.
본 발명에 따른 웹 서비스의 선정 방법 및 그 시스템은 클라이언트 단말기기 호출하여 이용하는 웹 서비스의 품질 정보를 실시간으로 수집하고, 수집한 웹 서비스의 품질 정보에 기초하여 클라이언트 단말기가 요청하고자 하는 웹 서비스를 검색함으로써, 클라이언트 단말기가 요청하고자 하는 웹 서비스에 가장 부합되는 웹 서비스를 빠르고 쉽게 선정할 수 있다.
웹 서비스, UDDI, 품질 에이전트, 모니터링 에이전트
Description
본 발명은 웹 서비스의 선정 방법에 관한 것으로, 보다 구체적으로 웹 서비스의 제공자 서버가 제공하는 웹 서비스에 대한 품질 데이터를 웹 서비스의 사용시 추출하고 추출한 품질 데이터에 기초하여 사용자의 검색 의도에 부합하는 웹 서비스를 선정하여 사용자에 제공하는 방법에 관한 것이다.
웹 서비스란 확장성 생성 언어(XML:eXtensible Markup Language)를 기반으로 하는 공개 표준들을 이용하여 인터넷 기반의 분산 컴퓨팅 환경에서 원격 메소드를 호출하여 사용할 수 있는 재사용 가능한 소프트웨어 컴포넌트를 일컫는다. 이러한 웹 서비스를 이용하면 웹을 통한 원격 프로시저 호출이 가능해진다.
웹 서비스를 간단히 표현하면 웹 상에 공개된 매소드라고 할 수 있다. 웹 상에 공개된 메소드가 서비스 제공자와 사용자 간에 효율적으로 사용되어지기 위해서는 다음의 몇가지 요구사항을 만족시켜야 한다.
먼저, 사용자가 특정 웹 메소드를 사용하고자 할 때, 어떤 메소드가 어떤 서비스 제공자에 의해서 어디에서 서비스되고 있는지를 쉽게 검색할 수 있어야 한다.
그 다음으로 검색한 웹 메소드가 어떤 역활을 수행하고 어떤 형태의 입력 값과 어떤 형태의 결과 값을 반환하게 되는가 등과 같은 메소드에 대한 상세한 설명, 즉 서비스에 대한 상세한 정보를 제공받을 수 있어야 한다.
마지막으로, 사용자가 어떠한 형태의 서비스 요청 메시지를 서비스 제공자 측으로 전송하여야 하고, 어떠한 형태의 서비스 결과 메시지를 반환받아야 하는지에 대한 일련의 프로토콜이 정해져야 한다.
이러한 요구 사항에 대해서 웹 서비스는 3가지 확장성 생성 언어(XML : eXtensible Markup Language) 기반의 표준을 가지는데, 바로 심플 오브젝트 액세스 프로토콜(Simple Object Access Protocol; 이하, "SOAP"이라 한다.), 웹 서비스 명세 언어(Web Service Description Language; 이하, "WSDL"이라 한다.) 및 UDDI(Universal Description, Discovery and Integration)이다.
먼저, SOAP는 웹 서비스의 제공자와 사용자 사이에서 주고받는 메시지의 형식을 정의한 메시지 교환 프로토콜이고, WSDL은 웹 서비스에 대한 상세한 설명을 포함하고 있는 서비스 명세이다. 그리고, UDDI는 웹 서비스를 등록하고, 검색할 수 있는 일종의 웹 서비스 레지스트리에 대한 명세이다.
이처럼 SOAP, WSDL, UDDI 등과 같이 웹 서비스와 관련된 표준들은 확장성 생성 언어(XML : eXtensible Markup Language)를 기반으로 하는 공개 표준으로서, SOAP과 WSDL은 월드 와이드 웹(WWW)에 관련된 표준을 관장하는 W3C에서 관리하고 있으며, UDDI는 e비즈니스 확장성표기언어(ebXML)로 잘 알려진 "OASIS"에서 관리하고 있는 표준 명세이다.
도 1은 종래 웹 서비스 제공 시스템을 개략적으로 설명하기 위한 기능 블록도를 도시하고 있다.
도 1을 참고로 살펴보면, 웹 서비스 제공 시스템은 웹 서비스를 제공하는 제공자 서버(1), 웹 서비스를 요청하는 사용자의 클라이언트 단말기(3) 및 UDDI 레지스트리(5)를 구비하며, 제공자 서버(1), 클라이언트 단말기(3) 및 UDDI 레지스트리(5)는 유선 또는 무선으로 네트워크(7)에 접속되어 있다.
제공자 서버(1)는 제공하고자 하는 웹 서비스를 클라이언트 단말기(3)가 검색하여 사용할 수 있도록, 웹 서비스에 대한 상세 정보를 WSDL 표준을 사용하여 기술하고 기술한 상세 정보를 UDDI 레지스트리(5)에 등록한다. 클라이언트 단말기(3)는 UDDI 레지스트리(5)에 등록되어 있는 웹 서비스의 상세 정보에 기초하여 다수의 웹 서비스들 중 원하는 웹 서비스를 검색한다. 클라이언트 단말기(3)는 검색한 웹 서비스를 제공하는 제공자 서버(1)에 직접 접속하여 검색한 웹 서비스를 호출하여 사용한다.
그러나 UDDI 레지스트리(5)에는 많은 수의 웹 서비스들이 등록되어 있다. 따라서, 사용자는 클라이언트 단말기(1)를 통해 등록된 웹 서비스의 상세 정보를 개별적으로 확인하여 다수의 웹 서비스들 중 원하는 품질의 웹 서비스를 검색하기 위해 많은 시간과 노력이 필요하다는 문제점을 가진다. 또한, UDDI 레지스트리(5)는 공개성을 원칙으로 하며 웹 서비스를 제공하는 제3자는 자신이 직접 UDDI 레지스트리(5)에 제공하는 웹 서비스의 상세 정보를 등록할 수 있다. 웹 서비스를 제공하는 제3 자는 자신이 제공하는 웹 서비스의 품질을 실제 품질보다 더 좋게 기술 하여 등록할 수 있으므로, UDDI 레지스트리(5)에 등록되어 있는 웹 서비스의 상세 정보는 절대적으로 신뢰할 수 없다는 문제점을 가진다.
최근 들어 UDDI 레지스트리에 등록되어 있는 다수의 웹 서비스들 중 클라이언트 단말기가 원하는 품질의 웹 서비스를 선정하는데 도움을 주는 많은 기술들이 연구되고 있다.
2003년 봄, Shuping. Ran이 발표한 논문 "품질 서비스에 기초한 웹 서비스 검색 모델(A model for web service discovery with QoS)"에서는 기존 UDDI 모델에 품질 정보를 포함하여 서비스의 품질 정보로 웹 서비스를 검색하는 모델(이하, 'Shuping 모델'이라 함)을 제안하였다.
2004년 1월 하와이에서 개최된 제37회 시스템 사이언스 국제 컨퍼런스에서 A.D Moor는 "가상 통신에서 웹 서비스의 선정(Web service selection in virtual communities)"이라는 논문을 통해 웹 서비스 선정이 소프트웨어 개발 주기 과정에서 실행되는 선정 메커니즘(이하, 'Moor 메커니즘'이라 함)을 제안하였다.
위에서 설명한, Shuping 모델과 Moor 메커니즘은 웹 서비스에 대한 품질 정보를 UDDI 레지스트리에 웹 서비스의 상세 정보와 함께 등록하여 클라이언트 단말기로 웹 서비스의 상세 정보와 함께 웹 서비스에 대한 품질 정보도 함께 제공함으로써, 클라이언트 단말기가 검색하고자 하는 웹 서비스에 부합한 웹 서비스를 쉽게 검색할 수 있도록 도와준다. 그러나, Shuping 모델과 Moor 메커니즘은 초기 등록 되어 있는 웹 서비스의 품질 정보에 기초하여 웹 서비스를 검색하므로, 실시간으로 변화하는 웹 서비스의 품질 정보를 반영하지 못한다는 문제점을 가진다.
따라서 본 발명이 이루고자 하는 목적은 웹 서비스의 호출시 클라이언트 단말기로 제공되는 웹 서비스의 품질 데이터를 실시간으로 측정하고, 실시간으로 측정한 웹 서비스의 품질 데이터에 기초하여 클라이언트 단말기가 원하는 웹 서비스를 선정할 수 있는 방법을 제공하는 것이다.
본 발명이 이루고자 하는 다른 목적은 웹 서비스의 호출시 클라이언트 단말기로 제공되는 웹 서비스의 품질 데이터를 실시간으로 측정하고, 실시간으로 측정한 웹 서비스의 품질 데이터에 기초하여 클라이언트 단말기가 원하는 웹 서비스를 선정할 수 있는 시스템을 제공하는 것이다.
본 발명의 목적을 달성하기 위해, 본 발명에 따른 웹 서비스의 선정 방법은 클라이언트 단말기로부터 요청하고자 하는 웹 서비스에 대한 정보를 수신하는 단계, 수신한 웹 서비스 정보와 제공자 서버가 제공하는 웹 서비스의 품질 데이터를 이용하여 요청하고자 하는 웹 서비스에 매칭되는 웹 서비스의 리스트를 선정하는 단계, 선정한 웹 서비스 리스트에 대한 정보를 클라이언트 단말기로 송신하는 단계, 클라이언트 단말기로부터 선정한 웹 서비스 리스트 중 하나의 웹 서비스에 대한 호출 명령이 있는 경우 호출한 웹 서비스의 서비스 이용 중 호출한 웹 서비스에 대한 품질 데이터를 추출하는 단계 및 추출한 품질 데이터를 상기 품질 데이터 베이스에 업데이트하는 단계를 포함한다.
본 발명의 다른 목적을 달성하기 위해, 본 발명에 따른 웹 서비스 선정 시스템은 클라이언트 단말기로부터 요청하고자 하는 웹 서비스에 대한 정보를 수신하고, 수신한 웹 서비스 정보와 제공자 서버가 제공하는 웹 서비스에 대한 서비스 품질 데이터를 저장하고 있는 품질 데이터베이스를 이용하여 요청하고자 하는 웹 서비스에 상응하는 웹 서비스의 리스트를 선정하여 클라이언트 단말기로 송신하는 웹 서비스 선정 에이전트 및 클라이언트 단말기로부터 선정한 웹 서비스 리스트 중 하나의 웹 서비스에 대한 호출 명령이 있는 경우 호출한 웹 서비스의 이용 중 호출한 웹 서비스에 대한 품질 데이터를 추출하여 웹 서비스 선정 에이전트로 송신하는 모니터링 에이전트를 포함한다.
본 발명에 따른 웹 서비스의 선정 방법 및 그 시스템은 클라이언트 단말기가 호출하여 이용하는 웹 서비스의 품질 데이터를 실시간으로 수집하고, 수집한 웹 서비스의 품질 데이터에 기초하여 클라이언트 단말기가 요청하고자 하는 웹 서비스를 검색함으로써, 클라이언트 단말기가 요청하고자 하는 웹 서비스에 가장 부합되는 웹 서비스를 빠르고 쉽게 선정할 수 있다.
이하 첨부한 도면을 참고로 본 발명에 따른, 웹 서비스의 선정 방법 및 그 시스템에 대해 보다 구체적으로 설명한다.
도 2는 본 발명의 일 실시예에 따른 웹 서비스 선정 시스템의 기능 블록도를 도시하고 있다.
도 2를 참고로 살펴보면, 유선/무선 네트워크(100)에는 원하는 웹 서비스를 요청하는 사용자의 클라이언트 단말기(200), 클라이언트 단말기(200)로 웹 서비스를 제공하는 다수의 제공자 서버(300-1, 300-2,...., 300-n), 제공자 서버(300-1, 300-2,...., 300-n)가 제공하는 웹 서비스의 상세 정보가 등록되어 있는 UDDI 레지스트리가 접속되어 있다.
한편, 유선/무선 네트워크(100)에는 웹 서비스를 검색하기 위한 웹 브라우저를 제공하며 클라이언트 단말기(200)가 요청하고자 하는 웹 서비스를 선정하여 클라이언트 단말기(200)로 제공하는 웹 서비스 선정 서버(500)가 접속되어 있다.
도 3은 본 발명의 일 실시예에 따른 웹 서비스 선정 서버(500)를 보다 구체적으로 설명하는 기능 블록도이다.
도 3을 참고로 살펴보면, 웹 서비스 선정 서버(500)는 브라우저 에이전트(510), 웹 서비스 선정 에이전트(530) 및 모니터링 에이전트(550)를 구비하고 있다. 웹 서비스를 검색하기 위해 클라이언트 단말기(200)가 웹 서비스 선정 서버(500)에 접속하는 경우, 브라우저 에이전트(510)는 웹 서비스를 검색하기 위한 사용자 명령을 입력할 수 있는 웹 브라우저를 클라이언트 단말기(200)에 제공한다. 웹 브라우저를 통해 클라이언트 단말기(200)로부터 요청하고자 하는 웹 서비스에 대한 정보, 즉 웹 서비스를 검색하기 위한 검색어 또는 검색 조건이 입력된다.
웹 서비스 선정 에이전트(530)는 입력된 검색어와 UDDI 레지스트리(400)에 저장되어 있는 웹 서비스의 상세 정보를 이용하여, 클라이언트 단말기(200)가 요청하고자 하는 웹 서비스를 검색한다. 검색한 웹 서비스들 중 서비스 품질이 좋은 상위 웹 서비스의 리스트 또는 웹 브라우저를 통해 입력된 검색 조건에 가장 부합하는 웹 서비스의 리스트를 선정한다. 선정한 웹 서비스의 리스트는 웹 브라우저를 통해 클라이언트 단말기(200)로 송신된다.
송신된 웹 서비스의 리스트 중 하나의 웹 서비스를 제공하는 제공자 서버(300)를 호출하기 위한 명령이 웹 브라우저를 통해 클라이언트 단말기(200)로부터 입력되는 경우, 모니터링 에이전트(550)는 클라이언트 단말기(200)로부터 제공자 서버(300)로 송신되는 요청 HTTP 메시지와 제공자 서버(300)로부터 클라이언트 단말기(200)로 송신되는 응답 HTTP 메시지를 중간에 가로챈다(intercept). 모니터링 에이전트(550)는 가로챈 요청 HTTP 메시지와 응답 HTTP 메시지에서 웹 서비스의 품질을 평가할 수 있는 품질 데이터를 추출하고 추출한 품질 데이터를 웹 서비스 선정 에이전트(530)로 송신한다. 웹 서비스 선정 에이전트(530)는 웹 서비스에 대한 종래 품질 데이터를 송신된 품질 데이터로 업데이트한다.
도 4는 본 발명에 따른 웹 서비스 선정 에이전트의 일 실시예를 도시하고 있다.
도 4를 참고로 살펴보면, 본 발명에 따른 웹 서비스 선정 에이전트는 검색부(551), 품질 데이터베이스(553), 평가부(555) 및 선정부(557)를 구비하고 있다. 브라우저 에이전트(510)에서 제공한 웹 브라우저를 통해 검색어 또는 검색 조건이 입력되는 경우, 검색부(551)는 UDDI 레지스트리(400)에 접속하여 입력된 검색어와 UDDI 레지스트리(400)에 등록되어 있는 웹 서비스의 상세 정보를 비교하여 입력된 검색어에 상응하는 웹 서비스를 검색한다. 평가부(555)는 검색된 웹 서비스들에 대한 품질 데이터를 품질 데이터베이스(553)에서 추출하고, 추출한 품질 데이터에 기초하여 검색된 웹 서비스들에 대한 서비스 품질을 평가한다. 평가 결과에 기초하여, 선정부(557)는 검색한 웹 서비스들 중 서비스 품질이 우수한 상위 웹 서비스의 리스트 또는 검색 조건에 부합하는 웹 서비스를 선정하고 선정한 웹 서비스의 리스트를 브라우저 에이전트(510)가 제공한 웹 브라우저를 통해 클라이언트 단말기(200)로 송신한다.
도 5는 본 발명의 일 실시예에 따른 웹 서비스의 선정 방법을 설명하기 위한 흐름도이다.
도 5를 참고하여 살펴보면, 브라우저 에이전트는 클라이언트 단말기(200)가 유선/무선 네트워크(100)를 통해 웹 서비스 선정 서버(500)에 접속하는 경우, 클라이언트 단말기(200)로 웹 브라우저를 제공한다(단계 1). 도 6은 클라이언트 단말기(200)로 제공되는 웹 브라우저의 일 예를 도시하고 있다. 도 6에 도시되어 있는 웹 브라우저를 통해 클라이언트 단말기(200)로부터 책(book) 검색 웹 서비스를 요청하기 위한 검색어가 입력된다. 한편, 도 7과 도 8은 각각 정규화 알고리즘을 통해 웹 서비스를 검색하기 위한 웹 브라우저의 옵션 상자와 다기준 의사결정 알고리즘을 통해 웹 서비스를 검색하기 위한 웹 브라우저의 옵션 상자를 도시하고 있다. 클라이언트 단말기(200)는 옵션 상자의 여러 필드에 검색 조건을 설정하여 웹 서비스를 검색할 수 있다.
다시 도 5를 참고로, 제공된 웹 브라우저를 통해 클라이언트 단말기(200)가 요청하고자 하는 웹 서비스에 대한 정보, 예를 들어 검색하고자 하는 웹 서비스의 내용, 종류, 이름 등에 대한 정보가 수신된다(단계 2). 수신된 웹 서비스의 정보에 일치하는 웹 서비스를 검색하고, 품질 데이터베이스에 저장되어 있는 품질 데이터에 기초하여 검색한 웹 서비스의 서비스 품질을 평가하여 수신된 웹 서비스에 대한 정보에 매칭되는 웹 서비스의 리스트를 선정한다(단계 3). 선정한 웹 서비스의 리스트는 웹 브라우저를 통해 클라이언트 단말기(200)로 송신된다. 송신된 웹 서비스의 리스트들 중 하나의 웹 서비스를 호출하기 위한 명령이 웹 브라우저를 통해 입력된다(단계 4). 입력된 호출 명령에 따라 클라이언트 단말기(200)가 호출한 웹 서비스가 제공자 서버(300)로부터 클라이언트 단말기(200)로 제공된다.
입력된 호출 명령에 따라 클라이언트 단말기(200)와 제공자 서버(300) 사이에서 송수신되는 메시지에서 호출한 웹 서비스에 대한 품질 데이터를 추출한다(단계 5). 클라이언트 단말기(200)와 제공자 서버(300) 사이에서 송수신되는 메시지는 웹 서비스를 요청하거나 웹 서비스 요청에 대해 응답하기 위한 메시지로, 메시지 포맷은 SOAP 프로토콜이다.
클라이언트 단말기(200)와 제공자 서버(300) 사이의 SOAP 메시지는 전송 프로토콜에 의해 배달되어야 한다. 웹 서비스를 요청하는 SOAP 메시지(이하 '요청 SOAP 메시지'라 함)와 요청 SOAP 메시지에 대해 웹 서비스를 제공하는 SOAP 메시지(이하 '응답 SOAP 메시지'라 함)는 어떠한 전송 프로토콜과도 바인딩 될 수 있으나, 본 발명에서 요청 SOAP 메시지와 응답 SOAP 메시지는 각각 HTTP 전송 프로토콜과 바인딩되어 요청 HTTP 메시지와 응답 HTTP 메시지를 생성한다. 요청 HTTP 메시지와 응답 HTTP 메시지에는 SOAP 메시지의 요청과 응답 과정에 대한 부가 정보들이 포함되어 있다. 요청 HTTP 메시지와 응답 HTTP 메시지에 포함되어 있는 부가 정보들을 웹 서비스의 품질 데이터로 추출한다. 바람직하게, 부가 정보는 호출 명령에 대한 제공자 서버(300)의 서비스 응답 시간 또는 호출 명령에 대한 제공자 서버(300)의 서비스 응답 성공 여부 중 적어도 어느 하나인 것을 특징으로 한다.
요청 HTTP 메시지와 응답 HTTP 메시지에 포함되어 있는 부가 정보들을 추출하기 위해, 요청 HTTP 메시지와 응답 HTTP 메시지는 클라이언트 단말기(200)와 제공자 서버(300) 사이에서 송수신 되기 전, 웹 서비스 선정 서버(500)로 먼저 송수신되어야 한다. 웹 서비스 선정 서버(500)의 모니터링 에이전트(550)는 클라이언트 단말기(200)로부터 제공자 서버(300)로 송신되는 요청 HTTP 메시지를 중간에 가로채어 요청 HTTP 메시지에 포함되어 있는 부가 정보를 추출한 후, 요청 HTTP 메시지를 제공자 서버(300)로 송신한다. 한편, 웹 서비스 선정 서버(500)의 모니터링 에이전트(550)는 요청 HTTP 메시지에 응답하여 제공자 서버(300)로부터 클라이언트 단말기(200)로 송신되는 응답 HTTP 메시지를 가로채어 응답 HTTP 메시지에 포함되어 있는 부가 정보를 추출한 후, 응답 HTTP 메시지를 클라이언트 단말기(200)로 송신한다. 바람직하게, 요청 HTTP 메시지와 응답 HTTP 메시지를 웹 서비스 선정 서버(500)에서 가로채기 위해, 요청 HTTP 메시지와 응답 HTTP 메시지의 엔드포인트 URL은 웹 서비스 선정 서버(500)의 URL로 디폴트되어 있다.
품질 데이터베이스에 이미 저장되어 있던 품질 데이터를 요청 HTTP 메시지와 응답 HTTP 메시지에서 추출한 품질 데이터로 업데이트한다(단계 6).
도 9는 본 발명에 따라 웹 서비스의 리스트를 선정하는 단계(단계 3)를 보다 구체적으로 설명하는 흐름도이다.
도 9를 참고로 살펴보면, 클라이언트 단말기(200)가 요청하고자 하는 웹 서비스의 검색어 또는 검색 조건을 수신하는 경우, UDDI 레지스트리(400)에 등록된 웹 서비스의 상세 정보에 기초하여 클라이언트 단말기(200)가 요청하고자 하는 웹 서비스에 매칭되는 웹 서비스를 검색한다(단계 11). 바람직하게, 클라이언트 단말기(200)가 요청하고자 하는 웹 서비스는 웹 브라우저를 통해 입력된 검색어 또는 검색 조건과 UDDI 레지스트리(400)에 등록된 상세 정보를 매칭하여 검색한다.
품질 데이터베이스에는 제공자 서버(300)가 제공하는 웹 서비스의 품질을 평가하기 위한 품질 데이터들이 저장되어 있으며, 단계 11에서 검색한 웹 서비스들에 대한 품질 데이터를 품질 데이터베이스에서 추출한다(단계 13). 추출한 품질 데이터에 기초하여 검색한 웹 서비스들에 대한 서비스 품질을 평가한다(단계 15). 바람직하게, 검색한 웹 서비스들에 대한 서비스 품질은 평균 서비스 응답 시간, 단위시간별 서비스 처리량, 전체 호출 명령에 대한 서비스 응답의 성공 횟수 또는 전체 호출 명령에 대한 서비스 응답의 실패 횟수 중 적어도 어느 하나에 의해 평가된다. 검색한 웹 서비스들에 대한 서비스 품질 평가에 기초하여, 서비스 품질이 우수한 상위 웹 서비스의 리스트 또는 웹 브라우저를 통해 입력된 웹 서비스의 검색 조건과 매칭되는 웹 서비스의 상위 리스트를 선정한다(단계 17).
한편, 상술한 본 발명의 실시예들은 컴퓨터에서 실행될 수 있는 프로그램으로 작성 가능하고, 컴퓨터로 읽을 수 있는 기록 매체를 이용하여 상기 프로그램을 동작시키는 범용 디지털 컴퓨터에서 구현될 수 있다.
상기 컴퓨터로 읽을 수 있는 기록 매체는 마그네틱 저장 매체(예를 들어, 롬, 플로피 디스크, 하드디스크 등), 광학적 판독 매체(예를 들면, 시디롬, 디브이디 등) 및 캐리어 웨이브(예를 들면, 인터넷을 통한 전송)와 같은 저장 매체를 포함한다.
본 발명은 도면에 도시된 실시예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 등록청구범위의 기술적 사상에 의해 정해져야 할 것이다.
도 1은 종래 웹 서비스 제공 시스템을 개략적으로 설명하기 위한 기능 블록도를 도시하고 있다.
도 2는 본 발명의 일 실시예에 따른 웹 서비스 선정 시스템의 기능 블록도를 도시하고 있다.
도 3은 본 발명의 일 실시예에 따른 웹 서비스 선정 서버(500)를 보다 구체적으로 설명하는 기능 블록도이다.
도 4는 본 발명에 따른 웹 서비스 선정 에이전트의 일 실시예를 도시하고 있다.
도 5는 본 발명의 일 실시예에 따른 웹 서비스의 선정 방법을 설명하기 위한 흐름도이다.
도 6은 클라이언트 단말기(200)로 제공되는 웹 브라우저의 일 예를 도시하고 있다.
도 7은 각각 정규화 알고리즘을 통해 웹 서비스를 검색하기 위한 웹 브라우저의 옵션 상자의 일 예를 도시하고 있다.
도 8은 다기준 의사결정 알고리즘을 통해 웹 서비스를 검색하기 위한 웹 브라우저의 옵션 상자의 일 예를 도시하고 있다.
도 9는 본 발명에 따라 웹 서비스의 리스트를 선정하는 단계(단계 3)를 보다 구체적으로 설명하는 흐름도이다.
<도면의 주요 부분에 대한 설명>
100: 네트워크 200: 클라이언트 단말기
300: 제공자 서버 400: UDDI 레지스트리
500: 웹 서비스 선정 서버 510: 브라우저 에이전트
530: 웹 서비스 선정 에이전트 550: 모니터링 에이전트
551: 검색부 553: 품질 데이터베이스
555: 평가부 557: 선정부
Claims (10)
- 웹 서비스를 제공하는 제공자 서버, 상기 제공자 서버로 웹 서비스를 요청하고 상기 요청한 웹 서비스를 이용하는 클라이언트 단말기 및 상기 제공자 서버가 제공하는 웹 서비스에 대한 등록 정보를 저장하고 있는 UDDI(Universial Description Discovery and Integration) 레지스트리를 구비하는 웹 서비스 제공 시스템에서, 상기 클라이언트 단말기가 요청하고자 하는 웹 서비스를 선정하는 방법에 있어서,(a) 상기 클라이언트 단말기로부터 요청하고자 하는 웹 서비스에 대한 정보를 수신하는 단계;(b) 상기 수신한 웹 서비스 정보와 상기 제공자 서버가 제공하는 웹 서비스의 품질 데이터를 이용하여, 상기 요청하고자 하는 웹 서비스에 매칭되는 웹 서비스의 리스트를 선정하는 단계;(c) 상기 선정한 웹 서비스의 리스트를 상기 클라이언트 단말기로 송신하는 단계;(d) 상기 선정한 웹 서비스의 리스트 중 하나의 웹 서비스를 호출하기 위한 명령을 상기 클라이언트 단말기로부터 수신하는 경우, 상기 호출한 웹 서비스의 서비스 이용 중 상기 호출한 웹 서비스에 대한 품질 데이터를 추출하는 단계; 및(e) 상기 추출한 품질 데이터를 이용하여 상기 호출한 웹 서비스의 품질 데이터를 업데이트하는 단계를 포함하는 웹 서비스의 선정 방법.
- 제 1 항에 있어서, 상기 (b) 단계는(b1) 상기 클라이언트 단말기로부터 수신한 웹 서비스 정보를 이용하여, 상기 요청하고자 하는 웹 서비스에 매칭되는 웹 서비스를 상기 UDDI 레지스트리에서 검색하는 단계;(b2) 상기 제공자 서버가 제공하는 웹 서비스의 품질 데이터를 저장하고 있는 품질 데이터베이스로부터 상기 검색한 웹 서비스에 대한 품질 데이터를 추출하는 단계;(b3) 상기 추출한 품질 데이터를 이용하여 상기 검색한 웹 서비스에 대한 서비스 품질을 평가하는 단계; 및(b4) 상기 평가한 서비스 품질에 기초하여 상기 클라이언트 단말기에서 요청하고자 하는 웹 서비스에 매칭되는 웹 서비스의 리스트를 선정하는 단계를 포함하는 웹 서비스의 선정 방법.
- 제 2 항에 있어서, 상기 (b1) 단계에서상기 요청하고자 하는 웹 서비스에 매칭되는 웹 서비스는 상기 수신한 웹 서비스 정보에 포함되어 있는 검색어 또는 검색 조건에 의해 검색되는 것을 특징으로 하는 웹 서비스의 선정 방법.
- 제 2 항에 있어서, 상기 품질 데이터는상기 호출 명령에 대한 서비스 응답 시간 또는 호출 명령에 대한 서비스 응답의 성공 여부 중 적어도 어느 하나인 것을 특징으로 하는 웹 서비스의 선정 방법.
- 제 4 항에 있어서, 상기 (b3) 단계에서 상기 검색한 웹 서비스에 대한 서비스 품질은평균 서비스 응답 시간, 단위시간별 서비스 처리량, 호출 명령에 대한 서비스 응답의 성공 비율 또는 호출 명령에 대한 서비스 응답의 실패 비율 중 적어도 어느 하나에 의해 평가되는 것을 특징으로 하는 웹 서비스의 선정 방법.
- 제 4 항에 있어서, 상기 (d) 단계는(d1) 상기 클라이언트 단말기로부터 상기 선정한 웹 서비스 리스트 중 하나의 웹 서비스를 호출하기 위한 명령을 수신하는 단계;(d2) 상기 호출 명령을 수신하는 경우, 상기 클라이언트 단말기와 상기 제공자 서버 사이에서 송수신되는 메시지를 가로채는 단계;(d3) 상기 가로챈 메시지에서 상기 호출한 웹 서비스에 대한 품질 데이터를 추출하는 단계를 포함하는 웹 서비스의 선정 방법.
- 제 6 항에 있어서, 상기 클라이언트 단말기에서 상기 제공자 서버로 송신되는 메시지에는 호출 시작 시간 또는 상기 호출한 제공자 서버의 포트 번호와 주소 를 포함하는 웹 서비스의 선정 방법.
- 제 6 항에 있어서, 상기 제공자 서버에서 상기 클라이언트 단말기로 송신되는 메시지에는 호출 명령에 대한 서비스 응답의 성공 여부를 나타내는 코드가 포함되어 있는 웹 서비스의 선정 방법.
- 웹 서비스를 제공하는 제공자 서버, 상기 제공자 서버로 웹 서비스를 요청하고 상기 요청한 웹 서비스를 이용하는 클라이언트 단말기 및 상기 제공자 서버가 제공하는 웹 서비스에 대한 등록 정보를 저장하고 있는 UDDI(Universial Description Discovery and Integration) 레지스트리를 구비하는 웹 서비스 선정 시스템에서,상기 클라이언트 단말기로 웹 브라우저를 제공하는 브라우저 에이전트;상기 웹 브라우저를 통해 수신한, 상기 클라이언트 단말기가 요청하고자 하는 웹 서비스를 선정하기 위한 정보와 상기 제공자 서버가 제공하는 웹 서비스에 대한 품질 데이터를 저장하고 있는 품질 데이터베이스를 이용하여, 상기 클라이언트 단말기가 요청하고자 하는 웹 서비스에 매칭되는 웹 서비스의 리스트를 상기 웹 브라우저를 통해 상기 클라이언트 단말기로 송신하는 웹 서비스 선정 에이전트; 및상기 선정한 웹 서비스 리스트 중 하나의 웹 서비스를 호출하기 위한 명령이 상기 웹 브라우저를 통해 상기 클라이언트 단말기로부터 입력되는 경우, 상기 호출한 웹 서비스에 대한 품질 데이터를 추출하여 상기 웹 서비스 선정 에이전트로 송 신하는 모니터링 에이전트를 포함하는 웹 서비스 선정 시스템.
- 제 9 항에 있어서, 상기 웹 서비스 선정 에이전트는상기 클라이언트 단말기로부터 수신한 웹 서비스 정보를 이용하여, 상기 요청하고자 하는 웹 서비스에 매칭되는 웹 서비스를 상기 UDDI 레지스트리에서 검색하는 검색부;상기 검색한 웹 서비스의 품질 데이터를 저장하고 있는 품질 데이터베이스;상기 검색한 웹 서비스의 품질 데이터를 상기 품질 데이터베이스로부터 추출하고 상기 추출한 품질 데이터를 이용하여 상기 검색한 웹 서비스에 대한 서비스 품질을 평가하는 평가부; 및상기 평가한 웹 서비스의 서비스 품질에 기초하여 상기 클라이언트 단말기에서 요청하고자 하는 웹 서비스에 매칭되는 웹 서비스의 리스트를 선정하는 선정부를 포함하는 것을 특징으로 하는 웹 서비스 선정 시스템.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020070105080A KR20090039437A (ko) | 2007-10-18 | 2007-10-18 | 웹 서비스의 서비스 품질에 기초하여 웹 서비스를 선정하는방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020070105080A KR20090039437A (ko) | 2007-10-18 | 2007-10-18 | 웹 서비스의 서비스 품질에 기초하여 웹 서비스를 선정하는방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20090039437A true KR20090039437A (ko) | 2009-04-22 |
Family
ID=40763321
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020070105080A KR20090039437A (ko) | 2007-10-18 | 2007-10-18 | 웹 서비스의 서비스 품질에 기초하여 웹 서비스를 선정하는방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20090039437A (ko) |
-
2007
- 2007-10-18 KR KR1020070105080A patent/KR20090039437A/ko not_active IP Right Cessation
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11175913B2 (en) | Elastic application framework for deploying software | |
US8131799B2 (en) | User-transparent system for uniquely identifying network-distributed devices without explicitly provided device or user identifying information | |
JP4789942B2 (ja) | コネクションを最適化するための装置および方法 | |
US8799322B2 (en) | Policy driven cloud storage management and cloud storage policy router | |
CN1890942B (zh) | 重定向对万维网服务的客户端请求的方法 | |
US20190190977A1 (en) | System and method of automatic generation and insertion of analytic tracking codes | |
US9652206B2 (en) | Rule engine system controlling devices of disparate types and protocols | |
CN102047243A (zh) | 基于类别请求路由 | |
US20060168220A1 (en) | Network service providing method and system | |
US20070165615A1 (en) | Apparatus and method for notifying communication network event in application server capable of supporting open API based on Web services | |
CN102377617A (zh) | 监视移动互联网活动的系统、方法和设备 | |
JP4812680B2 (ja) | アクセス制御装置 | |
US20070266035A1 (en) | Methods, Systems and Computer Program Products for Web Service Interaction with a Resource Management System | |
US6947404B1 (en) | Automatic WAP login | |
JP4360017B2 (ja) | サーバ装置 | |
CN112115103B (zh) | 文件地址显示方法、装置、电子设备及可读存储介质 | |
JP2002318808A (ja) | 個人情報登録支援システム | |
JP2007140975A (ja) | サービス提供システム、連携情報提供サーバ、認証サーバ、サービス提供サーバ、サービス提供方法、およびプログラム | |
KR100947114B1 (ko) | 더미 메시지를 이용하여 웹 서비스의 품질 데이터를추출하는 방법 | |
WO2010106861A9 (ja) | サービス連携装置、プログラム、サービス連携方法及びサービス提供システム | |
US11546405B2 (en) | Methods for exposing mainframe data as a web service and devices thereof | |
KR20090039437A (ko) | 웹 서비스의 서비스 품질에 기초하여 웹 서비스를 선정하는방법 | |
CN104980329B (zh) | 通讯录管理方法及装置、移动代理服务器 | |
JP4653147B2 (ja) | 情報機能提供システム、情報機能提供装置、情報機能提供方法および情報機能提供プログラム | |
JP4451339B2 (ja) | 負荷分散システム、および負荷分散方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E601 | Decision to refuse application | ||
SUBM | Surrender of laid-open application requested |