Question about splitting a BPMN scheme

Hello all :slight_smile:

It’s my third question in this forum and I’m very satisfied about this platform.
My question is: I have a BPMN process scheme, but I want to split this scheme. I made an example (figure 1):

Is this a correct way to split the scheme?

Thanks! :slight_smile:

Hi,
That looks like one way to do it. Heres another;

Do as you have done and break your process into the two subprocess fragments (A & B) with just plain start and end events, ie no message events. Then use a 3rd top level process and use call activities to first call subprocess A, then call subprocess B.

The advantage of this approach is yet a top level, end to end overview of where the process is at.

In summary, there may be quite a few ways to decompose and assemble a process. Which way you choose may depend on other requirements such as end-to-end considerations…

regards

Rob

1 Like

Hi Rob,

Thank you for your reaction. It’s very helpful. But I don’t really understand this line:

“Then use a 3rd top level process and use call activities to first call subprocess A, then call subprocess B.”

Could you please explain it to me?

Hi,

Here’s a brief example - you can use Call Activities to orchestrate across sub-processes.

regards

Rob

1 Like

Hi Rob,

Thanks for your fast response!
I have two more questions… I promise these are my last questions … :slight_smile:

Do I need to use more lanes for the call activities (because there are two different actors)? So could you tell me which picture is better, the first or second one? Also, I am wondering if I need to give the subprocesses a name and do I write the name in the call activity.

For example, should I change the name in the call activity from “subprocess A” to subprocess “play football” ?

Hi,

Lanes don’t really have any meaning as far as execution is concerned. They are really just a visual construct. General practice has been to use them to visually indicate who the actor is, but its just a visual representation rather than a runtime enforced policy…

You are free to use any task name you wish. The name is presented as a visual artefact, however in the runtime configuration, you will need to explicitely reference the processes. This is done in the properties panel.

regards

Rob

1 Like

Thanks! :slight_smile: