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

  1. Facilities exist (either in the process model or at run-time) to nominate that a work item should be allocated to the resource with the shortest work queue from the group of resources that meets the selection criteria for potential assignment.
  1. N/A