Pattern 27 (Delegation)

FLASH animation of Delegation pattern

Description

The ability for a resource to allocate an unstarted work item previously allocated to it (but not yet commenced) to another resource.

Example

Before going on leave, the Chief Accountant passed all of their outstanding work items onto the Assistant Accountant.

Motivation

Delegation provides a resource with a means of re-routing work items that it is unable to execute. This may be because the resource is going to unavailable (e.g. on vacation) or because they do not wish to take on any more work.

Overview

Delegation is usually initiated by a resource via their work list handler. It removes a work item that is allocated to them (but not yet commenced) and inserts it into the work list of another nominated resource. It is illustrated by the R:delegate transition in Figure 6.

Context

There are no specific context conditions associated with this pattern.

Implementation

Generally the ability to delegate work items is included in the client work list handler for a PAIS. Staffware, WebSphere MQ, COSA and Oracle BPEL all provide the ability to manually redirect queued work items to a nominated resource. COSA supports an enhanced notion of delegation in that it redirects all work items corresponding to a specific task definition to a specified resource.

Issues

One consideration associated with Delegation is what happens where a work item is delegated to a user who is not authorised to execute it.

Solutions

This scenario is only a problem for offerings that support distinct task routing and authorization mechanisms. Both Staffware and WebSphere MQ allow a resource to execute any work item that is routed to them. However COSA provides an authorisation framework for work items that operates alongside the distribution mechanism. In COSA, a work item could be distributed to a resource that does not have authorisation rights for it. Where this occurs, the resource can view the work item in their work list but cannot execute it. The only resolution is for them to delegate the work item to another resource that does have the required authorisation rights, or else acquire those rights themselves.

Evaluation Criteria

An offering achieves full support if it satisfies the description for the pattern.

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 + Directly supported through task forwarding
Websphere MQ Workflow 3.4 + Work items can be manually redirected by resources
FLOWer 3.0 - Not supported
COSA 4 + Resources can manually reroute work items from their work queues
iPlanet 3.1 - Not supported
BPMN 1.0 - Not supported
UML 2.0 - Not supported
Oracle BPEL 10.1.2 + Oracle BPEL PM supports this pattern directly by means of "reassign" action. As such, a manager can delegate a task to reportees. Similarly, the process owner or a user with BPMWorkflowReassign privileges can delegate a specific task to any other person in the organisation.
jBPM 3.1.4 - jBPM does not support this pattern.
OpenWFE 1.7.3 - OpenWFE does not support this pattern. The commando "delegate" which is available when a work item is started implements the behaviour of the Reallocation pattern, as the task must have been started before the "delegate" menu becomes available.
Enhydra Shark 2 - Enhydra Shark does not support this pattern.

Summary of Evaluation

+ Rating

+/- Rating

  1. Resources can redirect a work item allocated to them (but not initiated) to another resource either manually or automatically.
  1. N/A