Temporary user tasks while external tasks are running

I’m trying to figure out a way to do this in pure BPMN without any java code (i.e: event messages, etc).

The goal is to start a background external task, and while it’s running, a user task indicates that the ext task is in process. That I can do with a parallel gateway I think. Then when the external task completes, the user task is automatically interrupted/completed/deleted/destroyed/etc. Then the process continues on to other tasks.

I made a few attempts using things like compensations, but wasn’t able to

For what it’s worth, this needs to take place within a parallel multi instance subtask, such that a user might have multiple ext/user tasks at once.

For a contrived example, say it’s a BPM that automates the updating software on multiple servers at once. Several tasks prepare the operation, then split into parallel multi-instance subtasks, and each external task updates the software, while a user task for each says “updating device xyz, please wait,” Once they all complete, the parallel tasks join and go on to monitoring and verification steps.

Hi @fernhaven,

why don’t you want to use boundary interrupting message event on user task? You could do that using terminating end event I assume.

https://docs.camunda.org/manual/7.5/reference/bpmn20/events/terminate-event/

Cheers,
Askar

1 Like

That works. I didn’t think of terminate event. I thought that would terminate the process, not the subprocess. Thanks!