A decision point is also known as an if/then/else construct. It is a place in a workflow where he flow of control branches, where the process follows only one of the two branches.

Optional tasks (ifthen)

The simplest kind of decision point is an optional task. When an assignee of a task finds that the task is optional, s/he may either complete the task or skip it. If a list task is optional, then skipping the task also completely disables all of its sub-tasks.

An if/then or unless/then decision is an optional task with an associated condition. An optional task is a decision point in which one route runs through the optional task and the other bypasses it. Only one of the branches can be followed.


In the following example, tasks 1 and 3 are required, but task 2 may be skipped. Skipping task 2 causes 2.1, 2.2, and 2.2's subtasks to be disabled.

1. Open a "trouble ticket"
2. [OPTIONAL] If priority customer: review with Account Executive
1. Do this first
2. Then do that
* Do this
* And that
3. Contact the customer

As long as the task remains skipped, its subtasks will remain disabled and cannot be performed. TeamworkIQ also hides the skipped tasks, so our example would look like this:

1. Open a "trouble ticket"
2. [SKIPPED] If priority customer: Review with Field Support team
3. Contact the customer

Reopening skipped tasks

A skipped task may be reopened, just as a completed task may be reopened.

A disabled task cannot be reopened. The only way to reenable the disabled descendants of a skipped task is to reopen the skipped task.


In process metrics, disabled tasks are treated as though they do not exist. So in our example, if task 1 was completed, task 2 was skipped and task 3 is in progress, then the process is 66% complete (2 out of 3 tasks done). If task 2 is reopened,

In contrast, before task 2 was skipped in the example, the process was 20% complete; of the 5 actionable tasks (1, 2,1, 2,2,A, 2.2.B, 3), only task 1 was done.


Sometimes, you want an if/then/else behavior that directs the process down one of two possible branches. The process follows one branch, while the other is disabled.

The simplest way to add if/then/else behavior is to add a pair of optional tasks. The first represents the if/then branch, while the second represents the otherwise/do branch.

Chains of decision points

You may need a series of decision points like this:

1. If customer is GOLD customer
1. Do this
2. Otherwise, if customer is red-flagged:
1. Do this instead
3. Otherwise:
1. Do this thing

or perhaps

* If customer is GOLD customer
1. Do this
* If customer is SILVER customer
1. Do this instead
* If customer is BRONZE customer
1. Do this thing
* Otherwise
1. Do this

Using skippable tasks with associated conditions (such as "If customer is GOLD customer"), you can create either one of these patterns.

Related Topics:

Did this answer your question?