System and method for performing consistent workflow process execution in a workflow management system
First Claim
1. A system for allowing consistent execution of a workflow process in a computer-enabled workflow management system, comprising(A) a workflow process database accessible by the workflow process, wherein the workflow process includes at least one sequence of workflow actions, having at least one set of parallel workflow actions and being configured as a plurality of nodes interconnected by arcs, each node defining at least one of the workflow actions and reading and writing data items when executing the workflow actions;
- (B) a module that maintains execution consistency among the workflow actions when the nodes access the workflow process database to read and write the data items in carrying out the workflow actions while maintaining execution concurrency among the workflow actions, wherein the module further comprises(I) a first sub-module that locks a data item in the database when the data item is to be read or updated by one of the nodes and is not locked by other nodes before the read or update operation is commenced, wherein the first sub-module causes the node to update the workflow process database with the data item if the data item was not previously updated by another node executing another action which has accessed the same action database of the workflow management system with a greater serialization order;
(II) a second sub-module that releases the lock after the node has performed the read or update operation.
4 Assignments
0 Petitions
Accused Products
Abstract
A system for allowing consistent execution of a workflow process in a computer-enabled workflow management system is described. The workflow process includes at least one sequence of workflow actions, having at least one set of parallel workflow actions and being configured as a number of nodes interconnected by arcs. Each node defines and executes at least one of the workflow actions. The system includes a workflow process database accessible by the nodes of the workflow process to read and write data items when executing the workflow actions. The system also includes a module for maintaining execution consistency among the workflow actions when the nodes access the workflow process database to read and write the data items in carrying out the workflow actions. A computer-implemented method for consistently executing a workflow process in a workflow management system is also described.
-
Citations
8 Claims
-
1. A system for allowing consistent execution of a workflow process in a computer-enabled workflow management system, comprising
(A) a workflow process database accessible by the workflow process, wherein the workflow process includes at least one sequence of workflow actions, having at least one set of parallel workflow actions and being configured as a plurality of nodes interconnected by arcs, each node defining at least one of the workflow actions and reading and writing data items when executing the workflow actions; (B) a module that maintains execution consistency among the workflow actions when the nodes access the workflow process database to read and write the data items in carrying out the workflow actions while maintaining execution concurrency among the workflow actions, wherein the module further comprises (I) a first sub-module that locks a data item in the database when the data item is to be read or updated by one of the nodes and is not locked by other nodes before the read or update operation is commenced, wherein the first sub-module causes the node to update the workflow process database with the data item if the data item was not previously updated by another node executing another action which has accessed the same action database of the workflow management system with a greater serialization order; (II) a second sub-module that releases the lock after the node has performed the read or update operation. - View Dependent Claims (2, 3)
-
4. A computer-implemented method for allowing consistent executing of a workflow process in a workflow management system, comprising
(A) allowing each of a plurality of interconnected nodes of the workflow process to read and write data items to and from a workflow process database in carrying out workflow actions associated with the respective nodes of the workflow process, wherein the workflow actions include multiple workflow actions including at least one set of parallel actions; (B) maintaining the execution consistency among the workflow actions when the nodes access the workflow process database to read and write the data items in carrying out the workflow actions while maintaining execution concurrency among the workflow actions, wherein the step (B) further comprises the steps of (I) locking a data item in the database when the data item is to be read or updated by a node of the nodes before the read or update operation is commenced; (II) releasing the lock after the node has performed the read or update operation regarding the data item; (III) causing the node to update the workflow process database with the data item if the data item was either not previously updated or previously updated by another node executing another action which has accessed the same action database of the workflow management system with a smaller serialization order. - View Dependent Claims (5, 6)
-
7. A computer-implemented method for allowing consistent executing of a workflow process in a workflow management system, comprising
(A) allowing each of a plurality of interconnected nodes of the workflow process to read and write data items to and from a workflow process database in carrying out workflow actions associated with the respective nodes of the workflow process, wherein the workflow actions include multiple workflow actions including at least one set of parallel actions; (B) maintaining the execution consistency among the workflow actions when the nodes access the workflow process database to read and write the data items in carrying out the workflow actions while maintaining execution concurrency among the workflow actions, wherein the step (B) further comprising the steps of (a) performing an atomic read operation to read all data items from the workflow process database for an associated action, wherein the data items are locked when being read and released from being locked after being read; (b) causing the associated action to be executed; (c) performing an atomic update operation to update the data items in the workflow process database, wherein the data items are locked when being updated and released from being locked after being updated, wherein the step (c) further comprises the step of not updating the data item if the data item was previously updated by another node executing another action which has accessed the same action database of the workflow management system with a greater serialization order. - View Dependent Claims (8)
Specification