KR100346931B1 - 도메인간 접속 플레인을 통한 도메인간 상호작용을 위한시스템 및 프로세스 - Google Patents

도메인간 접속 플레인을 통한 도메인간 상호작용을 위한시스템 및 프로세스 Download PDF

Info

Publication number
KR100346931B1
KR100346931B1 KR1020007001931A KR20007001931A KR100346931B1 KR 100346931 B1 KR100346931 B1 KR 100346931B1 KR 1020007001931 A KR1020007001931 A KR 1020007001931A KR 20007001931 A KR20007001931 A KR 20007001931A KR 100346931 B1 KR100346931 B1 KR 100346931B1
Authority
KR
South Korea
Prior art keywords
domain
engine
data
inter
source
Prior art date
Application number
KR1020007001931A
Other languages
English (en)
Other versions
KR20010023297A (ko
Inventor
노타니란지트엔.
메이어존이.
힐레리오이스라엘
Original Assignee
아이2 테크놀러지즈, 인크.
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 아이2 테크놀러지즈, 인크. filed Critical 아이2 테크놀러지즈, 인크.
Publication of KR20010023297A publication Critical patent/KR20010023297A/ko
Application granted granted Critical
Publication of KR100346931B1 publication Critical patent/KR100346931B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Human Resources & Organizations (AREA)
  • Economics (AREA)
  • Strategic Management (AREA)
  • Entrepreneurship & Innovation (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Physics & Mathematics (AREA)
  • Tourism & Hospitality (AREA)
  • Quality & Reliability (AREA)
  • Operations Research (AREA)
  • Educational Administration (AREA)
  • Development Economics (AREA)
  • Game Theory and Decision Science (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Primary Health Care (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Multi Processors (AREA)

Abstract

컴퓨터 구현 시스템 및 방법은 도메인간 상호작용을 활성화시킨다. 이 시스템은 제1 도메인과 연관되는 제1 원시 소스(294)를 구비하고 제2 도메인과 연관되는 제2 원시 소스(296)를 구비하는 원시 플레인(292)을 포함한다. 제1 및 제2 원시 소스(294, 296)는 도메인 연관 데이터 및 애플리케이션을 포함한다. 이 시스템은 또한 제1 도메인과 연관되는 제1 도메인 엔진(300) 및 제2 도메인과 연관되는 제2 도메인 엔진(302)을 구비하는 도메인간 접속 플레인(298)을 포함한다. 제1 및 제2 도메인 엔진(300, 302)은 도메인 분석 기능을 수행하도록 동작된다. 이 시스템은 또한 제1 및 제2 원시 소스(294, 296)와 연관되는 어댑터를 포함하고, 이들 어댑터는 제1 및 제2 원시 소스(294, 296)로부터 도메인간 접속 플레인(298) 상으로 데이터 및 정보를 추출하도록 동작된다. 제1 및 제2 도메인 엔진(300, 302)은 제1 및 제2 원시 소스(204, 296)로부터 추출된 데이터 및 정보를 각각 수신한다. 제1 및 제2 도메인 엔진(300, 302)은 또한 원시 플레인(292) 상의 원시 메시징(308)에 의해 투명하게 지원되는, 서로 간의 전역 메시징(306)을 수행하도록 동작된다.

Description

도메인간 접속 플레인을 통한 도메인간 상호작용을 위한 시스템 및 프로세스 {SYSTEM AND PROCESS FOR INTER-DOMAIN INTERACTION ACROSS AN INTER-DOMAIN CONNECTIVITY PLANE}
공급망(supply chain), 기업체 및 사이트의 관리 분야 애플리케이션 및 환경은 의사결정 지원(decision support)을 위한 제조 개체(manufacturing entities)로 널리 사용되며 관리 동작을 돕게 된다. 공급망, 기업체 및 사이트의 관리에 대한 의사결정 지원 환경은 단일 도메인(single-domain)의 단일 환경으로부터 다중 도메인(multi-domain)의 단일 환경으로 발전하였다. 종래의 관리 소프트웨어 애플리케이션은 여러 회사들로부터 제공되는 광범위한 제품군에서 구입할 수 있다. 이들 의사결정 지원 장비는 상기 개체가 복잡한 제조 동작을 보다 효율적으로 관리하도록 해준다. 하지만, 공급망은 흔히 다중 분산(distributed) 이기종(heterogenous) 관리 환경이라는 특징을 갖는다. 따라서, 종래 환경의 효율성은 단일 애플리케이션 구조 때문에 공급망 관리라는 문제에 적용되는 경우에 제한을 받는다. 또한, 이들 문제는 전체 공급망의 "소유자(owner)"가 한 명도 없는 경우에 더욱 심각해진다.
관리 환경을 위한 다음 발전 단계로는 연관된 다중 엔진 및 제품뿐만 아니라 제품에 연관된 다중 도메인을 지원하는 다중 도메인의 이기종 구조를 설정하는 것이 바람직하다. 다양한 관리 환경을 일체형 솔루션(seamless solution)으로 통합하는 것은 도메인간 및 기업체간의 공급망 관리를 활성화시킬 수 있다. 또한, 일부 관리 애플리케이션에 의해 제공되는 중요한 기능은 단순한 추적 트랜잭션(tracking transaction)이 아니라 주요 환경의 최적화이다. 특히, I2 TECHNOLOGIES사로부터 구입 가능한 RHYTHM 계열의 제품은 최적화 기능(optimization functionality)을 제공한다. 하지만, 기업체 또는 공급망 레벨에서의 관리에 대해, SAP으로부터 구입 가능한 애플리케이션과 같은 많은 종래의 애플리케이션은 전사적 자원관리(enterprise resource planning: ERP) 엔진을 사용하며 최적화를 제공하지 않는다. 따라서, 기업체간 또는 도메인간의 레벨로 관리 분석 및 최적화를 확장시켜 공급망에 대해 관리 최적화를 활성화시키는 것이 바람직하다.
본 발명은 공급망(supply chain), 기업체, 및 사이트 관리 분야에 관한 것으로, 보다 구체적으로, 도메인간의 접속 플레인(inter-domain connectivity plane)을 교차하는 도메인간의 상호작용, 처리, 및 통신용 시스템 및 프로세스에 관한 것이다.
도 1은 본 발명에 따른 공급망 분석 및 최적화를 가능하게 하는 코어 환경(core environment)의 하나의 실시예를 개략적으로 도시하는 블록도.
도 2a 및 도 2b는 종래의 도메인간 분석을 위한 다대다(many-to many) 변환 및 본 발명에 따른 도메인간 일대다(one-to-many) 변환을 예시하는 블록도.
도 3은 본 발명에 따른 도메인간 분석 및 최적화와 연관된 접속 차원들의 관계의 하나의 실시예를 예시하는 블록도.
도 4는 본 발명에 따른 다양한 엔진과 다른 데이터 소스의 중간 연결자로 동작하는 화상 정보 중개자(VIB)의 블록도.
도 5는 본 발명에 따른 브라우저 사용자 인터페이스와 비브라우저 사용자 인터페이스 사이의 상호작용 및 화상 정보 중개자와 다양한 데이터 소스 사이의 상호작용하는 VIB를 예시하는 블록도.
도 6은 본 발명에 따라 데이터 서버로 동작하는 비지니스 객체 서버(business object server)의 블록도.
도 7은 본 발명에 따른 상이한 대기행렬 컴포넌트 및 전역 메시징 버스를 예시하는 블록도.
도 8은 본 발명에 따른 애플리케이션 사이의 트랜잭션 메시징을 예시하는 블록도.
도 9a 및 도 9b는 본 발명에 따른 도메인간 및 최적화의 원시 방법, 및 일부 복사본으로 모델 에이전트의 사용을 예시하는 블록도.
도 10a 및 도 10b는 본 발명에 따라 도메인간 접속 플레인에 의해 활성화되는 도메인들 사이의 다대다 상호작용, 및 간단한 도메인 상호작용을 예시하는 블록도.
도 11은 본 발명의 일 실시예에 따른 도메인간 접속 플레인을 예시하는 블록도.
도 12는 도메인간 접속 플레인 상의 엔진에 의해 형성되는 허브(hun) 및 스포크(spoke) 공동 네트워크를 나타내는 블록도.
본 발명에 따르면, 도메인간 접속 플레인을 통한 도메인간 상호작용을 위한 시스템 및 프로세스가 종래의 공급망, 기업체 및 사이트 관리 환경보다 우수한 장점을 제공하도록 개시된다.
본 발명의 한가지 특징에 따르면, 컴퓨터 구현 시스템은 도메인간 상호작용을 활성화시킨다. 이 시스템은 제1 도메인과 연관되는 제1 원시 소스 및 제2 도메인과 연관되는 제2 원시 소스를 구비하는 원시 플레인을 포함한다. 제1 및 제2 원시 소스는 도메인 연관된 데이터 및 애플리케이션을 포함한다. 이 시스템은 또한 제1 도메인과 연관되는 제1 도메인 엔진 및 제2 도메인과 연관되는 제2 도메인 엔진을 구비하는 도메인간 접속 플레인을 포함한다. 제1 및 제2 도메인 엔진은 도메인 분석 기능을 수행하도록 동작한다. 이 시스템은 또한 제1 및 제2 원시 소스로부터 도메인간 접속 플레인 상으로 데이터 및 정보를 추출하도록 동작하는, 제1 및 제2 원시 소스와 연관되는 어댑터를 포함한다. 제1 및 제2 도메인 엔진은 제1 및 제2 원시 소스로부터 추출되는 데이터 및 정보를 각각 수신한다. 제1 및 제2 도메인 엔진은 또한 원시 플레인 상의 원시 메시징에 의해 투명하게 지원되는 서로 간의 전역 메시징을 수행하도록 동작한다.
본 발명의 다른 특징에 따르면, 컴퓨터 구현 프로세스는 도메인간 상호작용을 위해 제공된다. 원시 플레인은 도메인들과 각각 연관되된 복수의 원시 소스-여기서 복수의 원시 소스는 도메인 연관된 데이터 및 애플리케이션을 포함함-를 구비하도록 구현된다. 도메인간 접속 플레인은 또한 도메인과 각각 연관되는 복수의 도메인 엔진-여기서 복수의 도메인 엔진은 도메인 분석 기능을 수행하도록 동작함-을 구비하도록 구현된다. 데이터 및 정보는 복수의 원시 소스로부터 도메인간 접속 플레인 상으로 추출되고, 복수의 도메인 엔진에서 수신된다. 또한, 메시징은 원시 플레인 상의 원시 메시징에 의해 투명하게 지원되는 복수의 도메인 엔진들 사이에서 수행된다.
본 발명의 기술적인 장점은 도메인간 접속 플레인이 분산된 도메인을 통한 조화를 허용하도록 추상화된 계층을 제공하고, 객체 구조, 메시징 패러다임, 이름지정 및 보안과 같은 특징을 조화시킴으로써 우수한 장점을 제공한다.
다른 기술적 장점은 이하 도면, 상세한 설명, 및 청구범위로부터 당업자에게 더욱 명백해진다.
본 발명 및 그 장점의 보다 완벽한 이해가 동일 도면부호가 동일한 특징을 나타내는 첨부 도면을 참조로 하는 이하의 설명을 참조함으로써 이루어질 수 있다.
도 1은 본 발명의 실시예에 따른 공급망 분석 및 최적화를 가능하게 하는 코어 환경(도면부호 10으로 표시됨)을 개략적으로 예시하는 블록도이다. 코어 환경(10)은 도메인간(inter-domain) 및 기업체간(inter-enterprise) 분석 및 최적화를 위한 프레임워크를 제공한다. 이 프레임워크는 광범위한 기업체 분산 환경에서 최적화를 허용한다. 상기 프레임워크는 상기 광범위한 기업체에 대해 최적화를 허용하는 도메인간 의사결정 지원 환경을 또한 제공한다. 상기 프레임워크는 자신이 다른 애플리케이션을 내장하며, 또한 다른 애플리케이션 내에 내장될 수 있다. 코어 환경(10)은 사용자 인터페이스(UI), 메시징, 데이터 액세스, 데이터 모델링 및 기타 용도를 포함하는 다용도의 다중 엔진을 통합하고 있다. 코어 환경(10)은 공급망 관리를 위해 확장성(scalability), 공통 프로토콜(common protocol) 및 보안성(security)을 제공하며, 컴포넌트 사이의 접속 및 다른 애플리케이션과의 접속을 제공하도록 범용 어댑터 프레임워크를 제공한다. 본 명세서 내에 기술되는 코어 환경(10) 내의 모든 컴포넌트 및 기능은 프로세서, 메모리, 입/출력(I/O) 장치 및 데이터 저장 소자와 같은 통상의 컴포넌트로 이루어지는 컴퓨터 장치 상에서 실행되는 소프트웨어로 구현될 수 있다.
도시된 바와 같이, 코어 환경(10)은 다양한 기업체 및 사이트에 의해 사용될 수 있는 관리 환경과 연관된 다수의 데이터 소스(12)를 포함한다. 데이터 소스(12)는 레거시(legacy) 데이터 소스(예를 들어, IBM 메인프레임 및 중간 규모(mid-range) 시스템), 관계 데이터베이스 관리 시스템(RDBMS)(예를 들어, ORACLE, SYBASE), 전사적 자원 관리 시스템(ERP)(예를 들어, SAP), I2 TECHNOLOGIES 데이터 소스, 데이터 웨어하우스(data warehouse) 및 온-라인 분석 처리(OLAP) 소스를 포함하지만 이에 국한되는 것은 아니다. 코어 환경(10)은 데이터 소스(12)와 인터페이스되도록 계층(layer)을 제공하는 공급망 데이터 링크(14)를 포함한다. 예를 들면, 공급망 데이터 링크(14)는 I2 TECHNOLOGIES사로부터 구입 가능한 RHYTHM-LINK 제품으로 설정되는 계층일 수 있다.
비지니스 객체 서버(business object server; BOS)(16)는 연관된 데이터 소스(12)와 인터페이스되도록 공급망 데이터 링크(14)를 통해 작용한다. 대안적으로, BOS(16)는 데이터 소스(12)와 직접 인터페이스될 수 있다. 데이터 소스(12) 각각에 대해, BOS(16)는 특정 데이터 소스(12)와 인터페이스되도록 동적으로 적재되는 어댑터를 사용하며, 코어 환경(10) 내의 상위 레벨과 통신하도록 공통 BOS 인터페이스를 사용한다. 또한 BOS(16)의 구조 및 동작이 이하 도시되고 기술된다. 도 1에 도시된 바와 같이, BOS(16)는 공급망을 따라 관리 분석 및 최적화를 조정하는 여러 도메인 엔진으로 이루어지는 관리 엔진(18)과 인터페이스될 수 있다.
관리 엔진(18)은 도메인간 접속 플레인(20) 상에 통합된다. 도메인간 접속 플레인(20)은 관리 엔진(18)이 공급망 레벨에서 동작하도록 허용하는 모델 에이전트(model agent)의 메시징 및 전송을 위한 추상 계층(abstract layer)을 제공한다. 도메인간 접속 플레인(20)은 특히 도메인간 의사결정 지원을 위해 설치되는데, 도메인간 접속 플레인(20)의 구조와 동작 및 그 컴포넌트에 대해 아래에서 기술한다. 도메인간 접속 플레인(20)에 의해 제공되는 기능 중에는 도메인 사이의 메시징 기능, 긴급한 경우 도메인 사이의 개선된 조기 경보 시스템 기능, 모델 에이전트의 전송 기능 및 느슨하게 결합된 최적화의 활성화 기능이 있다. 도메인간 접속 플레인(20)은 또한 고객 애플리케이션(22) 및 지원 애플리케이션(24)과 인터페이스된다.
화상 정보 중개자(VIB; 26)는 도메인간 접속 플레인(20)과 인터페이스되어다양한 소스로부터 정보를 획득하고 해당 정보를 공통 포맷으로 패키지화한다. 상기 공통 포맷은 정보 소스가 변경될 때마다 변경될 필요가 없는 인터페이스 컴포넌트의 라이브러리를 전역 사용자 인터페이스(28)가 사용하도록 허용한다. 하나의 실시예에서, 사용자 인터페이스 컴포넌트는 JAVABEANS 또는 ACTIVEX 사용자 인터페이스 컴포넌트를 사용하여 구현되며, JAVA 언어가 확장성을 제공하기 위해 사용된다. BOS(16)와 마찬가지로, 화상 정보 중개자(26)는 특정 정보 소스와 인터페이스되도록 구체적으로 지정된 동적으로 적재되는 어댑터를 사용한다. 코어 환경(10)은 또한 도메인간 접속 플레인(20) 상의 엔진(18) 사이의 상호작용을 활성화시키는 전역 메시지 버스 및 추상 대기행렬(30)을 포함한다. 하나의 실시예에서, 동기 통신은 공통 객체 요구 중개자 구조(CORBA) 및 분산 컴포넌트 객체 모델(DCOM)에 의해 조정되며, 비동기 통신은 TIBCO, MQSDERIES, ACTIVEWEB 및 SMTP(simple mail transfer protocol)을 포함하지만 이에 국한되지 않는 많은 메시징 계층을 지원함으로써 조정된다.
코어 환경(10) 내에서, 전역 사용자 인터페이스(28)는 다중 엔진(18) 및 소스(12)에 대해 공통 사용자 인터페이스를 지원한다. 전역 사용자 인터페이스(28)는 재사용 가능한 데이터-인식 컴포넌트의 공통 집합이 다중 엔진 유형에 대해 설정될 수 있도록 허용한다. 다수의 데이터-인식 사용자 인터페이스 컴포넌트는 트리, 트리-테이블, 테이블, 2-차원 및 3-차원 차트(선, 바(bar), 간트(Gantt), 파이(pie)), 맵 및 그래프, 다중-차원, 및 좌표축(axis-cross)으로서 지원될 수 있다. 전역 사용자 인터페이스(28)는 공통 확장성 메커니즘, 공통 보안 프레임워크및 공통 사용자 모델을 또한 설정할 수 있다.
코어 환경(10)은 다수의 상이한 유형의 사용자 인터페이스(예를 들어, ACTIVEX 사용자 인터페이스, JAVABEANS-기반 독립형 사용자 인터페이스, JAVABEANS-기반 브라우저 사용자 인터페이스 및 동적-SHTML 서브릿(servelet) 사용자 인터페이스를 포함함)를 지원할 수 있다. 상기 ACTIVEX 사용자 인터페이스는 COM 인터페이스를 통해 데이터 관리자에 지원될 수 있으며, 이것은 화상 정보 중개자(VIB)의 서브-컴포넌트가 될 수 있다. 또한, VIB(26) 데이터 모델을 인식하는 데이터 인식 ACTIVEX 컴포넌트가 제공될 수 있다. 이 사용자 인터페이스는 ACTIVEX를 포함하는 JAVABEANS 컴포넌트를 지원할 것이다. 상기 JAVABEANS-기반 독립형 사용자 인터페이스는 VIB(26) 데이터 모델을 인식하는 JAVABEANS를 포함할 수 있다. 이 사용자 인터페이스는 MICROSOFT JAVA 가상 머신(virtual machine)을 사용하는 JAVA 컴포넌트를 포함하는 ACTIVEX 컴포넌트를 지원할 것이다. 상기 JAVABEANS-기반 브라우저 사용자 인터페이스는 순수한 JAVA 사용자 인터페이스일 수 있다. 이것은 네트워크 컴퓨터 상에서뿐만 아니라 어떠한 브라우저에서도 실행될 수 있도록 설계될 수 있다. 순수 JAVA 인터페이스로서, 상기 사용자 인터페이스는 어떠한 JAVA 가상 머신(JVM) 내에서도 실행될 것이다. 상기 동적-SHTML 서브릿 사용자 인터페이스는 인터넷상에서 발견되는 것과 같은 저대역 상태(low-bandwidth situation)를 위해 설계될 수 있다. 이 방법은 웹 브라우저 상에서 디스플레이되는 동적 HTML 페이지를 제공하는 서버 측면의 처리를 분산시킨다.
일반적으로 코어 환경(10)은 다중 레벨의 현존 또는 미래의 관리 엔진을 집적화하기 위한 것이며, 다수의 키 속성(key attributes)을 소유한다. 코어 환경(10)은 프로토콜을 개방하거나 설정하기 위한 것이며, 이에 의해 애플리케이션은 코어 환경(10) 하에서 동작하도록 개발될 수 있다. 코어 환경(10)은 컴포넌트 기반(component based)이며 표준 컴포넌트 아키텍처(standard component architecture)를 사용한다. 예를 들어, CORBA 및 DCOM은 분산형 컴포넌트 아키텍처로 사용될 수 있으며, JAVABEANS 및 ACTIVEX는 사용자 인터페이스 컴포넌트 아키텍처로 사용될 수 있다. 컴포넌트 아키텍처를 사용함으로써, 코어 환경(10)은 모든 변화가 동시에 발생하지 않고 피스(piece) 단위로 발생하도록 하며, 사용자가 유용한 컴포넌트를 선택하고, 유용한 컴포넌트만을 사용하도록 하며, 컴포넌트를 재사용할 수 있도록 하며, 제3의 컴포넌트를 결합할 수 있도록 한다.
코어 환경(10)은 서로 다른 다양한 방법으로 확장(scaling)될 수 있다. 컴포넌트는 적재균형(load balancing)될 수 있으며, 다중 스레드(multi-thread)가 가능한데, 이는 결과적으로 스루풋(throughput)을 증대시킨다. 아래에서 기술하는 바와 같이, 범용 어댑터 프레임워크(universal adaptor framework)는 다대다(many-to-many) 지시를 방지하며, 이는 결과적으로 확장성을 증대시킨다. 또한 코어 환경(10)에 의해 보안 문제를 처리하기 때문에, 개별적인 엔진은 보안 문제를 고려하지 않아도 된다. 이 또한 확장성을 증대시킨다.
보안 문제와 관련하여, 코어 환경(10)은 다수의 형태의 보안성을 제공한다. 예를 들어, 사용자 인터페이스(28)와 화상 정보 중개자(visual information broker; 26) 사이에 보안을 유지하고, 또한 메시징(messaging) 보안을 유지할 수있다. 이들 양 경우에, 사용자 인증뿐만 아니라 암호를 제공할 수 있다. 이때 중요한 사실은 코어 환경(10)은 모든 엔진의 보안성을 고려할 필요가 없도록 구현될 수 있다는 것이다.
그러나 코어 환경(10)은 엔진 아키텍처에 대하여 최소의 사항을 요구한다. 하나의 실시예예서, 코어 환경(10)은 외부 인터페이스 또는 메모리 내(in-memory) JAVA 인터페이스 중에서 하나의 인터페이스가 엔진에 제공될 수 있다고 가정한다. 이 실시예에서, 외부 인터페이스가 제공되는 경우, 인터페이스는 CORBA 인터페이스, COM/DCOM 인터페이스, 공유 라이브러리(shared library), 구조적 질의 언어(structured query language; SQL), 객체 데이터베이스 인터페이스(object database interface) 또는 소켓 인터페이스(socket interface)가 될 수 있다. 메모리 내 JAVA 인터페이스가 제공되는 경우에는, 일반적으로 엔진 내에 JAVA 가상 머신(JAVA virtual machine; JVM)을 내장하고 로컬 JAVA 인터페이스(local JAVA interface; LJI)―여기서 로컬 JAVA 인터페이스는 JAVA 원시 인터페이스(JAVA native interface; JNI)를 통해 로컬 원시 인터페이스(local native interface; LNI)를 호출함―를 기록함으로써 인터페이스를 구현할 수 있다. 엔진에 대하여 가질 수 있는 다른 가정은 엔진이 CORBA 클라이언트가 될 수 있는 기능을 가지며, CORBA 구조를 정렬(marshall)할 수 있는 기능을 가지고 있다는 것이다. 이들 태스크 모두를 위해 원시 컴포넌트가 제공될 수 있다. 그러나 이 경우에 코어 환경(10)은 구체적으로 엔진이 CORBA 서버이어야 한다는 요구를 하지 않는데, 엔진이 CORBA 서버인 경우에는 CORBA 이벤트 루프로 엔진의 이벤트 루프를 훅업(hook-up)해야 한다.
범용 어댑터 프레임워크(Universal Adapter Framework)
코어 환경(1)을 생성하는데 있어서 발생하는 하나의 문제점은 하나의 제품 또는 애플리케이션의 인터페이스를 다른 제품 또는 애플리케이션의 인터페이스와 매칭하는 것이다. 이에 대한 하나의 가능한 해결방법은 모든 가능한 인터페이스 조합 사이에 변환기(converters)를 기록하는 것이다. 그러나 이 방법은 다수의 변환기를 관리할 수 없다고 하는 고전적인 다대다 문제를 야기한다. 도 2a는 도메인간 분석에 있어서 이러한 종래의 다대다 변환 문제를 예시한다. 도시되어 있는 바와 같이, 환경(40)은 복수의 제품, 애플리케이션, 데이터 소스 또는 다른 개체(42)를 포함할 수 있는데, 이들은 상호간에 인터페이스를 요구한다. 환경(40)에는 라인으로 표시되며, 각 쌍의 개체(42) 사이의 인터페이스와 연관된 변환기가 제공된다. 도시되어 있는 바와 같이, 이러한 다대다 해결 방법을 사용하는 경우, 개체(42)의 수가 증가함에 따라 그 수가 증가할 가능성이 있는 다수의 변환기를 제공하고 관리해야 한다.
도 2b는 본 발명에 따른 도메인간 분석을 위한 일대다(one-to-many) 변환을 예시하는 블록도이다. 이러한 해결 방법은 서로 다른 차원(dimension)의 접속이 동일한 메커니즘을 사용하여 접속하는 범용 어댑터 프레임워크를 사용함으로써 가능해진다. 도시되어 있는 바와 같이, 환경(44)은 복수의 제품, 애플리케이션, 데이터 소스 또는 다른 개체(46)를 포함할 수 있다. 그러나 도 2a의 환경(40)과 달리, 환경(44)은 범용 인터페이스(50)를 추가로 포함한다. 이러한 설계에 의해, 각각의 개체(46)와 범용 인터페이스(50) 사이에 단지 하나의 어댑터(48)를 제공하고 관리하면 된다. 일반적으로 어댑터(48)는 개체(46)에서부터 범용 인터페이스(50)로 소유권을 가진(proprietary) 인터페이스를 매핑한다. 따라서 도 2a의 다대다 변환 대신에 일대다 변환이 허용된다. 또한 특정 개체(46)에 대한 인터페이스가 요구되는 경우에는 적당한 어댑터(48)를 적재하고 더 이상 요구되는 인터페이스가 없는 경우에는 어댑터를 제거하는 방식으로, 어댑터(48)를 동적으로 적재할 수 있다.
이러한 범용 어댑터 프레임워크는 동적으로 적재되는 어댑터(48)를 사용하여 다중 차원 전반에 걸쳐 동작한다. 이들 접속 차원은 화상(VIB에 의해 처리됨), 데이터(BOS에 의해 처리됨), 메시징 및 대기행렬(queuing)을 포함할 수 있다. 동적으로 적재되는 어댑터(48)에 의해 코어 환경(10) 내에 개방성을 구축할 수 있으며, 접속 차원 전체에 걸쳐 동일한 메커니즘을 사용할 수 있다. 따라서 코어 환경(10) 내의 사용자 및 개발자의 학습 곡선이 감소된다.
접속 차원(Adaption Dimensions)
도 3은 본 발명에 따른 도메인간 분석 및 최적화와 연관된 접속 차원들의 관계의 하나의 실시예를 예시하는 블록도이다. 도 3은 환경(60)의 일례를 도시하는데, 여기서 환경(60)은 4개의 접속 차원―사용자 인터페이스, 데이터, 대기행렬 및 메시징 버스―을 포함하며, 이들 모두는 동적으로 적재되는 어댑터와 관련되어 있다.
먼저 데이터 소스에 대하여 설명하면, 환경(60)은 동적 적재가능 어댑터(68, 70)를 사용하여 비지니스 객체 서버(business object server; BOS; 66)에 의해 액세스되는 관리 엔진(62) 및 데이터 저장장치(64)를 포함한다. SAP 기반 시스템(72) 및 ORACLE 기반 시스템(74)은 RHYTHM-LINK 애플리케이션(76)을 통해 링크된다. 그 후 제2 BOS(78)는 어댑터(80, 82)를 사용하여 데이터 저장장치(64) 및 RHYTHM-LINK 애플리케이션(76) 모두를 액세스한다. 이와 유사하게 공통 데이터 모델 저장장치(84)는 어댑터(88)를 사용하여 BOS(86) 및 BOS(90)에 의해 액세스된다. BOS(66, 78, 86, 90)는 모두 도메인 엔진(92)과 인터페이스하며, 공급망 내에서 동작하는 다수의 도메인 엔진 중의 하나가 될 수 있다. 또한 RHYTHM-LINK 애플리케이션(76)은 도메인 엔진(92)과 직접 인터페이스할 수 있으며, 특히 도메인 엔진(92)이 I2 TECHNOLOGIES의 제품인 경우에는 더욱 그러하다. 그 후 도메인 엔진(92)은 동적 적재가능 어댑터(96)를 통해 화상 정보 중개자(94)에 정보를 제공한다. 그 후 영상 정보 중개자는 데이터를 공통 사용자 인터페이스(UI; 98)에 제공하여, 사용자에게 이를 디스플레이한다. 또한 환경(60)은 어댑터(102)를 사용하여 원시 메시징 기능과 인터페이스하고 엔진(92)이 다른 도메인 엔진과 상호 작용하도록 하는 전역 메시지 버스(global message bus; 100)를 포함한다. 또한 전역 메시지 버스(100)는 어댑터(106)를 사용하여 메시지가 관계 데이터베이스 관리 시스템(relational database management system; RDBMS; 108) 또는 객체 지향 데이터 베이스 관리 시스템(object oriented database management system; ODBMS; 108)중의 하나에 지속되도록 하는 대기행렬 어댑터(queue adapter; 104)와 인터페이스한다. 이러한 지속성은 메시지 전달을 보장하기 위한 기초를 형성할 수 있다.
사용자 인터페이스 접속 차원은 사용자에게 정보를 표현하는 것과 연관되어 있으며, 공통 사용자 인터페이스(98), 화상 정보 중개자(94) 및 어댑터(96)와 관련되어 있다. 예를 들어 엔진(92)이 공통 사용자 인터페이스(98)에 의해 액세스될 필요가 있는 경우, 엔진(92)은 이를 위해 제공된 화상 정보 중개자(VIB) 어댑터(96)를 가지고 있어야 한다. 도시되지는 않았지만, 이와 마찬가지로 애플리케이션이 엔진(92)을 애플리케이션의 사용자 인터페이스에 내장할 필요가 있는 경우, 애플리케이션의 사용자 인터페이스는 화상 정보 중개자(94)를 호출한 후 엔진(92)과 인터페이스한다.
데이터 접속 차원은 엔진(92)에 대한 데이터 액세스 가능성과 연관되어 있으며, BOS(66, 78, 86, 90) 및 BOS 어댑터(68, 70, 80, 82, 88)와 연관되어 있다. 애플리케이션 또는 데이터 소스가 엔진(92)에 의해 액세스될 필요가 있는 경우, 애플리케이션 또는 데이터 소스를 위한 비지니스 객체 서버(BOS) 어댑터가 제공되어야 한다.
도 3에 직접 예시되어 있지는 않지만, 대기행렬 접속 차원은 트랜잭션용 대기행렬과 연관되어 있다. 대기행렬 어댑터는 예를 들어 대기행렬이 ORACLE 및 SYBASE와 같은 관계 데이터베이스 관리 시스템(RDBMS) 및 객체 데이터베이스 관리 시스템(ODBMS)을 포함하는 트랜잭션 데이터베이스 상에 구축되도록 한다. 대기행렬 어댑터는 주 애플리케이션 또는 엔진이 사용하는 모든 트랜잭션 데이터베이스로구축될 수 있다.
메시지 버스 접속 계층은 메시지 계층 상의 통신과 연관되어 있으며, 전역 메시지 버스(100) 및 어댑터(102)와 관련되어 있다. 예를 들어, 애플리케이션이 애플리케이션의 원시 메시지 계층 상에 구현된 엔진(92)과 통신할 필요가 있는 경우, 이러한 원시 메시지 계층에는 어댑터(102)가 제공되어야 한다.
화상 정보 중개자(Visual Information Broker)
도 4는 본 발명에 따른 다양한 엔진과 다른 데이터 소스의 중간 중간자(middle tier)로 동작하는 화상 정보 중개자(VIB)의 블록도이다. 도시되어 있는 바와 같이, 엔진 유형 2의 제1 엔진(110)은 엔진 인터페이스(112)를 가지며, 엔진 유형 1의 제2 엔진(114)은 엔진 인터페이스(116)를 가진다. 화상 정보 중개자(VIB; 118)는 어댑터(120)를 사용하여 엔진 인터페이스(112)를 액세스하고, 어댑터(122)를 사용하여 엔진 인터페이스(116)를 액세스한다. 화상 정보 중개자(118)는 로컬 캐싱 프록시 서버(local caching proxy server; 126)를 포함할 수 있는 사용자 인터페이스(124)에 정보를 제공할 수 있다.
VIB(118)은 정보를 얻기 위한 엔진의 유형에 상관없이 사용자 인터페이스(124)에 의해 액세스될 수 있는 공통 인터페이스를 가진다. 전술한 바와 같이, 사용자 인터페이스(124)는 ACTIVEX 및 JAVABEANS 컴포넌트와 같은 데이터-인식 컴포넌트(data-aware components)의 라이브러리를 포함할 수 있다. VIB(118)은 요구를 사용자 인터페이스(124)로부터 서로 다른 유형을 가지는엔진(110, 114)으로 라우트(route)할 수 있다. 또한 VIB(118)은 동일한 유형의 엔진을 적재균형할 수 있다. 이러한 VIB(118)의 데이터 관리자 부 컴포넌트는 전술한 범용 어댑터 프레임워크의 일부이다. VIB(118) 및 어댑터(120, 122)는 사용자 인터페이스 지향 데이터 모델이 다중 엔진(110, 114)으로부터 사용자 인터페이스(124)를 지향하는 공통 데이터 모델로 접속되도록 한다. 이것은 공통 사용자 인터페이스(124)에 대한 기초를 형성한다.
VIB(118)은 데이터베이스, 메모리 내 엔진, CORBA 서버, 플랫 파일(flat file), 메시징, 객체 데이터베이스 등을 포함하는 다중 소스 전체에 걸쳐 인터페이스를 제공할 수 있다. VIB(118)은 적당한 동적 적재가능 어댑터를 사용하여, 소스와 인터페이스한다. 어댑터는 원하는 소스 및 VIB(118)과 연결되도록 특별히 설계될 수 있다. 이러한 설계에 의해 테이블, 트리, 네임 밸류(name-value) 쌍, 다차원 및 객체 그래프를 포함하는 다양한 범위의 데이터 모델을 지원할 수 있다.
도 5는 본 발명에 따른 브라우저(browser) 사용자 인터페이스와 비브라우저(non-browser) 사용자 인터페이스 사이의 상호작용뿐만이 아니라, 화상 정보 중개자와 다양한 데이터 소스 사이의 상호작용을 도시하는 블록도이다. 도시되어 있는 바와 같이, 환경은 브라우저 사용자 인터페이스(130) 및 비브라우저 사용자 인터페이스(132)를 포함할 수 있다. 브라우저 사용자 인터페이스(130)는 방화벽(firewall; 136)과 IIOP 터널(138)을 제공하는 워크스테이션(134)을 통해 연결된다.
화상 정보 중개자(VIB; 140)는 정보 소스(142) (DCOM, CORBA)에 대한 액세스를 IIOP 터널(138)과 비브라우저 사용자 인터페이스(132) 모두에 제공한다. 또한 VIB(140)는 VIB(144)와 인터페이스할 수 있다. 다른 VIB(146)은 정보 소스(148)(SQL, OLAP, I2-FP, I2-SCP)에 대한 액세스를 비브라우저 사용자 인터페이스(132)에 제공할 수 있다. 또한 VIB(146)는 VIB(140)를 통해, VIB(144)와 인터페이스할 수 있다. VIB(140, 144, 146)은 다중 데이터 소스를 동시에 액세스하도록 지정될 수 있으며, 이러한 데이터 소스는 CORBA 서버, DCOM 서버, COM 객체, RDBMS 데이터, ODBMS 객체 및 메모리 내 객체를 포함할 수 있다. 또한 VIB(140, 144, 146)는 적재균형되어 다중 서버 또는 다른 소스의 정보 전체에 걸쳐 적재를 분할하고, 이러한 적재균형은 사용자 인터페이스(130, 132)에 대하여 투과성(transparent)을 가질 수 있다.
그 이후에 개별적인 요구가 대기 가능한 특정 최대 수에 도달할 때까지 자신의 스레드에서 실행될 수 있는 경우에, 화상 정보 중개자는 스레드 풀(thread-pool) 모델을 사용하여 다중 스레드 환경을 지원할 수 있다. 또한 화상 정보 중개자는 엔진 내에 직접 내장될 수 있으며, 네트워크 액세스와 비교하여 높은 스루풋을 가지는 엔진과 동일한 머신 상에서 구동할 수 있다.
하나의 실시예에서, 화상 정보 중개자는 데이터 관리자, 이벤트 채널 및 페이지 관리자 부 컴포넌트를 포함한다. 데이터 관리자 부 컴포넌트는 COM뿐만 아니라 CORBA를 통해 액세스가능하며, 트리-테이블, 네임 밸류 리스트, 좌표축(axis cross), 다중 차원 및 객체 그래프를 포함하는 다중 데이터 모델을 지원한다. 또한 데이터 관리자는 모델 에이전트의 고객 지향 실행을 지원할 수 있다. 이벤트채널 부 컴포넌트는 공통 사용자 인터페이스가 서버 이벤트에 기입(subscribe)하고 서버 이벤트를 통지받을 수 있도록 한다. 페이지 관리자 부 컴포넌트는 사용자 인터페이스가 SHTML 포맷으로 생성되도록 한다. 이러한 포맷은 동적 서브릿(servelet)을 사용하여 정적 HTML을 인터리빙(inter-leaving)하도록 한다. 이는 요구마다 개별적인 절차를 요구하지 않고 요구마다 개별적인 스레드(이는 스레드-풀 모델을 사용하기 때문에 최대임)만을 요구하기 때문에, CGI에 비해 더 효율적이다. 또한 페이지 관리자는 JAVASOFT 서브릿 애플리케이션 프로그램 인터페이스(application program interface; API)와 호환 가능하다. 페이지 관리자는 애플리케이션-지정 서브릿뿐만이 아니라 표준 서브릿 컴포넌트 내에 적재될 수 있다. 페이지 관리자는 JAVASOFT JAVASERVER와 비교하여 여러 가지 추가 특징 및 차이점을 가지지만 이와 유사하다. 페이지 관리자는 독립적으로 사례화(instantiated)되거나 또는 다른 처리에서 사례화될 수 있다. 사례화 처리는 서브릿과 처리 사이에 매우 밀접한 결합을 허용한다. 페이지 관리자는 적재균형될 수 있으며, 웹 서버를 대신하지 않고 웹 서버와 함께 동작하도록 설계된다. 또한 페이지 관리자는 서브릿 매개변수화(parameterization)를 페이지 매개변수화와 링크하여, 동적 서브릿이 SHTML 페이지와 링크된 직접 매개변수화 링크를 형성할 수 있도록 한다.
비지니스 객체 서버(Business Object Servers)
도 6은 본 발명에 따른 데이터 서버로 동작하는 비지니스 객체 서버(BOS)의 블록도이다. 다수의 데이터 소스(150)는 데이터 소스(150)와 비지니스 객체서버(BOS; 154) 사이에서 인터페이스하는 연관된 동적 적재가능 BOS 어댑터(152)를 가진다. 비지니스 객체 서버(154)는 표준 전체 비지니스 객체 서버가 될 수 있는 BOS 인터페이스(156)를 포함한다. BOS 클라이언트(158)는 BOS 인터페이스(156)를 통해 비지니스 객체 서버(154)와 인터페이스할 수 있다. 도시되어 있는 바와 같이, BOS 클라이언트(158)는 비지니스 객체 서버(154)를 통해 데이터 소스로부터 판독하거나 데이터 소스에 기록할 수 있으며, 비지니스 객체 서버(154)는 적당한 BOS 어댑터(152)를 통해 데이터 소스(150)와 인터페이스할 수 있다. BOS 어댑터(152)의 동적 적재가능 특성은 이들이 필요한 경우에는 적재될 수 있으며, 필요하지 않은 경우에는 비지니스 객체 서버(154)의 동작에 영향을 미치지 않고 제거될 수 있음을 의미한다.
일반적으로, BOS 클라이언트(158)는 관리 엔진이 될 수 있으며, 비지니스 객체 서버(154)는 서로 다른 다중 데이터 소스(150)로부터 엔진으로 객체를 공급할 수 있다. 이러한 방식으로, 비지니스 객체 서버(154)는 기술된 범용 어댑터 프레임워크의 일체형 부품을 형성한다. BOS 어댑터(152)는 데이터를 다중 데이터 소스(150)로부터 특정 비지니스 객체로 접속한다. 따라서 각 비지니스 객체 서버는 각 비지니스 객체 서버가 접속하는 데이터 소스 인터페이스에 의해 분류(classify)될 수 있다.
데이터 소스(150)와 접속하기 위한 BOS 어댑터(152)는 공통 모델 및 다른 모델 포맷을 가질 수 있다. 공통 모델 포맷에 있어서, 표준 BOS 인터페이스(156) 및 표준 BOS 어댑터(152)는 단일 객체로 결합될 수 있다. 이러한 경우, BOS어댑터(152)는 객체 관계 매핑(object-relational mapping)만을 제공한다. 비표준 BOS 어댑터(152)에 있어서, BOS 어댑터(152)뿐만 아니라 특정 비지니스 객체 서버(154)의 개발을 허용하기 위한 애플리케이션이 제공될 수 있다. 다른 모델 포맷에 있어서, 전사적 자원 관리(enterprise resource planning; ERP) 시스템 및 다른 관리 시스템을 포함하는 다수의 비표준 데이터 소스(150)와 접속하기 위한 BOS 어댑터(152)가 제공될 수 있다. BOS 어댑터(152)는 소유권을 가지는 비표준 데이터 소스(150)를 액세스할 수 있도록 동작할 수 있다. 다른 모델 포맷에 있어서, 특정 비지니스 객체 서버(154) 및 BOS 어댑터(152)의 개발을 허용하기 위한 애플리케이션이 역시 제공될 수 있다.
대기행렬(queuing) 및 메시징(messaging)
도 7은 본 발명에 따른 대기행렬 및 전역 메시징 버스의 상이한 구성요소를 도시하는 블록도이다. 상기 대기행렬 및 전역 메시징은 또한 상기 기술된 범용 어댑터 프레임워크로 구성된다. 대기행렬과 관련하여 저장장치(160)는 관계형 또는 객체 데이터베이스 관리 시스템(RDBMS, ODBMS)용 트랜잭션(transaction)을 포함하는 대기행렬(queue; 162)를 포함할 수 있다. 동적 로드가 가능한 대기행렬 어댑터(164)는 대기행렬 관리자(166)로부터 대기행렬(162)까지의 인터페이스를 제공한다. 대기행렬 관리자(166)는 대기행렬 관리자(166)를 통한 표준일 수 있는 대기행렬 애플리케이션 프로그램 인터페이스(API)(168)를 포함한다. 트랜잭션 메시지 관리자(TMM; 170) 및 애플리케이션(172)은 대기행렬 API(168)를 통해 대기행렬관리자(166)에 인터페이스 접속될 수 있다.
마찬가지로, 전역 메시징과 관련하여 트랜잭션 메시지 관리자(TMM; 170) 및 애플리케이션(172)은 메시지 버스 API(174)를 통해 메시지 버스 관리자(176)에 인터페이스 접속될 수 있다. 이어서, 메시지 버스 관리자(176)는 동적 로드가 가능한 메시지 버스 어댑터(178)를 사용하여 하부 원시 애플리케이션의 원시 메시징(180)에 인터페이스 접속될 수 있다. 이로 인해 전역 메시징은, 예를 들면 ACTIVEWEB, TIBCO, MQSERIES, NEONET, SMTP 및 FTP 등을 포함하는 임의의 제3자 메시징 솔루션 중 최고가 될 수 있다. 이로 인해 애플리케이션(172)은 또한 하부 원시 메시지 계층(180)으로부터 추출될 수 있다. 한가지 실시예로, 고속/신뢰적 메시징(fast/reliable messaging); 인증된 메시징(certified messaging); 보증/트랜잭션 메시징(guaranteed/transactional messaging)과 같이 상이한 특성을 가지는 세가지 수준의 메시징이 제공된다. 고속/신뢰적 메시징은 메시지 전달을 시도하기 위한 적절한 노력을 제공한다. 인증된 메시징은 클라이언트 애플리케이션으로의 메시지 전달 인증을 제공한다. 셋째로, 보증/트랜잭션 메시징은 메시지의 전달을 보장하도록, 상이한 트랜잭션 데이터베이스들 간의 메시징(예를 들면, ORACLE과 SYBASE 데이터베이스들 간의 메시징, 또는 RDBMS와 ODBMS 데이터베이스 간의 메시징)을 포함하는, 트랜잭션 데이터베이스 상의 대기행렬들 사이에 제공될 수 있다.
도 8은 본 발명에 따라 애플리케이션들 간의 트랜잭션 대기행렬 및 메시징을 도시하는 블록도이다. 도시된 바와 같이, 제1 애플리케이션(190)은 관계형 데이터베이스 정보(194) 및 트랜잭션 대기행렬(196)을 유지하는 저장장치(192)를 포함할수 있는 트랜잭션 환경(context)을 구비한다. 대기행렬 관리자(198)는 트랜잭션 메시지 관리자(TMM; 200)는 물론 애플리케이션(190)과 대기행렬(196)과의 인터페이스를 제공한다. 메시징 트랜잭션 환경 내에서, 메시지 버스 관리자(202)는 트랜잭션 메시지 관리자(200)와 원시 메시징 계층(204) 간의 인터페이스를 제공한다.
마찬가지로, 제2 애플리케이션(206)은 객체 데이터베이스 정보(210) 및 트랜잭션 대기행렬(212)을 유지하는 저장장치(208)를 포함할 수 있는 트랜잭션 환경을 구비한다. 대기행렬 관리자(214)는 트랜잭션 메시지 관리자(TMM; 216)는 물론 애플리케이션(206)과 대기행렬(212)과의 인터페이스를 제공한다. 메시징 트랜잭션 환경 내에서, 메시지 버스 관리자(218)는 트랜잭션 메시지 관리자(216)와 원시 메시징 계층(204) 간의 인터페이스를 제공한다.
이러한 프레임워크로 인해 애플리케이션들(190, 206) 간의 추상적인 대기행렬 및 전역 메시징 계층이 하부 원시 메시징 계층(204) 상에서 지원될 수 있다. 이러한 메시징 프레임워크 내에서, 전역 어드레싱을 사용하는 점대점 메시징, 발행 및 기입 메시징, 및 효율적으로 암호화되고 사용자 인증된 메시징이 지원될 수 있다. 또한, ACTIVEWEB 또는 TIBCO에 대한 메시지 버스 어댑터, 및 ODBC 종속 데이터베이스의 정상부 상의 대기행렬 어댑터로 이루어지는 표준 솔루션이 제공될 수 있다. 이들 어댑터들은 표준 메시징 솔루션을 생성하도록 메시징 솔루션(ACTIVEWEB 또는 TIBCO)과 함께 제공될 수 있다.
모델 에이전트(Model Agents)
코어 환경은, 예를 들면 기업체 간의 최적화를 가능하게 하는 도메인간의 구조이다. 도메인간의 솔루션에 대한 필요성을 제기하는 환경의 특징은 보안 프레임워크 (엔진 및 메시징에 대한 양쪽의 사용자 인터페이스), (전역 이름지정 방식(global naming scheme), 및 다중 트랜잭션 도메인이 트랜잭션 일관성을 유지할 수 있도록 하는 트랜잭션 메시징을 포함하여) 세계적 범위의 메시징을 포함한다. 또한, 도메인간 분석 및 최적화는 도메인이 원격 도메인의 부분 복사본을 포함하는 모델 에이전트를 교환할 수 있도록 함으로써 사용될 수 있다.
도 9a는 도메인간 분석에 대한 초기 접근의 블록도이다. 도시된 바와 같이, 환경(220)은 복수의 도메인(도메인 A(222), 도메인 B(224), 도메인 C(226))을 포함할 수 있다. 초기 접근은 화살표(228)에 의해 표시된 바와 같이 분산 알고리즘이 다중 도메인(222, 224, 226)을 직접 교차하여 실행되는 분산 분석을 특징으로 한다. 이러한 접근에는 약간의 중대한 문제점이 있다. 예를 들면, 도메인의 수가 증가함에 따라 신뢰성은 극적으로 떨어진다. 또한, 이러한 접근에서, 허용성(즉, 하나의 도메인이 자신의 모델에 대해 다른 도메인의 액세스를 허용하는 것) 및 보안은 기본적으로 분산 분석과 밀접한 관계를 가져야 한다. 이로 인해 분산 알고리즘의 부담이 커지고, 분산 알고리즘은 매우 간단하지만 느리게 기능할 것이다. 도시되지 않았지만, 다른 대안은 다른 도메인(222, 224, 226) 모두를 개별적으로 모델링하는 모든 도메인(222, 224, 226)을 구비할 것이다. 그러나, 이러한 접근에서는 다른 도메인(222, 224, 226)에 대한 모델 및 데이터를 정확하게 알기가 어렵다는 문제가 발생된다. 이러한 접근에서는 또한 도메인(222, 224, 226)의 수가 많아지는 확장성(scaleability) 문제가 발생된다.
도 9b는 본 발명에 따른 원격 도메인의 부분 복사본으써 모델 에이전트를 사용하는 블록도이다. 모델 에이전트는 실행가능한 도메인간 분석 및 최적화를 만드는 대안의 메커니즘을 제공한다. 도시된 바와 같이, 환경(230)은 복수의 도메인(도메인 A(232), 도메인 B(234), 도메인 C(236))을 포함할 수 있다. 이들 도메인(232, 234, 236)은 로컬 계획 분석 및 최적화에 사용되는 모델을 각각 구비한다. 본 발명에 따르면, 도메인(232, 234, 236)은 개별 도메인 모델의 부분 복사본인 모델 에이전트를 서로 전달한다. 이들 모델 에이전트의 전달은 도메인에 기입하도록 푸시 방식(push scheme)을 통하는 것이 바람직하지만, 풀 방식(pull scheme) 또는 다른 전달 방식을 포함할 수 있다. 예를 들면, 도메인(232; 도메인 A)은 도메인(232)용 모델의 부분 복사본인 모델 에이전트(238)를 도메인(236; 도메인 C)에게 제공한다. 모델 에이전트(238)는, 도메인(236)에 의해 요구되고 도메인(232)이 외부 액세스를 허용하기를 바라는, 도메인(232)용 모델의 일부를 포함한다. 마찬가지로, 도메인(234; 도메인 B)은 도메인(234)용 모델의 부분 복사본인 모델 에이전트(240)를 도메인(236; 도메인 C)에게 제공한다. 또한, 모델 에이전트(240)는, 도메인(236)에 의해 요구되고 도메인(234)이 외부 액세스를 허용하기를 바라는, 도메인(234)용 모델의 일부를 포함한다. 결과적으로, 다중 도메인에 대한 분산 분석을 실행하는 대신에 모델 에이전트(238, 240)를 통해 화살표(242)에 의해 표시된 바와 같이 로컬 분석이 로컬 모델(도메인 C용)과 모델 에이전트(238, 240)에 의해 표시된 바와 같은 원격 모델의 일부(도메인 A 및 도메인 B용)와의 결합을 사용하여 도메인(236) 상에서 실행될 수 있다.
원격 도메인의 부분 복사본으로써 모델 에이전트를 사용함으로써 각각의 연관된 도메인이 로컬 프로세스를 통해 도메인간 분석 및 최적화를 달성할 수 있다는 점이 이해되어야 한다. 또한, 모델 에이전트를 모든 기입 도메인으로 푸시하거나 또는 그렇지 않은 경우 다른 도메인으로 갱신을 제공함으로써 원격 도메인으로부터 모델 에이전트를 계속 공급하도록 하는 메커니즘이 제공될 수 있다. 따라서 모델 에이전트는 상이한 패키지로써 네트워크 주변으로 전달될 수 있는 모델의 부분 복사본이다. 통상적으로 도메인은 완전한 모델 전체보다는 오히려 그 일부만이 다른 도메인으로 발송되기를 원하기 때문에 "부분" 특징이 중요하다는 점이 이해되어야 한다.
한가지 실시예로, 정교화 정도가 증가되는 세가지 레벨의 모델 에이전트가 있다. 제1 레벨은 데이터 모델 에이전트이다. 이들은 세가지 레벨 중 가장 간단하고, 순수 데이터를 주변에 전달하는데 사용된다. 제2 레벨의 모델 에이전트는 객체 모델 에이전트이다. 이들 모델 에이전트는 객체 그래프 전체가 주변에 전달될 수 있도록 한다. 객체 그래프가 주변에 전달될 수 있도록 함으로써 데이터 모델 에이전트만으로 달성되기 어려운 협력의 정교한 형태가 사용될 수 있다. 예를 들면, 객체 모델 에이전트를 사용하여 하나의 도메인이 자신의 공급망 모델의 부분 화상을 다른 도메인으로 전송할 수 있다. 제3 레벨의 모델 에이전트는 동작 모델 에이전트이다. 이들 모델 에이전트는 보다 정교하고, 전체적으로 새로운 동작이 하나의 도메인으로부터 다른 도메인으로 전달될 수 있도록 한다. 예를 들면, 하나의 도메인은 새로운 가격 방침 또는 재고조사 방침을 동작 모델 에이전트로써 전송할 수 있다.
본 발명의 모델 에이전트는 다른 도메인간의 접근에 있어서 발생되는 실행불가능성(infeasibility) 및 확장성 문제 모두를 해결한다. 모델 에이전트는 원격 도메인의 요구 부분이 내부적으로 존재하고, 분석 및 최적화에 사용될 수 있도록 한다. 모델 에이전트는 일반적으로 각 도메인에 의해 추출되고, 다른 기입 도메인으로 제공된다. 기입 도메인은 다른 형태의 기입이 가능하더라도, 도메인으로 푸시된 모델 에이전트를 구비함으로써 원격 모델 에이전트를 얻는 것이 바람직하다. 모델 에이전트는 도메인간 분석 및 최적화와 기업체간 분석 및 최적화를 널리 사용할 수 있고, 허용성(허용된 부분만이 전송됨), 푸시된 기입(각 도메인은 변경이 생기는 경우 상기 변경을 푸시함), 및 혼성 조합(hybrid composition)(상태 및 동작 모두 전송됨)과 같은 중요한 특징을 포함한다.
도메인간 접속 플레인(Inter-domain connectivity plane)
도 10a는 도메인들 간의 다대다 상호작용(many-to-many interaction)의 블록도이고, 도 10b는 본 발명에 따른 도메인간 접속 플레인에 의해 사용가능하도록 단순화된 도메인 상호작용의 블록도이다. 도 10a에 도시된 바와 같이, 환경(250)은 제1 도메인(252) 및 제2 도메인(254)을 포함할 수 있다. 도메인(252)은 다수의 애플리케이션(256, 258, 260)을 포함할 수 있다. 마찬가지로, 도메인(254)은 다수의 애플리케이션(262, 264)을 포함할 수 있다. 환경(250)의 다대다 방식에서,도메인(252)의 애플리케이션들(256, 258, 260)은 도메인(254)의 애플리케이션(262, 264) 사이에 데이터 변환을 수행해야 하고, 반대로 도메인(254)의 애플리케이션들(262, 264)은 도메인(252)의 애플리케이션들(256, 258, 260) 사이에 데이터 변환을 수행해야 한다. 또한, 각 애플리케이션은 보안 및 허용성과 연관되고, 다중 도메인간 통신 채널이 유지되어야 한다.
도 10b는 본 발명의 도메인간 접속 플레인에 의해 사용가능하도록 단순화된 도메인 상호작용의 블록도이다. 도시된 바와 같이, 환경(270)은 제1 도메인(272) 및 제2 도메인(274)을 포함할 수 있다. 도메인(272)은 다수의 애플리케이션(276, 278, 280)을 포함할 수 있고, 도메인(274)은 다수의 애플리케이션(262, 264)을 포함할 수 있다. 기술된 바와 같이, 도메인(272, 274)으로부터 데이터 및 정보가 추출되어 엔진(286, 288)으로 제공될 수 있다. 그 후 엔진(286, 288)은 도메인간 접속 플레인 상에서 상호작용하므로 도메인들(272, 274) 간의 상호작용이 단순해진다. 따라서 여러 도메인 엔진(286, 288)이 상호작용할 수 있는 도메인간 접속 플레인은 다중의 여러 개체(entities)(예를 들면, 기업체, 디비전(division) 등)가 공급망 동작을 링크(link)할 수 있도록 한다.
도 11은 본 발명에 따른 도메인간 접속 플레인의 한가지 실시예의 블록도이다. 도시된 바와 같이, 환경(290)은 원시 플레인(292)을 포함한다. 원시 플레인(292)은 제1 도메인과 연관된 원시 소스(294) 및 제2 도메인과 연관된 원시 소스(296)를 포함할 수 있다. 원시 소스(294, 296)는 데이터 소스, 계획 엔진 및 다른 도메인 연관 데이터 및 애플리케이션을 포함할 수 있다. 원시 소스(294,296)로부터의 데이터 및 정보는 기술된 바와 같이 범용 어댑터 프레임워크 내의 여러 가지 어댑터를 사용하여 도메인간 접속 플레인(298) 상으로 추출된다. 예를 들면, 비지니스 객체 서버(BOS)는 도메인간 접속 플레인(298)으로 데이터를 호출하는데 사용될 수 있다. 도메인 엔진(300)은 제1 도메인과 연관될 수 있고, 원시 소스(294)로부터 추출된 데이터 및 정보를 수신할 수 있다. 비슷한 방식으로, 도메인 엔진(302)은 제2 도메인과 연관될 수 있고, 원시 소스(296)로부터 추출된 데이터 및 정보를 수신할 수 있다. 도메인간 접속 플레인(298)은 특별히 도메인과 연관되지는 않지만 요구 기능을 제공하거나 수행하도록 도메인간 접속 플레인(298) 상에서 동작하는 하나 이상의 도메인 엔진(304)을 추가로 포함할 수 있다. 도메인간 접속 플레인(298)은 도메인 엔진(300, 302, 304)에 의해 보이는 바와 같이, 도메인 엔진(300, 302, 304) 사이에 직접, 라인(306)에 의해 표시되는 바와 같은 전역 메시징을 사용할 수 있다. 그러나, 메시징은 원시 플레인(292) 상의 원시 메시징(308)에 의해 실제로 투명하게 지원된다. 도메인간 접속 플레인(298)은 분산 도메인들 간의 조화를 허용하도록 추상 계층을 제공하고, 객체 구조, 메시징 패러다임(paradigm), 이름지정 및 보안 등과 같은 특징을 조화시킴으로써 중요한 장점을 제공한다.
도 12는 도메인간 접속 플레인 상의 엔진들에 의해 형성되는 허브(hub) 및 스포크(spoke) 협력 네트워크의 블록도이다. 도시된 바와 같이, 도메인간 접속 플레인(310)은 복수의 도메인 엔진(312, 314)을 포함할 수 있다. 허브 및 스포크 배열에서, 엔진(312, 314)은 두 종류 중 한 종류의 도메인 또는 개체와 연관된다.도시된 바와 같이, 허브 엔진(312) 및 스포크 엔진(314)이 있다. 허브 엔진(312)은 다른 다중 허브 엔진(312)과 동시에 통신할 수 있다. 한편, 스포크 엔진(314)은 부모 허브 엔진(312)과만 통신할 수 있다. 또한, 한 가지 구현에 따르면, 스포크 엔진(314)은 분석을 수행하지 못하고, 자신의 부모 허브 엔진(312)으로 정보를 공급하며, 자신의 부모 허브 엔진(312)으로부터 정보를 공급받을 수만 있다. 다른 구현에 따르면, 스포크 엔진(314)은 중간 연결자(mid tier) 또는 웹 인터페이스 연결자 엔진일 수 있다. 이러한 방식에 따르면, 중간 연결자 엔진은 약간의 중요하지 않은 분석을 수행할 수 있고, 웹 인터페이스 연결자 엔진은 분석을 수행하지 못한다. 따라서, 상기 배열은 도메인간 접속 플레인(310) 내에서 허브 대 허브, 허브 대 스포크, 및 사용자 인터페이스 대 허브와 같은 세가지 형태의 통신을 사용할 수 있다.
도메인간 접속 플레인에서는 도메인간 가시성(visibility), 신호전송(signaling), 협력, 분석, 및 최적화가 가능하다. 도메인간 가시성은 도메인간 접속 플레인의 기본 기능이고, 다른 도메인의 데이터 내로의 가시성을 제공한다. 데이터는 풀은 물론 푸시될 수 있고, 자동 분석을 목적으로 하는 것은 물론 사용자 인터페이스용으로 사용될 수 있다. 도메인간 신호전송은 도메인들 간의 신호전송을 가능하게 한다. 예를 들면, 도메인간 접속 플레인은 소정 조건이 발생되는 경우 하나의 도메인이 다른 도메인으로 신호를 전송할 수 있는 조기 경보 시스템을 사용할 수 있다. 도메인간 접속 플레인은 또한 도메인을 통한 엔진 대 엔진 협력을 용이하도록 한다(이와 반대로, 개인 대 개인 협력은 어려워진다). 또한,도메인간 접속 플레인은 상기한 모델 에이전트를 전송함으로써 도메인간 분석 및 최적화를 부분적으로 할 수 있다.
도메인간 접속 플레인은 코어 환경 상에서 구축되기 때문에 코어 환경의 속성 및 구성요소를 구비한다. 이들 구성요소 중 전역 메시징(다중 도메인 간의 메시지 전달에 사용됨) 및 트랜잭션 메시징(도메인이 트랜잭션 일관성을 유지하는데 사용됨)이 중요하다. 원시 플레인으로부터 도메인간 접속 플레인으로 객체를 호출하는데 사용되는 비지니스 객체 서버가 또한 중요하다. 도메인간 접속 플레인 상의 엔진은 대량의 기능을 제공하고, 조기 경보 시스템, 다중 도메인 협력, 도메인간 분석 및 최적화, 허용성 프레임워크, 및 전역 이름지정 등을 포함하는 다양한 기능을 지원한다. 엔진은 원격 모델의 부분 미러링(mirroring)을 가능하도록 하는 모델 에이전트를 지원하고, 모델 에이전트 분산 발행 및 기입을 지원한다. 보안은 또한 도메인간 접속 플레인의 기본 속성이다. 최하위 레벨에서, 도메인간 접속 플레인은 엔진 보안(인증 및 암호화) 및 메시징 보안(인증 및 암호화)에 대한 사용자 인터페이스를 포함하는 코어 환경의 보안 특징을 상속한다. 설계 레벨에서, 보안은 허용성 및 푸시 기술의 결합에 의해 보장된다.
확장성은 중요한 특징이고, 도메인간 계층은 여러 용도로 확장될 수 있다. 보증된 비동기 메시징은 네트워크 종속성을 최소화함으로써 확장성을 증가시킨다. 이것은 통신에 참여하는 도메인의 수가 증가함에 따라 특히 중요해진다. 확장성은 또한 애플리케이션 레벨(보안, 허용성, 및 데이터 변환)에서 다대다 문제를 회피함으로써 달성된다. 확장성은 단일 도메인이 도메인을 제어하지 않고 다른 다중 도메인과의 통신을 허용함으로써 제공된다. 도메인은 통상적으로 다른 다중 도메인과의 통신을 필요로 한다. 그러나, 도메인간 접속 플레인으로 인해 도메인들은 임의의 고수준 제어기를 요구하지 않고 다른 다중 도메인과 통신할 수 있다. 또한, 한쌍의 도메인들 간의 통신이 단절되는 경우, 다른 도메인들 간에 통신이 계속될 수 있으므로, 보다 광범위의 확장성이 달성된다.
전역 이름지정(Global Naming)
도메인간 접속 플레인은 개체가 전역을 기초로하여 유일하게 정의될 수 있도록 하는 전역 이름지정을 구현할 수 있다. 예를 들면, 전역 이름지정 방식은 최상위 레벨에서 인터넷 도메인 이름 서버(domain name server; DNS), 다음 레벨에서 (COBRA 또는 LDAP 등과 같은) 기업체 이름 서비스, 및 프로세스 레벨에서 일시적 이름 서비스를 포함하는 세 부분의 이름지정 방식을 포함한다. 이름지정과 연관하여 이름 래핑(wrapping) 및 이름 매핑(mapping)은 둘다 조화를 제공한다. 이름 래핑은 전역 이름이 아닌 이름이 전역 이름 공간으로 호출할 수 있도록 하고, 데이터가 도메인간 접속 플레인으로 추출되는 경우 유일한 이름지정을 보장한다. 한편, 이름 매핑은 동일한 객체에 대한 상이한 이름들이 동일한 객체를 언급하는 것을 보장하는 맵을 제공한다. 이름 매핑은 2개의 전역 이름이 상기 이름들을 서로 매핑함으로써 동일한 개체를 언급할 수 있도록 한다.
본 발명이 상세하게 기술되었지만, 첨부된 청구항에 의해 한정되는 바와 같이 본 발명의 사상 및 범위를 벗어남이 없이 다양한 변경, 치환, 및 개조가 본 명세서에서 행해질 수 있다는 것이 이해되어야 한다.
본 발명에 따르면, 화상 정보 중개자가 정보 획득 엔진 유형과 무관하게 사용자 인터페이스에 의해 액세스될 수 있는 공통 인터페이스를 제공할 수 있다. 또한 본 발명에 따르면, 신규 엔진 또는 데이터 모델의 지원을 부가하기 위해 단지 신규 어댑터만이 화상 정보 중개자에게 부가될 필요가 있고, 화상 정보 중개자 및 어댑터가 전역 사용자 인터페이스에 적응되는 공통 데이터 모델에 적용되도록 다중 엔진 유형으로부터 사용자 인터페이스-적응형 데이터 모델을 허용할 수 있다.
또한, 본 발명에 따르면, 도메인간 접속 플레인이 분산된 도메인을 통한 조화를 허용하도록 추상화된 계층을 제공하고, 객체 구조, 메시징 패러다임, 이름지정 및 보안과 같은 특징을 조화시킴으로써 우수한 장점을 제공한다.

Claims (20)

  1. 도메인간 상호작용(inter-domain interaction)을 위한 컴퓨터 구현 시스템에 있어서,
    a) 원시 플레인(native plane)-여기서 원시 플레인은 i) 제1 도메인과 연관되는 제1 원시 소스; 및 ii) 제2 도메인과 연관되는 제2 원시 소스를 포함하고, 상기 제1 및 제2 원시 소스는 도메인과 연관된 데이터 및 애플리케이션을 포함함-;
    b) 공유 도메인간 접속 플레인(shared inter-domain connectivity plane)-여기서 공유 도메인간 접속 플레인은 i) 상기 제1 도메인과 연관되는 제1 도메인 엔진; 및 ii) 상기 제2 도메인과 연관되는 제2 도메인 엔진을 포함하고, 상기 제1 및 제2 도메인 엔진은 도메인 분석 기능을 수행하도록 협력함-; 및
    c) 상기 제1 및 제2 원시 소스와 연관되고, 상기 제1 및 제2 원시 소스로부터 상기 공유 도메인간 접속 플레인 상으로 데이터 및 동작을 추출하도록 동작하는 어댑터들
    을 포함하고,
    상기 제1 도메인 엔진은 어댑터들을 통해 상기 제1 원시 소스로부터 추출되는 데이터 및 정보를 수신하고, 상기 제2 도메인 엔진은 상기 제2 원시 소스 및 어댑터들로부터 추출되는 데이터 및 정보를 수신하며,
    상기 제1 및 제2 도메인 엔진은 상기 원시 플레인 상의 원시 메시징에 의해 투명하게 지원되는, 상기 제1 및 제2 도메인 엔진 서로 간의 전역 메시징을 수행하도록 동작되는
    컴퓨터 구현 시스템.
  2. 제1항에 있어서,
    상기 어댑터들이 도메인간 접속 플레인 상으로 데이터 및 동작을 추출하도록 범용 어댑터 프레임워크(universal adapter framework) 내에서 동작되는 컴퓨터 구현 시스템.
  3. 제2항에 있어서,
    상기 어댑터들이 상기 도메인간 접속 플레인 상으로 데이터 및 기능을 호출하도록 동작하는 비지니스 객체 서버(business object server)를 포함하는 컴퓨터 구현 시스템.
  4. 제1항에 있어서,
    상기 도메인간 접속 플레인이 소정의 원시 소스 또는 도메인과 특별히 연관되지 않으며, 도메인간 분석 기능 및 데이터 분산을 수행하도록 상기 도메인간 접속 플레인 상에서 동작되는 제3 도메인 엔진을 추가로 포함하는 컴퓨터 구현 시스템.
  5. 제1항에 있어서,
    추가 도메인과 연관되고, 허브(hub) 및 스포크(spoke) 협력 네트워크를 형성하는 복수의 추가 도메인 엔진을 추가로 포함하는 컴퓨터 구현 시스템.
  6. 제5항에 있어서,
    상기 도메인 엔진이 다수의 다른 허브 엔진과 동시에 통신할 수 있는 허브 엔진 또는 단지 부모(parent) 허브 엔진과 통신을 할 수 있는 스포크 엔진인 컴퓨터 구현 시스템.
  7. 제6항에 있어서,
    상기 스포크 엔진이 상기 부모 허브 엔진으로 정보를 공급하고, 상기 부모 허브 엔진으로부터 정보를 공급받으며, 분석 자체는 수행하지 않는 컴퓨터 구현 시스템.
  8. 제1항에 있어서,
    상기 제1 도메인과 연관되는 추가 원시 소스; 및
    상기 제2 도메인과 연관되는 추가 원시 소스
    를 추가로 포함하고,
    상기 추가 원시 소스들이 도메인에 연관된 데이터 및 기능을 포함하며,
    상기 어댑터들이 상기 추가 원시 소스와 연관되고, 상기 추가 원시 소스들로부터 상기 도메인간 접속 플레인 상으로 데이터 및 정보를 추출하도록 동작되는
    컴퓨터 구현 시스템.
  9. 제1항에 있어서,
    상기 제1 및 제2 도메인이 개별 기업체를 포함하는 컴퓨터 구현 시스템.
  10. 제1항에 있어서,
    상기 제1 및 제2 도메인에서 단일 기업체 내에 개별 공급망 개체(entities)를 포함하는 컴퓨터 구현 시스템.
  11. 도메인간 상호작용을 위한 컴퓨터 구현 방법에 있어서,
    a) 도메인과 각각 연관되고, 도메인 연관 데이터 및 애플리케이션을 포함하는 복수의 원시 소스를 포함하는 원시 플레인을 설정하는 단계;
    b) 상기 도메인과 각각 연관되고, 도메인 분석 기능을 수행하도록 동작되는 복수의 도메인 엔진을 포함하는 도메인간 접속 플레인을 설정하는 단계;
    c) 상기 복수의 원시 소스로부터 상기 도메인간 접속 플레인 상으로 데이터 및 정보를 추출하는 단계;
    d) 상기 복수의 원시 소스로부터 추출되는 데이터 및 기능을 상기 복수의 도메인 엔진에서 수신하는 단계; 및
    e) 상기 원시 플레인 상의 원시 메시징에 의해 투명하게 지원되는, 상기 복수의 도메인 엔진 간의 메시징을 수행하는 단계
    를 포함하는 컴퓨터 구현 방법.
  12. 제11항에 있어서,
    상기 추출 단계가 상기 도메인간 접속 플레인 상으로 데이터 및 정보를 추출하도록 범용 어댑터 프레임워크 내에서 동작되는 어댑터에 의해 달성되는 컴퓨터 구현 방법.
  13. 제11항에 있어서,
    상기 추출 단계가 상기 도메인간 접속 플레인 상으로 데이터를 호출하도록 동작되는 비지니스 객체 서버에 의해 부분적으로 달성되는 컴퓨터 구현 방법.
  14. 제11항에 있어서,
    상기 도메인간 접속 플레인 설정 단계가 도메인간 분석 기능을 수행하도록 상기 도메인간 접속 플레인 상에서 동작되는, 소정의 원시 소스 또는 도메인과 특별히 연관되지 않는 도메인 엔진을 설정하는 단계를 추가로 포함하는 컴퓨터 구현 방법.
  15. 제11항에 있어서,
    상기 도메인간 접속 플레인 설정 단계가 허브 및 스포크 협력 네트워크를 형성하도록 상기 복수의 도메인 엔진을 배치하는 단계를 포함하는 컴퓨터 구현 방법.
  16. 제15항에 있어서,
    상기 도메인 엔진이 다수의 다른 허브 엔진과 동시에 통신할 수 있는 허브 엔진 또는 단지 부모 허브 엔진과 통신을 할 수 있는 스포크 엔진인 컴퓨터 구현 방법.
  17. 제16항에 있어서,
    상기 스포크 엔진이 소정의 분석을 수행하도록 동작되는 중간 연결자 엔진(mid tier engine) 또는 분석 수행 동작을 하지 않는 웹(web) 인터페이스 연결자 엔진을 포함하는 컴퓨터 구현 방법.
  18. 제16항에 있어서,
    상기 스포크 엔진이 상기 부모 허브 엔진으로 정보를 공급하고, 상기 부모 허브 엔진으로부터 정보를 공급받으며, 분석 자체는 수행하지 않는 컴퓨터 구현 방법.
  19. 제11항에 있어서,
    상기 도메인 중 일부에 복수의 제조 기업체가 각각 포함되는 컴퓨터 구현 방법.
  20. 제11항에 있어서,
    상기 도메인 중 일부에 단일 기업체 내의 복수의 제조 개체가 포함되는 컴퓨터 구현 방법.
