KR20050022279A - 애플리케이션 서비스와 애플리케이션 간의 자원 통합관리를 위한 시스템 및 방법 - Google Patents
애플리케이션 서비스와 애플리케이션 간의 자원 통합관리를 위한 시스템 및 방법 Download PDFInfo
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 70
- 230000009471 action Effects 0.000 claims description 116
- 230000003068 static effect Effects 0.000 claims description 17
- 238000007726 management method Methods 0.000 claims 6
- 230000008569 process Effects 0.000 description 28
- 230000007246 mechanism Effects 0.000 description 17
- 230000008859 change Effects 0.000 description 13
- 230000003287 optical effect Effects 0.000 description 7
- 238000012545 processing Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000010354 integration Effects 0.000 description 3
- 230000005055 memory storage Effects 0.000 description 3
- 238000009877 rendering Methods 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000007792 addition Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000005553 drilling Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002853 ongoing effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation 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/5055—Allocation 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Administration; Management
- G06Q10/10—Office automation; Time management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/02—Banking, 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
본 발명은 자원 관리 분야에 관한 것으로, 보다 구체적으로는 애플리케이션 서비스와 애플리케이션 사이의 자원 통합 관리에 관한 것이다.
종래의 자원 관리 시스템에서 애플리케이션 서비스는 통상 애플리케이션과 연계하여 동작한다. 이러한 애플리케이션 서비스는 각각 서로 다른 컴포넌트의 자원을 관리한다. 예를 들어, 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항에 있어서,상기 관련 서비스 엔티티의 매칭 단계는, 상기 관련 서비스 엔티티를 상기 관련 서비스 엔티티의 속성에 기초하여 매칭시키는 단계를 포함하는 것을 특징으로 하는 연결 방법.
- 제1항에 있어서,상기 애플리케이션 엔티티를 상기 콘텍스트 엔티티에 매칭시키는 단계는, 상기 애플리케이션 엔티티를 상기 애플리케이션 엔티티의 속성 및 상기 콘텍스트 엔티티의 속성에 기초하여 상기 콘텍스트 엔티티에 매칭시키는 단계를 포함하는 것을 특징으로 하는 연결 방법.
- 제1항에 있어서,상기 관련 서비스 엔티티에 대응하는 서비스 메타데이터를 획득하는 단계를 더 포함하는 것을 특징으로 하는 연결 방법.
- 제4항에 있어서,상기 관련 서비스 엔티티에 대응하는 서비스 메타데이터를 획득하는 단계는,콘텍스트 서비스 측에서 상기 관련 서비스 엔티티에서 이용가능한 정적 액션을 결정하는 단계; 및액션 서비스에 질의하여 상기 관련 서비스 엔티티에서 이용가능한 동적 액션을 결정하는 단계를 포함하는 것을 특징으로 하는 연결 방법.
- 제4항에 있어서,상기 관련 서비스 엔티티에 대응하는 서비스 메타데이터를 상기 애플리케이션에 제공하는 단계를 더 포함하는 것을 특징으로 하는 연결 방법.
- 제6항에 있어서,상기 관련 서비스 엔티티에 대응하는 서비스 메타데이터를 상기 애플리케이션에 제공하는 단계는, 상기 관련 서비스 엔티티에서 이용가능한 정적 및 동적 액션을 상기 애플리케이션에 제공하는 단계를 포함하는 것을 특징으로 하는 연결 방법.
- 제1 애플리케이션 서비스에서의 제1 서비스 엔티티를 애플리케이션 측에서 관리하는 방법에 있어서,애플리케이션 엔티티를 애플리케이션 메타데이터 및 콘텍스트 메타데이터에 기초하여 관련 콘텍스트 엔티티에 매칭시키는 단계;상기 관련 콘텍스트 엔티티가 상기 제1 서비스 엔티티로부터 유도되었음을 식별하는 단계;상기 제1 서비스 엔티티에 대응하는 서비스 메타데이터를 상기 애플리케이션에 제공하는 단계; 및상기 제공된 서비스 메타데이터를 이용하여 상기 제1 서비스 엔티티를 상기 애플리케이션 측에서 관리하는 단계를 포함하는 것을 특징으로 하는 관리 방법.
- 제8항에 있어서,상기 애플리케이션 엔티티를 상기 애플리케이션 엔티티의 속성 및 상기 관련 콘텍스트 엔티티의 속성에 기초하여 상기 관련 콘텍스트 엔티티에 매칭시키는 단계를 더 포함하는 것을 특징으로 하는 관리 방법.
- 제8항에 있어서,상기 관련 콘텍스트 엔티티가 상기 제1 서비스 엔티티 및 제2 애플리케이션 서비스 측의 제2 서비스 엔티티로부터 유도되었음을 식별하는 단계 - 상기 제1 서비스 엔티티는 상기 제2 서비스 엔티티와 관련됨 - 를 더 포함하는 것을 특징으로 하는 관리 방법.
- 제8항에 있어서,상기 제1 서비스 엔티티에 대응하는 서비스 메타데이터를 획득하는 단계를 더 포함하는 것을 특징으로 하는 관리 방법.
- 제11항에 있어서,상기 제1 서비스 엔티티에 대응하는 서비스 메타데이터를 획득하는 단계는,콘텍스트 서비스 측에서 상기 제1 서비스 엔티티에서 이용가능한 정적 액션을 결정하는 단계; 및액션 서비스에 질의하여 상기 제1 서비스 엔티티에서 이용가능한 동적 액션을 결정하는 단계를 포함하는 것을 특징으로 하는 관리 방법.
- 제12항에 있어서,상기 제1 서비스 엔티티에 대응하는 서비스 메타데이터를 상기 애플리케이션에 제공하는 단계는, 상기 제1 서비스 엔티티에서 이용가능한 정적 및 동적 액션을 상기 애플리케이션에 제공하는 단계를 포함하는 것을 특징으로 하는 관리 방법.
- 제13항에 있어서,상기 제공된 서비스 메타데이터를 이용하여 상기 제1 서비스 엔티티를 상기 애플리케이션 측에서 관리하는 단계는,상기 애플리케이션 측에서 상기 제1 서비스 엔티티에서 이용가능한 정적 및 동적 액션의 표시를 생성하는 단계; 및상기 애플리케이션 측의 상기 표시로부터 상기 제1 애플리케이션 서비스 측의 제1 서비스 엔티티에서 수행되는 액션을 선택하는 단계를 포함하는 것을 특징으로 하는 관리 방법.
- 제14항에 있어서,상기 선택된 액션을 상기 제1 애플리케이션 서비스에 전달하는 단계; 및상기 선택된 액션을 상기 제1 애플리케이션 서비스 측에서 수행하는 단계를 더 포함하는 것을 특징으로 하는 관리 방법.
- 제1 애플리케이션 서비스에서의 제1 서비스 엔티티를 애플리케이션 측에서 관리하는 시스템에 있어서,상기 제1 서비스 엔티티에 대응하는 제1 서비스 메타데이터를 보유하며, 상기 제1 서비스 메타데이터를 콘텍스트 서비스에 제공하는 제1 애플리케이션 서비스;애플리케이션 엔티티에 대응하는 애플리케이션 메타데이터를 보유하며, 상기 애플리케이션 메타데이터를 콘텍스트 서비스에 제공하는 애플리케이션; 및상기 제1 서비스 엔티티로부터 유도된 콘텍스트 엔티티를 보유하며, 상기 애플리케이션 엔티티를 상기 콘텍스트 엔티티에 매칭시키며, 상기 제1 서비스 메타데이터를 상기 애플리케이션에 제공 - 상기 제1 서비스 메타데이터는 상기 제1 서비스 엔티티를 상기 애플리케이션 측에서 관리할 수 있도록 함 - 하는 콘텍스트 서비스를 포함하는 것을 특징으로 하는 관리 시스템.
- 제16항에 있어서,제2 서비스 엔티티에 대응하는 제2 서비스 메타데이터를 보유하며, 상기 제2 서비스 메타데이터를 상기 콘텍스트 서비스에 제공 - 상기 제2 서비스 엔티티는 상기 제1 서비스 엔티티에 관련됨 - 하는 제2 애플리케이션 서비스를 더 구비하는 것을 특징으로 하는 관리 시스템.
- 제17항에 있어서,상기 콘텍스트 서비스는 상기 제1 서비스 엔티티 및 제2 서비스 엔티티를 상기 제1 서비스 메타데이터 및 제2 서비스 메타데이터에 기초하여 매칭시키는 것을 특징으로 하는 관리 시스템.
- 제17항에 있어서,상기 콘텍스트 엔티티는 상기 제1 서비스 엔티티 및 제2 서비스 엔티티로부터 유도되는 것을 특징으로 하는 관리 시스템.
- 제17항에 있어서,상기 콘텍스트 서비스는 상기 제1 서비스 메타데이터 및 제2 서비스 메타데이터를 상기 애플리케이션에 제공 - 상기 제1 서비스 메타데이터는 상기 제1 서비스 엔티티가 상기 애플리케이션 측에서 관리될 수 있도록 하며, 상기 제2 서비스 메타데이터는 상기 제2 서비스 엔티티가 상기 애플리케이션 측에서 관리될 수 있도록 함 - 하는 것을 특징으로 하는 관리 시스템.
- 제16항에 있어서,상기 제1 애플리케이션 서비스 측의 제1 서비스 엔티티에서 이용가능한 동적 액션을 결정하는 액션 서비스를 더 구비하는 것을 특징으로 하는 관리 시스템.
- 제21항에 있어서,상기 콘텍스트 서비스는 상기 액션 서비스에 질의하여 상기 제1 서비스 엔티티에서 이용가능한 동적 액션을 결정하며, 상기 제1 서비스 엔티티에서 이용가능한 동적 액션을 상기 애플리케이션에 제공하는 것을 특징으로 하는 관리 시스템.
- 제16항에 있어서,상기 콘텍스트 서비스에 상기 애플리케이션 메타데이터를 제공하는 실행 서비스를 더 구비하는 것을 특징으로 하는 관리 시스템.
- 제23항에 있어서,상기 실행 서비스는 제1 서비스 메타데이터의 표시를 생성하는 것을 특징으로 하는 관리 시스템.
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)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101456511B1 (ko) * | 2011-03-08 | 2014-11-04 | 소니 컴퓨터 엔터테인먼트 인코포레이티드 | 데이터 액세스 관리방법 및 데이터 액세스 관리 시스템 |
Families Citing this family (23)
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)
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 |
-
2003
- 2003-08-25 US US10/648,507 patent/US20050050057A1/en not_active Abandoned
-
2004
- 2004-07-15 ZA ZA200405645A patent/ZA200405645B/xx unknown
- 2004-07-15 EP EP04016717A patent/EP1510918A3/en not_active Withdrawn
- 2004-07-19 AU AU2004203265A patent/AU2004203265A1/en not_active Abandoned
- 2004-07-19 TW TW093121527A patent/TW200604875A/zh unknown
- 2004-07-21 JP JP2004213494A patent/JP2005071335A/ja active Pending
- 2004-07-22 CA CA002475552A patent/CA2475552A1/en not_active Abandoned
- 2004-07-22 KR KR1020040057332A patent/KR20050022279A/ko not_active Application Discontinuation
- 2004-07-23 BR BR0403014-1A patent/BRPI0403014A/pt not_active IP Right Cessation
- 2004-07-23 RU RU2004122774/09A patent/RU2347265C2/ru not_active IP Right Cessation
- 2004-07-23 CN CNA2004100589667A patent/CN1591444A/zh active Pending
- 2004-07-23 MX MXPA04007145A patent/MXPA04007145A/es not_active Application Discontinuation
Cited By (2)
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 |