Pattern 37 (Task Postcondition - Data Value)
FLASH animation of Task Postcondition - Data Value pattern
Description
Data-based postconditions can be specified for tasks based on the value of specific parameters at the time of execution. The postconditions can utilize any data elements available to the task with which they are associated. A task can only proceed if the associated postcondition evaluates positively.
Example
Execute the Fill Rocket task until rocket-volume is 100%.
Motivation
Implementation of this pattern would ensure that a task could not complete until nominated output parameters had a particular data value or are in a specified range.
Implementation
Similar to Task Postcondition - Data Existence pattern (WDP36), two options exist for handling the achievement of specified values for data elements at task completion:
- Delay execution until the required values are achieved.
- Implicitly re-run the task.
Context
There are no specific context conditions associated with this pattern.
Implementation
The implementation metheds for this pattern adopted by the various tools examined are identical to those described for Task Postcondition - Data Existence pattern (WDP36) except for BPMN which does not support value-based postconditions.
Issues
None identified.
Solutions
N/A.
Evaluation Criteria
An offering achieves full support if it has a construct that satisfies the description of the pattern. It rates as partial support if there are limitations on the range of data elements that can be included in postconditions.
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 | +/- | Indirectly achievable via validation functions linked to release form commands |
Websphere MQ Workflow | 3.4 | + | Directly supported by specifying exit condition based on the required parameter value. Where exit condition is not met, task automatically repeats |
FLOWer | 3.0 | + | Modelling elements can have a postcondition. Task will not complete until the postcondition (which should be based on the required parameter value) is met |
COSA | 4.2 | - | Not supported |
XPDL | 1.0 | - | Not supported |
BPEL4WS | 1.1 | - | Not supported |
BPMN | 1.0 | - | Not supported |
UML | 2.0 | + | Directly supported. Both action and activity constructs include local preconditions and postconditions based on logical expressions framed in OCL |
Oracle BPEL | 10.1.2 | - | Not supported |
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 does not fully support this pattern. It only validates the type of the output data items. |
Summary of Evaluation
+ Rating |
+/- Rating |
---|---|
|
|