Some content of this application is unavailable at the moment.
If this situation persist, please contact us atFeedback&Contact
1. (WO2005033933) SYSTEM AND METHOD FOR WORKFLOW PROCESS MANAGEMENT
Note: Text based on automatic Optical Character Recognition processes. Please use the PDF version for legal matters

What is claimed is:
1. A software implemented method in a computer system for controlling and monitoring a workflow process by arranging complex tasks into predefined sequences according to the workflow process, the method comprising the steps of:
defining procedural components of a process flow model;
defining control links for connecting the procedural components of the process flow model;
defining data components of a process data model;
defining data links for connecting the procedural components of the process
flow model and the data components of the process data model; and
invoking the procedural components for producing a workflow process result.

2. The method of claim 1 , wherein the step of defining procedural components of a process flow model comprises the steps of:
specifying nodes for identifying automated applications, services, function
process steps and manual process steps of the workflow process;
specifying node groups for containing multiple active nodes;
specifying decision nodes for evaluating data and making flow control routing decisions in the workflow process; and
specifying data transformations for inputting one or more data sets and for
outputting one or more data sets; and
specifying flow control nodes for splitting one process path into multiple
process subpaths and joining multiple process subpaths into a single
process path in the workflow process.
3. The method of claim 2, wherein the manual process steps comprise interactive nodes.

4. The method of claim of claim 1 , wherein the step of invoking the procedural components comprises the steps of:
initializing node processing and setting node counter N=0;
invoking node N and updating node status;
performing node N processing;
updating node N process table;
obtaining node N output data;
evaluating node N results by decisions and rules;
determining if all nodes are invoked;
if all nodes are not invoked, letting N=N+1 and repeating the steps above
beginning at the step of invoking; and
if all nodes are invoked, ending the method.
5. The method of claim 1 , wherein the step of defining data components of a process data model comprises the steps of:
specifying data sets and data with a format specification;
specifying a source of the data; and

6. The method of claim 5, wherein the step of specifying data sets comprises the steps of:
specifying input data;
specifying output data;
specifying a processing node.
7. The method of claim 1 , further comprising defining the workflow process, the procedural components, the control links, the data components and the data links as XML files.

8. The method of claim 1 , further comprising the step of storing the process flow model, the control links, the process data model and the data links in a workflow database as workflow process configuration tables.
9. The method of claim 1 , further comprising the step of defining the workflow process as a root element, comprising the steps of:
specifying unique identification and name attributes of a workflow process;
specifying message attributes including enter process message, exit process
message and exit error message;
specifying an optional description of the workflow process; and
specifying workflow process child component elements.
10. The method of claim 2, further comprising the step of specifying nodes as child component elements, comprising the steps of:
designating unique identification and name attributes of a node component;
designating node attributes, including application type, return type, wait type, timeout, number of retries, interval between retries, and maximum number of concurrent executions;
designating a node group that the node belongs to;
designating a command for executing the nodes services and any parameters used when executing the node;
designating service level definitions including identification, name and start
type;
designating start command and associated parameters; and
designating security parameters including connection type and resource, URL, user identification and password.

11. The method of claim 2, further comprising the step of specifying node groups as child component elements, comprising the steps of:
designating unique identification and name attributes of a node group
component;
designating node group attributes, including application type, return type, wait type, timeout, number of retries, interval between retries, and maximum
number of concurrent executions;
designating a node group strategy attribute for determining a node selection
strategy;
designating a node group that the node group component belongs to;
designating a command for executing the nodes services and any parameters used when executing the node;
designating service definitions including identification, name and start type; designating start command and associated parameters; and
designating security parameters including connection type and resource, URL, user identification and password.
12. The method of claim 1, further comprising the step of defining confrol links as child component elements, comprising the steps of:
designating unique identification and name attributes of a confrol link
component;
designating control link attributes, including link type for defining the type of component that is pointed to by the source, required for designating
process flow joins, and optional integer value for defining the control link; designating a source identification for defining a component where a process flow is coming from;

