IP Library Granted Patent US 11,463,315
Granted Patent B1
US 11,463,315 · App. 17/236,742 · Granted Oct 4, 2022

Creating and managing dynamic workflows based on occupancy

Inventors: John S. Harwood (Boston, MA); Robert Anthony Lincourt, Jr. (Franklin, MA); William Jeffery White (Plano, TX)
Assignee: EMC IP HOLDING COMPANY LLC
H04L41/0893G06F9/505G06F9/5044H04L43/16G06F3/0482G06F11/3072
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 11,463,315
App. No.
17/236,742
Granted
Oct 4, 2022
Kind
B1
Abstract

Techniques described herein relate to a method for deploying workflows. The method may include receiving, by a platform controller of a domain, a workflow portion and workflow constraints from a service controller of a federated controller, provisioning, by the platform controller, a set of devices in the domain to the workflow portion, executing the workflow portion in the domain using the set of devices, monitoring the executing of the workflow portion to determine an occupancy of the workflow portion, making a determination that the occupancy of the workflow portion exceeds an available capacity of the domain, providing, based on the determination, the occupancy to the service controller, and in response to the occupancy, performing, by the service controller, a remediation action.

Claims (86)

1. A method for deploying workflows, the method comprising:

receiving, at a service controller of a federated controller, a request to deploy a workflow in a device ecosystem;

decomposing, by the service controller, the workflow into a plurality of workflow portions;

performing, by the service controller, a search in a capabilities and constraints data construct to identify a domain in which to perform a workflow portion of the plurality of workflow portions;

providing, by the service controller, the workflow portion and workflow constraints to a platform controller of the domain;

receiving, by the platform controller, the workflow portion and the workflow constraints from the service controller, wherein the workflow portion is one of the plurality of workflow portions;

provisioning, by the platform controller, a set of devices in the domain to the workflow portion;

executing the workflow portion in the domain using the set of devices;

monitoring the executing of the workflow portion to determine an occupancy of the workflow portion;

making a determination that the occupancy of the workflow portion exceeds an available capacity of the domain;

providing, the occupancy to the service controller; and

in response to the occupancy, performing, by the service controller, a remediation action.

2. The method of claim 1 , wherein the capabilities and constraints data construct comprises a distributed graph.

3. The method of claim 1 , wherein the capabilities and constraints data construct is a database, and the search is performed using database queries.

4. The method of claim 1 , wherein the remediation action comprises:

halting execution of the workflow portion in the domain;

identifying a second domain to perform the workflow portion; and

providing, by the service controller, the workflow portion and the workflow constraints to a second platform controller of the second domain.

5. The method of claim 1 , further comprising:

after obtaining the occupancy from the platform controller:

receiving, by the service controller, a second request to deploy a second workflow;

decomposing, by the service controller, the second workflow into a second plurality of workflow portions, wherein the workflow portion is not one of the second plurality of workflow portions;

performing a second search in the capabilities and constraints data construct to identify the domain;

making a second determination that the occupancy of the workflow portion indicates an inability of the domain to execute a second workflow portion of the second workflow; and

based on the second determination, identifying a second domain to execute the second workflow portion of the second workflow; and

providing, by the service controller, the second workflow portion and second workflow constraints to a second platform controller of the second domain.

6. The method of claim 1 , further comprising:

storing, by the platform controller, results of the executing of the workflow portion and the occupancy in the capabilities and constraints data construct.

7. A non-transitory computer readable medium comprising computer readable program code, which when executed by a computer processor enables the computer processor to perform a method for deploying workflows, the method comprising:

receiving, at a service controller of a federated controller, a request to deploy a workflow in a device ecosystem;

decomposing, by the service controller, the workflow into a plurality of workflow portions;

performing, by the service controller, a search in a capabilities and constraints data construct to identify a domain in which to perform a workflow portion of the plurality of workflow portions;

providing, by the service controller, the workflow portion and workflow constraints to a platform controller of the domain;

receiving, by the platform controller, the workflow portion and the workflow constraints from the service controller, wherein the workflow portion is one of the plurality of workflow portions;

provisioning, by the platform controller, a set of devices in the domain to the workflow portion;

executing the workflow portion in the domain using the set of devices;

monitoring the executing of the workflow portion to determine an occupancy of the workflow portion;

making a determination that the occupancy of the workflow portion exceeds an available capacity of the domain;

providing, based on the determination, the occupancy to the service controller; and

in response to the occupancy, performing, by the service controller, a remediation action.

