Is process modelling easier with S-BPM than with BPMN? Given the very small number of symbols in S-BPM compared to the over 140 symbols in BPMN, the answer seems obvious. On the other hand, there are observations that many process modellers still seem to feel more at ease with the global control-flow perspective of BPMN (with a reduced set of symbols). Why is that?
To understand this issue I suggest considering a second dimension: the degree to which the knowledge about a process is distributed. When all the knowledge needed to model a process is available to 1 person, the global, "end-to-end" process view of BPMN may be more intuitive than the modular perspective of S-BPM where separate process parts are encapsulated in different subjects. However, when the process knowledge is distributed across several people (I'd say more than 2 or 3 process participants), the global view of BPMN quickly becomes very difficult to construct and maintain; to a point where it is no longer manageable. Modelling with S-BPM is more scalable in this respect, with additional knowledge sources leading only to a linear increase in difficulty. ("Difficulty" may be measured in several ways, for example as the subjective perception of individual process participants, as the time needed for process modelling, or as the correctness of the resulting process models.)
This hypothesis is based on two considerations:
- The more participants in the process, the more communication relationships you have to include in the model. BPMN, with its focus on control flow (rather than data flow), is very limited in this respect. Simple instances of communication can appear very complex in BPMN, sometimes requiring the use of "advanced" BPMN constructs (such as the signal event for intra-pool communication). S-BPM, in contrast, provides unique symbols for sending and receiving messages and even has a dedicated diagram for modelling communication relationships.
- The more distributed the process knowledge, the less the individual participant knows about the other participants. This is a problem for BPMN modelling, as one swimlane needs to understand the detailed process in the other swimlane in order to know which activity it needs to interact with (e.g. by sending a message to that activity). In S-BPM, a subject only needs to know the type of message and the name of the subject it interacts with; the internal behaviour of the other subject doesn't need to be known. This separation of concerns enables concurrent modelling by separate process participants, as they can focus on modelling their own behaviour without needing to care about the internal behaviour of the others.
Current training examples and exercises in (BPMN) process modelling typically provide complete textual descriptions of a process. So all the relevant process knowledge is located in one place, and the distribution of knowledge is zero. Most research in the "process of process modelling" is based on the same "zero-distribution" assumption. To fully understand the benefits of S-BPM in terms of ease of modelling, more attention needs to be given to situations when process knowledge is distributed.
What are your thoughts on the "distributed knowledge" hypothesis?