South East Training - Business Process Modelling Toolkit

The Business Process Modelling Toolkit is owned by South East Training.

You may use this resource for free on the condition that you include this statement on each page.

Copyright South East Training 2011 Available for free from: www.businessprocessmodelling.co.uk

Intermediate and Boundary Events 

Back  Next

Intermediate Events

  • So far we have seen the use of start and end events to define the boundaries of processes and sub-processes.  Start events act as triggers to initiate sequence flow while end events define the end state of a path.
  • BPMN, however, also includes a variety of intermediate events that can be used in sequence flow or attached to the boundaries of activities or sub-processes.
  • The diagram below shows two versions of the message intermediate event, one catching (similar to the message start event) and one throwing (similar to the message end event). 
  • The other is a timer intermediate event.  The timer intermediate event represents a delay in the flow.  It is often used in event gateways where it initiates an exception path after a given period if the normal flow is delayed waiting for a different event to occur, e.g. the receipt of a message.

Boundary Events

  • A common use of intermediate events is to channel flow onto the exception path from the boundary of an activity or sub-process.  We have seen the use of the boundary error event and the cancel event when we looked at transactional sub-processes. 
  • Two additional boundary events are shown: the boundary message event that is listening for a signal from within the sub-process and the boundary timer event that will channel flow along the exception path if the sub-process does not complete within a given period of time. 
  • In this diagram they are shown as interrupting boundary events, meaning the sub-process will be interrupted if the boundary event receives a signal.
  • BPMN also offers designers the use of non-interrupting boundary events that allow the sub-process to complete normally but initiate a parallel exception path. A typical use of this facility would be inform a supervisor or customer that a process was running late.  You would not want to interrupt the process but you would need to let others know what was happening.
 

Intermediate Events - Examples

  • The first of the three examples shows the use of the interrupting message boundary event. 
    • Here the process of preparing an order for shipment would be cancelled immediately if the customer choses to cancel the order while the sub-process was active. 
    • An alternative would be to use a transactional sub-process with a cancel event at the boundary.  Resetting the transaction would mean putting goods for shipment back into the stock.
    • If the customer, however, simply wanted to amend the delivery address, you would use a non-interrupting message boundary event that would allow the sub-process to complete normally while updating the delivery details
  • The second examples shows an interrupting timer boundary event. 
    • Here, the HR receives a request for some training.  The first option is to explore their internal capacity to meet this need.  If they cannot do so within a week (one of their KPIs perhaps), they need to look elsewhere and commission an external trainer.
  • The third example shows the use of a the intermediate timer event to produce a delay. 
    • Here, HR is receiving nominations for a training event that is yet to be scheduled.  The event can run with four or more.  If the total number of nominations received is fewer than four, the exception path is followed.  However, HR does not want to be checking the nominations on a continuous basis, so the intermediate timer event introduces a delay of a week before the number of nominations is reassessed.
 

Back  Next