# US 10,769,687 B2 · Migrating computing environment entitlement contracts between a seller and a buyer

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

- Number: US 10,769,687 B2
- Document ID: US10769687B2
- Status: Granted
- Kind: B2
- Application number: 15/693,599
- Filed: 2017-09-01
- Published: 2018-01-11
- Granted: 2020-09-08
- Earliest claimed: 2011-06-29
- Assignees: International Business Machines Corporation
- Applicants: International Business Machines Corporation
- Inventors: Patrick J. O'Sullivan; James C. Thorburn
- Web page: https://patentgrep.com/patent/US10769687B2

## CPC

- G06Q 30/06: Buying, selling or leasing transactions
- H04L 41/5019: Ensuring fulfilment of SLA
- H04L 41/5041: characterised by the time relationship between creation and deployment of a service
- 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
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

Mechanisms are provided for migrating a computing environment entitlement contract (CEEC) from one computing resource to another. These mechanisms generate one or more CEEC data structures, each CEEC data structure defining terms of a business level agreement between a contracting party and a provider of the data processing system. A CEEC cohort is generated comprising a collection of CEECs having similar terms. The one or more CEEC data structures are associated with a computing resource cohort and a seller of a CEEC data structure, in the one or more CEEC data structures and a buyer of the CEEC data structure, in the one or more CEEC data structures, is identified. The CEEC data structure is migrated from the seller to the buyer and workloads are executed in accordance with terms specified in the CEEC data structure at the buyer after migrating the CEEC data structure.

## Claims

### Claim 1

A method, in a data processing system comprising at least one computing device and a plurality of computing resources, for migrating a computing environment entitlement contract from one computing resource to another, comprising:
generating, by the at least one computing device, a computing environment entitlement contract (CEEC) data structure defining terms that specify a set of computing resources having a specified configuration that are to be used by a contracting party for a specified purpose at a specified level and pattern of intensity for a specified period of time;
identifying, by the at least one computing device, a seller of the CEEC data structure
and a buyer of the CEEC data structure;
migrating the CEEC data structure from the seller to the buyer; and
executing workloads in accordance with the terms specified in the CEEC data structure at the buyer after migrating the CEEC data structure from the seller to the buyer, wherein the seller and the buyer are computing resources or collections of computing resources.

### Claim 2 (depends on 1)

The method of claim 1, wherein the seller is a computing resource that is not being utilized in accordance with the terms specified in the CEEC data structure, and wherein the buyer is a computing resource capable of satisfying the terms specified in the CEEC data structure.

### Claim 3 (depends on 1)

The method of claim 1, further comprising:
determining whether or not to migrate the CEEC data structure from the seller to the buyer based on the terms specified in the CEEC data structure.

### Claim 4 (depends on 1)

The method of claim 1, further comprising determining whether or not to migrate the CEEC data structure from the seller to the buyer based on business objective criteria specified in a transaction specification, wherein the migrating of the CEEC data structure from the seller to the buyer is performed only in response to a determination that the migration of the CEEC data structure satisfies the business objective criteria specified in the transaction specification.

### Claim 5 (depends on 4)

The method of claim 4, wherein the transaction specification is generated by a user via a transaction builder user interface, and wherein the user specifies the business objective criteria via the transaction builder user interface.

### Claim 6 (depends on 4)

The method of claim 4, wherein a plurality of transaction instances for migrating CEEC data structures between sellers and buyers are generated based on the transaction specification, and wherein the business objective criteria of the transaction specification is used with each transaction instance to determine if migrations of CEEC data structures between sellers and buyers associated with the transaction instance are to be performed.

### Claim 7 (depends on 4)

The method of claim 4, wherein identifying the seller of the CEEC data structure, identifying the buyer of the CEEC data structure, and migrating the CEEC data structure from the seller to the buyer are performed in accordance with the business objective criteria of an instance of the transaction specification.

### Claim 8 (depends on 7)

The method of claim 7, wherein at least one of the seller or buyer do not indicate a desire to be a seller or a buyer prior to identification of the seller and buyer in accordance with the business objective criteria of the instance of the transaction specification.

### Claim 9 (depends on 7)

The method of claim 7, wherein migrating the CEEC data structure from the seller to the buyer is performed in accordance with the instance of the transaction specification, and wherein the instance of the transaction specification is executed using four transaction phases comprising a creation phase in which the instance of the transaction specification is created, an assembly phase in which the seller and the buyer signal acceptance of the transaction, an initiation phase in which a determination is made as to whether completion of the migration meets the business objective criteria specified in the instance of the transaction specification, and a settlement phase in which the migration is completed between the seller and the buyer.

### Claim 10 (depends on 1)

The method of claim 1, wherein migrating the CEEC data structure from the seller to the buyer comprises nullifying the CEEC data structure on the seller and creating a new CEEC data structure on the buyer.

### Claim 11 (depends on 1)

The method of claim 1, wherein migrating the CEEC data structure from the seller to the buyer comprises resetting an identifier in the CEEC data structure to identify the buyer.

### Claim 12 (depends on 1)

