Stopping Automatic Behavior of Lanes and Pools in VISIO BPMN Template

Michael Preiss 1 Reputation point

According to the BPMN 2.x standard, pools and lanes are two different things; I want Visio to treat them as such. Visio 2019 or 2020 (whatever the current version is) draws no distinction between pools and lanes; they're both Visio containers. If I place a pool on top of a lane, Visio wraps them both in a container that's a pool; it treats both the lane and the pool as lanes. If I drop a lane onto a pool, Visio treats them both as lanes and wraps them in a pool. If I drop a pool on top of a pool, Visio treats them as lanes and wraps them in a pool, even if I specify in the shape data that they're pools. Pools and lanes are the same things to Visio, which is causing me some major difficulties.

I've created my own BPMN 2.x stencil containing slightly modified Visio BPMN master shapes that capture customized shape data. Both my pool shape, which I use to represent business processes, and my lane shape, which I use to represent organizational functions or roles, each capture different data. If pools end up next to lanes within my diagrams the integrity and meaning of my diagrams is destroyed. I cannot keep defining the same shape data for each new pool I create for each diagram.

Microsoft took the lazy way out and made the two shapes functionally equivalent, hence the label "pool/lane" in the BPMN Basic Shapes Stencil. I'm trying to change the default behavior of those shapes and haven't been able to do it. I've looked at the shape sheets and haven't found any entry that would seem to allow me to affect the behavior I want to eliminate. Maybe it's controlled by a method; maybe the behavior occurs so deep within Visio there's nothing I can do about it.

Visio isn't my first choice for a tool to develop BPMN diagrams, but my client is a huge Microsoft customer and this is what I have to work with. I typically use tools specifically designed for creating BPMN diagrams and simulating business processes, like Sparx Systems' Enterprise Architect or iGrafx, but I have no say in this one. Actually, I did, but after performing a security analysis of the site of the vendor whose tool I recommended, my client told me only if the vendor addressed their security shortfalls would it consider purchasing their product.

BTW, I'm not a developer, but I'm trying to understand (to some extent) the Visio object model. Can anyone point me in a direction to look or tell me outright if I can or cannot easily modify the default shape behavior for pools and lanes? Not being a developer, would it be too difficult to create my own versions of a pool and lane without coding? In a perfect world, I'd want to be able to drop lanes inside of pools and not allow pools to be dropped inside of other pools or inside of lanes. I'd also want to be able to subdivide an existing lane with other lanes. In other words, I want to create child lanes of lanes. For instance, if I have a role R and different levels within that role, I'd want to be able to delineate RL1, RL2...RLn by using child lanes to subdivide the higher-level lane named "R".

Is what I want to do basically too difficult for someone that's not a developer?

I appreciate any assistance that's offered. Thanks.

Visio Management
Visio Management
Visio: A family of Microsoft products used to create diagrams and vector graphics.Management: The act or process of organizing, handling, directing or controlling something.
242 questions
0 comments No comments
{count} votes

3 answers

Sort by: Most helpful
  1. Emily Hua-MSFT 27,321 Reputation points

    @Michael Preiss

    > If I place a pool on top of a lane, Visio wraps them both in a container that's a pool; it treats both the lane and the pool as lanes.

    Could you please share us more information of the results achieved in Visio, and the results that you expect?

    According to the 3rd tip on this thread "Working with Pools and Lanes in BPMN drawings", if you drop another Pool / Lane shape directly onto this shape, the two lanes will combine so that there is a pool with two lanes.

    If you want to draw mutiple Pools, please check whether the following screenshot I drew is your needs.

    Any misunderstanding, please let me know.

    If an Answer is helpful, please click "Accept Answer" and upvote it.
    Note: Please follow the steps in our documentation to enable e-mail notifications if you want to receive the related email notification for this thread.

    0 comments No comments

  2. Michael Preiss 1 Reputation point

    @Emily Hua-MSFT , thanks for your reply. However, pools and lanes do not serve the same purpose under BPMN 2.x and Bruce Silver's Method and Style. Visio treats them the same, though. That's a big problem for me.

    I've created custom shapes in my own BPMN stencil, a pool and a lane, each with custom formatting, custom properties, and custom shape data, with the hope of making the pool behave like a pool and the lane behave like a lane. That is, you shouldn't be able to drop a pool inside a pool or a pool inside a lane. Visio, by default, lets you do that because a pool and a lane in Visio are the same things, containers. I should be able to drop a lane inside a lane so I can subdivide it as many times as I want. For example, if I wanted 3 levels of lanes - with the deepest level consisting of multiple lanes - to show how multiple roles within a department within a regional office perform a process, I should be able to do so. I can't in Visio, but I can with enterprise tools that truly support the OMG's BPMN 2.x standard. It seems I can't do much of what I want to do with Visio relative to it's supporting the BPMN standard so I can build process maps that truly conform to the standard and to Bruce Silver's Method and Style.

    I don't want Visio to wrap two lane/pool shapes within a pool. I want to manually create my process maps the way I do in any other tool that really supports the OMG's standard, using the stencil and objects I've created. I've succeeded in preventing two pools from being joined together and encapsulated within a third pool. When Visio encapsulates pool/lane objects, the one that was a pool becomes a lane and the encapsulating pool/lane object becomes a pool - that contains none of the customizations I created in my own objects. That ruins the integrity and meaning of my maps because I've predefined what I want pool and lane objects to be. However, I've also succeeded in preventing lanes from being dropped into pools, too, which is not my intention. I may have to specify explicitly that lane objects can be dropped onto pools and that lane objects can be dropped onto lane objects. More research...

    I need to figure out where that encapsulating behavior is defined so I can turn it off if I'm able. That's the type of help I'm looking for. If I can't do that without programming skills and without being intimately familiar with Visio's object model, I'd like someone to tell me that. The more I explore Visio, the less I think I can get my BPMN stencil's objects to behave the way I want them to behave.

  3. Michael Preiss 1 Reputation point

    @Emily Hua-MSFT , I've tried to join the Visio UserVoice Forum but I keep receiving an invalid authorization token error. Any idea who I can contact about this?