US2011296419A1PendingUtilityA1
Event-based coordination of process-oriented composite applications
Est. expirySep 2, 2025(expired)· nominal 20-yr term from priority
G06Q 10/06G06F 9/542G06F 8/10G06F 8/35
50
PatentIndex Score
0
Cited by
0
References
0
Claims
Abstract
A process model specified using, for example, UML activity diagrams can be translated into an event-based model that can be executed on top of a coordination middleware. For example, a process model may be encoded as a collection of coordinating objects that interact with each other through a coordination middleware including a shared memory space. This approach is suitable for undertaking post-deployment adaptation of process-oriented composite applications. In particular, new control dependencies can be encoded by dropping new (or enabling existing) coordinating objects into the space and/or disabling existing ones.
Claims
exact text as granted — not AI-modified1 . A computer program product tangibly embodied on a computer-readable medium and including executable code that, when executed, is configured to cause a data processing apparatus to
read a first task completion event from a memory space using a router object, the first task completion event indicating completion of a first task of an executing instance of a process model; write a first task-enabling event to the memory space using the router object; read the first task-enabling event at a connector object and coordinate performance of a second task of the process model based thereon and using the connector object; and write a second task completion event to the memory space using the connector object and signifying completion of the second task.
2 . The computer program product of claim 1 wherein the executable code, when executed, causes the data processing apparatus to:
read a plurality of task-completion events from the memory space, including the first task completion event; and
evaluate conditions associated with the plurality of task-completion events to determine whether the task-completion events match an input set of the router object that is defined with respect to a path through the instance of the process model.
3 . The computer program product of claim 1 wherein the executable code, when executed, causes the data processing apparatus to:
read the first task completion event from the memory space at the router object and within the instance of the process model; and
write a modified first task-enabling event to the memory space, in response to the reading of the first task completion event, in order to execute the instance of the process model.
4 . The computer program product of claim 1 wherein the instance of the process model includes a plurality of tasks, including the first task and the second task, and wherein each task is associated with a connector object configured to read task-enabling events from the memory space and determine whether any of the task-enabling events enable execution of its corresponding task, and, if so, to thereafter write task completion events to the memory space to thereby trigger execution of a subsequent task within the instance of the process model.
5 . The computer program product of claim 1 wherein at least two of the connector objects are associated with corresponding external software applications, and are configured to complete their corresponding tasks including executing the corresponding external software applications.
6 . The computer program product of claim 5 wherein the instance of the process model executes a packaged composite application that is defined by the process model and that includes functionality of the external applications to perform their corresponding tasks.
7 . The computer program product of claim 6 wherein the executable code, when executed, causes the data processing apparatus to:
modify the instance of the process model by adding and/or changing an aspect of one or more of the router object and/or the connector object, based on a context of the packaged composite application.
8 . The computer program product of claim 6 wherein the instance of the process model is created in response to receipt of a user stimulus from a user of the packaged composite application.
9 . The computer program product of claim 1 wherein the executing instance of the process model represents an event-based version of an underlying initial version of the process model in which the process model is represented as a directed graph in which a plurality of tasks are connected by a plurality of directed edges.
10 . The computer program product of claim 9 , wherein connector objects of the event-based version, including the connector object, represent the plurality of tasks and router objects of the event-based version, including the router object, implement the directed edges.
11 . An apparatus comprising:
means for reading a first task completion event from a memory space using a router object, the first task completion event indicating completion of a first task of an executing instance of a process model; means for writing a first task-enabling event to the memory space using the router object; means for reading the first task-enabling event at a connector object and coordinate performance of a second task of the process model based thereon and using the connector object; and means for writing a second task completion event to the memory space using the connector object and signifying completion of the second task.
12 . The apparatus of claim 11 wherein the executable code, when executed, causes the data processing apparatus to:
read a plurality of task-completion events from the memory space, including the first task completion event; and
evaluate conditions associated with the plurality of task-completion events to determine whether the task-completion events match an input set of the router object that is defined with respect to a path through the instance of the process model.
13 . The apparatus of claim 11 wherein the executable code, when executed, causes the data processing apparatus to:
read the first task completion event from the memory space at the router object and within the instance of the process model; and
write a modified first task-enabling event to the memory space, in response to the reading of the first task completion event, in order to execute the instance of the process model.
14 . The apparatus of claim 11 wherein the instance of the process model includes a plurality of tasks, including the first task and the second task, and wherein each task is associated with a connector object configured to read task-enabling events from the memory space and determine whether any of the task-enabling events enable execution of its corresponding task, and, if so, to thereafter write task completion events to the memory space to thereby trigger execution of a subsequent task within the instance of the process model.
15 . The apparatus of claim 11 wherein the executing instance of the process model represents an event-based version of an underlying initial version of the process model in which the process model is represented as a directed graph in which a plurality of tasks are connected by a plurality of directed edges.
16 . The apparatus of claim 15 , wherein connector objects of the event-based version, including the connector object, represent the plurality of tasks and router objects of the event-based version, including the router object, implement the directed edges.
17 . A method comprising:
reading a first task completion event from a memory space using a router object, the first task completion event indicating completion of a first task of an executing instance of a process model; writing a first task-enabling event to the memory space using the router object; reading the first task-enabling event at a connector object and coordinating performance of a second task of the process model based thereon and using the connector object; and writing a second task completion event to the memory space using the connector object and signifying completion of the second task.
18 . The method of claim 17 wherein the instance of the process model includes a plurality of tasks, including the first task and the second task, and wherein each task is associated with a connector object configured to read task-enabling events from the memory space and determine whether any of the task-enabling events enable execution of its corresponding task, and, if so, to thereafter write task completion events to the memory space to thereby trigger execution of a subsequent task within the instance of the process model.
19 . The method of claim 17 wherein the executing instance of the process model represents an event-based version of an underlying initial version of the process model in which the process model is represented as a directed graph in which a plurality of tasks are connected by a plurality of directed edges.
20 . The method of claim 19 , wherein connector objects of the event-based version, including the connector object, represent the plurality of tasks and router objects of the event-based version, including the router object, implement the directed edges.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.