IP Library Granted Patent US 10,521,800
Granted Patent B2
US 10,521,800 · App. 10/876,023 · Granted Dec 31, 2019

Method for automatic creation and configuration of license models and policies

Inventors: Joachim Bruchlos (Calw, DE); Joachim Hagmeier (Stuttgart, DE); Dietmar Kuebler (Altdorf, DE); Timo Kussmaul (Boeblingen, DE)
Assignee: International Business Machines Corporation
G06Q30/00H04L67/02
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,521,800
App. No.
10/876,023
Granted
Dec 31, 2019
Kind
B2
Abstract

The present invention refers to the field of networked computer telecommunication, and in particular to a method and system for processing services associated with a contract between a service requester (SC) and a service provider (SP) wherein said services are to be provided via a network, wherein at least one service contract is defined between said service requester and said service provider. In order to improve the processing of web services, license management facilities ( 75 A) are included into the prior art method cooperating closely with a Contract Management component ( 74 A) and a Service Metering Component ( 76 A). Preferably, a plurality of different license types are provided for selection to be used, which may further be combined also, in order to match best the needs of a customer.

Claims (36)

1. A computer-implemented method for providing licensed access to software application services based on a contract that specifies conditions for usage of the software application services by a service requester, access to the software application services being provided over a network under different license types, each license type defining a particular usage condition, the method comprising:

a service handler receiving a service request for an application service, the service handler implementing a runtime environment handling application service requests within an application server memory space that is operatively shared by the service handler, a profile handler, a contract handler, and a metering handler, wherein the profile handler, contract handler and metering handler run in a shared memory computing environment;

responsive to receiving the service request, the service handler:

invoking the profile handler, the profile handler accessing a profile service component that stores service requester profile information, said profile service component retrieving and returning requester profile data associated with the service request to said profile handler; and

invoking the contract handler, the contract handler identifying and validating a contract associated the service request, utilizing the retrieved requester profile data, said contract handler accessing a contract services component that stores contract information including license condition data corresponding to the identified and validated contract;

a licensing service component receiving the license condition data corresponding to the identified contract from the contract services component;

the licensing service component receiving service usage data from a metering service component that receives and collects application service usage data from the metering handler;

the licensing service component comparing the received service usage data with the received license condition data and determining availability of two or more licensing types to satisfy the service request based upon the comparing and

providing the service in accordance with one of the licensing types.

2. The method according to claim 1 , further comprising providing a software application service to the service requester in accordance with the determined availability of the two or more licensing options.

3. The method according to claim 1 , wherein the two or more license options are from a group of license types, the group including a:

consumptive license type, the consumptive license type being a license type in which only a specific number of requests for the service are allowed;

concurrent license type, the concurrent license type being a license type in which only a specific number of simultaneously requests for the service for the service are allowed;

time-based license type, the time-based license type being a license type in which service requests are allowed only at specific times;

person-related license type, the person-related license type being a license type in which only predefined individuals listed therein are allowed to request the service;

restriction-free license type, and usage condition license type; and

usage condition license type.

4. The method according to claim 3 , wherein in response to receiving the service request, a usage consumption of services by the service requester is calculated; and

rejecting the request when the calculated usage consumption is more than a predefined usage consumption.

5. The method according to claim 1 , wherein the metering handler meters said provision of the software application service and generates resultant meter events collected and stored h the metering service component.

6. A computer program product stored on a non-transitory computer usable medium for providing licensed access to software application services based on a contract that specifies conditions for usage of the software application services by a service requester, access to the software application services being provided over a network under different license types, each license type defining a particular usage condition, the computer program product comprising computer executable instructions for implementing:

a service handler receiving a service request for an application service, the service handler implementing a runtime environment for handling application service requests within an application server memory space that is operatively shared by the service handler, a profile handler, a contract handler, and a metering handler, wherein the profile handler, contract handler and metering handler run in a shared memory computing environment;

responsive to receiving the service request, the service handler:

invoking the profile handler to access a profile service component that stores service requester profile information, said profile service component retrieving and returning requester profile data associated with the service request to said profile handler; and

invoking the contract handler to utilize the retrieved requester profile data to identify and validate a contract associated with the service request, said contract handler accessing a contract services component that stores contract information including license condition data corresponding to the identified contract;

a licensing service component receiving the license condition data corresponding to the identified contract from the contract services component;

the licensing service component receiving service usage data from a metering service component that receives and collects application service usage data from the metering handler; and

the licensing service component comparing the received service usage data with the received license condition data to determine availability of two or more licensing types and satisfying the service request in accordance with one of the two or more licensing types.

7. The computer program product according to claim 6 , wherein the computer-executable instructions further implement providing a software application service to the service requester in accordance with the determined availability of the two or more licensing options.

8. The computer program product according to claim 6 , wherein the two or more license options are from a group of license types, the group including a:

consumptive license type, the consumptive license type being a license type in which only a specific number of requests for the service are allowed;

concurrent license type, the concurrent license type being a license type in which only a specific number of simultaneously requests for the service for the service are allowed;

time-based license type, the time-based license type being a license type in which service requests are allowed only at specific times;

person-related license type, the person-related license type being a license type in which only predefined individuals listed therein are allowed to request the service;

restriction-free license type, and usage condition license type; and

usage condition license type.

Assignments (5)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 21, 2024
From: GREEN MARKET SQUARE LIMITED
To: WORKDAY, INC.
Reel/Frame 067801/0892 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 29, 2024
From: GREEN MARKET SQUARE LIMITED
To: WORKDAY, INC.
Reel/Frame 067556/0783 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 22, 2021
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: GREEN MARKET SQUARE LIMITED
Reel/Frame 055078/0982 →
CORRECTIVE ASSIGNMENT TO CORRECT THE CONVEYING PARTY DATA PREVIOUSLY RECORDED AT REEL: 015154 FRAME: 0361. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMEN. Recorded Nov 22, 2020
From: BRUCHLOS, JOACHIM; HAGMEIER, JOACHIM; KUEBLER, DIETMAR; KUSSMAUL, TIMO
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 054554/0939 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 21, 2004
From: BRUCHLOS, JOACHIM; HAGMEIER, JOACHOM; KUEBLER, DIETMAR; KUSSMAUL, TIMO
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 015154/0361 →