Time Pattern TP2: Durations

Durations constitute one of the most frequently used temporal constraints in PAISs. They are often required to ensure compliance of processes with global rules and regulations, to guarantee adherence to external benchmarks (e.g., policies, service level agreements), or to limit resource usage.

Time Pattern TP2: Durations
Also known as
-
Problem
A particular activity, activity set, process, or set of process instances has to obey a certain duration restriction.
Durations result from both waiting (i.e., activity is suspended) and processing times during activity execution. However, a duration does not cover the time span the activity (activity set, process or process instance) is offered in user worklists but has not been started by any user yet (i.e., the time span between activation and start of the activity).
Design Choices
CDurations can be applied to different process granularities
 aSingle activity (including multi-instance activities)
 bActivity set
 cProcess model
 dSet of process instances
DThere are three kinds of restrictions
 aMinimum value
 bMaximum value
 cTime interval [min … max]
Solution
A time constraint is introduced between the start and end events of an activity (the same applies to activity sets, processes and process instances).
DurationsActivity Set Duration
Timers can be used to enable run-time support for durations. For minimum (maximum) durations the respective activity must not complete before (after) the timer has expired, otherwise appropriate exception handling needs to be initiated. For time intervals, the end event has to occur within the time interval boundaries.
Context
The mechanism evaluating the constraint (i.e., starting the timer) needs to be able to access the value of the duration before starting the activity (activity set, process or process instance).
Examples
  • The assembly of a new engine must not takelonger than 30 minutes (task work) (Design Choices C[b] D[b])
  • Depending on its severity and the patient’s state, ovarian cancer surgeries take 1 to 10 hours (Design Choices C[a] D[c]).
  • Maintenance issues need to be resolved within 1hr (Design Choices C[c] D[b])
  • Processing 100 requests must not take longer than 1 second (Design Choices C[d] D[b])
Related Patterns

Animation

Product Evaluation

We differentiate between supported, partially supported, not supported, and not specified.
If an evaluation object provides support for the particular pattern the supported design choices are listed. If the pattern is only partially supported (e.g., by a work-around) this is indicated by the additional label "*" and if support is not specified this is indicated by the label "?". Missing support is labeled with "-".

Product/Language Version Score Motivation
Microsoft Outlook 2010 C[a], D[b] partially supported for single activities
Sunbird 1.0 C[a], D[b] partially supported for single activities
Google Calendar 12.2011 C[a], D[b] partially supported for single activities
Microsoft Project 2010 C[a,c], D[b] partially supported
BPMN 2.0 C[a,c*], D[b] partially supported
IBM Websphere Integration Developer 6.1 C[a,c], D[b] partially supported
WebSphere Lombardi Edition 7.1 C[a,c], D[b] partially supported
AristaFlow 1.0.1 C[a], D[b] partially supported
Intalio 6.0.3 C[a*,c*], D[b] partially supported using scheduled action
TIBCO Business Studio 3.4.2 C[a,c*], D[b] partially supported
Bettini et al.   C[a,c], D[a,b,c] supported for activities and processes but not for complex constructs
Combi et al.   C[a,c], D[a,b,c] mostly supported
Eder et al.   C[a,c], D[b] partially supported
Marjanovic et al.   C[a,c], D[a,b,c] mainly supported
Zhuge et al.   C[a], D[a,b,c] partially supported