Workflow engine for automating business processes in scalable multiprocessor computer platforms
First Claim
1. A system for executing a workflow comprising:
- a workflow engine operable to receive an input message having a characteristic and data, the workflow engine operable to implement a predetermined finite state machine, based on the characteristic of the input message;
the workflow engine operable to transmit a first message including a first header and a first data set to a first object based on a first requirement of the predetermined finite state machine, and receive a second message from the first object, the first object having a first function, and operable to receive the first message from the workflow engine, execute the first function based on the first data set, generate a second message including a second header and second data set representing a result of the executed first function, and transmit the second message to the workflow engine;
a message platform operable to transfer first and second messages between the first object and the workflow engine.
1 Assignment
0 Petitions
Accused Products
Abstract
The present invention relates to a workflow and workflow engine. A workflow in accordance with the present invention is a process that gets triggered in response to a predetermined event in a relationship management system. The event could be anything input into the system, such as an incoming interaction like a phone call, a fax, an e-mail, or a web-form submission. In addition an event could be a business events such as an overdue task, an inventory update, a merchandise sale, or an equipment order. A workflow is preferably characterized in terms of a set of steps the workflow is to perform, such as creating or modifying a business object, creating and sending an email or fax, making a decision based on a query, scheduling a timed event, and so on.
-
Citations
25 Claims
-
1. A system for executing a workflow comprising:
-
a workflow engine operable to receive an input message having a characteristic and data, the workflow engine operable to implement a predetermined finite state machine, based on the characteristic of the input message;
the workflow engine operable to transmit a first message including a first header and a first data set to a first object based on a first requirement of the predetermined finite state machine, and receive a second message from the first object, the first object having a first function, and operable to receive the first message from the workflow engine, execute the first function based on the first data set, generate a second message including a second header and second data set representing a result of the executed first function, and transmit the second message to the workflow engine;
a message platform operable to transfer first and second messages between the first object and the workflow engine. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method of executing a workflow in a business computer platform comprising:
-
providing a workflow engine operable to send and receive messages;
providing a first object having a first function and operable to send and receive messages;
in the workflow engine, receiving a first message including a first header and a first data set, and creating an instance of a first workflow based on the first header;
the first workflow including a predetermined set of workflow rules, each workflow rule prescribing a respective task to be executed based on a current state of the workflow;
in the workflow engine, determining a first workflow rule of the predetermined set of workflow rules to be followed based on the first header, generating a second message including a first state of the first workflow and a portion of the first data based on the first workflow rule, and sending the second message;
in the first object, receiving the second message from the workflow engine, executing the first function on the portion of the first data, generating a third message including the first state of the first workflow and a second data set based in part on the execution of the first function on the portion of the first data; and
in the workflow engine, receiving the third message from the first object and determining a second state of the workflow based on the first state of the workflow and the second data set, and determining a second rule in the set of workflow rules to follow, based on the second state of the workflow. - View Dependent Claims (11, 12, 13, 14)
-
-
15. A workflow for executing a user defined set of functions in response to an incoming trigger comprising:
-
a first rule for performing a first predetermined function, wherein a portion of the incoming trigger is set as an input to the first function, and the first function operates on the portion of the incoming trigger and generates a first output of a first predetermined type; and
a second rule for performing a second predetermined function, wherein the first output is set as an input of the second predetermined function, and the second predetermined function operates on the first output and generates a second output of a second predetermined type. - View Dependent Claims (16, 17, 18, 19)
-
-
20. A method of designing a workflow for use on a computer system for automating a response to an incoming trigger, the method comprising:
-
determining a first process having a first input for performing a first function on a first data set and generating a first output based on the function performed on the first data set;
mapping a portion of the incoming trigger to the first input and a portion of the incoming trigger to the first data set;
determining a second process having a second input for performing a second function on a second data set and generating a second output based on the function performed on the second data set; and
mapping a portion of the first output to the second input and a portion of the first output to the second data set. - View Dependent Claims (21, 22, 23, 24, 25)
-
Specification