Stopping Automatic Behavior of Lanes and Pools in VISIO BPMN Template
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".