KR1020007001931A 1997-08-25 1998-08-21 도메인간 접속 플레인을 통한 도메인간 상호작용을 위한시스템 및 프로세스 KR100346931B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US08/918,227 1997-08-25
US08/918,227 US5931900A (en) 1997-08-25 1997-08-25 System and process for inter-domain interaction across an inter-domain connectivity plane
PCT/US1998/017359 WO1999010825A1 (en) 1997-08-25 1998-08-21 System and process for inter-domain interaction across an inter-domain connectivity plane

Publications (2)

Publication Number Publication Date
KR20010023297A KR20010023297A (ko) 2001-03-26
KR100346931B1 true KR100346931B1 (ko) 2002-07-31

Family

ID=25440027

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020007001931A KR100346931B1 (ko) 1997-08-25 1998-08-21 도메인간 접속 플레인을 통한 도메인간 상호작용을 위한시스템 및 프로세스

Country Status (8)

Country Link
US (1) US5931900A (ko)
EP (1) EP1010120A1 (ko)
JP (1) JP2001514419A (ko)
KR (1) KR100346931B1 (ko)
AU (1) AU9112298A (ko)
CA (1) CA2302352A1 (ko)
TW (1) TW387071B (ko)
WO (1) WO1999010825A1 (ko)

Families Citing this family (106)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10240502A (ja) * 1997-02-21 1998-09-11 Internatl Intelligent Inf:Kk 情報機器内の環境を転送する方式
US6704785B1 (en) * 1997-03-17 2004-03-09 Vitria Technology, Inc. Event driven communication system
US6415334B1 (en) * 1997-05-14 2002-07-02 Microsoft Corporation Method and system for accessing objects of different thread types
US5995945A (en) * 1997-08-25 1999-11-30 I2 Technologies, Inc. System and process for inter-domain planning analysis and optimization using model agents as partial replicas of remote domains
US6222533B1 (en) * 1997-08-25 2001-04-24 I2 Technologies, Inc. System and process having a universal adapter framework and providing a global user interface and global messaging bus
US6477660B1 (en) * 1998-03-03 2002-11-05 Sap Aktiengesellschaft Data model for supply chain planning
US6055574A (en) * 1998-03-10 2000-04-25 Unisys Corporation Method of providing a service through a server with a virtual single network address
US6125363A (en) * 1998-03-30 2000-09-26 Buzzeo; Eugene Distributed, multi-user, multi-threaded application development method
US6397191B1 (en) * 1998-06-05 2002-05-28 I2 Technologies Us, Inc. Object-oriented workflow for multi-enterprise collaboration
US6289385B1 (en) * 1998-06-05 2001-09-11 I2 Technologies, Inc. Computer workspace providing event management based on a permissibility framework
US6334146B1 (en) * 1998-06-05 2001-12-25 I2 Technologies Us, Inc. System and method for remotely accessing data
US7039597B1 (en) * 1998-06-05 2006-05-02 I2 Technologies Us, Inc. Method and system for managing collaboration within and between enterprises
US6119149A (en) 1998-06-05 2000-09-12 I2 Technologies, Inc. System and process allowing collaboration within and between enterprises for optimal decision making
US6397192B1 (en) * 1998-06-05 2002-05-28 I2 Technologies Us, Inc. Synchronizing one or more workflows using one or more synchronization-join activities that include synchronization logic
US6442528B1 (en) * 1998-06-05 2002-08-27 I2 Technologies Us, Inc. Exemplar workflow used in the design and deployment of a workflow for multi-enterprise collaboration
US6289384B1 (en) 1998-06-05 2001-09-11 I2 Technologies, Inc. System and method for event notification through a firewall
US6484311B2 (en) * 1998-07-15 2002-11-19 Microsoft Corporation Coalescing properties, methods and events
US6438744B2 (en) 1998-07-15 2002-08-20 Microsoft Corporation Dynamic mapping of component interfaces
US6327622B1 (en) * 1998-09-03 2001-12-04 Sun Microsystems, Inc. Load balancing in a network environment
US8636648B2 (en) 1999-03-01 2014-01-28 West View Research, Llc Endoscopic smart probe
US10973397B2 (en) 1999-03-01 2021-04-13 West View Research, Llc Computerized information collection and processing apparatus
US6567796B1 (en) 1999-03-23 2003-05-20 Microstrategy, Incorporated System and method for management of an automatic OLAP report broadcast system
US8321411B2 (en) 1999-03-23 2012-11-27 Microstrategy, Incorporated System and method for management of an automatic OLAP report broadcast system
US9208213B2 (en) 1999-05-28 2015-12-08 Microstrategy, Incorporated System and method for network user interface OLAP report formatting
US8607138B2 (en) 1999-05-28 2013-12-10 Microstrategy, Incorporated System and method for OLAP report generation with spreadsheet report within the network user interface
US6983258B1 (en) 1999-06-14 2006-01-03 G.E. Information Services, Inc. Trading information managing system and software including a community management function
US6964012B1 (en) 1999-09-13 2005-11-08 Microstrategy, Incorporated System and method for the creation and automatic deployment of personalized, dynamic and interactive voice services, including deployment through personalized broadcasts
US6768788B1 (en) 1999-09-13 2004-07-27 Microstrategy, Incorporated System and method for real-time, personalized, dynamic, interactive voice services for property-related information
US6829334B1 (en) 1999-09-13 2004-12-07 Microstrategy, Incorporated System and method for the creation and automatic deployment of personalized, dynamic and interactive voice services, with telephone-based service utilization and control
US6836537B1 (en) 1999-09-13 2004-12-28 Microstrategy Incorporated System and method for real-time, personalized, dynamic, interactive voice services for information related to existing travel schedule
US8130918B1 (en) 1999-09-13 2012-03-06 Microstrategy, Incorporated System and method for the creation and automatic deployment of personalized, dynamic and interactive voice services, with closed loop transaction processing
US6876991B1 (en) 1999-11-08 2005-04-05 Collaborative Decision Platforms, Llc. System, method and computer program product for a collaborative decision platform
IL134047A (en) * 2000-01-14 2004-02-08 Lightscape Networks Ltd Method for selecting the type of communication channels in a multi-layered network and system using same
AU2001227857A1 (en) * 2000-01-14 2001-07-24 Saba Software, Inc. Method and apparatus for a business applications management system platform
US6952807B1 (en) 2000-01-31 2005-10-04 Daimlerchrysler Corporation Vehicle supply chain analysis system
US7249157B2 (en) * 2000-02-16 2007-07-24 Bea Systems, Inc. Collaboration system for exchanging of data between electronic participants via collaboration space by using a URL to identify a combination of both collaboration space and business protocol
US6377975B1 (en) * 2000-03-01 2002-04-23 Interactive Intelligence, Inc. Methods and systems to distribute client software tasks among a number of servers
JP3617406B2 (ja) * 2000-03-30 2005-02-02 日本電気株式会社 マルチドメインに対応した品質保証型通信サービス提供方式およびサービス提供方法並びにサービス仲介装置
US6957234B1 (en) * 2000-05-26 2005-10-18 I2 Technologies Us, Inc. System and method for retrieving data from a database using a data management system
EP1311946B1 (en) * 2000-07-27 2017-12-27 Oracle International Corporation System and method for concentration and load-balancing of requests
KR100368859B1 (ko) * 2000-07-31 2003-01-24 (주)신종 가상 도메인 시스템
NL1015854C2 (nl) * 2000-08-02 2002-02-05 Koninkl Kpn Nv Inrichting en werkwijze voor het verwerken van transactiegegevens.
US6564226B1 (en) 2000-09-18 2003-05-13 Daimlerchyrsler Corporation Supplier management process with dynamically updated mapping
US7590558B2 (en) * 2000-09-26 2009-09-15 I2 Technologies Us, Inc. System and method for facilitating electronic commerce transactions
TW577003B (en) * 2000-09-29 2004-02-21 Manugistics Inc System, network, storage device, and method for supply chain management, including collaboration
AU2002214663A1 (en) * 2000-10-27 2002-05-06 Manugistics, Inc. System and method for ensuring order fulfillment
US6937992B1 (en) * 2000-12-29 2005-08-30 Arrowstream, Inc. Transport vehicle capacity maximization logistics system and method of same
US20050207444A1 (en) * 2001-01-12 2005-09-22 Eci Telecom Ltd. Hybrid network element for a multi-protocol layered transmissions network and a graphical representation of the network
US7483979B1 (en) 2001-01-16 2009-01-27 International Business Machines Corporation Method and system for virtualizing metadata between disparate systems
US20020099583A1 (en) * 2001-01-24 2002-07-25 Matusek Lawrence W. Architecture and techniques for providing product configurations to an enterprise resource planner
US6617969B2 (en) 2001-04-19 2003-09-09 Vigilance, Inc. Event notification system
US20020156601A1 (en) * 2001-04-19 2002-10-24 Tu Kevin Hsiaohsu Event monitoring and detection system
US6697809B2 (en) 2001-04-19 2004-02-24 Vigilance, Inc. Data retrieval and transmission system
US20020157017A1 (en) * 2001-04-19 2002-10-24 Vigilance, Inc. Event monitoring, detection and notification system having security functions
US6697810B2 (en) 2001-04-19 2004-02-24 Vigilance, Inc. Security system for event monitoring, detection and notification system
GB2375626A (en) * 2001-05-18 2002-11-20 Reuters Ltd Financial market trading system
US7231460B2 (en) * 2001-06-04 2007-06-12 Gateway Inc. System and method for leveraging networked computers to view windows based files on Linux platforms
US7640153B2 (en) * 2001-06-04 2009-12-29 Hewlett-Packard Development Company, L.P. Networked client-server architecture for transparently transforming and executing applications
US20020188774A1 (en) * 2001-06-08 2002-12-12 Lessard Michael R. Virtualizing external data as native data
US20020188727A1 (en) * 2001-06-08 2002-12-12 Lessard Michael R. Method for processing external data for access and manipulation through a host operating environment
US20030018643A1 (en) * 2001-06-19 2003-01-23 Peiwei Mi VIGIP006 - collaborative resolution and tracking of detected events
KR20030013742A (ko) * 2001-08-09 2003-02-15 박헌재 이벤트와 관계를 이용한 비즈니스 모델 구축 방법과 그적용 시스템
US20030074358A1 (en) * 2001-09-24 2003-04-17 Siamak Sarbaz Integration, management and processing of network data from disparate sources
US7177856B1 (en) 2001-10-03 2007-02-13 International Business Machines Corporation Method for correlating data from external databases
US8589400B2 (en) * 2001-11-30 2013-11-19 Intelligent Medical Objects, Inc. Longitudinal electronic record system and method
US7693917B2 (en) 2001-11-30 2010-04-06 Intelligent Medical Objects, Inc. Method for adaptive data management
US20030126109A1 (en) * 2002-01-02 2003-07-03 Tanya Couch Method and system for converting message data into relational table format
US7318238B2 (en) * 2002-01-14 2008-01-08 Microsoft Corporation Security settings for markup language elements
US6934706B1 (en) 2002-03-22 2005-08-23 International Business Machines Corporation Centralized mapping of security credentials for database access operations
US7290262B2 (en) * 2002-05-21 2007-10-30 International Business Machine Corporation Method and apparatus for dynamically determining information for deploying a web service
US7359982B1 (en) 2002-12-26 2008-04-15 International Business Machines Corporation System and method for facilitating access to content information
US7349949B1 (en) 2002-12-26 2008-03-25 International Business Machines Corporation System and method for facilitating development of a customizable portlet
US20040139141A1 (en) * 2002-12-31 2004-07-15 Lessard Michael R. Integration of virtual data within a host operating environment
US7124121B1 (en) * 2003-01-08 2006-10-17 Oracle International Corporation Multi-threaded Naïve Bayes algorithm for enterprise-server data mining
US7124134B2 (en) 2003-05-08 2006-10-17 Eugene Buzzeo Distributed, multi-user, multi-threaded application development system and method
US7191248B2 (en) * 2003-08-29 2007-03-13 Microsoft Corporation Communication stack for network communication and routing
US20050080759A1 (en) * 2003-10-08 2005-04-14 International Business Machines Corporation Transparent interface to a messaging system from a database engine
US7346923B2 (en) * 2003-11-21 2008-03-18 International Business Machines Corporation Federated identity management within a distributed portal server
US8321255B1 (en) * 2003-12-17 2012-11-27 Glovia International, Inc. Resource management and planning in a distributed manufacturing environment
US20050216429A1 (en) * 2004-03-24 2005-09-29 Hertz Michael T System and method for collaborative systems engineering
US7467399B2 (en) 2004-03-31 2008-12-16 International Business Machines Corporation Context-sensitive confidentiality within federated environments
US7721959B2 (en) * 2004-07-19 2010-05-25 I2 Technologies Us, Inc. Optimizing inventory in accordance with a constrained network
US20060259348A1 (en) * 2005-05-10 2006-11-16 Youbet.Com, Inc. System and Methods of Calculating Growth of Subscribers and Income From Subscribers
US8078740B2 (en) 2005-06-03 2011-12-13 Microsoft Corporation Running internet applications with low rights
US20070112781A1 (en) * 2005-11-17 2007-05-17 Mcmullen Cindy System and method for providing search controls in a communities framework
US8078597B2 (en) * 2005-11-17 2011-12-13 Oracle International Corporation System and method for providing extensible controls in a communities framework
US20070112798A1 (en) * 2005-11-17 2007-05-17 Bea Systems, Inc. System and method for providing unique key stores for a communities framework
US8046696B2 (en) * 2005-11-17 2011-10-25 Oracle International Corporation System and method for providing active menus in a communities framework
US8255818B2 (en) * 2005-11-17 2012-08-28 Oracle International Corporation System and method for providing drag and drop functionality in a communities framework
US20070112856A1 (en) * 2005-11-17 2007-05-17 Aaron Schram System and method for providing analytics for a communities framework
US7493329B2 (en) * 2005-11-17 2009-02-17 Bea Systems, Inc. System and method for providing generic controls in a communities framework
US7805459B2 (en) * 2005-11-17 2010-09-28 Bea Systems, Inc. Extensible controls for a content data repository
US8185643B2 (en) * 2005-11-17 2012-05-22 Oracle International Corporation System and method for providing security in a communities framework
US20070112799A1 (en) * 2005-11-17 2007-05-17 Bales Christopher E System and method for providing resource interlinking for a communities framework
US7590687B2 (en) * 2005-11-17 2009-09-15 Bea Systems, Inc. System and method for providing notifications in a communities framework
US7680927B2 (en) * 2005-11-17 2010-03-16 Bea Systems, Inc. System and method for providing testing for a communities framework
US20070112913A1 (en) * 2005-11-17 2007-05-17 Bales Christopher E System and method for displaying HTML content from portlet as a page element in a communites framework
KR100765774B1 (ko) 2006-01-03 2007-10-12 삼성전자주식회사 도메인 관리 방법 및 그 장치
US8185737B2 (en) 2006-06-23 2012-05-22 Microsoft Corporation Communication across domains
KR101319491B1 (ko) * 2006-09-21 2013-10-17 삼성전자주식회사 도메인 정보를 설정하기 위한 장치 및 방법
CA2564451A1 (en) * 2006-10-17 2008-04-17 Ibm Canada Limited - Ibm Canada Limitee Determining an executable growth strategy
US10019570B2 (en) * 2007-06-14 2018-07-10 Microsoft Technology Licensing, Llc Protection and communication abstractions for web browsers
US8825883B2 (en) * 2008-02-29 2014-09-02 Microsoft Corporation Connectivity platform
US8364847B2 (en) 2008-02-29 2013-01-29 Microsoft Corporation Address management in a connectivity platform
US8422362B2 (en) * 2008-08-05 2013-04-16 At&T Intellectual Property I, Lp Reliability as an interdomain service
US20100153693A1 (en) * 2008-12-17 2010-06-17 Microsoft Corporation Code execution with automated domain switching

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0456249B1 (en) * 1990-05-10 1998-12-09 Hewlett-Packard Company System for integrating application programs in a heterogeneous network enviroment
JPH05216712A (ja) * 1991-10-23 1993-08-27 Internatl Business Mach Corp <Ibm> コンピュータシステムおよびこのコンピュータシステム上で内観的タスクを遂行する方法並びにi/oプロセッサアセンブリ
EP0615198A1 (en) * 1993-03-08 1994-09-14 International Business Machines Corporation Method for processing, handling, and presenting data pertaining to an enterprise in the form of a data model
US5596744A (en) * 1993-05-20 1997-01-21 Hughes Aircraft Company Apparatus and method for providing users with transparent integrated access to heterogeneous database management systems
US5450317A (en) * 1993-11-24 1995-09-12 U S West Advanced Technologies, Inc. Method and system for optimized logistics planning
EP0701353A1 (fr) * 1994-09-07 1996-03-13 T.R.T. Telecommunications Radioelectriques Et Telephoniques Système de transmission de données à routage adaptatif
JP4046778B2 (ja) * 1995-04-05 2008-02-13 ソニー株式会社 光学ディスク記録再生装置
US5764543A (en) * 1995-06-16 1998-06-09 I2 Technologies, Inc. Extensible model network representation system for process planning
EP0770967A3 (en) * 1995-10-26 1998-12-30 Koninklijke Philips Electronics N.V. Decision support system for the management of an agile supply chain
US5787283A (en) * 1995-10-27 1998-07-28 International Business Machines Corporation Framework for manufacturing logistics decision support
US5726979A (en) * 1996-02-22 1998-03-10 Mci Corporation Network management system
US5768501A (en) * 1996-05-28 1998-06-16 Cabletron Systems Method and apparatus for inter-domain alarm correlation
US5774876A (en) * 1996-06-26 1998-06-30 Par Government Systems Corporation Managing assets with active electronic tags
US5808911A (en) * 1997-06-19 1998-09-15 Sun Microsystems, Inc. System and method for remote object resource management

