# US 2012/0084444 A1 · Real-time license metering of a provisioned application in a cloud computing environement

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2012/0084444 A1
- Document ID: US20120084444A1
- Status: Published application
- Kind: A1
- Application number: 12/894,571
- Filed: 2010-09-30
- Published: 2012-04-05
- Earliest claimed: 2010-09-30
- Assignees: International Business Machines Corporation
- Inventors: Ajay Sood; Vijay K. Sukthankar
- Web page: https://patentgrep.com/patent/US20120084444A1

## CPC

- G06Q 10/109: Time management, e.g. calendars, reminders, meetings or time accounting
- G06Q 10/10: Office automation; Time management
- 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

## Abstract

Provided is a method for the costing of a license based on real-time usage of software on a hardware resource instead of upfront PVU based purchase of licenses. Service provider need not pay for the license charge till the end of life of that application and need not pay for an entire set of N licenses, considering that the service provider expects that the maximum number of application instances could be N.

## Claims

### Claim 1

A method, comprising:
generating a servers parameter corresponding to a plurality of servers allocated to provisioning of a computing resource;
generating an end-of-life parameter, N, corresponding to an expected duration of time for the provisioning of the computing resource;
dividing the expected duration of time into a plurality of discreet intervals, T0 through TN;
compiling a number of times an application has accessed the computing resource with respect to beginnings of a contiguous number of the plurality of discreet intervals;
defining a random variable, WT1, wherein WT1 represents a number of servers of the plurality of servers provisioning the application at a particular time T1 of the plurality of discreet intervals;
calculating a probability that the application is provisioned on one computing resource at the particular time T1;
calculating a charge per unit parameter based upon the random variable and the probability; and
generating a charge for provisioning of the computing resource based upon the charge per unit parameter and a count of a number of servers providing the computing resource at each of the plurality of discreet intervals.

### Claim 2 (depends on 1)

The method of claim 1, wherein the plurality of servers allocated to the provisioning of the computing resource is configured in a cloud configuration.

### Claim 3 (depends on 1)

The method of claim 1, wherein the defining the random variable is based upon an expected workload and expected number of applications requesting the computing resource.

### Claim 4 (depends on 1)

The method of claim 1, wherein the random variable, represented as E(XT1), is a binomial random variable representing a number of servers allocated to the provisioning of the computing resource.

### Claim 5 (depends on 4)

The method of claim 4, wherein the charge per unit parameter is constrained by the formula E(XT1)*(charge per unit of time)*(number of time intervals (N))<=N*(a PVU based license value).

### Claim 6 (depends on 1)

The method of claim 1, wherein rather than dividing the expected duration of time into a plurality of discreet intervals, T0 through TN, provisioning changes are assumed to occur on a continuous basis and compiling a number of times an application has accessed the computing resource is based upon a continuous time Markov jump process.

### Claim 7 (depends on 1)

The method of claim 1, wherein the expected duration of time for the provisioning of the computing resource is open ended.

### Claim 8

An apparatus, comprising:
a processor;
a computer-readable storage medium, coupled top the processor; and
logic stored on the computer-readable storage medium and executed on the processor for:
generating a servers parameter corresponding to a plurality of servers allocated to provisioning of a computing resource;
generating an end-of-life parameter, N, corresponding to an expected duration of time for the provisioning of the computing resource;
dividing the expected duration of time into a plurality of discreet intervals, T0 through TN;
compiling a number of times an application has accessed the computing resource with respect to beginnings of a contiguous number of the plurality of discreet intervals;
defining a random variable, WT1, wherein WT1 represents a number of servers of the plurality of servers provisioning the application at a particular time T1 of the plurality of discreet intervals;
calculating a probability that the application is provisioned on one computing resource at the particular time T1;
calculating a charge per unit parameter based upon the random variable and the probability; and
generating a charge for provisioning of the computing resource based upon the charge per unit parameter and a count of a number of servers providing the computing resource at each of the plurality of discreet intervals.

### Claim 9 (depends on 8)

The apparatus of claim 8, wherein the plurality of servers allocated to the provisioning of the computing resource is configured in a cloud configuration.

### Claim 10 (depends on 8)

The apparatus of claim 8, wherein the defining the random variable is based upon an expected workload and expected number of applications requesting the computing resource.

### Claim 11 (depends on 8)

The apparatus of claim 8, wherein the random variable, represented as E(XT1), is a binomial random variable representing a number of servers allocated to the provisioning of the computing resource.