designating a target identification for defining a component where a process
flow is going to; and
designating a reference identification for an optional object reference for the control link.
13. The method of claim 2, further comprising the step of specifying decision nodes as child component elements, comprising the steps of:
designating unique identification and name attributes of a decision node
component;
designating decision node attributes, including decision node control type for indicating support for single or multiple confrol paths, condition evaluation functions for directing control path upon successful evaluation of the
condition, data identification for indicating a source of a specific data set, and an optional salience value for determining a priority of processing of the condition;
designating an onok when a return code is 0, an onerror function when an
error is produced, an ondata function when evaluating a data item with a
specific value, an onexists function for checking to see if data exists for a given name, and an oncompare function for comparing two values that
may be strings or numbers; and
designating a rule function for specific rule evaluation and a default function for defining default routing.
14. The method of claim 5, further comprising the step of specifying data sets as child component elements, comprising the steps of:
designating unique identification and name attributes of a data set component;

designating data set attributes, including source identifiers for identifying a
source of data, type for explicitly defining where the data comes from,
source name and object identification for defining source characteristics; and
designating a data format definition for defining a format of the data in the
source and a data attribute for defining an expected data structure.
15. The method of claim 1, further comprising the step of defining data links as child component elements, comprising the steps of:
designating unique identification and name attributes of a data link
component;
designating data link attributes, including link type for defining how a data set is linked to a component, usage type for indicating if a component is a
source or sink for data, and required for indicating if data is required
before process flow can continue; and
designating data set identification for containing data, and target identification for identifying a component for linking to the data set.
16. The method of claim 5, further comprising the step of specifying data
transformations as child component elements, comprising the steps of:
designating unique identification and name attributes of a data transformation component, and type for defining a type of data fransformation; and
designating data transformation elements, including sources for identifying
data set sources for the data fransformation, data set targets for identifying target data sets for the data transformation, and mappings for mapping a
specific value from a source data set to an element in a target data set.

17. A computer-readable medium containing instructions for controlling a computer system according to the method of claim 1.
18. A software implemented system in a computer for controlling and monitoring a workflow process by arranging complex tasks into predefined sequences according to the workflow process, the system comprising:
means for defining procedural components of a process flow model;
means for defining control links for connecting the procedural components of the process flow model;
means for defining data components of a process data model;
means for defining data links for connecting the procedural components of the process flow model and the data components of the process data model;
and
means for invoking the procedural components for producing a workflow
process result.
19. The system of claim 18, wherein the means for defining procedural components of a process flow model comprises:
nodes for identifying automated applications, services, function process steps and manual process steps of the workflow process;
node groups for containing multiple active nodes;
decision nodes for evaluating data and making flow control routing decisions in the workflow process; and
data transformations for inputting one or more data sets and for outputting one or more data sets; and flow control nodes for splitting one process path into multiple process
subpaths and joining multiple process subpaths into a single process path
in the workflow process.
20. The system of claim 18, wherein the means for defining data components of a process data model comprises:
data sets and data with a format specification;
a source of the data.
21. The system of claim 18, wherein the means for defining control links comprises a designation of a source component for defining where process flow is coming from, and a designation of a target component for defining where a process flow is going to.

22. The system of claim 18, wherein the means for defining data links comprises a designation of a data set as a source and sink for data, and a designation of a target component for linking to the data set.
23. The system of claim 18, wherein the means for invoking the procedural components comprises a workflow manager and a workflow database.
24. The system of claim 18, further comprising custom application nodes, server application nodes and user application nodes.
25. A software implemented system in a computer for controlling and monitoring a workflow process comprising;
one or more workflow managers for controlling and invoking procedural
components of the workflow process;
a workflow database connected to the one or more workflow managers for
persisting workflow process tables and configuration tables, including
nodes, decisions, control links, data sets and data links;

the procedural components of the workflow process including nodes, node groups, decision nodes and flow control nodes; and
the procedural component nodes including workflow user applications,
automated applications, services, function process steps and manual
process steps.
26. The system of claim 25, wherein the one or more workflow managers and the procedural components are interconnected by a dynamic services network, whereby the one or more workflow managers make requests for procedural component execution via a network queue controlled by a workflow monitor/administrator.