KR20050057479A - 프로세스 흐름 및 코레오그래피 제어기를 웹 서비스로서노출 - Google Patents

프로세스 흐름 및 코레오그래피 제어기를 웹 서비스로서노출 Download PDF

Info

Publication number
KR20050057479A
KR20050057479A KR1020057004746A KR20057004746A KR20050057479A KR 20050057479 A KR20050057479 A KR 20050057479A KR 1020057004746 A KR1020057004746 A KR 1020057004746A KR 20057004746 A KR20057004746 A KR 20057004746A KR 20050057479 A KR20050057479 A KR 20050057479A
Authority
KR
South Korea
Prior art keywords
service
message
choreography
choreographic
versions
Prior art date
Application number
KR1020057004746A
Other languages
English (en)
Other versions
KR101066659B1 (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 제이지알 어퀴지션 인코퍼레이티드
Publication of KR20050057479A publication Critical patent/KR20050057479A/ko
Application granted granted Critical
Publication of KR101066659B1 publication Critical patent/KR101066659B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • 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/10Office automation; Time management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/142Managing session states for stateless protocols; Signalling session states; State transitions; Keeping-state mechanisms

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Human Resources & Organizations (AREA)
  • Strategic Management (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Tourism & Hospitality (AREA)
  • Computer Security & Cryptography (AREA)
  • Operations Research (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Economics (AREA)
  • Data Mining & Analysis (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Information Transfer Between Computers (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Computer And Data Communications (AREA)

Abstract

본 발명은 문서 교환 코레오그래피를 지원하는 컴퓨터-기반 디바이스 및 방법에 관한 것이다. 특히, 본 발명의 양상들은 코레오그래피 버전관리, 서비스 버전관리 및 문서 버전관리의 다양한 조합에 의한 시스템의 발전을 용이하게 하는 디바이스 및 방법에 관한 것이다. 본 발명은 코레오그래피 에이전트를 이용한 코레오그래피 관리를 제공하며, 코레오그래피 인에이블 되지않은 응용에 코레오그래피-인에이블된 인터페이스를 제공한다. 본 발명의 부가적인 양상은 그래픽 디자인 툴 및 호스트 서비스의 다중 환경 설정 프랜차이징된 서비스로의 투명한 앨리어싱을 포함한다. 본 발명의 특정 양상은 청구범위, 명세서, 및 도면에서 설명된다.

Description

프로세스 흐름 및 코레오그래피 제어기를 웹 서비스로서 노출{EXPOSING PROCESS FLOWS AND CHOREOGRAPHY CONTROLERS AS WEB SERVICES}
본 발명은 문서 교환 코레오그래피를 지원하는 컴퓨터-기반 디바이스 및 방법에 관한 것이다. 특히, 본 발명의 양상들은 코레오그래피 버전관리, 서비스 버전관리 및 문서 버전관리의 다양한 조합에 의한 시스템의 발전을 용이하게 하는 디바이스 및 방법에 관한 것이다. 본 발명은 코레오그래피 에이전트를 이용한 코레오그래피 관리를 제공하며, 코레오그래피 인에이블 되지않은 응용에 코레오그래피-인에이블된 인터페이스를 제공한다. 본 발명의 부가적인 양상은 그래픽 디자인 툴 및 호스트 서비스의 다중 환경 설정 프랜차이징된 서비스로의 투명한 앨리어싱(aliasing)을 포함한다. 본 발명의 특정 양상은 청구범위, 명세서, 및 도면에서 설명된다.
기업간(B2B) 및 응용간(A2A) 전자 상거래는 전자식 데이터 교환(EDI)을 위한 이전의 프로토콜을 교체시키고 있다. 기업들이 B2B 및 A2A 시스템으로 효율성을 개선하고자 함에 따라, 다수의 호환성없는 플랫폼 및 경쟁적인 표준이 출현하게 되었다. 호환성있는 표준들 사이에서, 채워져야 할 격차가 남아 있다. 예컨대, 산업계는 단순 웹 서비스가 무엇인지를 정의하였다. 단순 웹 서비스에 관한 표준은 UDDI, WSDL, XSDL 및 SOAP를 포함한다. 하지만, 이 표준들은 실제의 B2B 및 A2A 전자 상거래에 대한 보안성, 신뢰성, 제어기능, 및 코레오그래피 요구를 완전히 충족하지 못한다. 이런 환경에서, 서비스 간의 메시지 교환의 코레오그래피는 코레오그래피된 교환을 위한 패턴의 설정, 및 대화 ID와 같은 식별자와의 교환의 일부인 메시지의 추적을 포함한다. 특히 코레오그래피는 경쟁 플랫폼에 수많은 선택 및 구성 문제를 제시한다. 협력 웹 서비스 및 이들의 코레오그래피는 비-웹(non-web) 사업과 마찬가지로 발전할 것으로 예상된다. 하지만, 발전으로부터 발생하는 문제를 동적으로 해결하는 포괄적이거나 통합된 디바이스 또는 방법이 없다.
B2B 및 A2A 전자 상거래를 구현하는 일 방식은 웹 서비스의 이용이다. 웹 서비스는 웹을 통해 모듈 방식으로 기능성을 노출하는 근본적으로 새로운 방식이다. 현 단계의 웹 서비스 발전에서, 문서 교환 및 RPC 웹 서비스가 상당히 주목된다. RPC 웹 서비스는 호출자가 인/아웃(in/out) 파라메터를 갖는 절차 호출(procedure call)과 유사한 것을 호출함으로써 웹 서비스를 호출하는 RPC 프로그래밍 패러다임을 지원한다.
현재의 웹 서비스 구현은 전형적으로 세개의 표준에 일치한다. UDDI는 검색 조건에 기초한 웹 서비스의 발견 및 그 인터페이스의 다운로딩을 위한 인터페이스 표준이다. SOAP는 와이어를 통해 페이로드(payload)를 전송하는데 사용되는 HTTP 전송에 규정된 결합을 갖는 엔벨로프(envelope) 프로토콜 표준이다. 웹 서비스는 전형적으로 XSDL, Xlink, Xbase, 및 Xpointer와 같은 XML 표준, 및 HTTP와 URI와 같은 범용 웹 표준에 의존한다.
오늘날 대부분의 웹 서비스는 단순 웹 서비스이다. 단순 웹 서비스는 동기된, 신뢰성없는 HTTP 전송을 이용하고, 전송 레벨 보안을 제외한 어떠한 보안도 지원하지 않으며, 통신 당사자에 의해 개인적으로 이해된 페이로드의 보안 정보에 대해서만 동의하였다. 단순 웹 서비스는 동작들을 포함한다. 웹 서비스의 호출은 웹 서비스의 동작의 호출을 의미한다. 동작은 단방향 메시지를 받아들이거나 호출자가 응답을 차단하고 호출된 서비스가 즉시 응답하는 요구/응답 패러다임을 지원하도록 설계될 수 있다. 단순 웹 서비스는 RPC 프로그래밍 패러다임 또는 문서 기반 프로그래밍 패러다임을 이용할 수 있다.
표준-부합하는 웹 서비스에서 출현하는 문제는 기업의 사업 성능을 개선하기 위해 고성능 웹 서비스를 정의하는 것이다. 이 웹 서비스는 신뢰성(정확히 한번), SMTP와 같은 비동기 전송, JMS, 프라이버시(암호화), 무결성(signing), 인증 및 허가, 및 라우팅으로 호출을 지원할 것이다.
협력 웹 서비스를 정의하는데에 다른 문제가 출현할 것이다. 이 웹 서비스는 다른 웹 서비스와 장기간의 상호작용을 유지할 것이며, 코레오그래피된 대화 환경 없이도 비-협력 웹 서비스를 호출할 수 있다. 이 협력 웹 서비스는 대화에서 관련 메시지의 상관의 지원 및 복귀 어드레스의 지원을 요구할 것이다.
B2B 및 A2A 전자 상거래에 적용가능한 표준을 확장하려는 많은 산업계의 개시(initiative)가 있다. 코레오그래피 시도는 OASIS의 ebXML/BPSS, IBM의 WSFL, 및 마이크로소프트사의 XLANG을 포함한다. 대화 시도는 OASIS의 ebXML/TRP, 및 마이크로소프트사의 WS-라우팅을 포함한다. 부가적인 시도는 IBM, 마이크로소프트사 및 BEA 시스템의 BPEL4WS(웹 서비스에 대한 비지니스 프로세스 실행 언어), 선 마이크로시스템사의 웹 서비스 코레오그래피 인터페이스, WSCL(웹 서비스 대화 언어), 및 BPML(비지니스 프로세스 모델링 언어)를 포함한다. 많은 코레오그래피 시도가 진행중이며, 2002년 9월, 몇몇의 산업계 지도자들은 W3C 표준 조직체의 웹 서비스 아키텍처 작업 그룹에 비호환성을 해결할 표준을 설정하도록 요청하였다. 신뢰성을 위해, 마이크로소프트사의 제안들, OASIS의 ebXML/TRP, 및 IBM의 HTTPR이 있다. W3C는 이들 모든 영역에서 어드레싱 표준화이다. 핵심 산업계의 운영자들은 WSI로 불리는 경쟁 콘서시엄을 형성하였다. 하지만, 이들은 서비스 발전 및 코레오그래피 문제를 검토하지 않았다.
따라서, 문서 교환 코레오그래피의 발전을 지원하는 방법 및 디바이스를 개발할 가능성이 발생하였다.
도 1은 문서 버전관리 및 변환, 서비스 버전관리 및 코레오그래피 버전관리를 동적으로 결정하는 성능을 도시한다.
도 2는 서비스 버전관리에 관하여 메시지 교환 방식을 도시한다.
도 3은 협상 정보를 발견하기 위해 이용된 하나 이상의 레지스트리에 대한 참조를 도시한다.
도 4는 4 종류의 활동(activity)을 도시한다.
도 5는 활동과 내부 프로세스간의 상호작용을 도시한다.
도 6은 코레오그래피 에이전트를 구성하는데 사용되는 프로세스 엔진에서 실행하는 내부 프로세스 흐름을 도시한다.
도 7은 메시지 상관을 도시한다.
도 8 및 도 9는 정규의, 비-프랜차이징된 서비스와 프랜차이징된 서비스 간의 구분을 도시한다.
도 10 내지 17은 본 발명의 양상들을 실시하는 일 실시예의 스크린 샷이다. 도 10은 관리 호스트 패키지 스크린이다.
도 11은 새로운 호스트 서비스를 등록하는 부분을 도시한다.
도 12는 문서 교환 활동을 편집하는데 사용되는 스크린을 도시한다.
도 13은 사이닝(signing) 및 암호화 정책을 검증하거나 변형하는데 사용되는 스크린을 도시한다.
도 14는 호스트 서비스 패키지를 등록하는데 사용되는 스크린을 도시한다.
도 15는 프랜차이징할 새로운 패키지를 선택하는데 사용되는 스크린을 도시한다.
도 16은 프랜차이즈 선택을 선택하는데 사용되는 스크린을 도시한다.
도 17은 서비스 세부사항을 편집하는데 사용되는 스크린을 도시한다.
본 발명은 문서 교환 코레오그래피를 지원하는 컴퓨터-기반 디바이스 및 방법에 관한 것이다. 특히, 본 발명의 양상들은 코레오그래피 버전관리, 서비스 버전관리 및 문서 버전관리의 다양한 조합에 의한 시스템의 발전을 용이하게 하는 디바이스 및 방법에 관한 것이다. 본 발명은 코레오그래피 에이전트를 이용한 코레오그래피 관리를 제공하며, 코레오그래피 인에이블 되지않은 응용에 코레오그래피-인에이블된 인터페이스를 제공한다. 본 발명의 부가적인 양상은 그래픽 디자인 툴 및 호스트 서비스의 다중 환경 설정 프랜차이징된 서비스로의 투명한 앨리어싱을 포함한다. 본 발명의 특정 양상은 청구범위, 명세서, 및 도면에서 설명된다.
하기의 상세한 설명에서 도면들을 참조할 것이다. 바람직한 실시예들은 본 발명을 예시하기 위해 설명되며, 청구범위에 의해 정의된 본 발명의 범주를 제한하려는 것이 아니다. 기술 분야의 당업자들은 하기의 상세한 설명에 대한 다양한 등가 변형물을 인식할 것이다.
커뮤니티(community) 및 커뮤니티의 네트워크는 문서 교환 코레오그래피를 구현하는 컴퓨터-보조된 디바이스 및 방법이 유용한 일 환경이다. 이 커뮤니티들 중에서, 일 커뮤니티는 사용자, 회사, 서비스, 및 커뮤니티의 일부인 커넥터와 같은 정보를 포함하는 로컬 레지스트리를 유지한다. 커뮤니티는 시장, 기업, 또는 하부 기업이 될 수 있다. 커뮤니티는 하나 이상의 커뮤니티 네트워크에 소속된다. 전형적으로, 커뮤니티 및 네트워크는 약간의 공통된 사업 관심사를 갖는다. 연동(interoperation)은 하나 이상의 커뮤니티 네트워크의 멤버 커뮤니티들 사이에 있다. 커뮤니티의 네트워크는 커뮤니티들의 글로벌 레지스트리를 이용할 수 있게 한다. 글로벌 레지스트리는 커뮤니티의 검색, 및 이 커뮤니티 또는 커뮤니티로 향하는 전자 상거래 문서가 이를 통해 라우팅될 수 있는 외부 커넥터로의 하나 이상의 라우트의 결정을 허용한다. 일 커뮤니티로부터 타 커뮤니티로 라우팅된 문서는 두 커뮤니티를 위한 외부 커넥터들 사이에서 직접 라우팅되거나 하나 이상의 중개 커뮤니티를 간접적으로 라우팅될 수 있다. 커뮤니티들에 연관된 트랜잭션을 위한 비지니스 및 보안 규약은 또한 커뮤니티 레지스트리에 정의되고 유지될 수 있다. 커넥터는 다른 응용과 통신하는 응용에 대한 일반적인 용어이다. 커넥터는 피어-투-피어(P2P) 방식 또는 허브(hub), 게이트웨이, 외부 포트, 중심 커넥터 등으로서 기능하는 다른 커넥터를 통한 직접 방식으로 통신할 수 있다. P2P와 통신하는 커넥터는 동일 전송/엔벨로프 프로토콜을 이용하는 다른 커넥터와 통신할 수 있다. P2P와 통신하는 커넥터는 선택적으로, 동일한 전송/엔벨로프 프로토콜을 이용하지 않는 커넥터와의 통신을 시도할 때에, 변환 서비스를 수행하는 다른 허브 커넥터의 협력을 받을 수 있다. 직접 방식으로 통신하는 커넥터는 라우팅 규약에 따라 허브 커넥터를 통해 통신한다. 커넥터들 사이의 라우팅 규약은 직접적인 그래프로 맵핑될 수 있으며, 하나 이상의 전송/엔벨로프 프로토콜에 대한 하나 이상의 허브 및 스포크(spoke) 토폴리지를 지원한다. 허브 및 스포크 토폴리지는 하나 이상의 타이어(tier)에서 스포크를 따라 허브로의 통신을 안내한다. 이는 빌링, 사업 정보 수집, 추적, 감사, 회계 또는 다른 것들과 같은 중심화된 서비스를 용이하게 한다. 다중 허브 및 스포크 구조는 다른 전송/엔벨로프 프로토콜 및 기술을 지원하기 위해 동일한 커넥터를 오버레이(overlay)할 수 있다. 예컨대, 강력한(stronger) 허브 및 스포크 구조가 Sonic을 HTTP 또는 HTTPS로 이용하기 보다는 전송 기술로서 이용하는데 요구될 수 있다. 선택적으로, 통신 라우트는 출발지 및 목적지가 동일 커뮤니티의 일부인지에 의존할 수 있다. (전체 커뮤니티를 포함할 수 있는) 하부 커뮤니티 내에서, 중심화된 기능은 불필요할 수 있으며, P2P 통신은 이와 달리 다른 하부 커뮤니티에서 목적지와 통신할 때에 부모 커넥터와 통신하도록 지시된 커넥터들 사이에서 허용된다.
커넥터들은 단순 커넥터(종종 단순히 커넥터로 지칭됨), 허브(종종 게이트웨이 또는 라우터로 지칭됨) 또는 중심 커넥터로 분류될 수 있다. 대안적으로, 이들은 기능적으로 설명될 수 있다. 단순 커넥터는, 이들이 동일 커뮤니티의 커넥터들 사이에서 P2P와 통신하도록 허용될 때를 제외하고, 허브 커넥터를 통해 통신하도록 지시된다. 소위 허브는 명시적으로 이들에 지시되거나 링크된 커넥터에 의해 사용된다. 허브는 하나 이상의 기능을 제공할 수 있으며, 따라서, 출발지에서 목적지로의 라우트에서 한번 이상 보여질 수 있다. 허브는 전자 상거래 문서 또는 메시지를 포워딩한다. 허브들은 또한 공통 엔벨로프 프로토콜을 지원하는 전송 프로토콜 사이에서 변환될 수 있다. 예컨대, 허브는 엔벨로프 프로토콜을 변환할 수 있고, 또한 수신 시 보다 전송 시에 다른 전송 프로토콜을 구현할 수 있다. 중심 커넥터는 허브에 명시적으로 지시되거나 링크되지 않은 커넥터에 의해 사용될 수 있는 허브의 특수한 경우이다. 중심 커넥터는, 예컨대, 라우팅 규약에 따라 출발지로부터 커넥터로 통과하는 것이 목적지에 의해 사용되는 전송/엔벨로프 프로토콜을 지원하는 임의의 허브에 이르지 못할 때에, 변환 기능을 수행하는데 유용하다.
표준 환경에서, WSDL은 소위 서비스 정의(WSDL은 포트타입을 지칭함), 서비스 인스턴스(서비스), 및 커넥터(포트)를 정의하는데 사용되는 표준-기반 언어이다. 서비스 정의는 클래스 정의와 같다. WSDL은 서비스 타입을 명명하며, (필수적으로 서비스의 방법인) 서비스 정의에 대한 동작 세트를 정의하며, 그리고 동작들의 입력/출력 메시지를 정의한다. WSDL에 의해 특정된 동작 타입은 통지(하나의 외부로의 메시지), 단방향(하나의 내부로의 메시지), 간청/응답(동기화된, 하나의 내부로의 메시지에 후속하는 하나의 외부로의 메시지로) 및 요구/응답(동기화된, 하나의 외부로의 메시지에 후속하는 하나의 내부로의 메시지로)를 포함한다. WSDL은 서비스들 간의 상호작용의 코레오그래피를 처리하지 않는다.
본 발명의 양상들은 서비스의 코레오그래피 동작을 어드레싱하는데 있어 WSDL에만 의존하지 않는다. 협력 동작은 협력 상호작용에 의해 호출되며, 여기서 일 서비스 인스턴스에서의 동작은 타 서비스 인스턴스에서의 동작을 호출한다. 두개의 서비스 인스턴스 간의 협력 상호작용은 단일 대화의 일부이며, 여기서 대화는 메시지의 양방향 흐름이며, 코레오그래피 인스턴스이다. 대화에서 메시지는 전형적으로 대화 ID, 적용되는 코레오그래피, 및 초기의 서비스/동작으로의 복귀 어드레스의 식별을 포함한다.
도 1은 본 발명의 몇몇 양상들을 결합하는, 대화로서 코레오그래피된 특정의 문서 교환에 대한 문서 버전 및 변환(101), 서비스 버전(102) 및 코레오그래피 버전(103)을 동적으로 결정하는 성능을 도시한다. 이 동적 결정들은 몇몇 관련 출원 및 하기에서 설명된다.
WSDL의 메시지는 명칭 및 부분들의 세트를 갖는다. 각 부분은 명칭, MIME 내용 타입, 및 만일 XML인 경우에 부분에 대한 스키마 정의를 갖는다.
본 발명은 XML 부분에 대한 명시적인 구성 정의 대신에 문서 패밀리의 개념을 부가하며, 이는 문서 버전의 동적 결정을 지원한다. 문서 패밀리는 그 구성이 문서 구조를 정의하는 문서 버전의 세트를 지원한다. 이는 두개의 상호작용 서비스가 문서의 다른 버전을 지원하도록 허용한다. 버전 변환 논리가 소스 문서를 요구된 목적 문서 스키마로 변환하는데 제공된다. 이는 문서를 사용하여 상호간에 상호작용하는 네트워크에서 모든 서비스의 갱신없이도 문서 버전의 발전을 허용한다. 이는 소위 문서 버전 연동이며, 이는 앞서 식별된 바와같이 레지스트리 구동 연동 및 문서 교환 출원에서 더 설명된다.
본 발명은 서비스 정의 버전의 개념을 소개하며, 이는 또한 동적으로 결정될 수 있다. 새로운 버전은 새로운 선택 부분을 기존의 인/아웃 파라메터 또는 문서에 부가하거나 기존의 선택 부분을 삭제할 수 있으며, 새로운 동작을 서비스의 초기 버전에 부가할 수 있다. 초기 버전을 사용한 서비스 인스턴스는 정확하게 서비스 인스턴스의 갱신된, 새로운 버전에 어드레싱될 수 있는데, 이는 버전 번호가 메시지 어드레스의 서비스 정의 명칭의 일부가 아니기 때문이다. (어드레스는 전형적으로 당사자/서비스 정의 명칭/동작을 포함한다) 일반적으로, 서비스 정의는 정의에 따르는 서비스 인스턴스(종종 단순히 서비스로 지칭됨)에 대한 템플릿이다. 서비스 템플릿을 정의하는 것은 타입을 정의하는 것과 유사하며, 서비스 인스턴스를 정의하는 것은 이 타입의 변수를 정의하는 것과 유사하다. 서비스 정의는 명칭과 버전을 가지며, 하나 이상의 활동 인터페이스와 함께 서비스의 활동 리스트를 정의한다. 인터페이스는 지원된 문서를 명시적으로 식별하지 않지만, 적어도 지원된 문서 패밀리를 식별한다. 문서 패밀리는 동일 비지니스 기능을 갖는 문서의 세트이다. 예를 들어, "구입 주문"은 문서 패밀리이며, xCBL 3.5 구입 주문 및 Rosettanet 1.0 구입 주문은 이 패밀리의 멤버이다. 서비스 정의는 커뮤니티 관리자에 의해 확립될 수 있으며, Commerce One과 같은 판매자에 의해 채택될 수 있거나, 미래에 표준 조직체에 의해 정의될 수 있다. 서비스 인스턴스는 사용된 실제 버전 문서를 특정함으로써 인터페이스 정의를 완료시킨다. 또한, 인스턴스는 서비스의 정책을 특정하며, CP는 서비스를 제공한다. 이는 그 내에 이것이 호스트된 커넥터를 특정한다. 메시지는 서비스 인스턴스에 의해 송신되고 수신된다. 바람직하게는, 서비스 인스턴스의 활동은 단일 커넥터 내에 호스트된다.
코레오그래피 정의 언어는 일반적으로 역할(role) 사이의 메시지 흐름을 정의한다. WSDL은 역할의 서비스 인터페이스를 정의한다. 그러나, 코레오그래피 정의 언어는 WSDL과 병합하지 않는다. 코레오그래피와 서비스 사이에 명백한 결합이 이루어지지 않는다. 본 발명의 일 양상은 코레오그래피 역할의 서비스 인스턴스로의, 그리고 코레오그래피 메시지의 서비스 동작의 인/아웃 파라메터로의 맵핑을 포함한다. 이는 앞서 식별된 BPSS 대화 관리와 로컬 비지니스 관리간의 동적 인터페이스 출원에서 더욱 완전히 논의된다.
본 발명은 서비스 정의에게 서비스가 지원하는 코레오그래피의 세트(예를 들어, 명칭에 의해 식별됨), 및 동적으로 결정될 수 있는 이 코레오그래피에서의 역할을 정의하도록 허용한다. 서비스 인스턴스는 그가 지원하는 코레오그래피의 서브세트를 표시할 것이며, 지원된 코레오그래피 사이에서 선호도 순서를 나타낼 수 있다. 실시간으로, 참가하는 서비스 인스턴스 사이에서 지원된 코레오그래피의 교차가 연산되며, 특정 버전의 코레오그래피가 메시지 교환에서 사용을 위해 선택된다. 하나 이상의 서비스에 대한 선호도는 어느 코레오그래피 버전을 사용할 지의 결정에 요인으로 포함된다. 개시자 승리(win), 응답 승리, 최신 버전 승리, 초기 버전 승리 또는 선호도의 가중치와 같은 규약이 요인에 사용될 수 있다. 대안적으로, 사용할 코레오그래피 버전을 특정하는, 두개의 서비스 간의 협의가 사전정의될 수 있다. 코레오그래피 참가자 모두는 코레오그래피 대화의 모든 후속적인 메시지에 대해 동일 코레오그래피를 사용한다. 이는 코레오그래피에게, 전체 네트워크의 모든 서비스가 갱신되도록 요구함이 없이, 발전하도록 허용한다. 이는 소위 코레오그래피 버전 연동이다. 이 연동은 코레오그래피를 설명하는데 사용되는 언어와 무관하게 달성되지만, 그 명칭으로부터 코레오그래피의 의미를 이해하는 서비스에 의존한다.
코레오그래피 버전을 선택하거나 서비스 버전을 발견하는 두가지 방법이 도 2 및 3에 도시된다. 도 2에서, 메시지들은 제 1 서비스(201)와 제 2 서비스(202) 간의 버전에 관한 정보를 교환하는데 사용된다. 이 방식은 다른 모든 서비스에 전송된 제 1 메시지를 갖거나 제 2 및 후속 서비스에서 다른 서비스로 전송되는 부가의 제 1 메시지를 갖는 두개 이상의 서비스로 확장될 수 있다. 코레오그래피에서, 예를 들어, 코레오그래피의 다른 변화 및 버전에서 제 1 메시지(211)는 실질적으로 동일하다. 메시지는 문서 버전 고려사항 때문에 약간 다를 수 있다. 제 1 메시지가 모든 코레오그래피 버전과 양립하여 남아있는 동안에, 제 1 메시지에서 다른 작은 변화가 허용될 수 있다. 사용된 코레오그래피가 제 1 메시지에서 선택된 이후에, 서비스들 간의 임의의 방향으로의 모든 후속 메시지는 이 코레오그래피의 일부이다. 코레오그래피 버전이 선택된 이후에, 후속 메시지(212 내지 224)는 선택된 코레오그래피에 일치된다. 도 3에서, 제 1 서비스 및 제 2 서비스에 의해 지원된 버전에 관한 정보를 발견하기 위해 하나 이상의 레지스트리에 대한 참조를 이용된다. 발견 프로세스로의 서비스 로컬은 방법(321)에 액세스할 수 있는 제 1 레지스트리(331)에 버전 정보를 저장할 수 있다. 원격 서비스는 방법(323)에 액세스할 수 있는 제 2 레지스트리(332)에 버전 정보를 저장한다. 일부 경우에서, 원격 서비스의 정보는 제 1 레지스트리(331)에 있으며, 방법(322)에 액세스할 수 있다. 예컨대, 만일 제 1 및 제 2 서비스가 동일 커뮤니티에 있다면, 동일 레지스트리에 의존한다. 또는, 만일 제 1 및 제 2 서비스가 최근에 접촉이 있었다면, 제 1 서비스는 제 2 서비스의 정보를 제 1 레지스트리에 저장한다. 양 서비스에 의해 지원된 버전에 관한 정보는 버전 선택 논리(311)에 의해 고려될 것이다.
따라서, 본 발명의 양상들은 문서 버전, 서비스 버전 및 코레오그래피 버전 일부 또는 모두를 동적으로 결정하기 위해 몇가지 방식으로 조합될 수 있다. 본 발명에 일치하여 구현된 경우에, 웹 서비스는 실질적으로 갱신되며, 유사하게 갱신되지 않은 다른 서비스와의 연동을 보유할 수 있다.
본 발명의 추가적인 양상들은, 소위 피어-투-피어 상호작용 또는 협력 상호작용에서, 인터넷 또는 다른 네트워크에 걸쳐서 분배된 협력 서비스들 사이에 복잡한 코레오그래피 및 비지니스 프로세스가 정의되고 실행되도록 한다. 이는 또한 레가시 웹 서비스 구현에서 일반적인 표준 클라이언트/서버 상호작용(또는 비 협력 상호작용)을 지원한다. 피어-투-피어 상호작용에서, 코레오그래피는 서비스 사이에서 교환된 관련 메시지들의 상관을 지원하며, 대화 메시지에서 복귀 어드레스를 포함한다.
협력 서비스는 비 협력 웹 서비스 또는 다른 응용 인터페이스와 가상 대화를 가질 수 있다. 기본적으로, 두개의 서비스는 상호간에 클라이언트/서버 상호작용을 이용하며, 아웃 오브 밴드(out of band) 복귀 어드레스를 인식한다. 서비스는 메시지 페이로드를 시험하는 응용 논리를 이용하여 메시지를 상관한다.
협력 서비스는 제로(zero) 또는 그 이상의 관련 환경을 갖는다. 새로운 환경은 하나 이상의 트리거 동작에 의해 생성된다. 대안적으로, 환경은 (메시징 견지에서) 자발적으로 초기화될 수 있다. 후속의 비-트리거 동작 초기화는 이 환경에 결합된다. 프로세스 흐름 인스턴스는 언급된 환경이다. 일 동작은 프로세스 인스턴스를 시작하며, 모든 후속 메시지는 이 인스턴스에 관련된다. 이 환경은 개시자와의 양방향 대화, 및 환경에 의해 구동된 다른 서비스와의 양방향 대화를 하는 것을 도와준다. 비-협력 서비스에 대해, 각 동작은 저절로 완료되며, 개시자는 임의의 프로그램이 될 수 있으며, 서비스일 필요가 없으며, 이는 서비스의 다른 모든 동작의 호출과 무관하다.
더 일반적으로, 당사자간에 두 종류의 메시지 상호작용이 있다. 피어-투-피어 메시지는 전형적으로 코레오그래피에 연관된다. 피어-투-피어 상호작용에서, 몇가지 부가의 정보가 제공된다. 복귀 어드레스가 제공되며, 이는 전형적으로 송신 CP, 서비스 정의, 및 활동 정의를 식별한다. 대화 ID, 코레오그래피 ID와 같은 메시지 상관 데이터가 제공되며, 이는 ID로 언급된다. 복귀 어드레스는 호출된 서비스가 어디에 응답해야 될 지를 식별한다. 이 서비스를 더 보조하기 위해, 이 상호작용을 위해 사용된 응용가능한 코레오그래피는 대화의 각 메시지 상의 양 서비스스들에 복귀될 수 있다. 대화 ID는 두 서비스들간의 대화에의 모든 메시지에 대해 동일값을 갖는다. 이는 서비스들이 관련 메시지와 쉽게 상관하도록 허용한다. 코레오그래피 ID는 제 1 메시지 상에서 선택되며, 대화 동안 동일하게 유지된다. 언급된 ID는 이것이 응답이 되는 메시지의 메시지 ID를 언급한다. 단일 메시지는 다중 응답을 가질 수 있다.
제 2 타입의 메시지 상호작용은 클라이언트/서버 상호작용(또한 비-협력 상호작용으로 지칭됨)이다. 클라이언트/서버 상호작용에서, 전형적으로 어떤 송신 서비스/활동이 없다. 요구 및 선택적 단일 응답은 전형적으로 교환을 완료시키며, 후속의 클라이언트/서버 상호작용은 이와 연관되지 않는다.
클라이언트/서버의 하나의 특수한 양상은 요구/응답 호출에서 응답에 대한 변환 지원이다. 피어-투-피어 상호작용에서, 송신 서비스는 응답에서 무슨 문서를 예상하는지를 그 인터페이스에서 말한다. 하지만, 클라이언트/서버에 대하여, 이는 사실이 아니며, 요구자는 응답에서 무슨 문서를 예상하는 지를 요구에서 말해야 한다. 만일 요구자가 일부분에 대해 예상된 문서를 특정하지 않는다면, 응답자에 의해 생성된 바와 같은 문서는 임의의 변환 없이 송신된다.
서비스는 복수의 문서 교환 활동 인터페이스를 포함할 수 있다. 문서 교환 활동 인터페이스는 서비스 정의 부분으로서, 그리고 (커스토마이즈된) 서비스 인스턴스가 등록될 때 모두에 정의될 수 있다. 활동은 그 인터페이스 및 그 정책에 의해 설명된다. 예를 들어, UI 서비스는 특권 결정, 싱글 사인온(single sign on) 웹 에이전트와 같은 다른 액세스 제어 정보, 및 리소스 경로를 위해 레지스트리에 이들의 활동을 등록할 수 있다.
활동은 도 4에 도시되 바와같이 4개의 타입으로 될 수 있다. 요구/응답(411): 활동은 요구 및 응답을 수신한다. 간청/응답(412): 이는 요구/응답의 역 인터페이스이다. 간청 응답 활동은 다른 서비스 인스턴스에 요구/응답 활동을 호출할 수 있다. 단방향(414): 이는 비동기 메시지를 수신하는 활동이다. 통지(413): 이는 단방향의 역 인터페이스이다. 통지 활동은 다른 서비스 인스턴스에 단방향 활동을 호출한다. 이 정의들은 WSDL에 일치한다.
활동에 대한 입력 또는 출력은 메시지로 지칭된다. 메시지는 다수의 부분으로 구성된다. 부분들은 하기의 방식으로 설명된다. 부분 명칭은 이 부분에 대한 활동으로부터/활동으로의 모든 메시지에 대해 재샤용되는 부분에 대한 고유의 명칭이다. 부분 타입은 XML 부분이거나 MIME 타입에 의해 설명되는 부분이 될 수 있다. 만일 부분이 MIME 타입에 의해 정의되지 않는 경우에, 부분에 대한 MIME 타입은 호출자에 의해 실시간으로 공급될 수 있다. 부분 위치는 부분이 몸체 또는 부속물에 있는 지를 특정한다. 대안적으로, 이는 메시지 헤더 또는 메시지의 외부에 있으며, 메시지는 단지 이를 참조한다. 부분은 요구되거나 선택될 수 있다. 루트 표시자: 메시지의 하나의 루트 표시자가 있어야 한다. 이는 전형적으로 메시지의 주요 주제이며, 전형적으로 XML 부분이다. 루트 부분은 다른 부분들을 찾기 위해 횡단(traversal)의 시작점을 표시한다. 이는 다른 부분에의 참조를 포함할 수 있지만, 이들 모두가 필수적으로 루트 부분에서 횡단에 의해 발견될 수 없다. 메시지는 또한 문서 ID 리스트를 포함할 수 있다. 임의의 부분(XML 또는 비 XML)은 문서 패밀리에 속할 수 있다. 문서 패밀리의 멤버(문서 ID로 지칭됨)와 연관되는 것은 설명자(descriptor) 정보, 선택적으로는 스키마, 선택적으로 이 멤버로부터의/멤버로의 댜양한 타입의 변환 맵이다. 문서 패밀리 메타데이터는 서비스와 무관하게 등록된다.
코레오그래피된 서비스 내에서, 프로세스 흐름은 인터페이스의 양측 상의 활동을 조정하는데 사용될 수 있다. 설계 툴을 사용하여 정의되고, 정의가 프로세스 엔진에서 실행되는 프로세스 흐름의 개념은 다른 환경에서 이용되었다. 예를 들어, Commerce One은 CPM으로 지칭되는 프로세스 흐름 해법을 가진다. 프로세스는 잠재적인 브랜칭 포인트 및 병렬 실행 스레드를 갖는 흐름을 정의한다. 프로세스 인스턴스는 환경과 연관되며, 어떤 이벤트에 의해 초기화되며, 오래 지속한다. 이 환경은 다른 이벤트에 의해 트리거된 일련의 상태 전이를 겪으며, 프로세스 자체는 이벤트를 흐름 부분으로서 초기화한다. 이벤트들은 UI 상호작용, 문서 교환 이벤트(문서 페이로드를 갖는 송신 또는 수신 메시지들), 환경 상태 또는 관련 데이터베이스 상태의 교환, 또는 비지니스 논리의 호출을 포함할 수 있다.
도 5는 활동과 내부 프로세스 간의 상호작용을 도시한다. 활동(411 내지 414)는 521 내지 525의 프로세스 흐름으로 메시지를 교환한다. 프로세스 흐름 단계들은 이들 사이에서 메시지를 전달한다. 다른 인스턴스에서, 프로세스 흐름은 브랜칭 및 프로세스의 병렬 실행을 포함할 수 있다.
프로세스 엔진에서 실행되는 내부 프로세스 흐름은 또한 도 6에 도시된 바와같이 코레오그래피를 집중적으로 관리하는 코레오그래피 에이전트를 구성하는데 상용될 수 있다. 코레오그래피는 자체로 협력 웹 서비스로서 보여지며, 내부 프로세스 흐름(612)을 이용하는 코레오그래피 에이전트(610)를 통해 모든 메시지를 흐르게 함으로써 집중적으로 관리될 수 있다. 코레오그래피 에이전트에 적응된 경우에, 서비스(630)에서 서비스(640)로의 메시지는 서비스(630)에서 중개 서비스(610)로의 메시지로 변경되며, 이는 메시지를 서비스(640)로 포워딩한다. 다시 서비스(640)에서 서비스(630)으로의 비동기 응답은 서비스(640)에서 중개 서비스(610)로의 메시지로 변경되며, 이는 메시지를 서비스(630)로 포워딩한다. 코레오그래피 에이전트(610)는 이를 통해 메시지가 전달되는 인터페이스(611,613,614)를 포함한다. 내부 프로세스 흐름(612)은 하나 이상의 코레오그래피의 상태를 추적하는데 사용될 수 있다. 내부 프로세스 단계의 일부 또는 모두는 트랜잭션 복구 로그에 정보를 저장할 수 있으며, 이는 코레오그래피된 메시지 교환이 완료없이 단절되는 경우에 사용될 수 있다. 인터페이스는 코레오그패피 에이전트를 통해 조정되는 하나 이상의 코레오그래피 인스턴스의 상태의 조회를 지원하는데 부가될 수 있다. 유사하게는, 활동 통계는 코레오그래피 조정 동안에 컴파일되며, 인터페이스를 통해 보고될 수 있다. 이 중심화는 코레오그래피의 상태가 추적을 위해 쉽게 조회되도록 허용한다. 에러 처리 및 에러 보상 동작은 더욱 쉽게 구현될 수 있다. 중개 서비스가 프로세스 흐름으로서 구현될 때에, 코레오그래피는 글로벌로 정확할 것이며, 이는 내부 프로세스 흐름이 프로세스 정의에 일치하기 때문이다. 정확성에 대한 코레오그래피의 글로벌 조사가 용이하게 된다.
프로세스 엔진에서 실행되는 프로세스 흐름은 이벤트를 트리거하며 메시지를 이벤트 처리의 일부로서 송신하는 메시지를 획득한다. 이 메시지들은 WSDL과 같은 표준 웹 서비스 정의 언어를 이용하여 설명될 수 있다. 이 셜명들은 UDDI와 같은 표준 레지스트리로 쉽게 발견될 수 있다. 따라서, 이 메시지들은 함께 웹 서비스로 그룹화될 수 있다. 메시징 시스템은 메시지를 이 서비스의 활동에서 흐름을 실행하는 커넥터로 라우팅할 수 있다. 일부 동작은 새로운 프로세스 인스턴스의 착수의 의미를 갖는다. 이 동작으로의 메시지들은 새로운 프로세스 인스턴스를 가져온다. 다른 내부로의 메시지에 대해, 커넥터의 디스패처는, 페이로드 내용에 기반한 인스턴스, 프로세스 인스턴스 상태(만일 상태가 특정 메시지에 대해 특정 동작을 기다리는 단계에 있는 경우) 또는 메시지 엔벨로프의 메시지 상관 데이터(내부로의 메시지가 이전의 외부로의 메시징 응답하여 비동기인 때에 유용함)를 추론함으로써, 메시지를 기존의 프로세스 인스턴스에 링크할 수 있다.
이들 사이의 내부 상태를 전달하는 다중 프로세스 엔진(610,620,630 및 640)에서 분배된 방식으로 실행되는 프로세스 흐름들은 서로 상호작용하는 협력 서비스의 세트로서 취급될 수 있다.
본 발명의 추가적인 양상은 선택적으로 호출되기 이전에 서비스에 가입을 요구하는 것이다. 서비스 가입 동안에, 협력 서비스에 대해, 가능한 코레오그래피 중 하나는 선택되며, 소비자 및 제공자 모두에 의한 사용을 위해 협의될 수 있다. 서비스의 다른 양상들은 또한 액세스 제어와 같이 가입 시에 협의될 수 있다.
서비스 지향 액세스 제어는 제어기능 및 서비스 액세스의 시행 및 서비스의 활동/동작이 용이하게 되도록 함께 작용하는 3개의 핵심 개념(서비스 가시성(visibility), 서비스 가입, 및 서비스 특권 또는 허가)을 갖는다. 서비스 가시성은 서비스 제공자에게 누가 서비스를 발견할 수 있는 지를 특정하도록 허용하며, 그리고 발견 메커니즘이 가시성에 기반하여 발견을 제한하도록 한다. 서비스 가시성 규약은: 모두에 대한 가시성, 관리자/운영자에 대한 가시성, 커뮤니티의 특정 당사자에 대한 가시성, 커뮤니티의 특정 역할에 대한 가시성, 네트워크의 모든 커뮤니티에 대한 가시성, 또는 네트워크의 특정 커뮤니티에 대한 가시성을 포함한다. 가시성은 또한 협력 당사자(종종 거래 당사자 또는 파트너로 지칭됨)에 대해 적용된다. 당사자가 커뮤니티에 등록될 때에, 당사자는 디폴트로 커뮤니티에 가시된다. 부가적으로, 당사자는 네트워크의 임의의 커뮤니티, 또는 네트워크의 특정 커뮤니티에 가시될 수 있다. 서비스 및 정보는 또한 특정된 가시성 규약에 기반하여 공개 UDDI 레지스트리로 푸시될 수 있다.
각 서비스 활동에 대해, 특권의 세트들은 또한 가입 시에(디폴트로) 확립될 수 있다. 각 서비스에 대해, 응용은 또한 결과적으로 서비스 그룹인 서비스 역할을 특정할 수 있다. 특권에 대해, 부가의 상세사항이 특정되는데, 이는 '특권이 특정 조직 유닛의 범위를 지원하는지' 및 '특권이 단지 서비스 역할의 일부로서 사용될 수 있는 지' 등과 같은 것이다. 서비스는 또한 어떤 사람에 의해 사용되기 이전에 어떤 종류의 가입을 요구하는 지를 특정할 수 있다. 예컨대, 공급자는 주문 관리 디바이스에서, 구매자가 단지 가입 이후에 주문을 이 서비스에 송신할 수 있음을 특정할 수 있다. 가입 프로세스는 서비스 제공자가, 만일 요구된다면, 가입 서비스의 성능 뿐만 아니라 가입 당사자에 관한 정보를 수신하도록 허용한다. 이 정보에 기반하여, 서비스 제공자는 가입을 승인하거나 거부하는 것을 선택할 수 있다. 일단 당사자 관리자가 서비스에 가입한다면, 이들은, 서비스 역할 및/또는 특권을 가입된 서비스 내로 그룹화하고, 이 사용자 역할에 사용자 계정을 지정함으로써, 자신의 조직 내에 사용자 역할을 생성할 수 있다.
코레오그래피된 상호작용의 지원에 대한 다른 주요한 문제는 백 오피스 시스템이다. 서비스 콤포지션(composition) 에이전트의 이용은 백 오피스 시스템이다. 서비스 콤포지션 에이전트의 이용은 백 오피스 시스템 통합에 연관된 문제에 대처할 수 있다. 백 오피스 시스템은 전형적으로 코레오그래피된 대화를 지원하는 SOAP 확장을 이해하지 않으며, 메시지 상관 및 복귀 어드레스 특정을 지원하는 확장을 포함한다. 따라서, 도 7에 도시된 바와같이, 콤포지션 에이전트가 백 오피스 시스템의 단순 웹 서비스 인터페이스에 양방향으로 맵핑되는 협력 웹 서비스 인터페이스를 노출시키는 것이 유용하다. 콤포지션 에이전트는 페이로드에 반대하는 규약을 실행함으로써 관련 메시지를 상관하고, 응용의 피어-투-피어 호출 메시지로부터 응용의 복귀 어드레스를 추론한다. 백 오피스 시스템은 그들의 기능성을 다르게 노출시키며, 이에 따라 전형적으로 각 백 오피스 시스템에 대해 다른 세트의 서비스 정의가 있다. 콤포지션 에이젼트는, 단일 인터페이스에 이들을 제공함으로써, 다중의, 발전하는 백 오피스 시스템의 추적을 단순화한다. 콤포지션 에이전트는 정확한 백 오피스 서비스 및 동작을 선택한다. 백 오피스 시스템은, 이들이 EAI 인터페이스로 증가될 때에, 다양한 XML 문서 정의를 지원한다. 예들은 xCBL, IDOC, OAGI 등을 포함한다. 본 발명의 양상들은 이 다양한 정의 언어를 이용하여 정의된 이들 문서들이 단일 문서 패밀리의 멤버로서 취급되도록 허용한다. 변환 논리는 문서 패밀리 멤버들 사이에서 메시지를 전후로 변환하기 위해 호출될 수 있다. 백 오피스 시스템으로의 EAI 인터페이스는 젼형적으로 견고한 보안성, 신뢰성있는 메시징 등을 지원하지 않는다. 콤포지션 에이전트는 백 오피스 시스템과 최후의, 고유의 커넥터 사이의 최후 홉(hop)에서 사용될 수 있는 덜 견고하면서 보안인 해법을 사용할 수 있거나, 특수한 보안성 및 신뢰성 측정이 채택될 수 있다.
콤포지션 에이전트 서비스는 백 오피스 시스템과의 대화에 대한 논리 라우팅(페이로드 검사 및/또는 레지스트리 검색에 의한 타겟 어드레스 선택)을 지원할 수 있으며, 이는 백 오피스 시스템에 의해 초기화된 대화를 포함한다. 메시지 상관은 도 7에 도시된다. 백 엔드 시스템과 같은 코레오그래피 인에이블되지 않은 시스템(710)은 인에이블링 프로세스 또는 콤포지션 에이전트(720)와 통신한다. 통신은 콤포지션 에이전트가 721,722,723을 수신할 것이라는 메시지 내에 필드를 특정함으로써 부분적으로 구성된다. 메시지 상관 논리(724)는 메시지를 새로운 또는 계속되는 코레오그래피(725)와 상관하는데 사용될 수 있다. 이 코레오그래피는 상술된 바와같이 내부 프로세스로서 모델링될 수 있다. 상관 논리(724)는 메시지가 수신될 때에 백 엔드 시스템으로부터의 각 메시지를 처리하도록 메시지 흐름에 위치될 수 있다. 또는, 이는 프로세스 흐름(725)에서 단계들을 처리하는데 이용될 수 있는 리소스가 될 수 있다. 상관 논리(724)의 위치는 그 동작들 보다 덜 중요하다: 그 동작들은 백 오피스 응용 인터페이스에 의해 생성된 메시지를 조사하는 것과 백 오피스 메시지를 코레오그래피 인스턴스와 상관하기 위해 필드의 특정을 이용하는 것이다. 상관 논리는 백 오피스 시스템에 의해 초기화된 대화로 확장될 수 있다. 상관 논리가 메시지의 출발지가 항상 대화를 초기화하는 것으로 결정하거나 메시지의 특정 필드와 상관하는 기존의 대화가 없는 것으로 결정할 때에, 상관 논리는 새로운 대화 인스턴스가 생성될 필요가 있다고 신호할 수 있다. 상관 논리는 추가적으로 무슨 코레오그래피가 호출되어야 할 지를 결정하기 위해 특정될 필드를 사용할 수 있다. 예를 들어, 백 오피스 시스템은 공급자 주문을 초기화할 수 있다. 공급자 명칭 필드는 적절한 CP, 및 새로운 주문을 수신하기 위해 CP가 이용하는 서비스를 식별하는데 사용될 수 있다. 이 서비스와 연관된 코레오그래피는 호출될 수 있다. 콤포지션 에이전트(720)는 표준 인터페이스(726,727)를 통하여 코레오그래피 인에이블된 서비스(730)에 노출된다. 다수의 서비스들은 서비스 인터페이스를 통하여 콤포지션 에이전트와 상호작용할 수 있다. 콤포지션 에이전트 및 상관 논리는 코레오그래피된 대화의 상태를 추적하고, 백 오피스 시스템(710)과 교환된 메시지를 다른 서비스(730)와 교환된 메시지에서 사용된 적절한 대화 ID와 상관시킨다.
본 발명의 다른 양상은 호스트에 의해 서비스 프랜차이지(franchisee)로 프랜차이징된 복수의 앨리어스를 통해 단일 호스트된 서비스를 노출하는 것이다. 벽돌 및 모르타르 사업의 프랜차이지와는 달리, 이 프랜차이지는 호스트의 신원을 광고하는 것으로 예상되지 않는다. 어떤 의미에서, 이 서비스 프랜차이지는 OEM 상품의 개인 라벨러(labeler)와 더욱 유사하다. 프랜차이징된 서비스는 다른 서비스와 상호작용하도록 등록될 수 있거나 이들은 호스트가 지원하도록 설계된 다수의 백 오피스 시스템으로 라우팅될 수 있다.
도 8 및 9는 정규의, 프랜차이징 되지않은 서비스와 프랜차이징된 서비스 사이의 구분을 도와준다. 도 8에서, 두개의 서비스(811,812)는 서비스(810)의 레지스트리에서 보여진다. 프랜차이징 되지않은 시나리오에서, 이 레지스트리 엔트리는 동일 서비스 논리의 두개의 다른 인스턴스(831 및 832)에 대응하는 논리 어드레스를 제공한다. 이들 서비스 논리의 인스턴스는 두개의 다른 웹 서버상에서 실행하는 서버 인프라구조 소프트웨어의 두개의 라이센싱된 사본과 유사하다. 도 9에서, 3개의 프랜차이징된 서비스(911,912,913)가 서비스(910)의 레지스트리에서 보여진다. 이 프랜차이징된 서비스는 다른 논리 어드레스를 갖는다. 이들 모두는 호스트 서비스(921)에 논리적으로 연결되며, 이는 프랜차이징된 서비스와 동일한 방식으로 레지스트리를 통해 노출되지 않는다. 다른 논리 어드레스로 송신된 메시지는 다른 환경에 있으며, 이는 세개의 프랜차이징된 서비스의 프랜차이지에 대응한다. 프랜차이징된 서비스(911,912,913)와 호스트(921) 간의 논리 관계에 의해 설정된 환경이 있으면, 호스트(921)를 프랜차이징한 프랜차이저는 각 등록된 서비스에 대해 논리(831,832)의 인스턴스를 실행하는 대신에 호스트 논리(931)의 일 인스턴스를 이용할 수 있다.
시장 운영자가 주문 관리 응용(서비스의 수집)을 호스트하는 경우의 사용을 고려하자. 이후에, 공급자 세트는 이들에 대한 모든 주문을 관리하기 위해 이 호스트된 서비스 패키지를 프랜차이징한다. 이 경우에서, 프랜차이지로의 메시지는 <프랜차이지 CP>, <서비스 정의>, <활동 정의>로 어드레싱된다. UI 및 문서 교환 모두는 프랜차이징된다. 실제적으로, 프랜차이징된 서비스를 구현하는 일 실시예는 하기의 단계를 수반한다. 1.서비스의 호스트 인스턴스를 생성한다. 2. 호스트 서비스의 세트를 함께 수집함으로써 호스트 패키지를 생성한다. 호스팅 엔티티는 패키지의 소유자이다. 또한 패키지는 실제 구현이 있는 커넥터에 결합된다. 3.프랜차이지에 의해 가입된, 프랜차이지가 수신된 문서를 처리하도록 허용하는 서비스 세트를 호스트 패키지에 연관시킨다. 이는 하나 이상의 프랜차이지가 호스트 패키지를 프랜차이징하도록 허용한다. 일정 환경에서, 단계(1 및 2)는 커뮤니티 관리자에 의해 사용되지만, 단계(3)은 서비스 제공자에 의해 수행된다.
프랜차이지 협력 서비스는 선택적으로 레지스트리의 인증을 호스팅 서비스(CP)에 위임할 수 있다. 이에 대한 한가지 이유는, 프랜차이지가 프랜차이지의 증명서를 사용하기를 원하지 않는다는 것이며, 이는 프랜차이지가 자신을 완전히 식별하기를 원하지 않기 때문이다. 이 경우에서, 프랜차이지는 이 프랜차이지를 대신하여 이 서비스로부터의 모든 메시지에 대해 인증을 호스팅 CP로 위임할 것이다.
프랜차이징된 서비스는 환경을 설정하고, 모든 정보가 단순히 호스트 서비스로 흐르도록 허용하며, 호스트 서비스에 의해 처리되는 '창구(pass-through)' 서비스와 유사하다. 프랜차이지 서비스는 호스트 서비스를 참조할 것이며, 일반적으로 호스트로부터 구현 성능 및 정책을 물려받을 것이며, 사업상 필요에 기초하여 허용된 약간의 오버라이드(override)를 가지게 될 것이다. 바람직하게는, 프랜차이지 서비스에 직접 결함된 어떠한 구현도 없다. 만이 커스토마이화가 요구된다면, 다중의 호스트된 서비스 변화를 제공하는 것이 바람직하다. 대안적으로, 다중 코레오그래피는 호스트된 서비스에 의해 지원될 수 있으며, 코레오그래피의 서브세트가 특정의 프랜차이징된 서비스에 대해 지원된다. 프랜차이지로의 메시지는, 마치 프랜차이지가 독립형 서비스를 동작하는 것처럼, <프랜차이지 CP>, <서비스 정의>, <활동 정의>로 어드레싱된다. 서비스 소비자는 교환적으로 정규의 또는 프랜차이징된 서비스에 가입할 수 있고 이용할 수 있다. 프랜차이지와 상호작용하는 서비스 소비자는 프랜차이징된 것과 프랜차이징되지 않은 서비스와의 어떠한 차이도 인식하지 않는다.
호스트 서비스 패키지는 일반적으로 호스트된 응용에 의해 구현된 모든 서비스로 구성되는 패키지이다. 단일 호스트된 응용은 다중 호스트 패키지를 발행할 수 있다. 대부분의 경우에, 호스트된 응용은 단일 호스트 패키지를 발행할 것이다. 호스트 서비스 패키지로 묶여진 서비스는 두개의 타입으로 그룹화될 수 있다. 호스트 서비스의 일 타입은 프랜차이지를 대신하여 프랜차이징된 서비스로서 '재-제공된다'. 다른 타입은, 프랜차이지에 의해 프랜차이징된 서비스를 통해 수신된 정보를 처리하기 위해 사용된 포털(또는 UI) 서비스를 포함하지만, 프랜차이지를 초과하여 재-제공하거나 노출하지 않는다. 예컨대, 주문 관리 패키지는 '주문 수신'에 기초한 표준을 가지며, '주문 뷰(view)', '주문 보고', '주문 승인' 등과 같은 다른 UI 서비스를 또한 가진다. 프랜차이지가 주문 관리 패키지를 프랜차이징하도록 서명할 때에, 그는 문서 교환 서비스에 기반한 표준을 통해 주문을 수신하는 것뿐만 아니라, 이들을 뷰잉하며 이들을 승인 등을 할 필요가 있다. 호스트 패키지는 메시지를 송신하거나 수신하기 위해 각 서비스 패키지에 대해 디폴트 커넥터가 될 패키지 커넥터를 갖는다.
요구되는 프랜차이지와 호스트 제공자 간의 비지니스 프로세스는, 프랜차이지가 온라인 승인 프로세스로 호스트 패키지를 온라인으로 프랜차이징하도록 허용함으로써, 가능하게 된다. 서비스 제공자가 호스트 패키지를 프랜차이징할 때에, 프랜차이징된 서비스는 자동으로 생성되며, 패키지의 각 호스트 서비스로의 창구로서 등록된다. 더욱이, 또한 프랜차이지는 자동으로, 프랜차이징이 등록될 때에, 패키지의 다른 가입 서비스에 가입된다(이에 따라 사용이 허가된다).
프랜차이지 서비스가 이전에 언급된 바와같이 선택적으로 인증을 호스트 서비스에 위임할 수 있다. 일 실시예에서, 호스트 측에 인증의 위임에 관련된 실제적인 단계들은 다음을 포함한다: 1.서비스(전형적으로 단지 문서 교환 인스턴스)의 호스트 인스턴스를 생성한다. 2.패키지의 일부로서 프랜차이지에 의해 사용될 수 있는 정규 서비스를 생성한다. 3.호스트 패키지를 생성하고, 그리고 프랜차이지에 의해 제공된 바와같이 가능하게 될 호스트 서비스의 수집을 특정한다. 4.프랜차이지에 의해 가입되는, 프랜차이지가 수신 문서를 처리하도록 허용하는 서비스의 세트를 연관시킨다. 6.호스트 제공자는 프랜차이지가 요구될 때에 패키지 상에서 승인이 요구되는 지를 특정할 수 있다. 7.호스트 제공자는 위임된 인증이 이 패키지 상에서 허용되는 지를 특정할 수 있다. 프랜차이지 측 상에서: 1. 프랜차이지는 호스트 패키지의 프랜차이지를 요구한다. 이는 만일 호스트 제공자에 의해 요구된다면 승인 프로세스를 트리거한다. 2.호스트 제공자는 요구를 승인하기 위해 통지를 수신하며, 요구를 승인하거나 거부한다. 3.만일 호스트 제공자가 요구를 승인한다면, 시스템은 프랜차이지 패키지, 패키지의 가입 서비스에 가입, 및 패키지의 프랜차이지-가능한 서비스에 대한 프랜차이지 서비스를 생성한다.
프랜차이징된 서비스의 이해를 용이하게 하기 위해, 주문 관리 시스템과 면하는 공급자가 고려된다. 이 논의를 위해, 본 시스템은 SOMS(공급자 주문 관리 시스템)으로 지칭된다. SOMS는 구매자로부터 주문을 받도록 공급자에 의해 사용될 수 있는 주문 관리 시스템을 제공한다. 일 실시예에서, 하기의 단계들은 SOMS의 설계 및 설정과 관련될 수 있다. 설계자는 발행될 서비스를 그룹으로 나누는데, 이 그룹은 프랜차이지에 의해 프랜차이징될 서비스(예를 들어, 주문을 수신, 주문 상태 검사 등), 프랜차이지에 의해 사용될(또는 소모될) 서비스(예를 들어, 주문 뷰, 주문 승인/거부, 주문 통계/보고 등), 및 응용이 다른 응용 또는 백 오피스 시스템과의 통합과 같은 A2A(응용-대-응용) 통합(예를 들어, 사용자 관리 시스템, 공개 레지스트리, 카탈로그 시스템과의 통합 등)을 제공하는 서비스를 포함한다. 설계자는 모든 프랜차이지가 동일 서비스 세트를 갖는지 또는 이들이 잠재적으로 다른 서브세트가 필요한지를 결정한다. 이러한 필요에 기초하여, 일 호스트 서비스 패키지 또는 다중 호스트 서비스 패키지, 또는, 대안적으로, 동일 서비스의 다중 코레오그래피를 식별한다. 호스트 서비스 패키지는 '프랜차이징될' 서비스 및 '프랜차이지에 의해 사용될' 서비스를 포함해야 한다. 통합을 위해 사용될 다른 서비스는 전형적으로 응용으로서 제공 cp 또는 호스트 제공자를 갖는 정규의 서비스로 등록된다. 커뮤니티 환경에서, 호스트 제공자는 전형적으로 커뮤니티 운영자이지만, 이는 또한 커뮤니티에서 임의의 협력 당사자가 될 수 있다. 설계 도중에, '프랜차이징될' 서비스는 실제로 다중 서비스 제공자를 대신하여 메시지를 수신 및 송신할 것이다. 따라서, 응용 비지니스 논리는 메시지를 처리하기 위한 환경으로서 메시지의 수신인을 사용할 필요가 있다. 호스트 서비스 구현은 수납자 CP를 이해하기 위해 유입 메시지를 바라보고, 적절한 비지니스 프로세스로 트리거링/맵핑을 해야 한다. UI 트리거링된 비지니스 프로세스에 대해, 호스트 서비스는 프랜차이지 CP를 프로세스 환경으로의 입력으로서 취하고, 이를 프로세스 내의 위임 정책에 사용해야 한다.
설계 및 코딩 이후에, 샘플 SOMS 서비스는 적어도 일부 실시예에서 등록될 필요가 있다. 프랜차이징될 서비스, 프랜차이지에 의해 사용될 서비스, 및 호스트 서비스 패키지 자체의 등록은 도면들에서 몇개의 셋업 스크린에 의해 도시된다. 일 실시예에서, 레지스트리 관리자 UI는 (만일 이미 존재하지 않는다면) 서비스에 대한 새로운 서비스 정의를 생성하는데 이용된다. 이후에, 커넥터가 응용에 이용할수 있는 지를 검증한다. 이는 프랜차이저 또는 프랜차이저의 응용에 등록된 개별 커넥터에 이용할 수 있는 디폴트 커넥터가 될 수 있다. 또한, 모든 요구된 문서 식별자가 레지스트리로 로딩되었는 지를 검증한다. 이후에, 하기와 같이 호스트 서비스를 생성한다. 도 10은 관리 호스트 패키지 스크린이다. '새로 등록한다'(1001)를 클릭한다. 도 11은 새로운 호스트 서비스를 등록하는 부분들을 도시한다. 서비스 정의를 선택한다(1101). 운영 당사자를 '제공 당사자'로서 선택하거나(1102) 적절한 다른 당사자를 사용한다. 서비스 정보(1103)를 특정하고, '응용 인스턴스 명칭' 및 '응용 서비스 식별자'를 공백으로 남겨둔다. 선택적으로, 이 서비스와 연관되어야 할 모든 서비스 분류(1104)를 특정한다. 이 서비스(1105) 및 선호도 주문에 의해 지원되는 코레오그래피를 선택한다. 가시성(1106)을 디폴트 세팅으로 설정하며, 이는 '커뮤니티의 모든 당사자에 가시된다'. 지원된 문서 교환 활동(1107)을 선택하고 도 12와 같은 스크린을 이용하여 활동을 편집한다. 특권들(1201)을 생성한다. 응용이 특수 전달 수신 처리가 필요하지 않다면, '메시징 정책'(1202)에 대해 디폴트로 남겨둔다. 입력(1210) 및/또는 출력(1220) 메시지에 대해, 사이닝 및 암호화 정책(1213,1223)을 '요구된'으로 설정한다. 요구된 부분(1214,1224)을 편집하고, 지원된 문서 식별자의 주문 리스트를 특정한다. 레지스트리에 발행될 수 있는 선택적 메시지 부분을 부가한다. 도 13과 같은 스크린을 사용하고, 하기와 같이 정책들을 검증하거나 수정한다. 비동기 전달 수신(1301)을 '예'로 설정한다. '인증 모드'(1032)를 '문서 싱글 사인-온'으로 설정한다. '인증 메커니즘'(1303)을 '사용자명칭/패스워드'로 설정한다. 이후에, 선택적으로, 모든 서비스 역할(1304)을 특정한다. 서비스에 등록하기 위해 '제출/저장'(1305)을 클릭한다.
등록의 다른 부분은 (호스트된 서비스에 반대되는 것으로서) 프랜차이지에 의해 사용될 정규 서비스를 등록하는 것이다. 이는 웹 서비스 개발에 정규인 방식으로 수행된다.
호스트 서비스 패키지는 또한 도 14와 같은 스크린을 사용하여 등록된다. '새로운 호스트 패키지의 등록' 스크린에서, 패키지 명칭(1401) 및 설명(1402)을 등록한다. 응용 명칭(1403)을 특정한다. 운영 당사자를 '호스트 서비스 제공자'(1404)로서 선택하거나 적절한 다른 당사자를 사용한다. 서비스 정보를 특정한다(응용 명칭 인스턴스 명칭 및 응용 서비스 식별자를 '공백'으로 유지한다). 이 패키지를 프랜차이징 하는데 승인이 요구되는 지를 특정한다(1405). '예'인 경우에, 승인 프로세스는 CP가 이 패키지를 프랜차이징 할 때에 트리거링될 것이다. 응용 커넥터(1406)를 특정한다. 프랜차이지가 인증을 호스트 서비스 제공자(1407)로 위임하도록 허용되는지를 특정한다. 호스트 서비스 제공자에 의해 제공된 호스트 서비스 리스트로부터 프랜차이지에 의해 프랜차이징될 서비스를 선택한다(1408). 호스트 서비스 제공자에 의해 제공된 정규 서비스 리스트로부터 프랜차이지에 의해 가입될 서비스의 리스트를 선택한다(1409). 호스트 서비스 패키지를 등록하기 위해 '저장'(1410)을 클릭한다.
프랜차이지는 또한 등록하고, 도 15와 같은 스크린으로부터 프랜차이징하기 위해 새로운 패키지를 선택한다. 하나 이상의 호스트 패키지가 라디오 버튼(1501)을 선택하고, '선택'(1502)을 클릭함으로써 선택된다. 도 16과 같은 스크린이 액세스할 수 있게 된다. 프랜차이지의 선택은 제한되며, 이에 따라 셋업은 직접적이다. 대안 실시예에서, 프랜차이지는, 특히, 프랜차이지가 서비스를 재-제공할 때의 환경에서, 제공할 서비스 및/또는 가입할 서비스에 관한 선택을 가질 것이다. 인증이 프랜차이지의 증명서를 사용할 지 또는 호스트(1601)에 위임될 지를 결정한다. 제공될 하나 이상의 서비스를 편집하고(1602), 편집을 위해 표시된 모든 요구를 만족한다(1603). 처리를 위해 프랜차이지에 제출하기 위해 '제출'(1604)을 선택한다.
서비스 세부사향이 편집된 때에, 도 17과 같은 스크린은 액세스할 수 있게 된다. 일부 실시예에서, 제공된 대부분의 세부사항은 프랜차이지가 아니라 단지 호스트에 의해 편집될 것이다. 이는 도 17을 도 11 및 13에 기교함으로써 알 수 있다. 제공된 일부 세부사항은, 호스트가 이들을 프랜차이지에 적용하는 방식과 동일하게, 다운스트림 사용자, 및 서비스가 재-제공되는 자에 적용된다. 도 11의 설명이 일반적으로 적용된다. 부가적으로, 특권들을 그룹화하는 서비스 역할이 상술된 바와같이 확립될 수 있다.
프랜차이지가 가입할 수 있는 일부의 서비스들은 포털 서비스이다. 포털 서비스(또는 UI 서비스)는 포털을 통해 액세스되는 서비스이다. 이들은 단순히 사용자가 응용과 상호작용하도록 하기 위해 응용에 의해 노출된 서비스이다. 이는 사용자가 응용에 대해 서비스-지향된 뷰를 갖도록 허용한다. 특정 사용자는 다른 응용으로부터의 서비스와 상호작용할 수 있으며, 그리고 일 응용으로부터의 모든 서비스와 상호작용하거나 하지 않을 수 있다. 이들 경우에서, 관리 관점에서 응용에 대한 경험, 액세스 제어/특권, 싱글 사인 온, 네비게이션 등이 동일할 것이며, 서비스 패러다임에 기반할 것이다.
포털 서비스는 서비스 정의를 가지지 않을 수 있다. (아직 표준이 없다. 본 발명이 포털 서비스를 위해 서비스 정의를 요구하지 않지만은, 미래에 포털 서비스에 대한 서비스 정의가 있을 것이 예상된다.) 포털 서비스는 (만일 필요한 경우에, URL과 함꼐) 포털을 통해 모두 액세스될 수 있는 등록된 활동의 리스트를 갖는다. 활동을 위해, 활동에 액세스할 수 있게 하는 특권들의 리스트가 또한 특정된다. 부가적으로, 웹 에이전트와 같은 싱글 사인 온(SSO) 정보 및 보호된 자원 경로는 또한 서비스에 대해 또는 각 활동에 대해 특정된다. 보고에 액세스는 또한, 보고 그룹/폴더를 활동으로 등록함으로써 포털 서비스를 통해 가능할 수 있다.
응용을 위해 등록될 UI 서비스를 식별할 때에, 몇개의 요소를 고려하는 것이 유용하다. 타겟 사용자 또는 당사자를 고려하자. 다른 타겟 사용자에 의해 사용을 위한 응용 인터페이스가 설계된다. 예를 들어, 일정 UI는 관리자를 위해 의도되고, 일정 UI는 구매자를 위해 의도되며, 일정 UI는 공급자를 위해 의도된다. 이 역할 구분된 UI는 개별 서비스가 되어야 한다. 일정 인터페이스가 단지 일정 클래스의 공급자 또는 구매자에 대해 타겟되는지를 고려하자. 예를 들어, 당신은 단지 고급 공급자에 대한 부가적인 기능성을 가능하게 하기를 원할 수 있다. 이를 개별 서비스로 유지하자.
만일 당신이 일 타겟 그룹(예를 들어, 공급자)에 타겟된 많은 서비스를 가지고 있다면, 사용자 편의상 이를 그룹화하기 위해 서비스 가입 패키지의 생성을 고려하자. 협력 당사자는 서비스에 가입하고, 당사자 내의 사용자는 서비스 내의 특정의 특권을 부여받는다. 이는, 당사자에 대한 특권 및 활동이 혼합되지 않아야함을 의미한다. 예를 들어, 구매자 제출 RFP 및 RFP에 판매자 응답은 두개의 다른 서비스 내에 있어야 한다. 포털 서비스에 대해, 특정 디스플레이 카테고리는 연관될 수 있다. 디스플레이 카테고리는 서비스에 대한 포털 상에 탭을 보유한다. 많은 포털 서비스는 일 디스플레이 카테고리 내에 있다. 디스플레이 카테고리는 응용에 의해 특정된 서비스 룸 URL과 연관된다. 서비스 룸 URL을 등록함으로써, 응용은 서비스가 탭 내의 포털에 렌더링되는 방법에 관한 완전한 제어를 보유한다. 만일 당신이 당신의 응용이 다중 디스플레이 카테고리로서 렌더링되기를 원한다면, 이들이 연관된 디스플레이 카테고리에 기반하여 서비스를 식별해야 한다.
바람직하게는, 서비스, 활동, 특권, 및 웹 에이전트 간의 하기의 관계가 관찰된다. 1.서비스는 하나 이상의 활동을 갖는다. 2.활동은 제로 또는 그 이상의 특권과 연관될 수 있다. 3.특권은 서비스에 속하며, 서비스 내에서 고유하다. 4.특권은 동일 서비스의 하나 이상의 활동과 연관될 수 있다. 5.서비스는 서비스를 통해 액세스할 수 있는 웹 리소스 경로의 리스트와 함께 싱글 사인 온(SSO)을 처리하는 디폴트 웹 에이전트와 연관될 수 있다. 6.서비스의 각 활동은 서비스 웹 에이전트와 연관되거나 다른 웹 에이전트로 무시될(overridden) 수 있다. 활동 특정 리소스 경로에 액세스가 또한 특정될 수 있다.
UI 서비스에서 활동 및 특권을 식별할 때에 몇개의 요소를 고려하는 것이 유용하다. 1.서비스의 활동 및 특권은 협력 당사자 내에서 타겟되어야 한다. 이는, 당사자에 대한 특권 및 활동이 동일 서비스의 일부가 되지 않아야 함을 의미한다. 다시, 구매자 제출 RFP 및 RFP에 판매자 응답은 동일 서비스 내에 있지 않아야 한다. 2.응용의 모든 링크를 UI 서비스의 활동으로서 등록하는 것은 바람직하지 않다. 만일 액세스 제어가 요구된다면, 이들은 특권으로서 등록될 수 있다. 3.단순한 경우에, 포털 서비스는 단자 하나의 활동 및 다발의 특권을 등록할 수 있다. 예를 들어, 특정 비드 기능을 허용하는 특권 세트를 갖는 하나의 활동 '비드'를 갖는 옥션 비드(auction bid)' 서비스가 있다. 사용자에 할당된 특권에 기반하여, 응용은 완전히 다른 페이지, 또는 다른 선택이 가능한 동일 페이지를 렌더링을 선택할 수 있다. 만일 이 활동으로의 링크가다른 응용/서비스로부터 가능한 경우에, 사용자는 URL과 함께 더욱 그래눌러(granular) 활동을 등록하기를 원하며, 이에 따라 이들은 레지스트리를 통해 발견될 수 있게 된다. 예를 들어, 카타로그 관리는 '관리 카탈로그' 활동과 함께 '검색 카탈로그' 활동을 등록하기를 원한다. '검색 카탈로그' 활동은 관리 카탈로그 스크린 뿐만 아니라 입수(procurement) 스크린, 소스 스크린, 및 계약 관리 스크린상의 링크로서 제공될 수 있다. 5.만일 서비스의 일정 링크가 다른 응용 서버 또는 웹 서버에 호스팅되고, 이들을 보호하기 위한 개별 웹 에이전트가 필요한 경우에, 이들은 개별 서비스로 그룹화되거나 동일 서비스의 개별 활동으로서 등록될 수 있다(예를 들어, 카탈로그 서비스 활동의 나머지와 다른 웹 서버상에서 실행되는 제품 구성 활동).
본 발명이 상술된 바람직한 실시예 및 예를 참조하여 개시되었지만은, 이 예들은 제한적 의미라기 보다는 예시적인 것으로 의도됨이 이해된다. 선행의 상세한 설명으로부터, 광범위의 시스템 및 방법이 본 발명의 양상 및 요소로부터 구성될 수 있음이 기술분야의 당업자에게는 자명함을 이해될 것이다. 컴퓨터-보조된 처리가 설명된 실시예들에 내포된다. 따라서, 본 발명은 컴퓨터-보조된 처리를 위한 방법, 방법을 구현하는 논리를 포함하는 시스템, 방법을 수행하는 논리로 특징되는 매체, 방법을 수행하는 논리로 특징되는 데이터 스트림, 또는 컴퓨터-액세스가능한 처리 서비스로 구체화될 수 있다. 변형물 및 조합이 기술 분야의 당업자에게 자명하며, 변형물 및 조합은 발명의 사상 및 하기의 청구범위의 범주 내에 있음이 고려된다.
저작권 고시
본 특허 문서의 설명서의 일부는 저작권이 보호되는 스크린 이미지를 포함한다. 저작권자는 미국 특허 및 상표청 특허 파일 또는 기록에서 보인바와 같이 어느 누구에 의한 특허 문서 또는 특허 설명서의 팩시밀리 재생에 반대하지 않았지만, 이와 달리 어떠한 경우라도 모든 저작권을 보유하고 있다.

Claims (23)

  1. 복수의 서비스 엔티티들 간의 웹 서비스 연동성을 지원하는 방법에 있어서,
    상기 엔티티들 간의 메시지 교환을 위해 사용될 메시지 코레오그래피의 특정 버전과, 여기서 상기 메시지 코레오그래피 버전들은 실질적으로 동일한 제 1 메시지를 사용하며;
    상기 서비스 엔티티들 간에 하나 이상의 서비스 제공자들에 의해 사용되는 서비스 버전들과; 그리고
    상기 메시지 교환에서 상기 서비스 엔티티에 의해 사용될 문서 버전들 및 상기 문서 버전들 간의, 만일 필요한 경우에, 변환들을 실시간으로 결정하는 단계를 포함하는 것을 특징으로 하는 복수의 서비스 엔티티 간의 웹 서비스 연동성 지원 방법.
  2. 제 1항에 있어서, 상기 방법은 복수의 코레오그래피 정의 언어로 된 것을 특징으로 하는 복수의 서비스 엔티티 간의 웹 서비스 연동성 지원 방법.
  3. 제 1항에 있어서, 상기 방법은 복수의 서비스 엔티티 인터페이스 정의 언어로 된 것을 특징으로 하는 복수의 서비스 엔티티 간의 웹 서비스 연동성 지원 방법.
  4. 웹 서비스를 코레오그래피하는 방법 - 여기서 코레오그래피는 복수의 서비스 엔티티의 표준에 부합하는 인터페이스에 맵핑된 복수의 메시지와, 대화 식별자를 상기 메시지에 할당과, 및 상기 코레오그래피에 따라 상기 서비스 엔티티 간의 메시지 교환의 실시를 포함하며 - 에 있어서,
    코레오그래피 에이전트를 통해 상기 메시지 교환을 라우팅하는 단계를 포함하며, 여기서 상기 코레오그래피 에이전트는:
    메시지를 조사하며,
    상기 메시지 조사에 기반하여 상기 대화 식별자에 대응하는 코레오그래피 인스턴스의 상태를 갱신하며; 그리고
    상기 메시지를 목적지로 포워딩하는 것을 특징으로 하는 웹 서비스 코레오그래피 방법.
  5. 제 4항에 있어서, 상기 방법은 복수의 코레오그래피 정의 언어로 된 것을 특징으로 하는 웹 서비스 코레오그래피 방법.
  6. 제 4항에 있어서, 상기 방법은 복수의 서비스 엔티티 인터페이스 정의 언어로 된 것을 특징으로 하는 웹 서비스 코레오그래피 방법.
  7. 제 4항에 있어서, 상기 코레오그래피 에이전트는 상기 코레오그래피의 상태에 관한 조회에 더 응답하는 것을 특징으로 하는 웹 서비스 코레오그래피 방법.
  8. 제 4항에 있어서, 상기 코레오그래피 에이전트는 트랜잭션 복구 로그를 더 갱신하는 것을 특징으로 하는 웹 서비스 코레오그래피 방법.
  9. 제 4항에 있어서, 상기 메시지는 문서를 포함하며,
    상기 문서의 문서 버전 및 버전 간에서 변환하는 변환 논리를 유지하는 단계와; 그리고
    상기 서비스 엔티티에 의해 사용될 특정 문서 버전들 및 상기 특정 문서 버전 간에서, 만일 필요한 경우에, 변환들을 결정하는 단계를 더 포함하는 것을 특징으로 하는 웹 서비스 코레오그래피 방법.
  10. 웹 서비스를 코레오그래피하는 방법 - 여기서 코레오그래피는 복수의 서비스 엔티티의 표준에 부합하는 인터페이스에 맵핑된 복수의 메시지와, 대화 식별자를 상기 메시지에 할당과, 및 상기 코레오그래피에 따라 상기 서비스 엔티티 간의 메시지 교환의 실시를 포함하며 - 에 있어서,
    코레오그래피의 코레오그래피 버전들을 유지하는 단계와, 상기 코레오그래피 버전들은 실질적으로 유사한 제 1 메시지를 사용하며; 그리고
    제 1 메시지에 응답하여, 상기 서비스 엔티티에 의해 지원된 특정 메시지 코레오그래피 버전을 결정하며, 상기 제 1 메시지 이후에 상기 특정 코레오그래피 버전을 이용하는 단계를 포함하는 것을 특징으로 하는 웹 서비스 코레오그래피 방법.
  11. 제 10항에 있어서, 메시지 코레오그래피 버전을 결정하는 단계는 상기 서비스 엔티티에 의해 지원된 코레오그래피 버전을 식별하는 레지스트리에 액세스하는 단계를 포함하는 것을 특징으로 하는 웹 서비스 코레오그래피 방법.
  12. 제 11항에 있어서, 상기 레지스트리는 상기 지원된 코레오그래피 버전 간에서 상기 서비스 엔티티의 선호도를 더 식별하며, 상기 결정 단계는 상기 서비스 엔티티 중 적어도 하나의 선호도를 이용하는 단계를 더 포함하는 것을 특징으로 하는 웹 서비스 코레오그래피 방법.
  13. 제 10항에 있어서, 상기 메시지는 문서를 포함하며,
    상기 문서의 문서 버전 및 버전 간에서 변환하는 변환 논리를 유지하는 단계와; 그리고
    상기 서비스 엔티티에 의해 사용될 특정 문서 버전들 및 상기 특정 문서 버전 간에서, 만일 필요한 경우에, 변환들을 결정하는 단계를 더 포함하는 것을 특징으로 하는 웹 서비스 코레오그래피 방법.
  14. 웹 서비스를 코레오그래피하는 방법 - 여기서 코레오그래피는 복수의 서비스 엔티티의 표준에 부합하는 인터페이스에 맵핑된 복수의 메시지와, 대화 식별자를 상기 메시지에 할당과, 및 상기 코레오그래피에 따라 상기 서비스 엔티티 간의 메시지 교환의 실시를 포함하며 - 에 있어서,
    코레오그래피의 코레오그래피 버전들을 유지하는 단계와, 상기 코레오그래피 버전들은 실질적으로 유사한 제 1 메시지를 사용하며;
    상기 서비스 엔티티에 의해 지원된 코레오그래피 버전들을 식별하는 데이터를 레지스트리에 유지하는 단계와;
    상기 레지스트리에 액세스하며, 상기 서비스 엔티티에 의해 지원된 특정 메시지 코레오그래피 버전을 결정하는 단계와; 그리고
    상기 메시지 교환에 대해 상기 특정 코레오그래피 버전을 이용하는 단계를 포함하는 것을 특징으로 하는 웹 서비스 코레오그래피 방법.
  15. 제 14항에 있어서, 상기 레지스트리는 상기 지원된 코레오그래피 버전들 간에서 상기 서비스 엔티티의 선호도를 더 식별하며, 상기 결정 단계는 상기 서비스 엔티티 중 적어도 하나의 선호도를 이용하는 단계를 더 포함하는 것을 특징으로 하는 웹 서비스 코레오그래피 방법.
  16. 제 14항에 있어서, 상기 메시지는 문서를 포함하며,
    상기 문서에 적용할 수 있는 문서 버전 및 버전 간에서 변환하는 변환 논리를 유지하는 단계와; 그리고
    상기 서비스 엔티티에 의해 사용될 특정 문서 버전들 및 상기 특정 문서 버전 간에서, 만일 필요한 경우에, 변환들을 결정하는 단계를 더 포함하는 것을 특징으로 하는 웹 서비스 코레오그래피 방법.
  17. 하나 이상의 표준-부합하는 인터페이스를 갖는 서비스 엔티티의 버전관리 방법에 있어서,
    상기 서비스의 서비스 버전들을 유지하는 단계와, 여기서 상기 서비스 버전은 선택적 동작을 기본 서비스에 부가하며;
    상기 서비스 엔티티에 의해 지원된 상기 서비스 버전들을 식별하는 데이터를 레지스트리에 유지하는 단계와;
    상기 레지스트리에 액세스하며, 상기 서비스 엔티티에 의해 지원된 상기 서비스 버전을 결정하는 단계와; 그리고
    상기 지원된 서비스 버전을 이용하여 상기 서비스 엔티티와의 메시지 교환을 실시하는 단계를 포함하는 것을 특징으로 하는 하나 이상의 표준-부합하는 인터페이스를 갖는 서비스 엔티티의 버전관리 방법.
  18. 하나 이상의 표준-부합하는 인터페이스를 갖는 서비스 엔티티의 버전관리 방법에 있어서,
    상기 서비스의 서비스 버전을 유지하는 단계와, 상기 서비스 버전은 선택적 동작을 기본 서비스에 부가하며;
    제 1 메시지를 상기 서비스 엔티티에 의해 지원된 상기 서비스 버전에 의존하지 않는 상기 서비스 엔티티에 송신하는 단계와;
    상기 서비스 엔티티로부터 그가 지원하는 상기 서비스 버전을 식별하는 응답을 수신하는 단계와; 그리고
    상기 지원된 서비스 버전을 이용하여 상기 서비스 엔티티와의 메시지 교환을 진행하는 단계를 포함하는 것을 특징으로 하는 하나 이상의 표준-부합하는 인터페이스를 갖는 서비스 엔티티의 버전관리 방법.
  19. 복수의 코레오그래피-인에이블 되지않은 인터페이스에 의해 생성된 메시지를 코레오그래피 인스턴스에 대응하는 대화 식별자와 상관하는 메커니즘에 있어서,
    코레오그래피 식별자가 없는 메시지를 생성하는 복수의 응용 인터페이스에 맵핑된 내부 프로세스 흐름과;
    상기 메시지를 코레오그래피 인스턴스와 상관하는데 사용될 상기 응용 인터페이스에 의해 생성된 메시지의 필드의 특정과; 그리고
    상기 응용 인터페이스로부터의, 상기 내부 프로세스에서 수신된 메시지를 조사하고, 상기 필드의 특정을 적용하며, 상기 메시지를 상기 코레오그래피 인스턴스에 대응하는 특정 대화 식별자와 상관시키는 논리 및 리소스를 포함하는 것을 특징으로 하는 복수의 코레오그래피-인에이블 되지않은 인터페이스에 의해 생성된 메시지를 코레오그래피 인스턴스에 대응하는 대화 식별자와 상관하는 메커니즘.
  20. 복수의 코레오그래피-인에이블 되지않은 인터페이스에 의해 생성된 메시지를 코레오그래피 인스턴스에 대응하는 대화 식별자와 상관하는 메커니즘에 있어서,
    코레오그래피 대화 식별자가 없는 메시지를 생성하는 하나 이상의 코레오그래피 엔이블된 인터페이스와 복수의 응용 인터페이스 간에서 맵핑과;
    상기 메시지를 코레오그래피 인스턴스와 상관하는데 사용될 상기 응용 인터페이스에 의해 생성된 메시지의 필드의 특정과; 그리고
    상기 응용 인터페이스로부터 수신된 메시지들을 조사하고, 상기 필드의 특정을 적용하며, 상기 메시지들을 코레오그래피 인스턴스에 대응하는 특정 대화 식별자와 상관시키며, 이들을 상기 코레오그래피 인에이블된 인터페이스에 제공하는 논리 및 리소스를 포함하는 것을 특징으로 하는 복수의 코레오그래피-인에이블 되지않은 인터페이스에 의해 생성된 메시지를 코레오그래피 인스턴스에 대응하는 대화 식별자와 상관하는 메커니즘.
  21. 대화 식별자가 없는 코레오그래피 되지않은 메시지로부터 대화 식별자를 포함하는 코레오그래피된 메시지를 구성하는 방법 - 상기 코레오그래피된 메시지는 제 1 인터페이스에 제공되며, 상기 코레오그래피 되지않은 메시지는 복수의 제 3 인터페이스로부터 제 2 인터페이스에 수신되며 - 에 있어서,
    상기 제 3 인터페이스에 의해 생성된 코레오그래피 되지않은 메시지를 코레오그래피 인스턴스와 상관하는데 사용될 상기 제 3 인터페이스에 의해 생성된 메시지의 필드를 특정하는 단계와;
    메시지가 상기 제 2 및 제 3 인터페이스 간에서 교환될 때에, 특정 코레오그래피 인스턴스에 대한 상태 정보를 유지하는 단계와;
    상기 제 2 인터페이스에 수신된 특정의 코레오그래피 되지않은 메시지를 상기 특정 코레오그래피 인스턴스에 대응하는 대화 식별자와 상관하기 위해, 상기 필드 특정 및 상기 상태 정보를 이용하는 단계와; 그리고
    상기 코레오그래피 되지않은 메시지 중 적어도 일부 및 상기 대화 식별자를 상기 제 1 인터페이스에 제공하는 단계를 포함하는 것을 특징으로 하는 대화 식별자가 없는 코레오그래피 되지않은 메시지로부터 대화 식별자를 포함하는 코레오그래피된 메시지를 구성하는 방법.
  22. 제 19항에 있어서.
    상기 중개 에이전트 및 사용될 상기 요구 엔티티에 대한 상기 메시지 코레오그래피의 버전과;
    상기 중개 에이전트에 의해 사용될 서비스 버전과; 그리고
    상기 메시지 교환에서 상기 중개 에이전트 및 상기 요구 엔티티에 의해 사용될 문서 버전들, 및 상기 문서 버전 간의 변환들을 실시간으로 결정하는 단계를 더 포함하는 것을 특징으로 하는 복수의 코레오그래피-인에이블 되지않은 인터페이스에 의해 생성된 메시지를 코레오그래피 인스턴스에 대응하는 대화 식별자와 상관하는 메커니즘.
  23. 호스트된 서비스를 복수의 프랜차이징된 서비스로 앨리어싱하는 방법에 있어서.
    하나 이상의 프랜차이징된 서비스를 개별 논리 어드레스를 갖는 웹 서비스로서 등록하는 단계와;
    상기 프랜차이징된 서비스를 통해 수신된 메시지를 검사하는 논리를 포함하는 호스트된 웹 서비스를 제공하여, 상기 메시지의 환경을 결정하는 단계와; 그리고
    상기 수신된 메시지를 상기 호스트된 웹 서비스로 전달하도록 상기 프랜차이징된 서비스들을 구성하는 단계를 포함하는 것을 특징으로 하는 호스트된 서비스를 복수의 프랜차이징된 서비스로 앨리어싱하는 방법.
KR1020057004746A 2002-09-18 2003-08-21 프로세스 흐름 및 코레오그래피 제어기를 웹 서비스로서 제시 KR101066659B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/246,512 US7340508B1 (en) 2002-09-18 2002-09-18 Exposing process flows and choreography controllers as web services
US10/246,512 2002-09-18

Publications (2)

Publication Number Publication Date
KR20050057479A true KR20050057479A (ko) 2005-06-16
KR101066659B1 KR101066659B1 (ko) 2011-09-22

Family

ID=32028958

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020057004746A KR101066659B1 (ko) 2002-09-18 2003-08-21 프로세스 흐름 및 코레오그래피 제어기를 웹 서비스로서 제시

Country Status (7)

Country Link
US (3) US7340508B1 (ko)
EP (1) EP1540497A2 (ko)
JP (1) JP4712386B2 (ko)
KR (1) KR101066659B1 (ko)
CN (4) CN105631642A (ko)
AU (2) AU2003265547B2 (ko)
WO (1) WO2004027548A2 (ko)

Families Citing this family (118)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7451107B1 (en) * 2000-01-28 2008-11-11 Supply Chain Connect, Llc Business-to-business electronic commerce clearinghouse
US7249195B2 (en) * 2001-03-30 2007-07-24 Minor Ventures, Llc Apparatus and methods for correlating messages sent between services
EP1614253A2 (en) * 2003-04-04 2006-01-11 Computer Associates Think, Inc. Method and system for management and configuration of remote agents
US7912938B2 (en) * 2003-04-11 2011-03-22 Hewlett-Packard Development Company, L.P. Correlation of web service interactions in composite web services
US7370333B2 (en) * 2003-06-02 2008-05-06 Microsoft Corporation Efficient processing of a convoy workflow scenario in a message driven process
GB0314800D0 (en) * 2003-06-25 2003-07-30 Hyfinity Ltd System and associated methods for software assembly
GB0314908D0 (en) 2003-06-26 2003-07-30 Ibm User access to a registry of business entity definitions
US20050015340A1 (en) * 2003-06-27 2005-01-20 Oracle International Corporation Method and apparatus for supporting service enablers via service request handholding
US7873716B2 (en) * 2003-06-27 2011-01-18 Oracle International Corporation Method and apparatus for supporting service enablers via service request composition
US8453196B2 (en) 2003-10-14 2013-05-28 Salesforce.Com, Inc. Policy management in an interoperability network
US8775654B2 (en) * 2003-12-19 2014-07-08 Salesforce.Com, Inc. Apparatus and methods for mediating messages
US7739351B2 (en) 2004-03-23 2010-06-15 Salesforce.Com, Inc. Synchronous interface to asynchronous processes
US7802007B2 (en) 2004-05-19 2010-09-21 Salesforce.Com, Inc. Techniques for providing connections to services in a network environment
CN1997983A (zh) * 2004-05-21 2007-07-11 Bea系统公司 面向服务的架构
US8458703B2 (en) 2008-06-26 2013-06-04 Oracle International Corporation Application requesting management function based on metadata for managing enabler or dependency
US8073810B2 (en) * 2007-10-29 2011-12-06 Oracle International Corporation Shared view of customers across business support systems (BSS) and a service delivery platform (SDP)
US8321498B2 (en) * 2005-03-01 2012-11-27 Oracle International Corporation Policy interface description framework
US9038082B2 (en) 2004-05-28 2015-05-19 Oracle International Corporation Resource abstraction via enabler and metadata
US8966498B2 (en) 2008-01-24 2015-02-24 Oracle International Corporation Integrating operational and business support systems with a service delivery platform
US9565297B2 (en) 2004-05-28 2017-02-07 Oracle International Corporation True convergence with end to end identity management
US9245236B2 (en) * 2006-02-16 2016-01-26 Oracle International Corporation Factorization of concerns to build a SDP (service delivery platform)
US7860490B2 (en) * 2004-12-01 2010-12-28 Oracle International Corporation Methods and systems for exposing access network capabilities using an enabler proxy
US8606723B2 (en) 2004-06-04 2013-12-10 Sap Ag Consistent set of interfaces derived from a business object model
US8655756B2 (en) 2004-06-04 2014-02-18 Sap Ag Consistent set of interfaces derived from a business object model
US8694397B2 (en) 2004-06-18 2014-04-08 Sap Ag Consistent set of interfaces derived from a business object model
US7725605B2 (en) 2004-08-06 2010-05-25 Salesforce.Com, Inc. Providing on-demand access to services in a wide area network
US9645712B2 (en) 2004-10-01 2017-05-09 Grand Central Communications, Inc. Multiple stakeholders for a single business process
US8396973B2 (en) * 2004-10-22 2013-03-12 Microsoft Corporation Distributed speech service
GB0425860D0 (en) * 2004-11-25 2004-12-29 Ibm A method for ensuring the quality of a service in a distributed computing environment
US20060116912A1 (en) * 2004-12-01 2006-06-01 Oracle International Corporation Managing account-holder information using policies
EP1672499B1 (en) * 2004-12-20 2010-03-03 Sap Ag Distributed system architecture using object migration to implement variable coupling
US8032920B2 (en) * 2004-12-27 2011-10-04 Oracle International Corporation Policies as workflows
US7606803B2 (en) * 2004-12-28 2009-10-20 International Business Machines Corporation Method and system for dynamic creation of service flows
US8744937B2 (en) 2005-02-25 2014-06-03 Sap Ag Consistent set of interfaces derived from a business object model
WO2008005102A2 (en) 2006-05-13 2008-01-10 Sap Ag Consistent set of interfaces derived from a business object model
US8914493B2 (en) * 2008-03-10 2014-12-16 Oracle International Corporation Presence-based event driven architecture
US8392364B2 (en) 2006-07-10 2013-03-05 Sap Ag Consistent set of interfaces derived from a business object model
US8566193B2 (en) 2006-08-11 2013-10-22 Sap Ag Consistent set of interfaces derived from a business object model
US8468544B1 (en) 2006-09-28 2013-06-18 Sap Ag Managing consistent interfaces for demand planning business objects across heterogeneous systems
US20080183479A1 (en) * 2007-01-25 2008-07-31 Masaru Iwashita Business process reconstruction method, and its program and computer
US8214503B2 (en) * 2007-03-23 2012-07-03 Oracle International Corporation Factoring out dialog control and call control
WO2008122803A1 (en) * 2007-04-09 2008-10-16 British Telecommunications Public Limited Company Service assembly architecture
WO2008122801A1 (en) * 2007-04-09 2008-10-16 British Telecommunications Public Limited Company Service assembly architecture
US8250531B2 (en) 2007-04-09 2012-08-21 British Telecommunications Plc Service assembly architecture
US9237056B2 (en) 2007-04-09 2016-01-12 British Telecommunications Public Limited Company Service assembly architecture
EP2034748A1 (en) * 2007-09-06 2009-03-11 British Telecmmunications public limited campany Service assembly architecture
US8396806B2 (en) * 2007-10-30 2013-03-12 Red Hat, Inc. End user license agreements associated with messages
US8019767B2 (en) * 2007-11-12 2011-09-13 International Business Machines Corporation Correlation-based visualization of service-oriented architecture protocol (SOAP) messages
US8539097B2 (en) * 2007-11-14 2013-09-17 Oracle International Corporation Intelligent message processing
US8161171B2 (en) * 2007-11-20 2012-04-17 Oracle International Corporation Session initiation protocol-based internet protocol television
US9654515B2 (en) * 2008-01-23 2017-05-16 Oracle International Corporation Service oriented architecture-based SCIM platform
US8589338B2 (en) 2008-01-24 2013-11-19 Oracle International Corporation Service-oriented architecture (SOA) management of data repository
US8401022B2 (en) * 2008-02-08 2013-03-19 Oracle International Corporation Pragmatic approaches to IMS
US8417593B2 (en) 2008-02-28 2013-04-09 Sap Ag System and computer-readable medium for managing consistent interfaces for business objects across heterogeneous systems
US8413165B2 (en) * 2008-03-31 2013-04-02 Sap Ag Managing consistent interfaces for maintenance order business objects across heterogeneous systems
US8423418B2 (en) * 2008-03-31 2013-04-16 Sap Ag Managing consistent interfaces for business objects across heterogeneous systems
US8370233B2 (en) * 2008-03-31 2013-02-05 Sap Ag Managing consistent interfaces for business objects across heterogeneous systems
US8930248B2 (en) 2008-03-31 2015-01-06 Sap Se Managing consistent interfaces for supply network business objects across heterogeneous systems
US8364715B2 (en) 2008-03-31 2013-01-29 Sap Ag Managing consistent interfaces for automatic identification label business objects across heterogeneous systems
US8566185B2 (en) 2008-06-26 2013-10-22 Sap Ag Managing consistent interfaces for financial instrument business objects across heterogeneous systems
US8671064B2 (en) 2008-06-26 2014-03-11 Sap Ag Managing consistent interfaces for supply chain management business objects across heterogeneous systems
US20090326988A1 (en) 2008-06-26 2009-12-31 Robert Barth Managing consistent interfaces for business objects across heterogeneous systems
US10819530B2 (en) * 2008-08-21 2020-10-27 Oracle International Corporation Charging enabler
US8463666B2 (en) * 2008-11-25 2013-06-11 Sap Ag Managing consistent interfaces for merchandise and assortment planning business objects across heterogeneous systems
US8577760B2 (en) * 2008-11-25 2013-11-05 Sap Ag Managing consistent interfaces for tax authority business objects across heterogeneous systems
US20100153297A1 (en) 2008-12-12 2010-06-17 Sap Ag Managing Consistent Interfaces for Credit Portfolio Business Objects Across Heterogeneous Systems
US8448143B2 (en) * 2008-12-18 2013-05-21 Sap Ag System and method for message choreographies of services
US8879547B2 (en) * 2009-06-02 2014-11-04 Oracle International Corporation Telephony application services
US8396751B2 (en) 2009-09-30 2013-03-12 Sap Ag Managing consistent interfaces for merchandising business objects across heterogeneous systems
US20110077999A1 (en) * 2009-09-30 2011-03-31 Sap Ag Managing consistent interfaces for retail event business objects across heterogeneous systems
US8583830B2 (en) * 2009-11-19 2013-11-12 Oracle International Corporation Inter-working with a walled garden floor-controlled system
US8533773B2 (en) * 2009-11-20 2013-09-10 Oracle International Corporation Methods and systems for implementing service level consolidated user information management
US20110125913A1 (en) * 2009-11-20 2011-05-26 Oracle International Corporation Interface for Communication Session Continuation
US20110125909A1 (en) * 2009-11-20 2011-05-26 Oracle International Corporation In-Session Continuation of a Streaming Media Session
US9269060B2 (en) * 2009-11-20 2016-02-23 Oracle International Corporation Methods and systems for generating metadata describing dependencies for composable elements
US9503407B2 (en) 2009-12-16 2016-11-22 Oracle International Corporation Message forwarding
US9509790B2 (en) * 2009-12-16 2016-11-29 Oracle International Corporation Global presence
US9135585B2 (en) 2010-06-15 2015-09-15 Sap Se Managing consistent interfaces for property library, property list template, quantity conversion virtual object, and supplier property specification business objects across heterogeneous systems
US8417588B2 (en) 2010-06-15 2013-04-09 Sap Ag Managing consistent interfaces for goods tag, production bill of material hierarchy, and release order template business objects across heterogeneous systems
US8732083B2 (en) 2010-06-15 2014-05-20 Sap Ag Managing consistent interfaces for number range, number range profile, payment card payment authorisation, and product template template business objects across heterogeneous systems
US8515794B2 (en) 2010-06-15 2013-08-20 Sap Ag Managing consistent interfaces for employee time event and human capital management view of payroll process business objects across heterogeneous systems
US8412603B2 (en) 2010-06-15 2013-04-02 Sap Ag Managing consistent interfaces for currency conversion and date and time business objects across heterogeneous systems
US8370272B2 (en) 2010-06-15 2013-02-05 Sap Ag Managing consistent interfaces for business document message monitoring view, customs arrangement, and freight list business objects across heterogeneous systems
US8364608B2 (en) 2010-06-15 2013-01-29 Sap Ag Managing consistent interfaces for export declaration and export declaration request business objects across heterogeneous systems
KR101866270B1 (ko) * 2011-02-21 2018-07-05 삼성전자주식회사 데이터 공유 시스템 및 방법
US8725654B2 (en) 2011-07-28 2014-05-13 Sap Ag Managing consistent interfaces for employee data replication business objects across heterogeneous systems
US8775280B2 (en) 2011-07-28 2014-07-08 Sap Ag Managing consistent interfaces for financial business objects across heterogeneous systems
US8666845B2 (en) 2011-07-28 2014-03-04 Sap Ag Managing consistent interfaces for a customer requirement business object across heterogeneous systems
US8601490B2 (en) 2011-07-28 2013-12-03 Sap Ag Managing consistent interfaces for business rule business object across heterogeneous systems
US8521838B2 (en) 2011-07-28 2013-08-27 Sap Ag Managing consistent interfaces for communication system and object identifier mapping business objects across heterogeneous systems
US8560392B2 (en) 2011-07-28 2013-10-15 Sap Ag Managing consistent interfaces for a point of sale transaction business object across heterogeneous systems
KR20130075252A (ko) 2011-12-27 2013-07-05 한국전자통신연구원 서비스 코레오그래피 적합성 시험장치 및 그 방법
US8762454B2 (en) 2012-02-16 2014-06-24 Sap Ag Consistent interface for flag and tag
US8762453B2 (en) 2012-02-16 2014-06-24 Sap Ag Consistent interface for feed collaboration group and feed event subscription
US8984050B2 (en) 2012-02-16 2015-03-17 Sap Se Consistent interface for sales territory message type set 2
US8756274B2 (en) 2012-02-16 2014-06-17 Sap Ag Consistent interface for sales territory message type set 1
US9232368B2 (en) 2012-02-16 2016-01-05 Sap Se Consistent interface for user feed administrator, user feed event link and user feed settings
US9237425B2 (en) 2012-02-16 2016-01-12 Sap Se Consistent interface for feed event, feed event document and feed event type
US9400998B2 (en) 2012-06-28 2016-07-26 Sap Se Consistent interface for message-based communication arrangement, organisational centre replication request, and payment schedule
WO2014000200A1 (en) 2012-06-28 2014-01-03 Sap Ag Consistent interface for document output request
US8521621B1 (en) 2012-06-28 2013-08-27 Sap Ag Consistent interface for inbound delivery request
US8615451B1 (en) 2012-06-28 2013-12-24 Sap Ag Consistent interface for goods and activity confirmation
US9246869B2 (en) 2012-06-28 2016-01-26 Sap Se Consistent interface for opportunity
US8756135B2 (en) 2012-06-28 2014-06-17 Sap Ag Consistent interface for product valuation data and product valuation level
US8949855B2 (en) 2012-06-28 2015-02-03 Sap Se Consistent interface for address snapshot and approval process definition
US9367826B2 (en) 2012-06-28 2016-06-14 Sap Se Consistent interface for entitlement product
US9076112B2 (en) 2012-08-22 2015-07-07 Sap Se Consistent interface for financial instrument impairment expected cash flow analytical result
US9043236B2 (en) 2012-08-22 2015-05-26 Sap Se Consistent interface for financial instrument impairment attribute values analytical result
US9547833B2 (en) 2012-08-22 2017-01-17 Sap Se Consistent interface for financial instrument impairment calculation
US9191357B2 (en) 2013-03-15 2015-11-17 Sap Se Consistent interface for email activity business object
US9191343B2 (en) 2013-03-15 2015-11-17 Sap Se Consistent interface for appointment activity business object
US8769480B1 (en) * 2013-07-11 2014-07-01 Crossflow Systems, Inc. Integrated environment for developing information exchanges
US10721312B2 (en) 2014-02-23 2020-07-21 Intel Corporation Orchestration and management of services to deployed devices
CN106603567B (zh) * 2016-12-30 2019-09-06 杭州迪普科技股份有限公司 一种web管理员的登录管理方法及装置
CN109460306A (zh) * 2018-10-09 2019-03-12 航天信息股份有限公司 一种业务融合一体化接入方法及系统
US11366573B2 (en) 2018-11-09 2022-06-21 Sap Portals Israel Ltd. Automatic development of a service-specific chatbot
US11863561B2 (en) * 2021-11-10 2024-01-02 Oracle International Corporation Edge attestation for authorization of a computing node in a cloud infrastructure system
US11983187B2 (en) * 2022-08-29 2024-05-14 Schlumberger Technology Corporation Global status monitoring for open data platform

Family Cites Families (86)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5005200A (en) 1988-02-12 1991-04-02 Fischer Addison M Public key/signature cryptosystem with enhanced digital signature certification
US5557798A (en) 1989-07-27 1996-09-17 Tibco, Inc. Apparatus and method for providing decoupling of data exchange details for providing high performance communication between software processes
US5159630A (en) 1991-05-29 1992-10-27 International Communication Systems Corporation Facsimile message encryption system
US5157726A (en) 1991-12-19 1992-10-20 Xerox Corporation Document copy authentication
JPH05197734A (ja) * 1992-01-17 1993-08-06 Mitsui Eng & Shipbuild Co Ltd データ処理システム
US5311438A (en) 1992-01-31 1994-05-10 Andersen Consulting Integrated manufacturing system
US5224166A (en) 1992-08-11 1993-06-29 International Business Machines Corporation System for seamless processing of encrypted and non-encrypted data and instructions
US5329619A (en) * 1992-10-30 1994-07-12 Software Ag Cooperative processing interface and communication broker for heterogeneous computing environments
JP3367675B2 (ja) 1993-12-16 2003-01-14 オープン マーケット インコーポレイテッド オープンネットワーク販売システム及び取引トランザクションのリアルタイムでの承認を行う方法
US5790677A (en) * 1995-06-29 1998-08-04 Microsoft Corporation System and method for secure electronic commerce transactions
US5812669A (en) 1995-07-19 1998-09-22 Jenkins; Lew Method and system for providing secure EDI over an open network
US5805889A (en) * 1995-10-20 1998-09-08 Sun Microsystems, Inc. System and method for integrating editing and versioning in data repositories
US6115744A (en) * 1996-07-30 2000-09-05 Bea Systems, Inc. Client object API and gateway to enable OLTP via the internet
US6072942A (en) 1996-09-18 2000-06-06 Secure Computing Corporation System and method of electronic mail filtering using interconnected nodes
WO1998015894A1 (en) 1996-10-09 1998-04-16 At & T Corp. Method to produce application oriented languages
US6125122A (en) * 1997-01-21 2000-09-26 At&T Wireless Svcs. Inc. Dynamic protocol negotiation system
US6160907A (en) * 1997-04-07 2000-12-12 Synapix, Inc. Iterative three-dimensional process for creating finished media content
US6084590A (en) * 1997-04-07 2000-07-04 Synapix, Inc. Media production with correlation of image stream and abstract objects in a three-dimensional virtual stage
US5941945A (en) * 1997-06-18 1999-08-24 International Business Machines Corporation Interest-based collaborative framework
US6067623A (en) * 1997-11-21 2000-05-23 International Business Machines Corp. System and method for secure web server gateway access using credential transform
US6636219B2 (en) * 1998-02-26 2003-10-21 Learn.Com, Inc. System and method for automatic animation generation
FI105971B (fi) * 1998-04-30 2000-10-31 Nokia Mobile Phones Ltd Menetelmä ja laitteisto sähköpostin käsittelemiseksi
US6393442B1 (en) * 1998-05-08 2002-05-21 International Business Machines Corporation Document format transforations for converting plurality of documents which are consistent with each other
US6567783B1 (en) * 1998-06-05 2003-05-20 I2 Technologies Us, Inc. Communication across one or more enterprise boundaries regarding the occurrence of a workflow event
US6119149A (en) * 1998-06-05 2000-09-12 I2 Technologies, Inc. System and process allowing collaboration within and between enterprises for optimal decision making
US6397191B1 (en) * 1998-06-05 2002-05-28 I2 Technologies Us, Inc. Object-oriented workflow for multi-enterprise collaboration
US6185734B1 (en) * 1998-07-21 2001-02-06 Hewlett-Packard Company Hierarchical registry structure for managing multiple versions of software components
US6269380B1 (en) * 1998-08-31 2001-07-31 Xerox Corporation Property based mechanism for flexibility supporting front-end and back-end components having different communication protocols
US6148290A (en) 1998-09-04 2000-11-14 International Business Machines Corporation Service contract for managing service systems
US6125391A (en) 1998-10-16 2000-09-26 Commerce One, Inc. Market makers using documents for commerce in trading partner networks
US6463460B1 (en) * 1999-04-23 2002-10-08 The United States Of America As Represented By The Secretary Of The Navy Interactive communication system permitting increased collaboration between users
US6389533B1 (en) 1999-02-05 2002-05-14 Intel Corporation Anonymity server
US6589291B1 (en) * 1999-04-08 2003-07-08 International Business Machines Corporation Dynamically determining the most appropriate location for style sheet application
US6842903B1 (en) * 1999-05-19 2005-01-11 Sun Microsystems, Inc. System and method for providing dynamic references between services in a computer system
US6792605B1 (en) * 1999-06-10 2004-09-14 Bow Street Software, Inc. Method and apparatus for providing web based services using an XML Runtime model to store state session data
US6538673B1 (en) 1999-08-23 2003-03-25 Divine Technology Ventures Method for extracting digests, reformatting, and automatic monitoring of structured online documents based on visual programming of document tree navigation and transformation
US6434628B1 (en) * 1999-08-31 2002-08-13 Accenture Llp Common interface for handling exception interface name with additional prefix and suffix for handling exceptions in environment services patterns
US6289382B1 (en) * 1999-08-31 2001-09-11 Andersen Consulting, Llp System, method and article of manufacture for a globally addressable interface in a communication services patterns environment
US6529909B1 (en) * 1999-08-31 2003-03-04 Accenture Llp Method for translating an object attribute converter in an information services patterns environment
US6332163B1 (en) * 1999-09-01 2001-12-18 Accenture, Llp Method for providing communication services over a computer network system
US7020697B1 (en) * 1999-10-01 2006-03-28 Accenture Llp Architectures for netcentric computing systems
WO2001025918A2 (en) * 1999-10-01 2001-04-12 Accenture Llp Frameworks for methods and systems of providing netcentric computing
EP1228435A4 (en) 1999-11-02 2007-11-14 Jgr Acquisition Inc COMMERCIAL COMMUNITY SCHEME FOR THE WORLD TRADE WEB
US7016977B1 (en) * 1999-11-05 2006-03-21 International Business Machines Corporation Method and system for multilingual web server
US6636889B1 (en) * 2000-01-04 2003-10-21 International Business Machines Corporation System and method for client replication of collaboration space
US6789126B1 (en) * 2000-05-09 2004-09-07 Sun Microsystems, Inc. Addressing message gates in a distributed computing environment
US6792466B1 (en) * 2000-05-09 2004-09-14 Sun Microsystems, Inc. Trusted construction of message endpoints in a distributed computing environment
US6898618B1 (en) * 2000-05-09 2005-05-24 Sun Microsystems, Inc. Client-specified display services in a distributed computing environment
US6973493B1 (en) * 2000-05-09 2005-12-06 Sun Microsystems, Inc. Mechanism and apparatus for security of newly spawned repository spaces in a distributed computing environment
US7010573B1 (en) * 2000-05-09 2006-03-07 Sun Microsystems, Inc. Message gates using a shared transport in a distributed computing environment
US6868447B1 (en) * 2000-05-09 2005-03-15 Sun Microsystems, Inc. Mechanism and apparatus for returning results of services in a distributed computing environment
US6850979B1 (en) * 2000-05-09 2005-02-01 Sun Microsystems, Inc. Message gates in a distributed computing environment
US6917976B1 (en) * 2000-05-09 2005-07-12 Sun Microsystems, Inc. Message-based leasing of resources in a distributed computing environment
US6970869B1 (en) * 2000-05-09 2005-11-29 Sun Microsystems, Inc. Method and apparatus to discover services and negotiate capabilities
US7016966B1 (en) * 2000-05-09 2006-03-21 Sun Microsystems, Inc. Generating results gates in a distributed computing environment
US6950875B1 (en) * 2000-05-09 2005-09-27 Sun Microsystems, Inc. Message conductors in a distributed computing environment
US6789077B1 (en) * 2000-05-09 2004-09-07 Sun Microsystems, Inc. Mechanism and apparatus for web-based searching of URI-addressable repositories in a distributed computing environment
US6643650B1 (en) * 2000-05-09 2003-11-04 Sun Microsystems, Inc. Mechanism and apparatus for using messages to look up documents stored in spaces in a distributed computing environment
US6862594B1 (en) * 2000-05-09 2005-03-01 Sun Microsystems, Inc. Method and apparatus to discover services using flexible search criteria
US6918084B1 (en) * 2000-05-09 2005-07-12 Sun Microsystems, Inc. Spawning new repository spaces using information provided in advertisement schema messages
US7496637B2 (en) * 2000-05-31 2009-02-24 Oracle International Corp. Web service syndication system
WO2001098936A2 (en) * 2000-06-22 2001-12-27 Microsoft Corporation Distributed computing services platform
US7165113B2 (en) * 2000-11-28 2007-01-16 Hewlett-Packard Development Company, L.P. Computer language for defining business conversations
US6573722B2 (en) * 2000-12-15 2003-06-03 Schlumberger Technology Corporation Method and apparatus for cancellation of borehole effects due to a tilted or transverse magnetic dipole
US20020169803A1 (en) * 2000-12-18 2002-11-14 Sudarshan Sampath System and user interface for generating structured documents
US7152205B2 (en) * 2000-12-18 2006-12-19 Siemens Corporate Research, Inc. System for multimedia document and file processing and format conversion
US7669212B2 (en) * 2001-02-02 2010-02-23 Opentv, Inc. Service platform suite management system
US6985958B2 (en) * 2001-03-14 2006-01-10 Microsoft Corporation Messaging infrastructure for identity-centric data access
US7302634B2 (en) * 2001-03-14 2007-11-27 Microsoft Corporation Schema-based services for identity-based data access
US6925481B2 (en) * 2001-05-03 2005-08-02 Symantec Corp. Technique for enabling remote data access and manipulation from a pervasive device
US20020188666A1 (en) * 2001-05-23 2002-12-12 Lemon Michael J. Lightweight dynamic service conversation controller
US20020184507A1 (en) * 2001-05-31 2002-12-05 Proact Technologies Corp. Centralized single sign-on method and system for a client-server environment
US6961760B2 (en) * 2001-07-17 2005-11-01 International Business Machines Corporation Transforming data automatically between communications parties in a computing network
US6684214B2 (en) * 2001-07-30 2004-01-27 Quovadx, Inc. System and method heterogeneous data source integration
US20030046583A1 (en) 2001-08-30 2003-03-06 Honeywell International Inc. Automated configuration of security software suites
US7552222B2 (en) * 2001-10-18 2009-06-23 Bea Systems, Inc. Single system user identity
US20030084171A1 (en) * 2001-10-29 2003-05-01 Sun Microsystems, Inc., A Delaware Corporation User access control to distributed resources on a data communications network
US7412720B1 (en) * 2001-11-02 2008-08-12 Bea Systems, Inc. Delegated authentication using a generic application-layer network protocol
JP3966711B2 (ja) * 2001-11-06 2007-08-29 富士通株式会社 代理応答方法
US7013426B1 (en) * 2001-11-20 2006-03-14 Commerce One, Llc Exchanging and converting document versions
US7970826B2 (en) * 2001-12-06 2011-06-28 Hewlett-Packard Development Company, L.P. Transformational conversation definition language
US6950872B2 (en) * 2001-12-19 2005-09-27 Sun Microsystems, Inc. Methods and systems for facilitating message exchange between networked computing entities
US7127700B2 (en) * 2002-03-14 2006-10-24 Openwave Systems Inc. Method and apparatus for developing web services using standard logical interfaces to support multiple markup languages
US6988099B2 (en) * 2002-06-27 2006-01-17 Bea Systems, Inc. Systems and methods for maintaining transactional persistence
US7487509B2 (en) * 2002-08-08 2009-02-03 Sun Microsystems, Inc. System and method for providing multiple embodiments of abstract software modules in peer-to-peer network environments
US7729922B2 (en) * 2002-08-15 2010-06-01 Open Invention Network, Llc Dynamic interface between BPSS conversation management and local business management

Also Published As

Publication number Publication date
WO2004027548A3 (en) 2004-04-22
KR101066659B1 (ko) 2011-09-22
US20080184265A1 (en) 2008-07-31
CN103198393B (zh) 2016-12-21
US20170013068A1 (en) 2017-01-12
US7340508B1 (en) 2008-03-04
CN103198393A (zh) 2013-07-10
AU2003265547A1 (en) 2004-04-08
JP4712386B2 (ja) 2011-06-29
EP1540497A2 (en) 2005-06-15
WO2004027548A2 (en) 2004-04-01
CN1777881A (zh) 2006-05-24
CN105631642A (zh) 2016-06-01
CN101471961A (zh) 2009-07-01
US9449297B2 (en) 2016-09-20
AU2003265547B2 (en) 2009-09-03
AU2009243428B2 (en) 2012-05-17
JP2005539324A (ja) 2005-12-22
CN101471961B (zh) 2012-11-14
AU2009243428A1 (en) 2009-12-17
CN100456277C (zh) 2009-01-28

Similar Documents

Publication Publication Date Title
KR101066659B1 (ko) 프로세스 흐름 및 코레오그래피 제어기를 웹 서비스로서 제시
US11968131B2 (en) Techniques for providing connections to services in a network environment
US9197694B2 (en) Providing on-demand access to services in a wide area network
US7769877B2 (en) Mobile gateway device
US7984162B2 (en) Methods, systems, and software for providing service integration framework
US7970826B2 (en) Transformational conversation definition language
US20040186891A1 (en) Apparatus and methods for correlating messages sent between services
Kim et al. Web e-speak: Facilitating web-based e-services
AU2012216248B2 (en) Exposing Process Flows and Choreography Controllers as Web Services
Zhang et al. A manageable web services hub framework and enabling technologies for e-sourcing
US8412581B1 (en) Facilitating business transactions between trading networks
KR20050037990A (ko) 웹 서비스 브로커
Quah et al. Linking Businesses for Competitive Advantage; A Mobile Agent-Based Approach
Naick et al. Business-to-Business Integration Using MQSeries and MQSI

Legal Events

Date Code Title Description
N231 Notification of change of applicant
A201 Request for examination
E902 Notification of reason for refusal
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: 20140826

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20150825

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20160830

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20170831

Year of fee payment: 7

LAPS Lapse due to unpaid annual fee