Advanced Process and Resource Modelling

19 important questions on Advanced Process and Resource Modelling

Explain the different BPMN gateways. And draw them.

The exclusive gateways (XOR):
- Exclusive decision/XOR-split: you should take one branch
- Simple merge/XOR-join: proceed when one branch has completed

The parallel gateways (AND):
- Parallel split/AND-split: Take all branches
- Parallel join/AND-join: Proceed when all incoming branches have completed

The Inclusive gateways (OR):
- Inclusive decision/OR-split: Take one or several branches depending on conditions
- Inclusive merge/OR-join: Proceeds when all active incoming branches have completed

What is a refactored model?

It is a model which is less detailed (so makes use of subprocesses), in this case you have a hierarchy.

What are the modelling guidelines about the top-level process?

The top-level process should be simple (no or few gateways) and should show the main phases of the process. Each phase becomes then a sub-process.
  • Higher grades + faster learning
  • Never study anything twice
  • 100% sure, 100% understanding
Discover Study Smart

When should we decompose a process model into subprocesses?

When the model becomes too large you should decompose a process model into subprocesses. It becomes too large when it is hard to understand, or there is an increased error probability. A rule of thumb is that you use no more than 30 flow objects (so activities, events, and gateways).

Note: in 7PGM it is 50 elements

What is a shared sub-process? And how do you draw it?

A shared sub-process is a process that can be used in multiple processes. You use a thicker line (than just for a normal sub-process), this is called a "call" activity.

How do you model repetition (in workflow nets and BPMN)?

In workflow nets you use an arbitraty cycle to model repetition.
In BPMN you use an arrow in a circle to model repetition. Also called an "Activity loop". You repeat until the repsonse is approved. 
The difference is that the "activity loop" is structured, while the arbitrary cycles can be unstructured.

What is a multi-instance activity and how do you model it?

A multi-instance activity is a mechanism to indicate that an activity is executed multiple times concurrently.
You can model it in BPMN with three thick vertical lines.
This is very useful when you need the same activity to be executed for multiple entities or data items.

Note: You can attach a note to the activity to say how often it needs to be done.

What is an ad-hoc sub-process?

An ad-hoc sub-process contains activities (tasks or sub-processes) that need to be executed in an arbitraty order and time. These activities can (or not) occur in any sequence and eventually with repetition. You denote this with a tilde marker '~'.

Note: this can be used for example in a very early version of a process diagram when the order of execution is still unknown.

What is the difference between catching and throwing events?

Catching is receiving something (a message for example) and throwing is sending something.

In what case would you use a message event?

Only when the corresponding activity would simply send or receive a message and do nothing else.

What is an event-based decision and what is the difference with a data-driven decision? Draw an event-driven XOR split.

In a data-driven decision (pictured with a XOR-gateway) a branch is 'chosen' based on conditions that evaluate over available data.
In a event-based decision, the choise is delayed until an event happens. So the choice is based on a "race among events".

What are boundary events and how do you draw them?

A boundary event is an event that may occur and needs some action, during a sub-process execution. These events are placed on the boundaries of the sub-process.
There exist interrupting boundary and non-interrupting boundary events. A non-interrupting boundary event triggers a task or sub-process in parallel to the normal flow, so it does not interrupt the normal flow.
You draw these events with a double dashed border.

What is an event sub-process?

An event sub-process is a process attached to a parent process, that is triggered when an event happens.
This is an alternative to putting a boundary non-interrupting event around the parent process.

You draw this as a loose subprocess (content is visible, and rectangle is dotted) in the main process. It does need a start event and an end event.

What is a terminate event? Also draw it.

A terminate event is a form or an exception.
A terminate end event forces the whole process to abort (it also "wipes off" all tokens left behind), it only aborts the (sub-)process it is in.
This is the simplest form of exception, it notifies that there is an exception (negative outcome).

You can also handle exceptions with boundary events. Explain and mention the three different types.

Handling exceptions is stopping an activity or sub-process and performing a special activity.
The different types are:
- Timeout: an activity takes too long and must be interrupted. Use timer event on boundary.
- External: something goes wrong outside the process, and the execution of the current activity must be interrupted. Use message event.
- Internal: something goes wrong inside an activity, whose execution must thus be interrupted. Use Error event.  

The events have a double border.

Mention the two different error events and draw them.

- End error event: stopts the enclosing sub-process execution.
- Intermediate error event: attached to the enclosing sub-process, this is where the process execution will continue after the error.

Explain the compensation handling event and draw it.

The compensation handling event rolls back the completed process acitvities.
You trigger it by throwing an compensate event.
The compensation handler (which is triggered by a catching compensate event) performs the rollback.

Note: this may be used as part of an exception handling procedure
Note: only one compensate acitivity must be linked from a catching compensate event, via a directed association (so only one activity/sub-process can be compensated by one catching event)

What is the difference between a resource and a resource class?

A resource is a human actor or equipment that is required to perform an activity.
A resource class is a set of resources with shared characteristics. This could be a role (skill, competence, classification) (classification is based on what a resource can do or is expected to do) or a group (department, team, office, organizational unit) (the classification is based upon the organization's structure).

What is the difference between lanes and pools?

A pool is an independent organizational entity.
A lane represents resource classes in the same organizational space and sharing common systems.

The question on the page originate from the summary of the following study material:

  • A unique study and practice tool
  • Never study anything twice again
  • Get the grades you hope for
  • 100% sure, 100% understanding
Remember faster, study better. Scientifically proven.
Trustpilot Logo