Workflow definitions are broken into a set of components. Each workflow component has an instance-specific workflow definition that it operates from. Different steps can be injected into different workflow instance-specific definitions, based upon a given state of each individual workflow instance.
Legal claims defining the scope of protection, as filed with the USPTO.
1. A computing system comprising: at least one computer processor; and a memory communicatively coupled to the at least one computer processor, the memory having stored thereon computer readable instructions that, when executed by the at least one computer processor, cause the computing system to at least: generate a user interface display that includes: a workflow display element that represents a workflow having a workflow definition that is stored in a data store; a workflow editing user input mechanism; and an in-flight instance display element that indicates a runtime instance of the workflow that is currently executing during runtime operation using an instance specific copy of the workflow definition; based on an indication of user actuation of the workflow editing user input mechanism, define a modification that injects a step into the workflow; edit the workflow definition stored in the data store based on the defined modification; generate a step injection package for the runtime instance of the workflow, the step injection package defining modification that injects the step into the runtime instance of the workflow; and modify the instance-specific copy of the workflow definition, during execution of the steps in the runtime instance, with the modification defined in the step injection package.
2. The computing system of claim 1 wherein the computer readable instructions, when executed by the at least one computer processor, cause the computing system to at least: instantiate the runtime instance based on detection of a triggering condition; access the data store to generate the instance-specific copy of the workflow definition for the runtime instance; and execute steps in the runtime instance based on the instance-specific copy of the workflow definition.
3. The computing system of claim 2 wherein the computer readable instructions, when executed by the at least one computer processor, cause the computing system to at least: identify a current execution state of the runtime instance of the workflow; generate a state indicator display element, on the user interface display, indicative of the current execution state.
4. The computing system of claim 3 wherein the computer readable instructions, when executed by the at least one computer processor, cause the computing system to at least: during execution of the runtime instance, modify the instance-specific copy of the workflow definition based on the modification in the step injection package and the current execution state of the runtime instance.
5. The computing system of claim 4 wherein the computer readable instructions, when executed by the at least one computer processor, cause the computing system to at least: generate a representation of a workflow generation user interface display with a user input mechanism; based on an indication of user actuation of the user input mechanism, generate the workflow for runtime operation; generate a representation of a component definition user input mechanism; and based on an indication of user actuation of the component definition user input mechanism, divide the workflow into a set of components, each component including an entry step with a step condition that define when the component is triggered and a transition step with a step condition that define when the component is finished.
6. The computing system of claim 5 wherein the computer readable instructions, when executed by the at least one computer processor, cause the computing system to at least: based on an indication of user actuation of the component definition user input mechanism, define one or more sub-workflows in a particular one of the components.
7. The computing system of claim 6 wherein the computer readable instructions, when executed by the at least one computer processor, cause the computing system to at least: based on an indication of user actuation of the component definition user input mechanism, generate a metadata workflow definition for the workflow.
8. The computing system of claim of claim 7 wherein the computer readable instructions, when executed by the at least one computer processor, cause the computing system to at least: evaluate events in the computing system to determine whether a triggering condition is met to trigger the workflow.
9. A method performed by a computing system, the method comprising: evaluating an event in the computing system to determine whether a triggering condition is met to trigger a workflow: instantiating a runtime instance of the triggered workflow; accessing a data store to identify a workflow definition corresponding to the triggered workflow, wherein the workflow definition comprises a set of steps arranged in an expected order of execution; executing steps in the runtime instance of the triggered workflow based on an instance specific copy of the workflow definition, wherein the instance-specific copy of the workflow definition is specific to the instantiated runtime instance of the triggered workflow, and generated by copying step from the set of steps, intermittently, to the instance-specific copy of the workflow definition, during execution of the steps.
10. The method of claim 9 and further comprising: receiving a step injection package; and modifying the instance-specific copy of the workflow definition, during execution of the steps in the runtime instance, with modifications in the step injection package.
11. The method of claim 10 and further comprising: monitoring a current execution state of the runtime instance; generating a state indicator indicative of the current execution state; and during execution of the runtime instance, modifying the instance-specific copy of the workflow definition based on the modification in the step injection package and the current execution state of the runtime instance.
12. The method of claim 10 and further comprising: generating a representation of a workflow generation user interface display with a user input mechanism; and based on an indication of user actuation of the user input mechanism, generating the workflow for runtime operation.
13. The method of claim 12 wherein generating the workflow generation user interface displays comprises: generating a representation of a component definition user input mechanism; and based on an indication of user actuation of the component definition user input mechanism, dividing a workflow into a set of components, each component including an entry step with a step condition that defines when the component is triggered and a transition step with a step condition that defines when the component is finished.
14. The method of claim 13 and further comprising: based on an indication of user actuation of the component, definition user input mechanism, generating metadata workflow definition for the workflow.
15. A computing system comprising: at least one computer processor; and a memory communicatively coupled to the at least one computer processor, the memory having stored thereon computer readable instructions that, when executed by the at least one computer processor, cause the computing system to at least: based on evaluating events in the computing system, determine whether a triggering condition is met; based on determining that the triggering condition is met, trigger a corresponding workflow associated with the computing system; instantiate a runtime instance of the triggered workflow; create an instance-specific copy of a workflow definition for the triggered workflow; execute steps in the runtime instance of the triggered workflow based on the instance-specific copy of the workflow definition; identify a step injection package that defines a modification that injects a step into the triggered workflow; and modify the instance-specific copy of the workflow definition, during execution of the steps in the runtime instance, with the modification defined in the step injection package.
16. The computing system of claim 15 wherein the computer readable instructions, when executed by the at least one computer processor, cause the computing system to at least; identify a current execution state of the runtime instance of the triggered workflow; generate a state indicator indicative of the current execution state; and during execution of the runtime instance, modify the instance-specific copy of the triggered workflow definition based on the modification in the step injection package and the current execution state of the runtime instance.
17. The computing system of claim 16 wherein the computer readable instructions, when executed by the at least one computer processor, cause the computing system to at least: generate a representation of a workflow generation user interface display with a user input mechanism; and based on an indication of user actuation of the user input mechanism, generate the workflow for runtime operation.
18. The computing system of claim 17 wherein the computer readable instructions, when executed by the at least one computer processor, cause the computing system to at least: generate a representation of a component definition user input mechanism; and based on an indication of user actuation of the component definition user input mechanism, divide the workflow into a set of components, each component including an entry step with a step condition that define when the component is triggered and a transition step with a step condition that define when the component is finished.
Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.
February 15, 2018
May 5, 2020
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.