### Claim 12 (depends on 11)

The apparatus of claim 11, wherein the charge per unit parameter is constrained by the formula E(XT1)*(charge per unit of time)*(number of time intervals (N))<=N*(a PVU based license value).

### Claim 13 (depends on 8)

The apparatus of claim 8, wherein rather than dividing the expected duration of time into a plurality of discreet intervals, T0 through TN, provisioning changes are assumed to occur on a continuous basis and compiling a number of times an application has accessed the computing resource is based upon a continuous time Markov jump process.

### Claim 14

A computer programming product, comprising:
a computer-readable storage medium; and
logic stored on the computer-readable storage medium for execution on a processor for:
generating a servers parameter corresponding to a plurality of servers allocated to provisioning of a computing resource;
generating an end-of-life parameter, N, corresponding to an expected duration of time for the provisioning of the computing resource;
dividing the expected duration of time into a plurality of discreet intervals, T0 through TN;
compiling a number of times an application has accessed the computing resource with respect to beginnings of a contiguous number of the plurality of discreet intervals;
defining a random variable, WT1, wherein WT1 represents a number of servers of the plurality of servers provisioning the application at a particular time T1 of the plurality of discreet intervals;
calculating a probability that the application is provisioned on one computing resource at the particular time T1;
calculating a charge per unit parameter based upon the random variable and the probability; and
generating a charge for provisioning of the computing resource based upon the charge per unit parameter and a count of a number of servers providing the computing resource at each of the plurality of discreet intervals.

### Claim 15 (depends on 14)

The computer programming product of claim 14, wherein the plurality of servers allocated to the provisioning of the computing resource is configured in a cloud configuration.

### Claim 16 (depends on 14)

The computer programming product of claim 14, wherein the defining the random variable is based upon an expected workload and expected number of applications requesting the computing resource.

### Claim 17 (depends on 14)

The computer programming product of claim 14, wherein the random variable, represented as E(XT1), is a binomial random variable representing a number of servers allocated to the provisioning of the computing resource.

### Claim 18 (depends on 17)

The computer programming product of claim 17, wherein the charge per unit parameter is constrained by the formula E(XT1)*(charge per unit of time)*(number of time intervals (N))<=N*(a PVU based license value).

### Claim 19 (depends on 14)

The computer programming product of claim 14, wherein rather than dividing the expected duration of time into a plurality of discreet intervals, T0 through TN, provisioning changes are assumed to occur on a continuous basis and compiling a number of times an application has accessed the computing resource is based upon a continuous time Markov jump process.

### Claim 20

A method, comprising:
receiving a request for a provisioning of a computing service provided by a plurality of servers;
generating a servers parameter corresponding to the plurality of servers allocated to the provisioning of the computing resource;
generating an end-of-life parameter, N, corresponding to an expected duration of time for the provisioning of the computing resource;
dividing the expected duration of time into a plurality of discreet intervals, T0 through TN;
compiling a number of times an application has accessed the computing resource with respect to beginnings of a contiguous number of the plurality of discreet intervals;
defining a random variable, WT1, wherein WT1 represents a number of servers of the plurality of servers provisioning the application at a particular time T1 of the plurality of discreet intervals;
calculating a probability that the application is provisioned on one computing resource at the particular time T1;
calculating a charge per unit parameter based upon the random variable and the probability; and
generating a charge for provisioning of the computing resource based upon the charge per unit parameter and a count of a number of servers providing the computing resource at each of the plurality of discreet intervals.

### Claim 21 (depends on 20)

The method of claim 20, wherein the plurality of servers allocated to the provisioning of the computing resource is configured in a cloud configuration.

### Claim 22 (depends on 20)

The method of claim 20, wherein the defining the random variable is based upon an expected workload and expected number of applications requesting the computing resource.

### Claim 23 (depends on 20)

The method of claim 20, wherein the random variable, represented as E(XT1), is a binomial random variable representing a number of servers allocated to the provisioning of the computing resource.

### Claim 24 (depends on 23)

The method of claim 23, wherein the charge per unit parameter is constrained by the formula E(XT1)*(charge per unit of time)*(number of time intervals (N))<=N*(a PVU based license value).

### Claim 25 (depends on 20)

The method of claim 20, wherein rather than dividing the expected duration of time into a plurality of discreet intervals, T0 through TN, provisioning changes are assumed to occur on a continuous basis and compiling a number of times an application has accessed the computing resource is based upon a continuous time Markov jump process.
