KR20050022279A - 애플리케이션 서비스와 애플리케이션 간의 자원 통합관리를 위한 시스템 및 방법 - Google Patents

애플리케이션 서비스와 애플리케이션 간의 자원 통합관리를 위한 시스템 및 방법 Download PDF

Info

Publication number
KR20050022279A
KR20050022279A KR1020040057332A KR20040057332A KR20050022279A KR 20050022279 A KR20050022279 A KR 20050022279A KR 1020040057332 A KR1020040057332 A KR 1020040057332A KR 20040057332 A KR20040057332 A KR 20040057332A KR 20050022279 A KR20050022279 A KR 20050022279A
Authority
KR
South Korea
Prior art keywords
service
entity
application
context
metadata
Prior art date
Application number
KR1020040057332A
Other languages
English (en)
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 KR20050022279A publication Critical patent/KR20050022279A/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
    • G06Q50/10Services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5055Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering software capabilities, i.e. software resources associated or available to the machine
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • 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
    • 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
    • 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
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/02Banking, e.g. interest calculation or account maintenance

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • Software Systems (AREA)
  • Economics (AREA)
  • Human Resources & Organizations (AREA)
  • Entrepreneurship & Innovation (AREA)
  • General Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Tourism & Hospitality (AREA)
  • General Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Operations Research (AREA)
  • Development Economics (AREA)
  • Quality & Reliability (AREA)
  • Finance (AREA)
  • Technology Law (AREA)
  • Data Mining & Analysis (AREA)
  • Educational Administration (AREA)
  • Game Theory and Decision Science (AREA)
  • Computer Hardware Design (AREA)
  • Primary Health Care (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Stored Programmes (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

애플리케이션에서 애플리케이션 엔티티가 사용자에 의해 생성 및 규정될 수 있다. 서로 다른 서비스 애플리케이션에 의해 관리되는 관련 서비스 엔티티가 매칭 및 통합된다. 애플리케이션 엔티티가 하나 이상의 관련 서비스 엔티티에 관련될 수 있다. 관련 서비스 엔티티에 대응하는 메타데이터가 애플리케이션에 제공된다. 이러한 메타데이터는 관련 서비스 엔티티가 애플리케이션 내에서 관리될 수 있도록 한다.

Description

애플리케이션 서비스와 애플리케이션 간의 자원 통합 관리를 위한 시스템 및 방법{SYSTEM AND METHOD FOR INTEGRATING MANAGEMENT OF RESOURCES BETWEEN APPLICATION SERVICES AND APPLICATIONS}
본 발명은 자원 관리 분야에 관한 것으로, 보다 구체적으로는 애플리케이션 서비스와 애플리케이션 사이의 자원 통합 관리에 관한 것이다.
종래의 자원 관리 시스템에서 애플리케이션 서비스는 통상 애플리케이션과 연계하여 동작한다. 이러한 애플리케이션 서비스는 각각 서로 다른 컴포넌트의 자원을 관리한다. 예를 들어, 2개의 애플리케이션 서비스가 서로 다른 컴포넌트의 대출(loan) 승인 프로세스를 관리한다. 보다 구체적으로, 제1 애플리케이션 서비스가 대출 승인 프로세스의 신용대출 이력(credit history) 컴포넌트를 관리하고, 제2 애플리케이션 서비스가 대출 승인 프로세서의 할부 계약금(down payment) 컴포넌트를 관리한다. 애플리케이션 서비스는 각각 대출 승인 프로세스에 관련된 관련 서비스 엔티티(entity)를 관리한다. 예를 들어, 제1 애플리케이션 서비스가 "신청자"(applicant) 서비스 엔티티를 관리하고, 제2 애플리케이션 서비스가 관련 "대출" 서비스 엔티티를 관리한다.
애플리케이션 서비스와 연계하여 동작하는 애플리케이션의 예로는 전자 메일 애플리케이션, 워드 프로세싱 애플리케이션 또는 스프레드시트 애플리케이션이 있을 수 있으며, 이들은 문서 작성(production)을 가능하게 한다. 이러한 문서는 서비스 엔티티를 참조하고 또한 애플리케이션 서비스 측에서의 서비스 엔티티의 관리에 영향을 주는 경우가 있다. 예를 들어, 문서 내에 다음의 텍스트, "John Smith는 신용카드 불입금을 연체하였습니다"가 포함되어 있을 수 있다. "John Smith"는 제1 애플리케이션 서비스에 의해 관리되는 신청자 엔티티 뿐만 아니라 제2 애플리케이션 서비스에 의해 관리되는 대출 엔티티의 인스턴스(instance)일 수 있다. 따라서, 문서는 신청자 엔티티인 "John Smith"와 대출 엔티티인 "John Smith"의 관리에 영향을 줄 수 있다. 보다 구체적으로, 문서는 제1 애플리케이션 서비스에서 신청자 엔티티 "John Smith"의 상태를 "대출 거부" 상태로 변경하도록 사용자에게 영향을 줄 수 있다. 또한, 문서는 제2 애플리케이션 서비스에서 대출 엔티티 "John Smith"의 상태가 "할부 계약금 환불" 상태로 변경되도록 할 수도 있다.
문서가 애플리케이션 서비스에서의 서비스 엔티티의 관리에 영향을 주는 경우가 있기는 하지만, 애플리케이션 내에서의 서비스 엔티티에 대한 액세스, 조회 및 관리 능력은 일반적으로 제한된다. 예를 들어, 문서가 제1 애플리케이션 서비스에서의 애플리케이션 엔티티 "John Smith"의 상태를 변경하도록 영향을 주어 그 상태를 변경한 경우, 사용자는 제1 애플리케이션 서비스에 액세스하여 제1 애플리케이션 서비스에서의 신청자 서비스를 식별해야 한다. 그러나, 문서는 서비스 엔티티를 규정하는 속성에 관한 충분한 의미론(semantics)을 제공하고 있지 않기 때문에, 애플리케이션 서비스에서의 서비스 엔티티를 식별하는 것이 곤란한 경우가 있을 수 있다. 예를 들어, 문서가 대출 신청자를 그 풀네임으로써 "John Smith"로 기재하고 있지만, 제1 애플리케이션 서비스는 그 애플리케이션 서비스 엔티티를 "이름"(first name)과 "성"(last name) 속성으로 분리하여 규정한다.
애플리케이션 내에서의 서비스 엔티티에 대한 액세스, 조회 및 관리 능력에 있어서의 제한은, 문서가 서로 다른 애플리케이션 서비스로부터의 관련 엔티티를 관리하는데 영향을 주는 경우에 특히 문제가 된다. 예를 들어, 문서가 제1 애플리케이션 서비스에서 신청자 엔티티 "John Smith"의 상태를 변경하도록 하고, 제2 애플리케이션 서비스에서 대출 엔티티 "John Smith"의 상태를 변경하도록 사용자에게 영향을 주는 경우, 사용자는 각각의 애플리케이션 서비스를 개별적으로 액세스하여 각각의 애플리케이션 서비스에서 각각의 서비스 엔티티를 개별적으로 식별해야 한다. 서로 다른 서비스 엔티티가 관련되어 있다고 하더라도 이들 서비스 엔티티는 각각의 애플리케이션 서비스에서 서로 다른 속성 세트에 의해 규정되어 있는 것이므로, 서로 다른 애플리케이션 서비스에서 서비스 엔티티를 개별적으로 식별하는 것은 성가신 일이다. 예를 들어, 제1 애플리케이션 서비스는 신청자 서비스 엔티티를 "이름"과 "성" 속성으로 분리하여 규정하고 있지만, 제2 애플리케이션 서비스는 대출 엔티티를 성명(name) 속성이 아니라 "신청자" 속성에 의해 규정한다.
종래의 자원 관리 시스템에서의 서비스 엔티티 관리에 관한 또다른 문제점으로는, 애플리케이션이 통상적으로 제공하고 있는, 애플리케이션 서비스 측의 서비스 엔티티에서 수행될 수 있는 액션의 이용가능 여부에 관한 정보가 제한적이다는 것이다. 보다 구체적으로, 각각의 애플리케이션 서비스에는 서비스 엔티티의 액션 수행에 관하여 특정한 규칙 및 조건이 있을 수 있다. 예를 들어, 이러한 규칙 및 조건의 예로는 액션이 수행될 수 있는 최대 횟수, 액션이 수행되어야 하는 기간, 액션을 수행하는 제한된 사용자 또는 사용자의 클래스, 또는 액션의 수행 전 또는 후에 일어나야 하는 조건을 들 수 있다. 애플리케이션은 일반적으로 이러한 규칙 및 조건이 무엇이며 또한 이들이 충족되었는지의 여부를 판정할 수 없다. 따라서, 사용자는 각각의 컴포넌트 프로세스를 액세스하여 그 프로세스 내에서 액션의 이용가능 여부를 판정해야만 한다.
또한, 애플리케이션은 일반적으로 이러한 규칙 및 조건에 따라서 다수의 사용자들 사이에서 자원의 관리를 조정하는 능력이 제한된다. 보다 구체적으로, 애플리케이션은 액션의 수행을 트랙킹하는 능력과, 무효하거나 마찰(conflicts)을 일으킬 가능성이 있는 액션의 수행을 방지하거나 또는 이에 대해 충고하는 능력이 제한된다. 또한, 애플리케이션은 일반적으로 서로 다른 애플리케이션 서비스에 의해 관리되는 엔티티 및 프로세스와, 다른 사용자들에 의한 이러한 관련 엔티티들에 대한 액션의 수행 사이의 관계에 관한 정보를 사용자들에게 제공하는 능력이 제한된다. 이러한 정보는 액션의 이용가능 여부를 판정하고 그 액션의 수행에 관련된 마찰에 대비하는데 이용될 수 있다.
따라서, 종래기술에 따른 애플리케이션 서비스와 애플리케이션 사이의 자원 통합 관리를 위한 시스템 및 방법을 개선할 필요가 있다. 예를 들어, 서로 다른 애플리케이션 서비스로부터의 관련 서비스 엔티티의 매칭, 서비스 엔티티와 문서의 연결(association) 및 애플리케이션 내에서의 서비스 엔티티의 관리를 가능하게 하는 시스템 및 방법이 요구된다.
애플리케이션 서비스가 서비스 엔티티에 대응하는 서비스 메타데이터(metadata)를 보유한다. 애플리케이션 서비스가 이러한 서비스 메타데이터를 콘텍스트 서비스 및 액션 서비스에 제공한다. 콘텍스트 서비스는 서비스 메타데이터에 기초하여 관련 서비스 엔티티를 매칭시킨다. 콘텍스트 서비스는 이러한 관련 서비스 엔티티를 콘텍스트 엔티티에 통합(consolidate)한다. 콘텍스트 서비스는 이러한 관련 서비스 엔티티에 대응하는 서비스 메타데이터를 콘텍스트 메타데이터에 통합한다.
애플리케이션이 애플리케이션 엔티티에 대응하는 애플리케이션 메타데이터를 보유한다. 애플리케이션에서 애플리케이션 엔티티가 선택되면, 실행 서비스가 선택된 애플리케이션 엔티티에 대응하는 애플리케이션 메타데이터를 검색하여 이러한 애플리케이션 메타데이터를 콘텍스트 서비스에 제공한다.
콘텍스트 서비스는 선택된 애플리케이션 엔티티를 애플리케이션 메타데이터 및 콘텍스트 메타데이터에 기초하여 관련 콘텍스트 엔티티에 매칭시킨다. 콘텍스트 서비스는 관련 콘텍스트 엔티티가 유도된 관련 서비스 엔티티를 식별한다. 콘텍스트 서비스는 관련 서비스 엔티티에 대응하는 서비스 메타데이터를 실행 서비스에 제공한다. 실행 서비스는 애플리케이션에서 관련 서비스 엔티티를 관리하는데 이용될 수 있는 제공된 서비스 메타데이터의 표시를 생성한다.
본 발명의 실시예에서, 애플리케이션 서비스는 애플리케이션 서비스 측의 서비스 엔티티에서 수행되는 액션의 이용가능성을 분류한다. 액션들은 낙관적으로 이용가능함, 규칙에 따라 이용가능함 또는 보편적으로 이용가능함으로 분류된다. 이러한 분류는 액션 서비스에 제공되며, 액션 서비스는 이들 분류를 이용하여 관련 서비스 엔티티에서의 액션의 이용가능 여부를 판정한다. 액션 서비스는 액션의 수행을 트랙킹하는 트랙킹 메커니즘을 포함할 수 있다. 액션 서비스는 또한 트랙킹 서비스로부터의 데이터를 상기한 분류와 함께 이용하여 액션의 수행이 마찰을 일으킬지의 여부를 판정하는 마찰 방지 메커니즘을 포함할 수도 있다. 관련 서비스 엔티티에서 수행될 수 있는 액션들은 애플리케이션에 제공될 수 있으며, 이러한 액션의 열람(view)이 애플리케이션에서 생성된다.
본 발명의 추가의 특징 및 장점들은 첨부 도면을 참조하여 설명하고 있는 하기의 실시예에 대한 상세한 설명으로부터 명백하게 될 것이다.
본 발명의 실시예는 첨부 도면을 참조한 하기의 상세한 설명을 통해 용이하게 이해될 수 있을 것이다.
<실시예>
Ⅰ. 컴퓨터 환경의 일례
도 1 및 하기의 설명은 본 발명 및/또는 그 일부가 구현될 수 있는 적절한 컴퓨팅 환경을 간략하게 설명하기 위한 것이다. 본 발명을 프로그램 모듈과 같이 클라이언트 워크스테이션 또는 애플리케이션 서비스 등의 컴퓨터에 의해 실행되는, 넓은 의미의 컴퓨터 실행가능 명령문으로 설명하고 있지만 반드시 그럴 필요는 없다. 일반적으로, 프로그램 모듈은 특정 태스크를 수행하거나 특정 추상 데이터 유형을 구현하는 루틴, 프로그램, 오브젝트, 컴포넌트, 데이터 구조 등을 포함한다. 또한, 본 발명 및/또는 그 일부는 기타의 컴퓨터 시스템 구성에 의해 실시될 수도 있으며, 이것에는 핸드헬드 장치, 멀티프로세서 시스템, 마이크로프로세서-기반 또는 프로그래머블 가전제품, 네트워크 PCs, 미니컴퓨터, 메인프레임 컴퓨터 등이 포함된다. 본 발명은 통신 네트워크를 통해 링크되어 있는 원격 프로세싱 장치에 의해 태스크가 수행되는 분산 컴퓨팅 환경에서도 실시될 수 있다. 분산 컴퓨팅 환경에서는, 프로그램 모듈이 로컬 및 원격 메모리 스토리지 장치에 위치할 수 있다.
도 1에 도시된 바와 같이, 예시된 범용 컴퓨팅 시스템은 일반 퍼스널 컴퓨터(120) 등을 포함하며, 이는 프로세싱 유닛(121), 시스템 메모리(122) 및 시스템 버스(123) - 시스템 버스(123)는 시스템 메모리를 포함한 각종 시스템 컴포넌트를 프로세싱 유닛(121)에 연결시킴 - 를 포함한다. 시스템 버스(123)는 임의의 유형의 버스 구조로 되어 있을 수 있으며, 이것에는 메모리 버스 또는 메모리 컨트롤러, 주변 버스 및 임의의 각종 버스 아키텍처를 이용한 로컬 버스가 포함된다. 시스템 메모리는 ROM(124) 및 RAM(125)을 포함한다. ROM(124)에는 기동시 퍼스널 컴퓨터(120) 내의 엘리먼트들 사이의 정보 교환을 돕는 기본 루틴을 저장하고 있는 BIOS(126)가 기억되어 있다.
퍼스널 컴퓨터(120)는 하드 디스크(미도시)에의 판독/기록을 위한 하드 디스크 드라이브(127), 착탈식 자기 디스크(129)에의 판독/기록을 위한 자기 디스크 드라이브(128), 및 CD-ROM 또는 기타 광학 매체와 같은 착탈식 광 디스크(131)에의 판독/기록을 위한 광 디스크 드라이브(130)를 더 구비할 수 있다. 하드 디스크 드라이브(127), 자기 디스크 드라이브(128) 및 광 디스크 드라이브(130)는 각각 하드 디스크 드라이브 인터페이스(132), 자기 디스크 드라이브 인터페이스(133) 및 광 디스크 드라이브 인터페이스(134)에 의해 시스템 버스(123)에 접속된다. 이들 드라이브 및 그 관련 컴퓨터 판독가능 매체는 퍼스널 컴퓨터(120)의 컴퓨터 판독가능 명령문, 데이터 구조, 프로그램 모듈 및 기타 데이터의 불휘발성 스토리지를 제공한다.
본 명세서에서 예시된 환경은 하드 디스크, 착탈식 자기 디스크(129) 및 착탈식 광 디스크(131)를 채용하고 있지만, 컴퓨터에 의해 액세스가 가능한 데이터를 저장할 수 있는 기타 유형의 컴퓨터 판독가능 매체도 예시된 오퍼레이팅 환경에 사용될 수 있다. 기타 유형의 매체로는 자기식 카세트, 플래시 메모리 카드, 디지털 비디오 디스크, 베르누이식 카트리지, RAM, ROM 등이 포함된다.
하드 디스크, 자기 디스크(129), 광 디스크(131), ROM(124) 또는 RAM(125)에는 다수의 프로그램 모듈이 저장될 수 있으며, 이것에는 오퍼레이팅 시스템(135), 하나 이상의 애플리케이션 프로그램(136), 기타 프로그램 모듈(137) 및 프로그램 데이터(138)가 포함된다. 사용자는 키보드(140) 등의 입력 장치 및 마우스 등의 포인팅 장치(142)를 통해 퍼스널 컴퓨터(120)에 명령 및 정보를 입력할 수 있다. 기타 입력 장치(미도시)로는 마이크, 조이스틱, 게임 패드, 위성 수신기, 스캐너 등이 포함된다. 이들 및 기타 입력 장치는 시스템 버스에 연결된 시리얼 포트 인터페이스(146)를 통해 프로세싱 유닛(121)에 접속되는 것이 보통이나, 패러렐 포트, 게임 포트 또는 USB 등의 기타 인터페이스에 접속될 수도 있다. 시스템 버스(123)에는 비디오 어댑터(148) 등의 인터페이스를 통해 모니터(147) 또는 기타 유형의 표시 장치가 접속되어 있다. 모니터(147) 외에도, 퍼스널 컴퓨터는 일반적으로 스피커 및 프린터 등의 기타의 주변 출력 장치(미도시)를 포함한다. 예시된 도 1의 시스템은 또한 호스트 어댑터(155), SCSI(Small Computer System Interface) 버스(156), 및 SCSI 버스(156)에 접속된 외부 스토리지 장치(162)를 포함한다.
퍼스널 컴퓨터(120)는 원격 컴퓨터(149) 등의 하나 이상의 원격 컴퓨터에의 논리 접속을 이용하는 네트워크 환경에서 동작할 수 있다. 원격 컴퓨터(149)는 또다른 퍼스널 컴퓨터, 애플리케이션 서비스, 라우터, 네트워크 PC, 피어 장치 또는 기타 공통 네트워크 노드일 수 있으며, 도 1에서는 메모리 스토리지 장치(150)만을 도시하고 있지만, 상기한 원격 컴퓨터(149)는 일반적으로 퍼스널 컴퓨터(120)와 관련하여 설명한 다수 또는 모든 엘리먼트를 포함하고 있다. 도 1에 도시한 논리 접속으로는 LAN(151) 및 WAN(152)을 포함한다. 이러한 네트워크 환경은 사무실, 기업 컴퓨터 네트워크, 인트라넷 및 인터넷에서 흔히 찾아볼 수 있다.
퍼스널 컴퓨터(120)를 LAN 네트워크 환경에서 사용하는 경우 네트워크 인터페이스 또는 어댑터(153)를 통해 LAN(151)에 접속된다. 퍼스널 컴퓨터(120)를 WAN 네트워크 환경에서 사용하는 경우 일반적으로 인터넷 등의 WAN(152)를 통해 통신을 확립하기 위한 모뎀(154) 또는 기타 수단을 포함한다. 모뎀(154)은 내장형 또는 외장형일 수도 있으며, 시리얼 포트 인터페이스(146)를 통해 시스템 버스(123)에 접속된다. 네트워크 환경에서 원격 메모리 스토리지 장치에는 퍼스널 컴퓨터(120)와 관련하여 설명한 프로그램 모듈 또는 그 일부가 저장될 수 있다. 도시된 네트워크 환경은 예시를 위한 것이며, 컴퓨터들 사이에 통신 링크를 확립하기 위한 다른 수단이 사용될 수도 있다.
Ⅱ. 자원 관리 환경의 일례
도 2는 종래의 자원 관리 시스템의 일례(200)를 나타낸 것이다. 시스템(200)은 클라이언트(230) 상의 애플리케이션(232)과 연계하여 동작하는 애플리케이션 서비스(210a, 210b)를 포함한다. 일반적으로, 애플리케이션 서비스(210)는 자원을 관리하는 한편, 애플리케이션(232)은 이러한 자원들에 관한 정보를 제시하고 교환한다.
애플리케이션 서비스(210)는 예를 들어 LOB(line of business), 데이터베이스 애플리케이션 서비스, 네트워크 애플리케이션 서비스, 프린트 애플리케이션 서비스 및 파일 애플리케이션 서비스 등의 애플리케이션 서비스일 수도 있다. 보다 구체적으로, 애플리케이션 서비스(210a)는 대출 승인 프로세스의 신용대출 이력 컴포넌트를 관리하는 LOB 애플리케이션 서비스일 수 있으며, 애플리케이션 서비스(210b)는 대출 승인 프로세스의 할부 계약금 컴포넌트를 관리하는 LOB 애플리케이션 서비스일 수 있다.
도 3a에는 애플리케이션 서비스(210a)에 의해 관리되는 신용대출 이력 컴포넌트 프로세스의 일례(300a)가 도시되어 있다. 상태 302a에서 대출 신청이 접수된다. 상태 304a에서 신용대출 이력이 수신된다. 상태 306a에서 신용대출 이력의 충족 여부가 판정된다. 신용대출 이력이 충족된 경우, 상태 308a에서 대출이 승인된다. 신용대출 이력이 충족되지 않은 경우, 상태 310a에서 대출이 거부된다.
도 3b에는 애플리케이션 서비스(210b)에 의해 관리되는 할부 계약금 컴포넌트 프로세스의 일례(300b)가 도시되어 있다. 상태 302b에서 대출 신청이 접수된다. 상태 304b에서 할부 계약금이 요구된다. 상태 308a에서 대출 승인 여부가 판정된다. 대출이 승인된 경우, 상태 308b에서 첫달의 불입금이 요구된다. 대출이 승인되지 않은 경우, 상태 310b에서 할부 계약금이 반환된다.
애플리케이션 서비스(210)는 컴포넌트 프로세스(300)에 관련된 서비스 엔티티(215)를 관리한다. 애플리케이션 서비스(210a)는 서비스 엔티티(215a, 215a')를 관리하며, 애플리케이션 서비스(210b)는 서비스 엔티티(215b, 215b')를 관리한다. 보다 구체적으로, 서비스 엔티티(215a)는 신용대출 이력 컴포넌트 프로세스(300a)에 관련된 "신청자" 엔티티이며, 서비스 엔티티(215b)는 대출 승인 프로세스(300b)에 관련된 관련 "대출" 엔티티일 수 있다. 서비스 엔티티(215a', 216b')는 각각의 컴포넌트 프로세스(300a, 300b)에 특정한 비관련 서비스 엔티티일 수 있다.
애플리케이션 서비스(210)는 이러한 서비스 엔티티(215)에 대응하는 서비스 메타데이터(205)를 보유할 수 있다. 서비스 메타데이터(205)는 예를 들어 XML(extensible markup language) 등의 언어로 규정될 수 있다. 서비스 메타데이터(205)는 서비스 엔티티(215)의 속성을 포함할 수 있으며, 또한 서비스 엔티티(215)의 유니크 키를 포함할 수 있다. 다음은 애플리케이션 엔티티(215a) 및 대출 엔티티(215b)의 속성의 일례를 도시한 것이다.
애플리케이션 엔티티(215a)의 일례
<applicant>
<ID> 1 </ID>
<first name> John </first name>
<last name> Smith </last name>
</applicant>
대출 엔티티(215b)의 일례
<loan>
<ID> 10 </ID>
<applicant>
<name> John Smith </name>
</applicant>
</loan>
서비스 메타데이터(205)는 서비스 엔티티(215)에서 이용가능한 액션을 포함할 수도 있다. 이러한 액션은 서비스 엔티티(215)의 프로세스 상태에 무관하게 이용가능한 정적 액션일 수도 있고, 또는 서비스 엔티티(215)의 프로세스 상태에 종속적인 동적 액션일 수도 있다.
정적 액션으로는 예를 들어 서비스 엔티티(215)의 속성 열람 및 변경을 위한 액션, 관계를 드릴 다운(또는 팔로우 다운)하여 관련 인스턴스 보기를 위한 액션 및 프로세스 상태를 변경하기 위한 항시 이용가능한 액션을 들 수 있다. 속성을 열람 및 변경하기 위한 메타데이터로는 예를 들어 다이얼로그 론칭 등의 열람 렌더링(rendering) 메커니즘을 포함한다.
동적 액션을 위한 메타데이터로는 프로세스 상태를 변경하기 위한 방법, 이러한 방법이 이용가능한 프로세스 상태의 기능 및 동일 또는 서로 다른 사용자에 의한 이러한 방법의 다중 이용 또는 이용 마찰로부터 프로세스를 보호하기 위한 규제(restrictions)를 포함한다.
서비스 메타데이터(205)는 또한 서비스 엔티티(215)에의 액세스에 관한 정보를 포함할 수 있다. 이러한 메타데이터는 예를 들어 특정 사용자 또는 사용자 그룹이 서비스 엔티티(215)의 인스턴스 또는 클래스, 정적 액션 또는 관계에 액세스하는 것을 제한하거나 또는 규제하는 것을 포함한다. 이러한 엔티티의 인스턴스 또는 클래스, 정적 액션 또는 관계에 각각 액세스하는 데에는 예를 들어 유효 패스워드 또는 식별자 등의 인증(authorization)이 필요할 수도 있다.
서비스 메타데이터(205)는 엔티티 인스턴스에 관한 정보를 획득하기 위한 방법에 대한 설명을 포함할 수도 있다. 이러한 메타데이터로는 엔티티 인스턴스, 열람 및 정적 액션 사이의 실제 또는 가능한 관계를 유도하기 위한 방법에 대한 설명을 포함할 수도 있다.
애플리케이션 서비스(210)는 네트워크(220)를 통해 클라이언트(230)와 통신한다. 네트워크(220)는 LAN 또는 인터넷 등의 WAN일 수 있다. 클라이언트(230)는 도 1에 도시된 컴퓨팅 장치(120)와 같은 컴퓨팅 장치일 수 있다. 클라이언트(230)에는 애플리케이션 서비스(210)에의 액세스를 획득하기 위한 웹브라우저 또는 기타의 전위(front end) 애플리케이션이 구비되어 있을 수 있다. 애플리케이션(232)은 클라이언트(230)에서 구동되며, 예를 들어 워드프로세서, 스프레드시트 또는 이메일 시스템 등의 애플리케이션일 수 있다. 애플리케이션(232)은 문서(234)의 생성, 제시 및 사용자들 간의 교환을 가능하게 한다.
문서(234)는 서비스 엔티티의 관리를 참조하고 이에 영향을 줄 수 있다. 도 4를 참조하면, 문서(234)는 "John Smith는 신용카드 불임금을 연체하였습니다"(John Smith has missed a credit card payment)라는 텍스트를 포함하고 있다. 따라서, 문서(234)는 신청자 서비스 엔티티(215a) 및 대출 서비스 엔티티(215b) 양자를 참조한다. 문서(234)는 이러한 참조된 서비스 엔티티(215a, 215b)의 관리에 영향을 줄 수 있다. 예를 들어, 문서(234)는 신청자 서비스 엔티티 "John Smith"(215a)의 상태를 상태 306a로부터 상태 310a로 변경하도록 사용자에게 영향을 줄 수 있다. 문서(234)는 또한 대출 서비스 엔티티 "John Smith"(215b)의 상태를 상태 306b로부터 상태 310b로 변경하도록 사용자에게 영향을 줄 수 있다.
도 2에 도시된 종래의 시스템(200)에서는, 사용자가 애플리케이션(232) 내에서 서비스 엔티티(215)를 관리하는 것이 불가능하다. 따라서, 신청자 서비스 엔티티(215a)의 상태를 변경하기 위해서는, 사용자가 애플리케이션 서비스(210a)에 액세스하고 또한 애플리케이션 서비스(210a) 내의 신청자 서비스 엔티티(215a)를 식별해야 한다. 또한, 대출 서비스 엔티티(215b)의 상태를 변경하기 위해서는, 사용자가 애플리케이션 서비스(210b)에 액세스하고 또한 애플리케이션 서비스(210b) 내의 대출 서비스 엔티티(215b)를 식별해야 한다.
Ⅲ. 본 발명의 시스템 및 방법의 일례
본 발명은 도 2의 종래의 시스템(200)과 달리 사용자에 의한 애플리케이션 엔티티의 생성 및 규정을 가능하게 하고 있다. 본 발명은 또한 관련 서비스 엔티티의 매칭 및 통합을 가능하게 하고 있다. 각각의 애플리케이션 엔티티는 하나 이상의 관련 서비스 엔티티에 연결되어 있을 수 있다. 관련 서비스 엔티티에 대응하는 메타데이터가 애플리케이션에 제공될 수 있다. 이러한 메타데이터는 관련 서비스 엔티티를 애플리케이션 내에서 관리하는 것을 가능하게 한다.
도 5는 본 발명에 따른 자원 관리 시스템의 일례(500)를 나타낸 것이다. 일반적으로, 애플리케이션 서비스(210)는 서비스 엔티티(215)에 대응하는 서비스 메타데이터(505)를 콘텍스트 서비스(510) 및 액션 서비스(520)에 노출(expose)시킨다. 콘텍스트 서비스(510)는 서비스 메타데이터(505)에 기초하여 서비스 엔티티(215)를 콘텍스트 엔티티(515)에 통합한다. 콘텍스트 서비스(510)는 또한 서비스 메타데이터(505)를 콘텍스트 메타데이터(525)에 통합한다. 액션 서비스(520)는 서비스 엔티티(215)에 이용가능한 동적 액션을 결정한다. 애플리케이션(532)은 애플리케이션 엔티티(535)에 대응하는 애플리케이션 메타데이터(545)를 보유한다.
애플리케이션 서비스(210)는 서비스 메타데이터(505)를 네트워크(220)를 통해 콘텍스트 서비스(510)에 노출시킨다. 도 2의 종래의 서비스 메타데이터(205)와 달리, 본 발명에 따른 서비스 메타데이터(505)는 서비스 엔티티(215)와 연계하여 수행되는 액션들의 이용가능성에 대한 분류를 포함할 수 있다. 보다 구체적으로, 애플리케이션 서비스(210)는 액션을 보편적으로 이용가능함, 낙관적으로 이용가능함, 또는 규칙에 따라 이용가능함으로 분류할 수 있다.
보편적으로 이용가능한 액션은 항상 수행되는 액션이다. 이러한 액션들은 규칙 또는 조건에 구속되지 않는다.
낙관적으로 이용가능한 액션은 특정 규칙 및 조건에 구속하여 이용가능한 것이다. 예를 들어, 이러한 규칙으로는 액션이 수행되는 최대 횟수, 액션이 수행되어야 하는 기간, 액션을 수행해야 하는 사용자 또는 사용자의 클래스, 또는 액션의 수행 전 또는 후에 일어나야만 하는 조건을 들 수 있다. 낙관적으로 이용가능한 액션을 분류해 둠으로써, 애플리케이션 서비스(210)는 가능한 모든 규칙과 이 규칙을 이용하기 위해 충족되어야 하는 조건들을 규정할 필요없이 액션을 이용가능하게 할 수 있다.
규칙에 따라 이용가능한 액션은 특정 규칙 및 조건에 합치하는 경우에만 이용가능하다. 규칙에 따라 이용가능한 액션을 분류해 둠으로써, 애플리케이션 서비스(210)는 특정 규칙 및 조건이 충족되지 않은 경우 액션의 이용가능성을 거부할 수 있다.
콘텍스트 서비스(510)는 예를 들어 도 1의 컴퓨팅 장치(120)와 같은 컴퓨팅 장치에서 동작하는 애플리케이션일 수 있다. 콘텍스트 서비스(510)는 서비스 엔티티(215) 및 이 서비스 엔티티에 이용가능한 대응하는 정적 액션을 식별하기 위해 서비스 메타데이터(505)를 파싱할 수 있다. 콘텍스트 서비스(510)는 예를 들어 애플리케이션 서비스(210)에 대해 식별된 서비스 엔티티의 더미콜(dummy call)을 수행함으로써 서비스 메타데이터(505)를 검증(validate)할 수 있다.
콘텍스트 서비스(510)는 서비스 엔티티(215)를 콘텍스트 엔티티(515)에 통합한다. 콘텍스트 서비스는 서비스 엔티티(215)를 통합하기 위하여 관련 서비스 엔티티(215)를 매칭시키며, 이러한 관련 서비스 엔티티(215)를 싱글 콘텍스트 엔티티(515)에 통합한다. 예를 들어, 콘텍스트 서비스(510)는 관련 서비스 엔티티(215a, 215b)를 매칭시키여 이들을 콘텍스트 엔티티(515a)에 통합할 수 있다. 콘텍스트 서비스(510)는 또한 서비스 엔티티(210a', 210b')가 서로 관련된 것이 아니므로 이들 서비스 엔티티(210a', 210b')를 각각 개별 콘텍스트 엔티티(515b, 515c)에 통합하기로 결정할 수도 있다.
콘텍스트 서비스(510)는 서비스 메타데이터(505)에 기초하여 관련 서비스 엔티티(215)를 매칭시킨다. 보다 구체적으로, 콘텍스트 서비스(510)는 서비스 엔티티(215)를 상호참조하여 실제 및 잠재 관계를 식별한다. 콘텍스트 서비스(510)는 이러한 관계를 속성의 명명법(nomenclature)에 기초하여 식별할 수도 있다. 예를 들어, 콘텍스트 서비스(510)는 대출 서비스 엔티티(215b)가 "신청자" 속성을 포함하고 있기 때문에 신청자 서비스 엔티티(215a)를 대출 서비스 엔티티(215b)에 매칭시킬 수도 있다. 콘텍스트 서비스(510)는 속성을 분해하여 합성(compose)할 수도 있다. 또한, 콘텍스트 서비스(510)는 속성을 변형할 수도 있다. 예를 들어, 콘텍스트 서비스(510)는 신청자 서비스 엔티티(215a)의 "이름"(first name) 및 "성"(last name)을 대출 서비스 엔티티(215b)의 "성명"(name) 속성에 매칭시키도록 변형시킬 수도 있다.
서비스 엔티티(215)를 콘텍스트 엔티티(515)에 통합할 뿐만 아니라, 콘텍스트 서비스(510)는 서비스 메타데이터(505)를 콘텍스트 메타데이터(525)에 통합한다. 보다 구체적으로, 콘텍스트 서비스(510)는 서비스 엔티티(215)의 속성 뿐만 아니라 서비스 엔티티(215)에서 이용가능한 동적 액션을 통합한다. 예를 들어, 콘텍스트 서비스(510)는 서비스 엔티티(215)에서 이용가능한 정적 액션을 분해하여 작성할 수도 있다. 또한, 콘텍스트 서비스(510)는 서비스 엔티티(215)의 정적 액션을 변형할 수도 있다.
콘텍스트 서비스(510)는 서비스 엔티티(215)에의 액세스에 관한 서비스 메타데이터(505)를 통합할 수도 있다. 예를 들어, 콘텍스트 서비스(510)는 특정 클래스의 사용자는 콘텍스트 엔티티(215a)에 액세스할 수 있지만 콘텍스트 엔티티(215b)에는 액세스할 수 없다고 규정하고 있는 콘텍스트 메타데이터(525)를 고집(persist)할 수도 있다.
콘텍스트 서비스(510)는 또한 엔티티의 인스턴스에 관한 메타데이터 및 이러한 인스턴스, 열람 및 정적 액션 사이의 실제 또는 가능한 관계의 유도에 관한 메타데이터를 통합할 수도 있다. 콘텍스트 서비스(510)는 서비스 메타데이터(505)를 위한 렌더링 정보를 보유할 수도 있다. 콘텍스트 서비스(510)는 애플리케이션 서비스(310)로부터 서비스 메타데이터(505)를 미리 페치하여 서비스 메타데이터(505)의 이용가능성을 증대시킬 수도 있다. 콘텍스트 서비스(510)는 예를 들어 정전시 애플리케이션 서비스(210)가 오프라인으로 된 경우 서비스 메타데이터(505)를 복원하기 위한 수순을 저장하고 있을 수도 있다.
액션 서비스(520)는 예를 들어 도 1에 도시된 컴퓨팅 장치(120)와 같은 컴퓨팅 장치에서 동작하는 애플리케이션일 수 있다. 일반적으로, 액션 서비스(520)는 서비스 엔티티(215)에 이용가능한 동적 액션을 결정한다. 액션 서비스(520)는 서비스 엔티티(215)에서 이용가능한 동적 액션을 갖는 애플리케이션 서비스(210)를 식별하기 위해 콘텍스트 서비스(510)에 질의(query)할 수 있다. 그러면, 액션 서비스(520)는 식별된 애플리케이션 서비스(210)에 질의하여 서비스 엔티티(215)에 이용가능한 동적 액션을 획득한다.
다른 방법으로, 액션 서비스(520)는 식별된 애플리케이션 서비스(210)에 질의하여 엔티티에 대한 상태 정보를 획득할 수도 있다. 그러면, 액션 서비스(520)는 해당 엔티티에 대응하는 서비스 메타데이터(505)를 검색하여 서비스 엔티티(215)에 이용가능한 액션을 결정한다.
액션 서비스(520)는 애플리케이션 서비스(210)에서 서비스 엔티티(215) 상의 액션의 수행을 트랙킹하는 트랙킹 메커니즘(522)을 포함한다. 트랙킹 메커니즘(522)은 사용자가 프로세스 상에서 상태 변경 방법을 호출(invoke)하는 때를 판정하고, 그 방법의 성공, 실패 또는 중간 완료(pending completion)를 트랙킹한다.
액션 서비스(520)는 또한 애플리케이션 서비스(210)에서의 동적 액션의 수행이 무효하거나 또는 마찰을 일으키게 되는 것을 방지하고 충고하는 마찰 방지 메커니즘(524)을 포함하고 있다. 마찰 방지 메커니즘(524)은 서비스 엔티티(215)에서 수행되는 액션의 이용가능성 분류를 평가한다. 보다 구체적으로, 전술한 바와 같이, 이러한 액션은 보편적으로 이용가능함, 낙관적으로 이용가능함, 또는 규칙에 따라 이용가능함으로 분류할 수 있다. 마찰 방지 메커니즘(524)은 이러한 분류를 트랙킹 메커니즘에 의해 트랙킹된 액션과 함께 이용 및 해석하여, 액션의 이용가능성을 판정하고 실제 및 잠재 마찰을 유발할 것 같은 동적 액션을 검출한다.
애플리케이션(532)은 문서(534)의 생성, 작성 및 교환을 가능하게 하는, 예를 들어 워드프로세서, 스프레드시트 또는 이메일 시스템 등의 애플리케이션일 수 있다. 일반적으로, 도 2에 도시된 종래의 애플리케이션(232)과 달리, 애플리케이션(532)은 애플리케이션 엔티티(535a, 535b)의 생성 및 규정을 가능하게 한다. 애플리케이션(532)은 이러한 애플리케이션 엔티티(535)에 대응하는 애플리케이션 메타데이터(545)를 보유할 수 있다. 이러한 애플리케이션 메타데이터(545)는 예를 들어 대응하는 애플리케이션 엔티티(535)의 속성을 포함할 수도 있다.
사용자는 예를 들어 문서(534)의 텍스트 내의 인스턴스명을 타이핑하고, 연결된 마우스, 키보드 등으로 상기한 명칭을 하이라이트 표시하고, 애플리케이션 메뉴로부터 "인스턴스 규정" 옵션을 선택함으로써 애플리케이션 엔티티(535)의 인스턴스를 규정할 수 있다. 그러면, 사용자는 미리 규정된 애플리케이션 엔티티(535)의 리스트로부터 애플리케이션 엔티티(535)를 선택하거나 "신규" 애플리케이션 엔티티(535)의 인스턴스를 생성할 수 있다. 사용자가 미리 규정된 애플리케이션 엔티티(535)를 선택한 경우, 미리 규정된 애플리케이션 엔티티(535)의 속성 열람(view)이 표시되며, 사용자는 해당 인스턴스의 속성을 규정하게 된다. 사용자가 신규 애플리케이션 엔티티(535)를 생성한 경우, 사용자는 해당 애플리케이션 엔티티(535)의 속성 세트를 생성하고 해당 인스턴스의 속성 세트를 규정하게 된다.
애플리케이션 엔티티(535)의 인스턴스가 규정되고 나면, 이것은 문서의 텍스트 내에 예를 들어 언더라인 표시나 특정 컬러의 텍스트에 의해 링크로서 보여지게 된다. 사용자는 예를 들어 연결된 마우스를 이용하여 해당 링크를 클릭함으로써 인스턴스를 선택하게 된다. 인스턴스의 선택에 의해 인스턴스의 속성 열람이 표시되게 된다.
도 6은 애플리케이션 사용자 인터페이스의 일례(605)를 나타낸 것이다. 사용자 인터페이스(605)는 클라이언트(230)에 연결된 모니터 등의 표시 장치에 표시될 수도 있다. 사용자 인터페이스(605)는 문서(534)를 표시하는 문서 윈도우(610)를 포함한다. 문서(534)는 "John Smith는 신용카드 불임금을 연체하였습니다"라는 텍스트를 포함하고 있다. 여기서, "John Smith"는 링크(612)로써 도시된 바와 같이 신청자 애플리케이션 엔티티(535a)의 인스턴스로서 규정되어 있다.
애플리케이션 사용자 인터페이스(605)는 또한 애플리케이션 메타데이터 윈도우(620)를 포함한다. 애플리케이션 메타데이터 윈도우(620)는 링크(612)를 클릭함으로써 열 수 있다. 엔티티 윈도우(620)는 애플리케이션 메타데이터(545a)를 표시하며, 이는 신청자 애플리케이션 엔티티(535a)의 속성을 포함한다. 또다른 실시예에서, 애플리케이션 메타데이터(545a)는 문서(534) 내의 다이얼로그 박스로 나타날 수도 있다.
이하, 도 7a 및 도 7b를 참조하여 애플리케이션(532)에서의 실행 서비스(536)에 대해 상세히 설명하기로 한다. 일반적으로, 실행 서비스(536)는 선택된 애플리케이션 메타데이터(545)를 콘텍스트 서비스(510)에 제공한다. 실행 서비스(536)는 또한 관련 서비스 엔티티(215)의 열람을 제공하는 상태 및 관계 열람 메커니즘(538)을 포함한다.
도 7a 및 도 7b는 본 발명에 따른 애플리케이션(532) 내에서의 서비스 엔티티(215)의 관리 방법의 일례를 나타낸 흐름도이다. 일반적으로, 선택된 애플리케이션 엔티티(535)는 서비스 엔티티(215)와 연결되며, 관련 서비스 엔티티(215)의 서비스 메타데이터(505)는 애플리케이션(532)에 제공된다. 제공된 서비스 메타데이터(505)는 관련 서비스 엔티티(215)가 애플리케이션(532) 내에서 관리될 수 있도록 한다.
단계 710에서 애플리케이션 엔티티(535)가 애플리케이션(532)에서 선택된다. 예를 들어, 애플리케이션(532)에서 연결된 마우스를 이용하여 링크(612)를 클릭함으로써 신청자 애플리케이션 엔티티(535a)가 선택될 수도 있다.
단계 712에서 클라이언트(230) 상의 실행 서비스(536)가 선택된 애플리케이션 엔티티(535)에 대응하는 애플리케이션 메타데이터(545)를 애플리케이션(532)으로부터 검색한다. 예를 들어, 신청자 애플리케이션 엔티티(535a)가 선택된 경우, 실행 서비스(536)는 대응하는 애플리케이션 메타데이터(545a)를 검색할 것이다. 단계 714에서 실행 서비스(536)는 검색된 애플리케이션 메타데이터(545a)를 콘텍스트 서비스(510)에 전달한다.
단계 716에서 콘텍스트 서비스(510)는 선택된 애플리케이션 엔티티(535)를 관련 콘텍스트 엔티티(515)에 매칭시킨다. 엔티티의 매칭에 관해서는 도 5를 참조하여 상세하게 설명한 바 있으며, 예를 들어 애플리케이션 메타데이터(545) 및 콘텍스트 메타데이터(525)에 포함된 엔티티의 속성을 상호참조함으로써 수행될 수 있다. 예를 들어, 콘텍스트 서비스(510)는 공통 속성에 기초하여 신청자 애플리케이션 엔티티(535a)를 콘텍스트 엔티티(515a)에 매칭시킬 수도 있다.
단계 718에서 콘텍스트 서비스(510)는 관련 콘텍스트 엔티티(515)가 유도된 관련 서비스 엔티티(215)를 식별한다. 예를 들어, 콘텍스트 서비스(510)는 콘텍스트 엔티티(515a)가 신청자 서비스 엔티티(215a) 및 대출 서비스 엔티티(215b)로부터 유도된 것으로 식별할 수도 있다.
단계 720에서 콘텍스트 서비스(510)는 콘텍스트 메타데이터(525)를 조사하여 관련 서비스 엔티티(215)에서 이용가능한 동적 액션을 결정한다. 콘텍스트 서비스(510)는 관련 서비스 엔티티(215)의 그래프, 이들 엔티티와의 관계, 및 이들 엔티티 및 관계에서 이용가능한 정적 액션을 생성할 수도 있다.
단계 722에서 콘텍스트 서비스(510)는 관련 서비스 엔티티(215)에서 이용가능한 동적 액션을 결정하기 위하여 액션 서비스(520)에 질의한다. 액션 서비스(520)는 서비스 엔티티(215)에서 이용가능한 액션 뿐만 아니라 마찰을 일으키게 될 액션들도 제공한다. 액션 서비스(520)는 또한 동일 프로세스에서의 동일 또는 다중의 동적 액션의 다중 이용에 대해 제한을 둘 수도 있다.
단계 724에서 콘텍스트 서비스(510)는 이용가능한 액션을 실행 서비스(536)에 제공한다. 콘텍스트 서비스(510)는 또한 관련 서비스 엔티티(215)에 대한 기타 서비스 메타데이터(505)를 제공할 수도 있다. 관련 서비스 엔티티(215) 중의 하나에 대한 액세스가 제한된 경우, 사용자는 해당 엔티티에 대한 메타데이터를 수신하기 위한 인증을 제공할 필요가 있을 수도 있다. 예를 들어, 사용자는 식별자 또는 패스워드에 의해 로그인할 필요가 있을 수도 있다.
단계 726에서 실행 서비스(536)는 관련 서비스 엔티티(215)에서 이용가능한 액션의 표시를 생성한다. 실행 서비스(536)는 관련 서비스 엔티티(215) 사이의 관계 열람을 제공하는 상태 및 관계 열람 메커니즘(538)을 포함한다. 이러한 관계는 마찰 방지에 관련된 상태에 동작을 판정하는데 적합한 것들만을 제공하도록 필터링될 수도 있다. 상태 및 관계 열람 메커니즘(512)은 수행(taking) 상태에 관한 정보 뿐만 아니라 관련 서비스 엔티티(215)의 상태 변경 방법의 성공, 실패 및 현재 상태에 관한 정보를 제공할 수 있다.
도 8을 참조하면, 디스플레이(815)는 관련 서비스 엔티티(215)에서 이용가능한 액션을 도시하고 있다. 디스플레이(815)는 애플리케이션 서비스 액션 윈도우(630)에 표시된다. 디스플레이(815)는 관련 서비스 엔티티(215a, 215b)에 대한 이용가능한 정적 및 동적 액션을 나타내는 제1 디스플레이부(815a)를 포함한다. 디스플레이(815)는 또한 애플리케이션 서비스(210)에서 이용가능한 액션에 관한 정보를 나타내는 제2 디스플레이부(815b)를 포함한다. 제2 디스플레이부(815b)는 컴포넌트 프로세스(300a, 300b) 간의 관계, 각 컴포넌트 프로세스(300a, 300b)의 상태, 및 각 프로세스(300a, 300b) 내의 신청자 서비스 엔티티(215a) 및 대출 서비스 엔티티(215b) 각각에서의 액션의 이용가능성을 나타낸다. 예를 들어 연결된 마우스에 의해 디스플레이(815) 내의 프로세스를 클릭함으로써, 프로세스(300a, 300b) 내에서의 진행중인 액션의 성공, 실패 및 상태에 관한 정보가 표시될 수도 있다.
다른 방법으로, 이용가능한 액션이 캐스케이드 메뉴 세트 또는 액션 및 옵션의 카테고리 분류 세트로서 표시될 수도 있다. 또한, 이용가능한 액션이 문서 윈도우(610) 내에 다이얼로그 박스로 표시될 수도 있다. 실행 서비스(536)가 콘텍스트 서비스(510)에 의해 지정된 다이얼로그 및 렌더링 메커니즘을 호출할 수도 있다.
단계 728에서 사용자는 디스플레이(815)로부터 액션을 요청할 수도 있다. 사용자는 예를 들어 연결된 마우스에 의해 액션을 클릭함으로써 액션을 요청할 수도 있다. 예를 들어, 사용자가 "속성 열람" 또는 "속성 변경"을 선택한 경우, 관련 서비스 엔티티(215a, 215b)의 속성이 사용자 인터페이스(805) 내의 다이얼로그 박스 또는 새로운 창에 나타날 수도 있다. 그러면 사용자 인터페이스는 해당 속성을 열람 및 변경할 수 있게 된다.
또다른 실시예에서, 실행 서비스(536)는 이러한 액션을 사용자에게 표시하지 않고 자동적으로 이용가능한 액션을 수행할 수도 있다.
단계 730에서 요청된 액션은 적절한 애플리케이션 서비스(210)에 전달된다. 요청된 액션이 정적 액션인 경우, 이것은 콘텍스트 서비스(510)를 통해 적절한 애플리케이션 서비스(210)에 전달되게 된다. 요청된 액션이 동적 액션인 경우, 이것은 액션 서비스(520)를 통해 적절한 애플리케이션 서비스(210)에 전달되게 된다.
단계 732에서 액션은 적절한 애플리케이션 서비스(210)에서 수행되게 된다. 액션의 수행은 트랙킹 메커니즘(522)에 의해 기록(log)되게 된다.
이상 본 발명을 각종 도면의 바람직한 실시예와 관련하여 설명하였지만, 이와 다른 유사한 실시예를 이용할 수도 있으며, 또는 본 발명으로부터 일탈하지 않는 범위 내에서 본 발명과 동일한 기능을 수행하기 위하여 전술한 실시예에 추가 및 변형을 가할 수도 있다. 따라서, 본 발명은 하나의 실시예에 국한되는 것이 아니라, 첨부된 특허청구범위에 의해 그 범주가 정해진다.
전술한 바와 같이, 본 발명의 방법 및 시스템에 따르면, 서로 다른 애플리케이션 서비스로부터의 관련 서비스 엔티티의 매칭, 서비스 엔티티와 문서의 연결 및 애플리케이션 내에서의 서비스 엔티티의 관리가 가능하게 된다.
도 1은 본 발명의 태양 및/또는 그 일부가 채용될 수 있는 범용 컴퓨터 시스템을 나타낸 블록도.
도 2는 종래의 자원 관리 시스템의 일례를 나타낸 블록도.
도 3a 및 도 3b는 업무 프로세스의 일례를 나타낸 흐름도.
도 4는 문서의 일례를 나타낸 도면.
도 5는 본 발명에 따른 자원 관리 시스템의 일례를 나타낸 블록도.
도 6은 본 발명에 따른 애플리케이션 사용자 인터페이스의 일례를 나타낸 도면.
도 7a 및 도 7b는 본 발명에 따른 애플리케이션 내에서의 서비스 엔티티의 관리를 위한 방법의 일례를 나타낸 흐름도.
도 8은 본 발명에 따른 이용가능한 액션을 포함한 애플리케이션 사용자 인터페이스의 일례를 나타낸 도면.
<도면의 주요 부분에 대한 부호의 설명>
210a, 210b: 애플리케이션 서비스
215a, 215b, 215a', 215b': 서비스 엔티티
220: 네트워크
230: 클라이언트
500: 자원 관리 시스템
505a, 505b: 서비스 메타데이터
510: 콘텍스트 서비스
515a, 515b, 515c: 콘텍스트 엔티티
520: 액션 서비스
522: 트랙킹 메커니즘
524: 마찰 방지 메커니즘
525: 콘텍스트 메타데이터
532: 애플리케이션
534: 문서
535a, 535b: 애플리케이션 엔티티
536: 실행 서비스
538: 상태 및 관계 열람 메커니즘
545: 애플리케이션 메타데이터

Claims (24)

  1. 애플리케이션에 의해 관리되는 애플리케이션 엔티티를 복수의 애플리케이션 서비스에 의해 관리되는 복수의 관련 서비스 엔티티에 연결하는 방법 - 상기 애플리케이션은 상기 애플리케이션 엔티티에 대응하는 애플리케이션 메타데이터를 보유하며, 상기 애플리케이션 서비스는 상기 관련 서비스 엔티티에 대응하는 서비스 메타데이터를 보유함 - 에 있어서,
    상기 서비스 메타데이터에 기초하여 상기 관련 서비스 엔티티를 매칭시키는 단계;
    상기 관련 서비스 엔티티를 콘텍스트 엔티티에 통합하는 단계;
    상기 콘텍스트 엔티티에 대응하는 서비스 메타데이터를 콘텍스트 메타데이터에 통합하는 단계; 및
    상기 애플리케이션 엔티티를 상기 애플리케이션 메타데이터 및 상기 콘텍스트 메타데이터에 기초하여 상기 콘텍스트 엔티티에 매칭시키는 단계
    를 포함하는 것을 특징으로 하는 연결 방법.
  2. 제1항에 있어서,
    상기 관련 서비스 엔티티의 매칭 단계는, 상기 관련 서비스 엔티티를 상기 관련 서비스 엔티티의 속성에 기초하여 매칭시키는 단계를 포함하는 것을 특징으로 하는 연결 방법.
  3. 제1항에 있어서,
    상기 애플리케이션 엔티티를 상기 콘텍스트 엔티티에 매칭시키는 단계는, 상기 애플리케이션 엔티티를 상기 애플리케이션 엔티티의 속성 및 상기 콘텍스트 엔티티의 속성에 기초하여 상기 콘텍스트 엔티티에 매칭시키는 단계를 포함하는 것을 특징으로 하는 연결 방법.
  4. 제1항에 있어서,
    상기 관련 서비스 엔티티에 대응하는 서비스 메타데이터를 획득하는 단계를 더 포함하는 것을 특징으로 하는 연결 방법.
  5. 제4항에 있어서,
    상기 관련 서비스 엔티티에 대응하는 서비스 메타데이터를 획득하는 단계는,
    콘텍스트 서비스 측에서 상기 관련 서비스 엔티티에서 이용가능한 정적 액션을 결정하는 단계; 및
    액션 서비스에 질의하여 상기 관련 서비스 엔티티에서 이용가능한 동적 액션을 결정하는 단계
    를 포함하는 것을 특징으로 하는 연결 방법.
  6. 제4항에 있어서,
    상기 관련 서비스 엔티티에 대응하는 서비스 메타데이터를 상기 애플리케이션에 제공하는 단계를 더 포함하는 것을 특징으로 하는 연결 방법.
  7. 제6항에 있어서,
    상기 관련 서비스 엔티티에 대응하는 서비스 메타데이터를 상기 애플리케이션에 제공하는 단계는, 상기 관련 서비스 엔티티에서 이용가능한 정적 및 동적 액션을 상기 애플리케이션에 제공하는 단계를 포함하는 것을 특징으로 하는 연결 방법.
  8. 제1 애플리케이션 서비스에서의 제1 서비스 엔티티를 애플리케이션 측에서 관리하는 방법에 있어서,
    애플리케이션 엔티티를 애플리케이션 메타데이터 및 콘텍스트 메타데이터에 기초하여 관련 콘텍스트 엔티티에 매칭시키는 단계;
    상기 관련 콘텍스트 엔티티가 상기 제1 서비스 엔티티로부터 유도되었음을 식별하는 단계;
    상기 제1 서비스 엔티티에 대응하는 서비스 메타데이터를 상기 애플리케이션에 제공하는 단계; 및
    상기 제공된 서비스 메타데이터를 이용하여 상기 제1 서비스 엔티티를 상기 애플리케이션 측에서 관리하는 단계
    를 포함하는 것을 특징으로 하는 관리 방법.
  9. 제8항에 있어서,
    상기 애플리케이션 엔티티를 상기 애플리케이션 엔티티의 속성 및 상기 관련 콘텍스트 엔티티의 속성에 기초하여 상기 관련 콘텍스트 엔티티에 매칭시키는 단계를 더 포함하는 것을 특징으로 하는 관리 방법.
  10. 제8항에 있어서,
    상기 관련 콘텍스트 엔티티가 상기 제1 서비스 엔티티 및 제2 애플리케이션 서비스 측의 제2 서비스 엔티티로부터 유도되었음을 식별하는 단계 - 상기 제1 서비스 엔티티는 상기 제2 서비스 엔티티와 관련됨 - 를 더 포함하는 것을 특징으로 하는 관리 방법.
  11. 제8항에 있어서,
    상기 제1 서비스 엔티티에 대응하는 서비스 메타데이터를 획득하는 단계를 더 포함하는 것을 특징으로 하는 관리 방법.
  12. 제11항에 있어서,
    상기 제1 서비스 엔티티에 대응하는 서비스 메타데이터를 획득하는 단계는,
    콘텍스트 서비스 측에서 상기 제1 서비스 엔티티에서 이용가능한 정적 액션을 결정하는 단계; 및
    액션 서비스에 질의하여 상기 제1 서비스 엔티티에서 이용가능한 동적 액션을 결정하는 단계
    를 포함하는 것을 특징으로 하는 관리 방법.
  13. 제12항에 있어서,
    상기 제1 서비스 엔티티에 대응하는 서비스 메타데이터를 상기 애플리케이션에 제공하는 단계는, 상기 제1 서비스 엔티티에서 이용가능한 정적 및 동적 액션을 상기 애플리케이션에 제공하는 단계를 포함하는 것을 특징으로 하는 관리 방법.
  14. 제13항에 있어서,
    상기 제공된 서비스 메타데이터를 이용하여 상기 제1 서비스 엔티티를 상기 애플리케이션 측에서 관리하는 단계는,
    상기 애플리케이션 측에서 상기 제1 서비스 엔티티에서 이용가능한 정적 및 동적 액션의 표시를 생성하는 단계; 및
    상기 애플리케이션 측의 상기 표시로부터 상기 제1 애플리케이션 서비스 측의 제1 서비스 엔티티에서 수행되는 액션을 선택하는 단계
    를 포함하는 것을 특징으로 하는 관리 방법.
  15. 제14항에 있어서,
    상기 선택된 액션을 상기 제1 애플리케이션 서비스에 전달하는 단계; 및
    상기 선택된 액션을 상기 제1 애플리케이션 서비스 측에서 수행하는 단계
    를 더 포함하는 것을 특징으로 하는 관리 방법.
  16. 제1 애플리케이션 서비스에서의 제1 서비스 엔티티를 애플리케이션 측에서 관리하는 시스템에 있어서,
    상기 제1 서비스 엔티티에 대응하는 제1 서비스 메타데이터를 보유하며, 상기 제1 서비스 메타데이터를 콘텍스트 서비스에 제공하는 제1 애플리케이션 서비스;
    애플리케이션 엔티티에 대응하는 애플리케이션 메타데이터를 보유하며, 상기 애플리케이션 메타데이터를 콘텍스트 서비스에 제공하는 애플리케이션; 및
    상기 제1 서비스 엔티티로부터 유도된 콘텍스트 엔티티를 보유하며, 상기 애플리케이션 엔티티를 상기 콘텍스트 엔티티에 매칭시키며, 상기 제1 서비스 메타데이터를 상기 애플리케이션에 제공 - 상기 제1 서비스 메타데이터는 상기 제1 서비스 엔티티를 상기 애플리케이션 측에서 관리할 수 있도록 함 - 하는 콘텍스트 서비스
    를 포함하는 것을 특징으로 하는 관리 시스템.
  17. 제16항에 있어서,
    제2 서비스 엔티티에 대응하는 제2 서비스 메타데이터를 보유하며, 상기 제2 서비스 메타데이터를 상기 콘텍스트 서비스에 제공 - 상기 제2 서비스 엔티티는 상기 제1 서비스 엔티티에 관련됨 - 하는 제2 애플리케이션 서비스를 더 구비하는 것을 특징으로 하는 관리 시스템.
  18. 제17항에 있어서,
    상기 콘텍스트 서비스는 상기 제1 서비스 엔티티 및 제2 서비스 엔티티를 상기 제1 서비스 메타데이터 및 제2 서비스 메타데이터에 기초하여 매칭시키는 것을 특징으로 하는 관리 시스템.
  19. 제17항에 있어서,
    상기 콘텍스트 엔티티는 상기 제1 서비스 엔티티 및 제2 서비스 엔티티로부터 유도되는 것을 특징으로 하는 관리 시스템.
  20. 제17항에 있어서,
    상기 콘텍스트 서비스는 상기 제1 서비스 메타데이터 및 제2 서비스 메타데이터를 상기 애플리케이션에 제공 - 상기 제1 서비스 메타데이터는 상기 제1 서비스 엔티티가 상기 애플리케이션 측에서 관리될 수 있도록 하며, 상기 제2 서비스 메타데이터는 상기 제2 서비스 엔티티가 상기 애플리케이션 측에서 관리될 수 있도록 함 - 하는 것을 특징으로 하는 관리 시스템.
  21. 제16항에 있어서,
    상기 제1 애플리케이션 서비스 측의 제1 서비스 엔티티에서 이용가능한 동적 액션을 결정하는 액션 서비스를 더 구비하는 것을 특징으로 하는 관리 시스템.
  22. 제21항에 있어서,
    상기 콘텍스트 서비스는 상기 액션 서비스에 질의하여 상기 제1 서비스 엔티티에서 이용가능한 동적 액션을 결정하며, 상기 제1 서비스 엔티티에서 이용가능한 동적 액션을 상기 애플리케이션에 제공하는 것을 특징으로 하는 관리 시스템.
  23. 제16항에 있어서,
    상기 콘텍스트 서비스에 상기 애플리케이션 메타데이터를 제공하는 실행 서비스를 더 구비하는 것을 특징으로 하는 관리 시스템.
  24. 제23항에 있어서,
    상기 실행 서비스는 제1 서비스 메타데이터의 표시를 생성하는 것을 특징으로 하는 관리 시스템.
KR1020040057332A 2003-08-25 2004-07-22 애플리케이션 서비스와 애플리케이션 간의 자원 통합관리를 위한 시스템 및 방법 KR20050022279A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/648,507 US20050050057A1 (en) 2003-08-25 2003-08-25 System and method for integrating management of resources between application services and applications
US10/648,507 2003-08-25

Publications (1)

Publication Number Publication Date
KR20050022279A true KR20050022279A (ko) 2005-03-07

Family

ID=34104665

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040057332A KR20050022279A (ko) 2003-08-25 2004-07-22 애플리케이션 서비스와 애플리케이션 간의 자원 통합관리를 위한 시스템 및 방법

Country Status (12)

Country Link
US (1) US20050050057A1 (ko)
EP (1) EP1510918A3 (ko)
JP (1) JP2005071335A (ko)
KR (1) KR20050022279A (ko)
CN (1) CN1591444A (ko)
AU (1) AU2004203265A1 (ko)
BR (1) BRPI0403014A (ko)
CA (1) CA2475552A1 (ko)
MX (1) MXPA04007145A (ko)
RU (1) RU2347265C2 (ko)
TW (1) TW200604875A (ko)
ZA (1) ZA200405645B (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101456511B1 (ko) * 2011-03-08 2014-11-04 소니 컴퓨터 엔터테인먼트 인코포레이티드 데이터 액세스 관리방법 및 데이터 액세스 관리 시스템

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005089241A2 (en) 2004-03-13 2005-09-29 Cluster Resources, Inc. System and method for providing object triggers
US8782654B2 (en) 2004-03-13 2014-07-15 Adaptive Computing Enterprises, Inc. Co-allocating a reservation spanning different compute resources types
US20070266388A1 (en) 2004-06-18 2007-11-15 Cluster Resources, Inc. System and method for providing advanced reservations in a compute environment
US8176490B1 (en) 2004-08-20 2012-05-08 Adaptive Computing Enterprises, Inc. System and method of interfacing a workload manager and scheduler with an identity manager
US7882170B1 (en) 2004-10-06 2011-02-01 Microsoft Corporation Interfacing a first type of software application to information configured for use by a second type of software application
US8271980B2 (en) 2004-11-08 2012-09-18 Adaptive Computing Enterprises, Inc. System and method of providing system jobs within a compute environment
US8863143B2 (en) 2006-03-16 2014-10-14 Adaptive Computing Enterprises, Inc. System and method for managing a hybrid compute environment
US8631130B2 (en) 2005-03-16 2014-01-14 Adaptive Computing Enterprises, Inc. Reserving resources in an on-demand compute environment from a local compute environment
US9015324B2 (en) 2005-03-16 2015-04-21 Adaptive Computing Enterprises, Inc. System and method of brokering cloud computing resources
US9231886B2 (en) 2005-03-16 2016-01-05 Adaptive Computing Enterprises, Inc. Simple integration of an on-demand compute environment
CA2603577A1 (en) 2005-04-07 2006-10-12 Cluster Resources, Inc. On-demand access to compute resources
US8782120B2 (en) 2005-04-07 2014-07-15 Adaptive Computing Enterprises, Inc. Elastic management of compute resources between a web server and an on-demand compute environment
US7676586B2 (en) * 2006-10-05 2010-03-09 Microsoft Corporation Hierarchical federation metadata
US7904480B2 (en) 2007-07-17 2011-03-08 Oracle International Corporation System and method for synchronizing service metadata
US8041773B2 (en) 2007-09-24 2011-10-18 The Research Foundation Of State University Of New York Automatic clustering for self-organizing grids
US20090300649A1 (en) * 2008-05-30 2009-12-03 Microsoft Corporation Sharing An Object Among Multiple Applications
ATE551648T1 (de) 2008-06-04 2012-04-15 Software Ag System und verfahren für eine allgemeine integration einer datenbank in einen hochverfügbarkeitscluster
US11720290B2 (en) 2009-10-30 2023-08-08 Iii Holdings 2, Llc Memcached server functionality in a cluster of data processing nodes
US10877695B2 (en) 2009-10-30 2020-12-29 Iii Holdings 2, Llc Memcached server functionality in a cluster of data processing nodes
US20130138555A1 (en) * 2011-11-30 2013-05-30 Rawllin International Inc. System and method of interpreting results based on publicly available data
US9811850B2 (en) 2012-04-08 2017-11-07 Microsoft Technology Licensing, Llc User task completion via open market of actions and/or providers
US8990839B2 (en) 2013-04-22 2015-03-24 Microsoft Technology Licensing, Llc Controlling runtime access to application programming interfaces
US9015062B2 (en) * 2013-06-20 2015-04-21 Aol Advertising Inc. Systems and methods for cross-browser advertising ID synchronization

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4091550A (en) * 1974-09-25 1978-05-30 Honeywell Inc. Automated instructional apparatus and method
US5309355A (en) * 1984-05-24 1994-05-03 Lockwood Lawrence B Automated sales system
US5630069A (en) * 1993-01-15 1997-05-13 Action Technologies, Inc. Method and apparatus for creating workflow maps of business processes
US5948040A (en) * 1994-06-24 1999-09-07 Delorme Publishing Co. Travel reservation information and planning system
US5745901A (en) * 1994-11-08 1998-04-28 Kodak Limited Workflow initiated by graphical symbols
US5634127A (en) * 1994-11-30 1997-05-27 International Business Machines Corporation Methods and apparatus for implementing a message driven processor in a client-server environment
US5892900A (en) * 1996-08-30 1999-04-06 Intertrust Technologies Corp. Systems and methods for secure transaction management and electronic rights protection
US5778155A (en) * 1995-10-10 1998-07-07 Hewlett-Packard Company Method and apparatus for selecting among competing facts to achieve the desired calculation
US6031528A (en) * 1996-11-25 2000-02-29 Intel Corporation User based graphical computer network diagnostic tool
US5870545A (en) * 1996-12-05 1999-02-09 Hewlett-Packard Company System and method for performing flexible workflow process compensation in a distributed workflow management system
US6033226A (en) * 1997-05-15 2000-03-07 Northrop Grumman Corporation Machining tool operator training system
US6122633A (en) * 1997-05-27 2000-09-19 International Business Machines Corporation Subscription within workflow management systems
US5894461A (en) * 1997-10-30 1999-04-13 International Business Machines Corporation Selection of an active accessor in a multi-accessor automated data storage library
US6282531B1 (en) * 1998-06-12 2001-08-28 Cognimed, Llc System for managing applied knowledge and workflow in multiple dimensions and contexts
US6772407B1 (en) * 1998-10-02 2004-08-03 International Business Machines Corporation Staging objects in workflow management systems
US6360205B1 (en) * 1998-10-30 2002-03-19 Trip.Com, Inc. Obtaining and utilizing commercial information
JP3535413B2 (ja) * 1999-04-07 2004-06-07 新日鉄ソリューションズ株式会社 データ処理装置、データ処理システム、データ処理方法、及び記録媒体
US6496850B1 (en) * 1999-08-31 2002-12-17 Accenture Llp Clean-up of orphaned server contexts
US6963863B1 (en) * 1999-09-28 2005-11-08 Thomas Bannon Network query and matching system and method
US6371765B1 (en) * 1999-11-09 2002-04-16 Mciworldcom, Inc. Interactive computer-based training system and method
US6798413B1 (en) * 1999-12-03 2004-09-28 Dcs, Inc. Workflow management system
US6901403B1 (en) * 2000-03-02 2005-05-31 Quovadx, Inc. XML presentation of general-purpose data sources
JP2002245152A (ja) * 2001-02-14 2002-08-30 Fujitsu Ltd サービス仲介処理装置,サービス仲介処理方法およびサービス仲介処理用プログラム
US20030028676A1 (en) * 2001-06-28 2003-02-06 Pangrac David M. Field technician virtual trainer
US6684214B2 (en) * 2001-07-30 2004-01-27 Quovadx, Inc. System and method heterogeneous data source integration
US6799182B2 (en) * 2001-11-13 2004-09-28 Quovadx, Inc. System and method for data source flattening
US7730182B2 (en) * 2003-08-25 2010-06-01 Microsoft Corporation System and method for integrating management of components of a resource

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101456511B1 (ko) * 2011-03-08 2014-11-04 소니 컴퓨터 엔터테인먼트 인코포레이티드 데이터 액세스 관리방법 및 데이터 액세스 관리 시스템
US8932132B2 (en) 2011-03-08 2015-01-13 Sony Corporation Data access management method and data access management system

Also Published As

Publication number Publication date
EP1510918A3 (en) 2007-08-29
ZA200405645B (en) 2005-01-17
CN1591444A (zh) 2005-03-09
TW200604875A (en) 2006-02-01
CA2475552A1 (en) 2005-02-25
AU2004203265A1 (en) 2005-03-17
US20050050057A1 (en) 2005-03-03
RU2004122774A (ru) 2006-01-20
MXPA04007145A (es) 2005-06-08
RU2347265C2 (ru) 2009-02-20
EP1510918A2 (en) 2005-03-02
BRPI0403014A (pt) 2005-05-24
JP2005071335A (ja) 2005-03-17

Similar Documents

Publication Publication Date Title
KR20050022278A (ko) 자원 컴포넌트의 통합 관리를 위한 시스템 및 방법
KR20050022279A (ko) 애플리케이션 서비스와 애플리케이션 간의 자원 통합관리를 위한 시스템 및 방법
US7756890B2 (en) Semantic identities
US7891003B2 (en) Enterprise threat modeling
US7139762B2 (en) System and method for filtering database records
US7111238B1 (en) System and method for maintaining text formatting consistency within an electronic document
US7620647B2 (en) Hierarchy global management system and user interface
US7996374B1 (en) Method and apparatus for automatically correlating related incidents of policy violations
US8458770B2 (en) Application context based access control
US9026901B2 (en) Viewing annotations across multiple applications
US7975013B2 (en) Retention management for instant messages
CN112262388A (zh) 使用个人身份信息(pii)的标记和持久性来保护pii
US20060085750A1 (en) Intelligent web based help system
US20030009536A1 (en) Method and system for collaborative knowledge management
US20080010266A1 (en) A Context-Centric Method of Automated Introduction and Community Building
WO2007120360A2 (en) Information management system
US7676470B2 (en) Self discovering adaptive security system and method
US20090012987A1 (en) Method and system for delivering role-appropriate policies
US20120303575A1 (en) System and method for aggregating and integrating structured content
US10261663B2 (en) Mandatory comment on action or modification
US11630946B2 (en) Documentation augmentation using role-based user annotations
CN1598846B (zh) 整合资源的组件管理的系统和方法
Weippl et al. Security Requirements and Solutions—Security Aspects of Semantic Knowledge Management

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid