Versions Compared


  • This line was added.
  • This line was removed.
  • Formatting was changed.


Before modifying our process, there are 2 general concepts that you should be familiar with when dealing with routes. Given that routes are generally used to affect flow and insert logic and rules into your process, there are 3 types of common constructs for routes. They are:


Decisions are used when you want to insert a point in your process where the flow will be determined by a set of rules. For instance, in our Leave Application process, once a requestor submits a leave request, a review by the supervisor will be required. You will see in the figure below that the transition from the requestor to a supervisor happens in a straight line, which tells us that whenever a requestor submits a request, that request will always go to the supervisor and there are no other circumstances or conditions in which that will not be true.


Note that effectively, the process remains unaltered. If the value of approval is "accept" it will route to the HOD. Any other value and the email will be sent.


A fork is used when your process needs to split ways concurrently, meaning that your process will be travelling along 2 separate paths (hence, "fork"). For instance, in our given example, once the requestor submits his leave application, a notification is sent to both his supervisor and HOD at the same time. If that is the case, we'll need to add a route, set the split type to "and" and our process will look like:


NOTE: If done correctly, a plus sign (+) will appear inside the route.


Joins usually occur when you have separate paths (usually caused by previous forks) in your process that you intend to merge. In our Leave Application process, once the requestor submits his leave application, both the supervisor and HOD are notified. Once they respond, the application ends up at the back office desk for further processing.