IP Library Granted Patent US 7,657,590
Granted Patent B2
US 7,657,590 · App. 10/055,100 · Granted Feb 2, 2010

Load balancing system and method

Assignee: UBS AG
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,657,590
App. No.
10/055,100
Granted
Feb 2, 2010
Kind
B2
Abstract

A workflow is processed by plurality of activity servers, each of the plurality of activity servers performing at least one of a plurality of activities. In step a, a workflow packet requiring one of the plurality of activities to be executed is retrieved from a workflow queue. In step b, the activity is executed by the one of the plurality of activity servers. In step c, a next activity to be performed is determined based on workflow transition information. In step d, the next activity is executed if the one of the plurality of activity performs the next activity. In step e, the next activity is forwarded to the workflow queue if the one of the plurality of activities does not perform the activity. Steps a-e are repeated until all of the plurality of activities in the workflow are executed.

Claims (59)

1. An automated method for processing a workflow among a plurality of activity servers, the method comprising, at each activity server among the plurality of activity servers, the steps of:

obtaining workflow transition information from a common database, the workflow transition information defining a sequence of a plurality of activities for a workflow;

retrieving a workflow packet from a workflow queue maintained in the common database, the workflow packet corresponding to an activity defined in the sequence of activities for the workflow;

performing the activity corresponding to the retrieved workflow packet;

determining a next activity in the sequence of activities for the workflow from the workflow transition information;

wherein the next activity is capable of being performed by the activity server, performing the next activity without requesting a next workflow packet from the workflow queue; and

wherein the next activity is incapable of being performed by the activity server, forming the next workflow packet corresponding to the next activity and forwarding the next workflow packet to the workflow queue for retrieval by another activity server capable of performing the next activity.

2. The method of claim 1 , wherein said workflow packet includes a process state.

3. The method of claim 1 , wherein at least one of said plurality of activity servers performs more than one of said plurality of activities.

4. The method of claim 1 , wherein at least one of said plurality of activities is an automatic activity.

5. The method of claim 1 , wherein at least one of said plurality of activities is a manual activity for receiving a user input.

6. The method of claim 5 , wherein said manual activity manages a user interface.

7. The method of claim 1 , wherein more than one of said plurality of activities is a manual activity and said more than one of said plurality of activities are aggregated in one of said plurality of activity servers.

8. The method of claim 7 , wherein said one of said plurality of activity servers interfaces with a desktop server for providing a user interface to a user.

9. The method of claim 1 , wherein at least one of said plurality of activities is performed by more than one of said plurality of activity servers.

10. The method of claim 1 , further comprising the steps of:

receiving an event notification requesting that said workflow be processed; and

initiating said workflow in response to the event notification.

11. The method of claim 1 , wherein said workflow transition information includes a routing transition.

12. The method of claim 11 , further comprising the step of:

performing more than one of said plurality of activities and more than one routing transition in a single transaction in one of said plurality of activity servers.

13. The method of claim 1 , wherein said workflow transition information includes a route number, a node number, a routing transition and a next node number.

14. An automated system for processing a workflow comprising:

a plurality of activity servers obtaining workflow transition information from a common database, the workflow transition information defining a sequence of a plurality of activities for a workflow;

each of the plurality of activity servers executing instructions to:

retrieve a workflow packet from a workflow queue maintained in the common database, the workflow packet corresponding to an activity defined in the sequence of activities for the workflow;

perform the activity corresponding to the retrieved workflow packet;

determine a next activity in the sequence of activities for the workflow from the workflow transition information;

wherein the next activity is capable of being performed by the activity server, performing the next activity without requesting a next workflow packet from the workflow queue; and

wherein the next activity is incapable of being performed by the activity server, forming the next workflow packet corresponding to the next activity and forwarding the next workflow packet to the workflow queue for retrieval by another activity server capable of performing the next activity.

15. The system of claim 14 , wherein said workflow packet includes a process state.

16. The system of claim 14 , wherein at least one of said plurality of activity servers performs more than one of said plurality of activities.

17. The system of claim 14 , wherein at least one of said plurality of activities is an automatic activity.

18. The system of claim 14 , wherein at least one of said plurality of activities is a manual activity for receiving an input from a user.

19. The system of claim 18 , wherein said manual activity manages a user interface.

20. The system of claim 14 , wherein more than one of said plurality of activities is a manual activity and said more than one of said plurality of activities are aggregated in one of said plurality of activity servers.

21. The system of claim 20 , wherein said one of said plurality of activity servers interfaces with a desktop server for providing a user interface to a user.

22. The method of claim 14 , wherein at least one of said plurality of activities is performed by more than one of said plurality of activity servers.

23. The system of claim 14 , further comprising an event receiver, said event receiver receiving an event notification for initiating said workflow.

24. The system of claim 14 , wherein said workflow transition information includes a route number, a node number, a routing transition and a next node number.

25. Computer executable program code residing on a computer-readable medium for processing a workflow by a plurality of activity servers, the program code comprising instructions being operable to cause each of the plurality of activity servers to:

obtain workflow transition information from a common database, the workflow transition information defining a sequence of a plurality of activities for a workflow;

retrieve a workflow packet from a workflow queue maintained in the common database, the workflow packet corresponding to an activity defined in the sequence of activities for the workflow;

perform the activity corresponding to the retrieved workflow packet;

determine a next activity in the sequence of activities for the workflow from the workflow transition information;

wherein the next activity is capable of being performed by the activity server, perform the next activity without requesting a next workflow packet from the workflow queue

wherein the next activity is incapable of being performed by the activity server, form the next workflow packet corresponding to the next activity and forward the next workflow packet to the workflow queue for retrieval by another activity server capable of performing the next activity.

26. The program code of claim 25 , wherein said workflow packet includes a process state.

27. The program code of claim 25 , wherein at least one of said plurality of activities is an automatic activity.

28. The program code of claim 25 , wherein at least one of said plurality of activities is a manual activity for receiving a user input.

29. The program code of claim 28 , wherein said manual activity manages a user interface.

30. The program code of claim 25 , wherein more than one of said plurality of activities is a manual activity and said more than one of said plurality of activities are aggregated in one of said plurality of activity servers.

31. The program code of claim 25 , wherein at least one of said plurality of activities is performed by more than one of said plurality of activity servers.

32. The program code of claim 25 , further comprising instructions to:

receive an event notification requesting that said workflow be processed; and initiate said workflow in response to the event notification.

33. The program code of claim 25 , wherein said workflow transition information includes a routing transition.

34. The program code of claim 33 , further comprising instructions to:

perform more than one of said plurality of activities and more than one routing transition in a single transaction in one of said plurality of activity servers.

35. The program code of claim 25 , wherein said workflow transition information includes a route number, a node number, a routing transition and a next node number.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 10, 2017
From: UBS AG
To: UBS BUSINESS SOLUTIONS AG
Reel/Frame 043141/0497 →
CHANGE OF ASSIGNEE ADDRESS Recorded Feb 1, 2007
From: UBS AG
To: UBS AG
Reel/Frame 018836/0025 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 28, 2002
From: READING, JASON ALBERT; MORRIS, DAVID
To: UBS AG
Reel/Frame 012932/0538 →
Continuity (2)
Provisional Application 6026718500 · Feb 7, 2001
Related Publication 20020178037A1 · Nov 28, 2002