Pattern 17 (Shortest Queue)
FLASH animation of Shortest Queue pattern
Description
The ability to allocate a work item to a selected resource chosen from a group of eligible resources on the basis of having the shortest work queue.
Example
The Heart Bypass Procedure is allocated to the Surgeon who has the least number of operations allocated to them.
Motivation
Shortest Queue provides a means of allocating work items to resources such that the chosen resource should be able to undertake the work item as soon as possible.
Overview
Shortest Queue distribution provides a means of allocating work items to resources with the intention of expediting the throughput of a process instance by ensuring that work items are allocated to the resource that is able to undertake them in the shortest possible timeframe. Typically the shortest timeframe means the resource with the shortest work queue although other interpretations are possible.
Context
There are no specific context conditions associated with this pattern.
Implementation
In order to implement this distribution method, offerings need to maintain information on the work items currently allocated to resources and make this information available to the work item distribution algorithm. Of the offerings examined, COSA provides the fewwork() function which allows this pattern to be directly realised. iPlanet and Oracle BPEL provide facilities for programmatically extending the work item distribution algorithm and enabling this to be achieved indirectly.
Issues
None identified.
Solutions
N/A.
Evaluation Criteria
An offering achieves full support if it satisfies the description for the pattern. It achieves a partial support rating if the same effect can be achieved through programmatic extensions.
Product Evaluation
To achieve a + rating (direct support) or a +/- rating (partial support) the product should satisfy the corresponding evaluation criterion of the pattern. Otherwise a - rating (no support) is assigned.
Product/Language |
Version |
Score |
Motivation |
---|---|---|---|
Staffware | 9 | - | Not supported |
Websphere MQ Workflow | 3.4 | - | Not supported |
FLOWer | 3.0 | - | Not supported |
COSA | 4 | + | Supported via a customised distribution algorithm based on the fewwork function |
iPlanet | 3.1 | +/- | Indirectly achievable via customised (external) distribution algorithm |
BPMN | 1.0 | - | Not supported |
UML | 2.0 | - | Not supported |
Oracle BPEL | 10.1.2 | +/- | Oracle BPEL PM offers no direct support for this pattern. However, the feature of assigning a work item dynamically can be used to support this pattern. For example, a service can be implemented to retrieve resource based on the shortest queue algorithm |
jBPM | 3.1.4 | - | jBPM does not support this pattern. The pattern is only relevant when a system selects a resource from a number of possible candidates which does not occur in jBPM. |
OpenWFE | 1.7.3 | - | OpenWFE does not support this pattern. The pattern is only relevant when a system selects a resource from a number of possible candidates which does not occur in OpenWFE. |
Enhydra Shark | 2 | - | Enhydra Shark does not support this pattern. It only supports offering and not allocation of work items. |
Summary of Evaluation
+ Rating |
+/- Rating |
---|---|
|
|