# US 12,008,500 B2 · Dynamic next operation determination for workflows

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

- Number: US 12,008,500 B2
- Document ID: US12008500B2
- Status: Granted
- Kind: B2
- Application number: 17/808,454
- Filed: 2022-06-23
- Published: 2023-12-28
- Granted: 2024-06-11
- Earliest claimed: 2022-06-23
- Assignees: Microsoft Technology Licensing, LLC
- Applicants: Microsoft Technology Licensing, LLC
- Inventors: Alexander Ostrikov; Royi Ronen; Ashwini Kumar Dalai; Pooja Bhalla; Atul Agarwal; Greeshma Singh
- Web page: https://patentgrep.com/patent/US12008500B2

## CPC

- G06Q 10/06316: {Sequencing of tasks or work}
- G06Q 10/0633: Workflow analysis
- G06Q 10/06332: {using business process templates}
- 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

A next operation in a workflow corresponding to a subject matter is automatically generated. A subject matter data record is received, including one or more historical operations previously executed in the workflow and a workflow template including one or more dynamic workflow nodes. At least one next operation is programmatically generated from the one or more dynamic workflow nodes based on the one or more historical operations previously executed in the workflow, wherein the at least one next operation is parameterized based on content in the subject matter data record. The at least one programmatically generated next operation is output into the workflow for execution.

## Claims

### Claim 1

A method of automatically generating a next operation in an executing instance of a workflow corresponding to a subject matter, the method comprising:
receiving a subject matter data record including one or more historical operations previously executed in the executing instance of the workflow and a workflow template including one or more dynamic workflow nodes, wherein each of the one or more dynamic workflow nodes are configured to generate one or more next operations for the executing instance of the workflow;
programmatically generating, by one of the one or more dynamic workflow nodes, at least one next operation from the one or more dynamic workflow nodes based on the one or more historical operations previously executed in the executing instance of the workflow, wherein the at least one next operation is parameterized based on content in the subject matter data record; and
outputting the at least one programmatically generated next operation into the executing instance of the workflow for execution.

### Claim 2 (depends on 1)

The method of claim 1, further comprising:
updating the one or more historical operations with completion of the at least one programmatically generated next operation, based on the completion of the at least one programmatically generated next operation;
programmatically generating at least one other next operation from workflow nodes of the workflow template, based on the updated one or more historical operations; and
outputting the at least one other next operation into the executing instance of the workflow for execution, based on the updated one or more historical operations.

### Claim 3 (depends on 1)

The method of claim 1, wherein the workflow template includes at least two synchronous workflow nodes including a first synchronous workflow node and a second synchronous workflow node, the first synchronous workflow node defining a next operation to be generated after completion of a next operation defined by the second synchronous workflow node in the executing instance of the workflow.

### Claim 4 (depends on 1)

The method of claim 1, wherein the workflow template includes at least one dynamic workflow node as an asynchronous workflow node, the asynchronous workflow node defining a next operation triggered based at least upon satisfaction by the subject matter data record of a triggering condition associated with the asynchronous workflow node, wherein the triggered next operation generates a next operation of the executing instance of the workflow.

### Claim 5 (depends on 1)

The method of claim 1, wherein the subject matter data record includes one or more subject matter parameters, and at least one of the one or more dynamic workflow nodes defines an asynchronous operation triggered based at least upon satisfaction of a triggering condition associated with the at least one of the one or more dynamic workflow nodes, wherein the triggered asynchronous operation generates a next operation of the executing instance of the workflow and the next operation of the executing instance of the workflow is based on the one or more subject matter parameters.

### Claim 6 (depends on 1)

The method of claim 1, wherein the workflow template further includes one or more static workflow nodes.

### Claim 7 (depends on 1)

The method of claim 1, wherein the next operation is parameterized to specify a timing of execution of the next operation within the executing instance of the workflow.

### Claim 8

A system for automatically generating a next operation in an executing instance of a workflow corresponding to a subject matter, the system comprising:
one or more hardware processors;
an input interface executable by the one or more hardware processors and configured to receive a subject matter data record including one or more historical operations previously executed in the executing instance of the workflow, and a workflow template including one or more dynamic workflow nodes, wherein at least one of the one or more dynamic workflow nodes is configured to generate one or more next operations for the executing instance of the workflow and to specify at least one exit condition for terminating generation of next operations by the at least one of the one or more dynamic workflow nodes;
a next operation generator executable by the one or more hardware processors and configured to programmatically generate, by one of the one or more dynamic workflow nodes, at least one next operation from the one or more dynamic workflow nodes based on the one or more historical operations previously executed in the executing instance of the workflow, wherein the at least one next operation is parameterized based on content in the subject matter data record; and
an output interface executable by the one or more hardware processors and configured to output the at least one programmatically generated next operation into the executing instance of the workflow for execution.

