Skip to content

Decision

A Decision is a branch point: a diamond-shaped step whose job is to send each entity down one of several paths. It is created with no processing time and with a capacity high enough that it never restricts flow, so entities pass straight through and split according to the rules on its outgoing connectors.

Entity 1 feeding Activity 1 and then Activity 2 along connectors labelled 100%, into Decision 1 drawn as a blue diamond that splits two ways at 50%, right to Activity 4 and down to Activity 3, with the shape palette and its diamond icon down the left edge of the canvas

There are four ways to add one, and they all produce the same thing with the same starting settings:

  • Drag the Decision shape from the palette down the left side of the canvas onto the workspace.
  • Hover over a node and click one of the round + buttons on its sides, then choose Decision. The new Decision arrives already connected to that node.
  • Drag from one of those + buttons and release on empty canvas, then choose Decision from the menu that opens.
  • Right-click an empty part of the canvas and choose Add Decision.

Each one is named Decision 1, Decision 2, and so on as you add them.

The diamond is a shape, not a separate kind of element. What you get is an ordinary activity drawn as a diamond, which has two consequences worth knowing:

  • It carries the same property tabs as any activity. Name, capacity, processing time, logic, cost and shift are all where you would find them on a normal step.
  • It appears in the Output Report as an activity, listed under its own name. There is no separate section for decisions, so look for Decision 1 among the activities.

A new Decision is set up to stay out of the way of the flow.

The General tab of a Decision, showing the settings it is created with

Processing Time is zero, so an entity spends no time at the branch. Capacity decides how many entities can be at the Decision at once, and a new Decision is created with it set so high that it is effectively unlimited: however many entities reach the branch together, none of them waits for room at the diamond. Input Q. and Output Q. are both zero, since a step that takes no time has nothing to queue.

Leave the capacity as it is unless you want the branch point itself to restrict flow. Set it to 1 and the Decision holds every entity but one, which turns an instant branch into a bottleneck. If that is genuinely what you are modeling, lower the capacity to the number that can be at the branch at once, and give the Decision a processing time to match.

A Decision does not carry the branching rules itself; you set them on its outgoing connectors, exactly as on any step. Draw a connector to each destination, then choose how entities divide:

  • By percentage to send a share down each path.
  • By condition to route on a rule, such as an attribute value, with the first matching path winning.

Any of the routing types work here. The diamond simply marks the spot on the diagram where the flow splits.

Reach for a Decision when you want the branch point to read clearly on the diagram. Functionally it is the same as adding percentage or conditional routes to a normal activity’s outputs, but the diamond keeps a busy model easy to follow. If you need the branch to take time or hold a resource, give the Decision a processing time like any other activity.