Method and apparatus for distributed workflow building blocks of process definition, initialization and execution
DCFirst Claim
1. A workflow method for distributing and controlling work in a computer system, wherein said work is defined by a procedure having a plurality of nodes with connections defined therebetween, one node for each activity in said procedure, and wherein each of said nodes is defined to be performed by either said computer system or by an agent, said workflow method comprising the steps of:
- (a) for each time said procedure is to be performed, retrieving said procedure and defining an instance for said procedure, said instance comprising said plurality of nodes and connections defined therebetween, and an information packet comprising initial data for said instance;
(b) selecting a node of said instance to be performed;
(c) creating a task for said node;
(d) when said task is defined to be performed by said computer system, executing said task on said computer system;
(e) when said task is defined to be performed by an agent, identifying said agent through an organization service, sending said information packet in said instance to said agent through a transport service, and receiving results from said agent, whereby said agent performs all activities of said task defined for said node;
(f) selecting a next node connected to said node processed in steps (c) through (e) and repeating steps (c) through (e) for said selected next node, wherein a next node selected is a next node defined within said instance after a node just performed in steps (c) through (e), unless said node just performed was a routing node, wherein a next node to be performed was identified by said routing node when said routing node was performed, and(g) repeating step (f) until a last node of said procedure has been performed.
5 Assignments
Litigations
0 Petitions
Accused Products
Abstract
A workflow system that automates the definition and execution of a procedure that can be carried out according to defined rules among agents. Agents may be individual users, work groups, organizations, or automatic systems. Automation is used to guarantee that all the individual activities are taken in the defined sequence, form, and time. The system separates the three basic elements necessary to perform a procedure--a co-ordination service, an organization service, and a transport service. The coordination service ensures proper sequence of the activities of the procedure. The organization services identifies a particular agent to perform a task within a procedure. The agent selection can be made when the procedure is defined, or it can be deferred until an instance using the procedure is performed. The transport service is used to move information between agents and an information service, which holds instance data, while processing an instance.
312 Citations
19 Claims
-
1. A workflow method for distributing and controlling work in a computer system, wherein said work is defined by a procedure having a plurality of nodes with connections defined therebetween, one node for each activity in said procedure, and wherein each of said nodes is defined to be performed by either said computer system or by an agent, said workflow method comprising the steps of:
-
(a) for each time said procedure is to be performed, retrieving said procedure and defining an instance for said procedure, said instance comprising said plurality of nodes and connections defined therebetween, and an information packet comprising initial data for said instance; (b) selecting a node of said instance to be performed; (c) creating a task for said node; (d) when said task is defined to be performed by said computer system, executing said task on said computer system; (e) when said task is defined to be performed by an agent, identifying said agent through an organization service, sending said information packet in said instance to said agent through a transport service, and receiving results from said agent, whereby said agent performs all activities of said task defined for said node; (f) selecting a next node connected to said node processed in steps (c) through (e) and repeating steps (c) through (e) for said selected next node, wherein a next node selected is a next node defined within said instance after a node just performed in steps (c) through (e), unless said node just performed was a routing node, wherein a next node to be performed was identified by said routing node when said routing node was performed, and (g) repeating step (f) until a last node of said procedure has been performed. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A workflow method for distributing and controlling work in a computer system, said method comprising the steps of:
-
(a) accepting input from a user of said method to provide a procedure for said work, said procedure having a plurality of nodes with connections defined therebetween, one node for each activity in said procedure, wherein each of said nodes is defined to be performed by either said computer system or by an agent, and storing said procedure through an information service; (b) for each time said procedure is to be performed, retrieving said procedure through said information service and defining an instance for said procedure, said instance comprising said plurality of nodes and connections defined therebetween, and an information packet comprising initial data for said instance; (c) selecting a node of said instance to be performed; (d) creating a task for said node; (e) when said task is defined to be performed by said computer system, executing said task on said computer system; (f) when said task is defined to be performed by an agent, identifying said agent through an organization service, sending said information packet in said instance to said agent through a transport service, and receiving results from said agent, whereby said agent performs all activities of said task; (g) selecting a next node connected to said node processed in steps (d) through (f) and repeating steps (d) through (f) for for said selected next node, wherein a next node selected is a next node defined within said instance after a node just performed in steps (d) through (f), unless an error has occurred, wherein a next node to be performed is determined by a modifier node within said workflow procedure; and (h) repeating step (g) until a last node of said procedure has been performed. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16, 17, 18, 19)
-
Specification