IP Library › Granted Patent US 11,449,312
Granted Patent B2
US 11,449,312 · App. 17/248,060 · Granted Sep 20, 2022

System and method for executing a process workflow

Inventors: Joseph Vincent Scarfutti (Brooklyn, NY); Christian Caberoy De La Peña (Chester, NY); Michael James Gosnell (Toronto, CA); Bogdan Petrescu (Mississauga, CA); Ridhima Sakhuja (East Brunswick, NJ); Mikayla Dale Wronko (Vaughan, CA); Oksana Dranka (Toronto, CA); Ting Zhou (Aurora, CA)
Assignee: The Toronto-Dominion Bank
G06F8/20G06F16/9024G06Q10/067G06Q10/06316
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,449,312
App. No.
17/248,060
Granted
Sep 20, 2022
Kind
B2
Abstract

A system and method are provided for executing process workflows. The method includes obtaining via a communications module, a representation of a workflow as a graph, the graph including a plurality of interconnected workflow tasks. The method also includes storing the graph in a graph database, navigating through the workflow tasks in the graph as the process is executed, and publishing via the communications module, a workflow state change with a topic for the current workflow task. The method also includes receiving via the communications module, a document for the current workflow task, wherein a state of the process is implied by the topic position in the graph, and wherein the topic determines at least one microservice to be employed. The method also includes having at least one workflow task associated with the current workflow task executed by instructing a corresponding one or more microservices via the communications module.

Claims (63)

1. A server device for executing process workflows, the server device comprising:

a processor;

a communications module coupled to the processor; and

a memory coupled to the processor, the memory storing computer executable instructions that when executed by the processor cause the processor to:

obtain via the communications module, a representation of a workflow as a graph, the graph comprising a plurality of interconnected workflow tasks;

store the graph in a graph database;

navigate through the workflow tasks in the graph as the process is executed;

publish via the communications module, a workflow state change with a topic for the current workflow task;

receive via the communications module, a document for the current workflow task, wherein a state of the process is implied by the topic position in the graph, and wherein the topic determines at least one microservice to be employed; and

have at least one workflow task associated with the current workflow task executed by instructing a corresponding one or more microservices via the communications module.

2. The server device of claim 1 , wherein the computer executable instructions further cause the processor to:

access a workflow manager service to define the workflow as the graph, and to display a currently executing workflow.

3. The server device of claim 1 , wherein the computer executable instructions further cause the processor to:

use a workflow routing service to publish the workflow state change and to receive the document via a distribution cluster coupled to a group of federated microservices.

4. The server device of claim 3 , wherein the computer executable instructions further cause the processor to:

use a workflow navigator service to communicate between the workflow graph database and the workflow routing service to communicate with the distribution cluster.

5. The server device of claim 1 , wherein the computer executable instructions further cause the processor to:

communicate via the communications module with a plurality of external source systems to publish documents, obtain data from files, and to obtain data from an external database.

6. The server device of claim 1 , wherein the computer executable instructions further cause the processor to:

integrate with an application development environment to tie the process workflow to an enterprise application.

7. The server device of claim 6 , wherein the enterprise application is provided by a financial institution.

8. The server device of claim 1 , wherein the computer executable instructions further cause the processor to:

provide a user interface to design the workflow graph;

enable predefined node types to be added and connected to each other in a graph builder work area in the user interface;

enable topics to be defined at connection points in the graph; and

enable selection of the topics to define inbound and outbound configurations.

9. The server device of claim 8 , wherein the computer executable instructions further cause the processor to:

provide at least one communication template to enable communications in the workflow to be defined.

10. The server device of claim 8 , wherein the computer executable instructions further cause the processor to:

provide a dashboard for managing a plurality of workflows, and to enable designed workflows to be published.

11. The server device of claim 8 , wherein the computer executable instructions further cause the processor to:

enable sub-workflows to be created and shared across multiple workflows designed using the user interface.

12. A method of executing process workflows, the method executed by a device having a communications module and comprising:

obtaining via the communications module, a representation of a workflow as a graph, the graph comprising a plurality of interconnected workflow tasks;

storing the graph in a graph database;

navigating through the workflow tasks in the graph as the process is executed;

publishing via the communications module, a workflow state change with a topic for the current workflow task;

receiving via the communications module, a document for the current workflow task, wherein a state of the process is implied by the topic position in the graph, and wherein the topic determines at least one microservice to be employed; and

having at least one workflow task associated with the current workflow task executed by instructing a corresponding one or more microservices via the communications module.

13. The method of claim 12 , further comprising:

accessing a workflow manager service to define the workflow as the graph, and to display a currently executing workflow.

14. The method of claim 12 , further comprising:

using a workflow routing service to publish the workflow state change and to receive the document via a distribution cluster coupled to a group of federated microservices.

15. The method of claim 14 , further comprising:

using a workflow navigator service to communicate between the workflow graph database and the workflow routing service to communicate with the distribution cluster.

16. The method of claim 12 , further comprising:

communicating via the communications module with a plurality of external source systems to publish documents, obtain data from files, and to obtain data from an external database.

17. The method of claim 12 , further comprising:

integrating with an application development environment to tie the process workflow to an enterprise application.

18. The method of claim 12 , further comprising:

providing a user interface to design the workflow graph;

enabling predefined node types to be added and connected to each other in a graph builder work area in the user interface;

enabling topics to be defined at connection points in the graph; and

enabling selection of the topics to define inbound and outbound configurations.

19. The method of claim 18 , further comprising:

enabling sub-workflows to be created and shared across multiple workflows designed using the user interface.

20. A non-transitory computer readable medium for executing process workflows, the computer readable medium comprising computer executable instructions for:

obtaining via a communications module, a representation of a workflow as a graph, the graph comprising a plurality of interconnected workflow tasks;

storing the graph in a graph database;

navigating through the workflow tasks in the graph as the process is executed;

publishing via the communications module, a workflow state change with a topic for the current workflow task;

receiving via the communications module, a document for the current workflow task, wherein a state of the process is implied by the topic position in the graph, and wherein the topic determines at least one microservice to be employed; and

having at least one workflow task associated with the current workflow task executed by instructing a corresponding one or more microservices via the communications module.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 15, 2022
From: SCARFUTTI, JOSEPH VINCENT; DE LA PEÑA, CHRISTIAN CABEROY; GOSNELL, MICHAEL JAMES; PETRESCU, BOGDAN; SAKHUJA, RIDHIMA; WRONKO, MIKAYLA DALE; DRANKA, OKSANA; ZHOU, TING
To: THE TORONTO-DOMINION BANK
Reel/Frame 060807/0367 →
Continuity (1)
Related Publication 20220214862A1 · Jul 7, 2022
Cited By (4)
US 12,192,294 US 12,340,186 US 12,367,069 US 12,619,930