Pattern 12 (Distribution by Offer - Single Resource)

FLASH animation of Distribution by Offer - Single Resource pattern

Description

The ability to distribute a work item to a selected individual resource on a non-binding basis.

Example

The Prepare defense work item is offered to a selected Barrister.

Motivation

This pattern provides a means of distributing a work item to a single resource on a non-binding basis. The resource is informed of the work item being offered by is not committed to executing it and can either ignore the work item or redistribute it to other resources should it choose not to undertake it.

Overview

Offering a work item to a single resource is the process analogy to the act of "asking for consideration" in real life. If the resource decides not to undertake it, the onus is still with the system to find another suitable resource to complete it. Once a task has been enabled that is distributed on this basis, a means of actually informing the selected resource of the pending work item is required. The mechanism chosen, should notify the resource that a work item exists that it may wish to undertake, however it should not commit the resource to its execution and it should not advise any other resources of the potential work item. Typically this is achieved by adding the work item to the work list of the selected user with an offered status although other notification mechanisms are possible. This pattern directly corresponds to the state transition denoted by arc S:offer_s in Figure 4.

Context

There are no specific context conditions associated with this pattern.

Implementation

Of the offerings examined, only iPlanet and Oracle BPEL directly supports the ability to offer a work item to a single resource without the resource being committed to executing the work item. COSA provides a close analogy to this concept in that it allows a resource to reject a work item that has been allocated to it and placed on its work queue. When this occurs, the work item goes through a subsequent reallocation process, ultimately resulting in it being assigned to a different resource.

Issues

None identified.

Solutions

N/A.

Evaluation Criteria

An offering achieves full support it is satisfies the description for the pattern. It achieves a partial support rating if work items cannot be distributed on a non-binding basis but there are facilities for a resource to reject a work item allocated to it.

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 +/- Non-binding offers not supported but allocated work items can by rejected for reallocation
iPlanet 3.1 + Directly supported for offered work items
BPMN 1.0 - Not supported
UML 2.0 - Not supported
Oracle BPEL 10.1.2 + Oracle BPEL PM supports this pattern by offering work item to members of a group. A group containing one user allows this user to "acquire" the offered work item
jBPM 3.1.4 - jBPM does not support this pattern.
OpenWFE 1.7.3 - OpenWFE does not support this pattern.
Enhydra Shark 2 + Enhydra Shark supports distribution to a single resource by supporting mapping of a Participant in the workflow model to an individual User to whom the work items are offered.

Summary of Evaluation

+ Rating

+/- Rating

  1. The workflow engine provides a mechanism to advertise a work item to a specific resource. The resource is not obliged to commit to executing the work item.
  1. The workflow engine indirectly supports the concept by allowing resources to reject work items assigned to them.