We just created a new BPMN Community group to discuss BPMN modeling, BPMN specification, BPMN best practices, etc. Feel free to join!
To kick off the discussion, I like to collect some BPMN best practices. BPMN was designed by a big vendor committee and not by users. This usually leads to a very complex specification containing a lot of things nobody needs. Don't get me wrong here: I don't blame the people involved in specification process, it is just how things are.
Attached is an ARIS Express BPMN 2 model, which I want to extend with your BPMN best practices. Initially, I added one of the biggest problems I have with the specification: I can't remember what an empty gateway means! Every time I see a diagram using empty gateways I have to look up if such a gateway is an exclusive or an inclusive one. So far I haven't found any memory aid.
Actually, I'm not looking for a memory aid at all, because I think it is a big fault in the specification that it got symbols not clearly telling their meaning. Symbols and icons with unclear meaning are not accepted in visual design, so why do we accept it in a public modeling standard? The solution is simple: Don't use an empty gateway icon, but instead use the exclusive icon with the "X" in it. I think everyone can easily remember that the "X" stands for eXclusive and that the plus sign of an inclusive gateway stands for the AND operator.
So what are your BPMN best practices? Please post below and I will add them to the file above so that in the end we get some kind of cheat slip for good BPMN modeling.
Jan Schirmer on
Sebastian;
Your suggested solution is fair enough, but I think this is based on what the model should be used for and what spread of notations are used/communicated within the company. Many processes are modelled to communicate to stakeholders on how the process flows/contain and for the stakeholder (ie. not always that familiar with BPM notations) it's indifferent if there is an "X" in an exclusive gw or not. As an architect I will have to explain the logic anyway. I have used the "blanc" gw since I started with BPMN and have never had any problems with that.
However; I can see that if you use several notations on daily/weekly basis (UML, EPC, BPMN, etc) this can be confusing. But if you are in such a position, you should start thinking about a common BPM language anyway. The BPMN spec describe the exclusive gw as default and to many "Visio" modellers the diamond have the same meaning without the "X".
Weather you should include the X or not should be part of HOW you make use of the standard within your company (ie. define the method & style). We have this described in a SOP (standard operation procedure) for BPM. The point is that one have to agree on how you do this to reach common understanding and always comply.
Kind regard
Jan