Rearrange BPMN Flow Elements


Hi GUys,
it is possible that you can drag flow elemets on a sequence flow and the element will be inserted at this place. And it is really nice that this works also with already connected flow elements. What if you close the previous path the same way, as you would have removed the element? This simple change in behavior would be very appreciated to rearrange processes, because in the process discovery you often rearrange and swap events, or activities.
If you fave done it unadvertendly, you can simply move the element back. Should work with any type of activities as wellas with intermediate events.

Thanks a lot. Alex


Sounds like an interesting idea. I’d be worried though that it is too much magic for the users.

Essentially what we’d need to do is provide a modifier key that allows tasks to freely be moved around, detaching them from their current position (with incoming and outgoing edges and attaching them, wherever they got dropped.

Just looking into a little bit more complicated example you can see how complicated that will get, very soon (imagine the choose recipe task being detached, what will be the result?):


We focus a lot on building things that help users getting done work faster. On the other hand, we try to not implement magic, too. There should never be surprises when performing actual modeling operations.


you drag a flow element right on a sequence flow, and the sequence flow shows dotted borders to sybolise that it will accept the element and connects the new element.See the first 2 steps in my yesterday picture This happens right now
and this is not magic. What is the big difference to let the previous connections fall, only in the case that new connections have been etablished?

On the other hand, i have nothing against a special key to move connected flow elements on a different place. The modeler is really perfect in modelling from the scratch, and I love it to use on process discovery. Nevertheless, it is painful to swap/rearrange flow elements, and I would appreciate a solution like described. With or without any special key.

The situation you mentioned in your picture can be resolved similar to the deleting process: If you delete a flow element with an input and an output, situation is definite, so that you can join the previous flows together. With gateways you can decide to join the first incoming and outgoing flows in the XML If there are default paths, you could prefer them. For me this is not magic, just because you deal in a similar way in other situations.

And if the user has moved it unintentionally, she can always press ^Z.

But please realize that change