Best-Practice, if you want to do some actions after each User-Task?


what is the Best-Practice, if you want to execute some actions after each User-Task.

Currently I habe two options in Mind:

  1. Have a Listener
  2. Place a Service-Task after each user-task.


Hi Sven,

The principles I apply are;

If the action is part of the intrinsic business process, and thus understood and acknowledged by the business process owner, then use an explicit BPMN construct, eg service task. For example if the user task was approve customer and the next action was send welcome pack, use a service task rather than listener.

If the action is a technology or implementation driven requirement and thus not part of the core business process, use a listener. For example additional logging for audit trail or similar is probably best realised as a listener…

I don’t know if this is best practice, but it works for me!



Thx for the hint, my thinking also goes into this way.

I have to do some business calculation after each user-Task, in order to update the data so it is refelecting the current status.
So you can say: it is part of the business process and therefore it should be part of the process…

I also think about a second timer base process.
But when I think about the solution I do not like it, because the process will start running even though there is no change.

An other solution can be to send a message from a listener attached to the User-Task to start an updating process.
In this way you would have a process which is reflecting what is going on and this will keep the original process more clean.