The method of claim 1, wherein the CEEC data structure represents a sub-portion of a CEEC between the contracting party and a provider of the data processing system, wherein the sub-portion defines a sub-portion of the terms of the CEEC that are able to be satisfied by computing resources provided by the provider, and wherein other sub-portions of the terms of the CEEC are satisfied by other computing resources provided by other providers.

### Claim 13

A computer program product comprising a non-transitory computer readable medium having a computer readable program stored therein, wherein the computer readable program, when executed in a data processing system comprising at least one computing device, causes a computing device of the at least one computing device to:
generate a computing environment entitlement contract (CEEC) data structure defining terms that specify a set of computing resources having a specified configuration that are to be used by a contracting party for a specified purpose at a specified level and pattern of intensity for a specified period of time;
identify a seller of the CEEC data structure
and a buyer of the CEEC data structure;
migrate the CEEC data structure from the seller to the buyer; and
execute workloads in accordance with the terms specified in the CEEC data structure at the buyer after migrating the CEEC data structure from the seller to the buyer, wherein the seller and the buyer are computing resources or collections of computing resources.

### Claim 14 (depends on 13)

The computer program product of claim 13, wherein the seller is a computing resource that is not being utilized in accordance with the terms specified in the CEEC data structure, and wherein the buyer is a computing resource capable of satisfying the terms specified in the CEEC data structure.

### Claim 15 (depends on 13)

The computer program product of claim 13, wherein the computer readable program causes the at least one computing device to determine whether or not to migrate the CEEC data structure from the seller to the buyer based on the terms specified in the CEEC data structure.

### Claim 16 (depends on 13)

The computer program product of claim 13, wherein the computer readable program further causes the at least one computing device to determine whether or not to migrate the CEEC data structure from the seller to the buyer based on business objective criteria specified in a transaction specification, wherein the migrating of the CEEC data structure from the seller to the buyer is performed only in response to a determination that the migration of the CEEC data structure satisfies the business objective criteria specified in the transaction specification.

### Claim 17 (depends on 16)

The computer program product of claim 16, wherein the transaction specification is generated by a user via a transaction builder user interface, and wherein the user specifies the business objective criteria via the transaction builder user interface.

### Claim 18 (depends on 16)

The computer program product of claim 16, wherein a plurality of transaction instances for migrating CEEC data structures between sellers and buyers are generated based on the transaction specification, and wherein the business objective criteria of the transaction specification is used with each transaction instance to determine if migrations of CEEC data structures between sellers and buyers associated with the transaction instance are to be performed.

### Claim 19 (depends on 16)

The computer program product of claim 16, wherein the computer readable program causes the at least one computing device to identify the seller of the CEEC data structure, identify the buyer of the CEEC data structure, and migrate the CEEC data structure from the seller to the buyer in accordance with the business objective criteria of an instance of the transaction specification.

### Claim 20 (depends on 19)

The computer program product of claim 19, wherein at least one of the seller or buyer do not indicate a desire to be a seller or a buyer prior to identification of the seller and buyer in accordance with the business objective criteria of the instance of the transaction specification.

### Claim 21 (depends on 19)

The computer program product of claim 19, wherein the computer readable program causes the at least one computing device to migrate the CEEC data structure from the seller to the buyer in accordance with the instance of the transaction specification, and wherein the instance of the transaction specification is executed using four transaction phases comprising a creation phase in which the instance of the transaction specification is created, an assembly phase in which the seller and the buyer signal acceptance of the transaction, an initiation phase in which a determination is made as to whether completion of the migration meets the business objective criteria specified in the instance of the transaction specification, and a settlement phase in which the migration is completed between the seller and the buyer.

### Claim 22 (depends on 13)

The computer program product of claim 13, wherein the computer readable program causes the at least one computing device to migrate the CEEC data structure from the seller to the buyer by nullifying the CEEC data structure on the seller and creating a new CEEC data structure on the buyer.

### Claim 23 (depends on 13)

The computer program product of claim 13, wherein the computer readable program causes the at least one computing device to migrate the CEEC data structure from the seller to the buyer by resetting an identifier in the CEEC data structure to identify the buyer.

### Claim 24 (depends on 13)

The computer program product of claim 13, wherein the CEEC data structure represents a sub-portion of a CEEC between the contracting party and a provider of the data processing system, wherein the sub-portion defines a sub-portion of the terms of the CEEC that are able to be satisfied by computing resources provided by the provider, and wherein other sub-portions of the terms of the CEEC are satisfied by other computing resources provided by other providers.

### Claim 25

An apparatus, comprising:
at least one processor; and
at least one memory coupled to the at least one processor, wherein the at least one memory comprises instructions which, when executed by the at least one processor, cause the at least one processor to:
generate a computing environment entitlement contract (CEEC) data structure defining terms that specify a set of computing resources having a specified configuration that are to be used by a contracting party for a specified purpose at a specified level and pattern of intensity for a specified period of time;
identify a seller of the CEEC data structure
and a buyer of the CEEC data structure;
migrate the CEEC data structure from the seller to the buyer; and
execute workloads in accordance with the terms specified in the CEEC data structure at the buyer after migrating the CEEC data structure from the seller to the buyer, wherein the seller and the buyer are computing resources or collections of computing resources.