Also Published As

Publication number Publication date
KR20010023297A (ko) 2001-03-26
WO1999010825A1 (en) 1999-03-04
CA2302352A1 (en) 1999-03-04
EP1010120A1 (en) 2000-06-21
AU9112298A (en) 1999-03-16
US5931900A (en) 1999-08-03
TW387071B (en) 2000-04-11
JP2001514419A (ja) 2001-09-11

Similar Documents

Publication Publication Date Title
KR100346931B1 (ko) 도메인간 접속 플레인을 통한 도메인간 상호작용을 위한시스템 및 프로세스
US5995945A (en) System and process for inter-domain planning analysis and optimization using model agents as partial replicas of remote domains
US6222533B1 (en) System and process having a universal adapter framework and providing a global user interface and global messaging bus
US6912719B2 (en) Type descriptor metamodel
US6915523B2 (en) PL/I metamodel
US7386578B2 (en) Associations between duplicate master data objects
US6904598B2 (en) COBOL metamodel
US7363628B2 (en) Data centric and protocol agnostic workflows for exchanging data between a workflow instance and a workflow host
US20090077269A1 (en) Distributed computing system architecture
US20040111698A1 (en) System and method for design, development, and deployment of distributed applications that share data from heterogeneous and autonomous sources over the Web
US7725873B2 (en) Abstraction of host object model for managed add-in framework proxy generation
KR20010040348A (ko) 확장가능한 분산된 기업용 애플리케이션 통합 시스템
US7921409B2 (en) Managed add-in framework proxy generation
Maheshwari Enterprise application integration using a component-based architecture
Papaioannou et al. Mobile agent technology in support of sales order processing in the virtual enterprise
Kutvonen et al. Broadening the User Environment with Implicit Trading.
US7571442B2 (en) Systems and methods for application programming using persistent objects
KR100249777B1 (ko) 객체지향 웹 어플리케이션 모델링 방법
MXPA00001951A (en) System and process for inter-domain interaction across an inter-domain connectivity plane
MXPA00001950A (en) Universal adapter framework and providing a global user interface and global messaging bus
MXPA00001949A (en) System and process for inter-domain planning analysis and optimization using model agents as partial replicas of remote domains

Legal Events

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

Payment date: 20050720

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee