Event-based scheduling method and system for workflow activities
First Claim
1. A method for event-based synchronization in a workflow having at least one event node comprising the steps of:
- a workflow having a plurality of work nodes;
encountering an event node that specifies an event;
suspending execution of the workflow and waiting for the occurrence of the event; and
proceeding to a next work node only when the event occurs.
5 Assignments
0 Petitions
Accused Products
Abstract
An event-based scheduling method and system for providing automatic activity synchronization and automatic data exchange between workflows and between workflows and other applications. An automatic synchronization mechanism is provided for enabling workflows to interact with other workflows or other applications to automatically synchronize activity execution. An automatic data exchange mechanism is provided for enabling workflows to exchange data with other workflows or other applications. An event processing pre-compilation architecture receives a workflow definition having at least one event node and responsive thereto generates a workflow definition without event nodes at compile time. Each event node is replaced with a translated workflow node that conforms to the syntax supported by the underlying workflow engine. The translated workflow node is also assigned to an application that can implement the desired event node semantics. An event processing run-time architecture invokes the application assigned to the translated node when the translated node is encountered. The application employs a publication and subscription tool for automatically performing activity synchronization and/or data exchange at run time.
-
Citations
23 Claims
-
1. A method for event-based synchronization in a workflow having at least one event node comprising the steps of:
-
a workflow having a plurality of work nodes;
encountering an event node that specifies an event;
suspending execution of the workflow and waiting for the occurrence of the event; and
proceeding to a next work node only when the event occurs. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 19)
-
-
10. A system for processing workflow definitions having at least one event node with desired event node semantics comprising the steps of:
-
a workflow engine for processing workflow definitions and for supporting a predetermined workflow syntax;
an event node handler for receiving a workflow definition having at least one event node and responsive thereto for generating at compile time a workflow definition with translated event nodes wherein the event node handler includes an event node replacement unit for replacing each event node with a translated workflow node that conforms to the predetermined workflow syntax supported by the workflow engine; and
a node application assignment unit for assigning an application to each translated workflow node that can implement the desired event node semantics - View Dependent Claims (11, 12, 13, 14, 15, 16, 18)
-
-
17. An workflow management system comprising:
-
a first process;
a second process for cooperating with the first process;
an automatic cooperation facility to automatically synchronize execution of activities in the first process and the second process, for exchanging data between the first process and the second process, for notifying state changes of the first process and the second process, for notifying that certain milestones have been reached in process execution, and for requesting the activation of a remote process from the first process and the second process.
-
-
20. A method for processing event nodes in a workflow definition comprising the steps of:
-
a) during compile time, translating the workflow definition with event nodes into a revised workflow definition with translated workflow nodes;
during run-timeb) when a translated request node is encountered, invoking a request application;
c) the request application subscribing with an event broker for an event of interest by specfying required parameters;
d) when an application publishes an event that matches the required parameters of the event of interest, the event broker delivering the event to the request application;
e) when a send node is encountered, invoking a send application; and
f) the send application publishing an event with an event broker. - View Dependent Claims (21, 22)
-
-
23. A method for processing event nodes comprising:
-
an event broker for providing event publication and subscription services;
a send application for processing send nodes and for publishing at least one event with the on the event broker;
a request application for processing request nodes and for subscribing to at least one event on the event broker; and
a workflow engine for invoking the send application when processing a send node and for invoking the request application when processing a request node.
-
Specification