### Claim 9 (depends on 8)

The system of claim 8, wherein the next operation generator is further configured to update the one or more historical operations with completion of the at least one programmatically generated next operation, based on the completion of the at least one programmatically generated next operation and to programmatically generate at least one other next operation from workflow nodes of the workflow template, based on the updated one or more historical operations, and the output interface is further configured to output the at least one other next operation into the executing instance of the workflow for execution, based on the updated one or more historical operations.

### Claim 10 (depends on 8)

The system of claim 8, wherein the workflow template includes at least two synchronous workflow nodes including a first synchronous workflow node and a second synchronous workflow node, the first synchronous workflow node defining a next operation to be generated after completion of a next operation defined by the second synchronous workflow node in the executing instance of the workflow.

### Claim 11 (depends on 8)

The system of claim 8, wherein the workflow template includes at least one dynamic workflow node as an asynchronous workflow node, the asynchronous workflow node defining a next operation triggered based at least upon satisfaction by the subject matter data record of a triggering condition associated with the asynchronous workflow node, wherein the triggered next operation generates a next operation of the executing instance of the workflow.

### Claim 12 (depends on 8)

The system of claim 8, wherein at least one of the one or more dynamic workflow nodes defines an asynchronous operation triggered based at least upon satisfaction of a triggering condition associated with the at least one of the one or more dynamic workflow nodes, wherein the triggered asynchronous operation generates a next operation of the executing instance of the workflow and the next operation of the executing instance of the workflow is based on the subject matter data record.

### Claim 13 (depends on 8)

The system of claim 8, wherein the workflow template further includes one or more static workflow nodes.

### Claim 14 (depends on 8)

The system of claim 8, wherein the next operation is parameterized to specify a timing of execution of the next operation within the executing instance of the workflow.

### Claim 15

One or more tangible processor-readable storage media embodied with instructions for executing on one or more processors and circuits of a computing device a process for automatically generating a next operation in an executing instance of a workflow corresponding to a subject matter, the process comprising:
receiving a subject matter data record including one or more historical operations previously executed in the executing instance of the workflow and one or more subject matter parameters;
receiving a workflow template including one or more dynamic workflow nodes, wherein each of the one or more dynamic workflow nodes are configured to generate one or more next operations for the executing instance of the workflow;
programmatically generating, by one of the one or more dynamic workflow nodes, at least one next operation from the one or more dynamic workflow nodes based on the one or more historical operations previously executed in the executing instance of the workflow and the one or more subject matter parameters, based on completion of an immediately previous next operation in the executing instance of the workflow; and
outputting the at least one programmatically generated next operation into the executing instance of the workflow for execution.

### Claim 16 (depends on 15)

The one or more tangible processor-readable storage media of claim 15, wherein the process further comprises:
updating the one or more historical operations with completion of the at least one programmatically generated next operation, based on the completion of the at least one programmatically generated next operation;
programmatically generating at least one other next operation from workflow nodes of the workflow template, based on the updated one or more historical operations; and
outputting the at least one other next operation into the executing instance of the workflow for execution, based on the updated one or more historical operations.

### Claim 17 (depends on 15)

The one or more tangible processor-readable storage media of claim 15, wherein the workflow template includes at least two synchronous workflow nodes including a first synchronous workflow node and a second synchronous workflow node, the first synchronous workflow node defining a next operation to be generated after completion of a next operation defined by the second synchronous workflow node in the executing instance of the workflow.

### Claim 18 (depends on 15)

The one or more tangible processor-readable storage media of claim 15, wherein the workflow template includes at least one dynamic workflow node as an asynchronous workflow node, the asynchronous workflow node defining a next operation triggered based at least upon satisfaction by the subject matter data record of a triggering condition associated with the asynchronous workflow node, wherein the triggered next operation generates a next operation of the executing instance of the workflow.

### Claim 19 (depends on 15)

The one or more tangible processor-readable storage media of claim 15, wherein at least one of the one or more dynamic workflow nodes defines an asynchronous operation triggered based at least upon satisfaction of a triggering condition associated with the at least one of the one or more dynamic workflow nodes, wherein the triggered asynchronous operation generates a next operation of the executing instance of the workflow and the next operation of the executing instance of the workflow is based on the one or more subject matter parameters.

### Claim 20 (depends on 15)

The one or more tangible processor-readable storage media of claim 15, wherein the next operation is parameterized to specify a timing of execution of the next operation within the executing instance of the workflow.