8. The non-transitory computer readable medium of claim 7 , wherein the capabilities and constraints data construct comprises a distributed graph.

9. The non-transitory computer readable medium of claim 7 , wherein the capabilities and constraints data construct is a database, and the search is performed using database queries.

10. The non-transitory computer readable medium of claim 7 , wherein the remediation action comprises:

halting execution of the workflow portion in the domain;

identifying a second domain to perform the workflow portion; and

providing, by the service controller, the workflow portion and the workflow constraints to a second platform controller of the second domain.

11. The non-transitory computer readable medium of claim 7 , the method further comprising:

after obtaining the occupancy from the platform controller:

receiving, by the service controller, a second request to deploy a second workflow;

decomposing, by the service controller, the second workflow into a second plurality of workflow portions, wherein the workflow portion is not one of the second plurality of workflow portions;

performing a second search in the capabilities and constraints data construct to identify the domain;

making a second determination that the occupancy of the workflow portion indicates an inability of the domain to execute a second workflow portion of the second workflow; and

based on the second determination, identifying a second domain to execute the second workflow portion of the second workflow; and

providing, by the service controller, the second workflow portion and second workflow constraints to a second platform controller of the second domain.

12. The non-transitory computer readable medium of claim 7 , the method further comprising:

storing, by the platform controller, results of the executing of the workflow portion and the occupancy in the capabilities and constraints data construct.

13. A system for deploying workflows, the system comprising:

a federated controller for a device ecosystem, the federated controller comprising a plurality of service controllers;

a platform controller of a domain, comprising circuitry, and configured to:

receive a workflow portion and workflow constraints from a service controller of the federated controller;

provision, by the platform controller, a set of devices in the domain to the workflow portion;

execute the workflow portion in the domain using the set of devices;

monitor the executing of the workflow portion to determine an occupancy of the workflow portion;

make a determination that the occupancy of the workflow portion exceeds an available capacity of the domain; and

provide, based on the determination, the occupancy to the service controller;

the service controller of the federated controller, comprising a processor and memory, and configured to:

prior to receiving the workflow portion:

receive a request to deploy a workflow in the device ecosystem;

decompose the workflow into a plurality of workflow portions, wherein the workflow portion is one of the plurality of workflow portions;

perform a search in a capabilities and constraints data construct to identify the domain in which to perform the workflow portion of the plurality of workflow portions; and

provide the workflow portion and the workflow constraints to the platform controller; and

in response to the occupancy, perform a remediation action.

14. The system of claim 13 , wherein the capabilities and constraints data construct comprises a distributed graph.

15. The system of claim 13 , wherein the capabilities and constraints data construct is a database, and the search is performed using database queries.

16. The system of claim 13 , wherein the remediation action comprises:

halting execution of the workflow portion in the domain;

identifying a second domain to perform the workflow portion; and

providing, by the service controller, the workflow portion and the workflow constraints to a second platform controller of the second domain.

17. The system of claim 13 , wherein the service controller is further programmed to:

after obtaining the occupancy from the platform controller:

receive, by the service controller, a second request to deploy a second workflow;

decompose, by the service controller, the second workflow into a second plurality of workflow portions, wherein the workflow portion is not one of the second plurality of workflow portions;

perform a second search in the capabilities and constraints data construct to identify the domain;

make a second determination that the occupancy of the workflow portion indicates an inability of the domain to execute a second workflow portion of the second workflow; and

based on the second determination, identify a second domain to execute the second workflow portion of the second workflow; and

provide the second workflow portion and second workflow constraints to a second platform controller of the second domain.

Assignments (10)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (056295/0280) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 062022/0255 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (056295/0124) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 062022/0012 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (056295/0001) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 062021/0844 →
RELEASE OF SECURITY INTEREST Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058297/0332 →
SECURITY INTEREST Recorded May 19, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 056295/0124 →
SECURITY INTEREST Recorded May 19, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 056295/0001 →
SECURITY INTEREST Recorded May 19, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 056295/0280 →
CORRECTIVE ASSIGNMENT TO CORRECT THE MISSING PATENTS THAT WERE ON THE ORIGINAL SCHEDULED SUBMITTED BUT NOT ENTERED PREVIOUSLY RECORDED AT REEL: 056250 FRAME: 0541. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded May 17, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 056311/0781 →
SECURITY AGREEMENT Recorded May 14, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 056250/0541 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 5, 2021
From: HARWOOD, JOHN S.; LINCOURT JR., ROBERT ANTHONY; WHITE, WILLIAM JEFFERY
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 056138/0264 →