Restrict task to execute till all the prior paraller tasks complete



I have the below defined flow. In this B, C, D, E are parallel user tasks.Once these user tasks are completed F, G, H service tasks will be executed. After completion of all these tasks(B, C, D, E, F, G, H) need to process UserTask I . Could you please help me in how to handle this scenario.


You should use parallel gateways - both to split the flow and to merge.


What would you use if the number of branches changes depending on the input?


Inclusive gateway would be your best bet.


@schilaka Seems to me you could model a parallel gateway after task A and one before task I so it waits until all tasks in front of I have been completed. This is only works if all the tasks ALWAYS get done. Otherwise you should consider working with variables and an inclusive gateway.

kind regards,



Addition: In case F, G and H can not be executed until all user tasks are complete you should model another parallel gateway before these tasks.

kind regards,