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 |
---|---|
|
|