Reputation: 2669
I have a doubt about BPMN. Should I specify an abvious task that will lead to a gateway or the gateway alone will do? Suppose I have a client that can change a product if he/she bought it within the last 7 days. I will provide a picture. Which one is correct?
Upvotes: 3
Views: 97
Reputation: 1149
Like @Ister, I agree that both are syntactically BPMN-conform and that the second diagramme's simplicity might be desirable in some situations. However, you should ask yourself if they are semantically identical.
Unlike an activity, a gateway does not represent work. In your first diagramme, the task Check when it was bought
tells me that an actor (maybe the online shop, maybe the shop assistant) is carrying some amount of work to carry out this evaluation. This work might take seconds, minutes, hours, weeks...Once that work is carried out, we move on to Task
or Task2
.
However, in your second diagramme, there is no work carried out between the decision of the customer to return the product and Task3
or Task4
. The transition between the customer's decision and one of the two tasks is instantaneous. If the subsequent tasks were carried out by another actor, I would not know how he/she/it would know which sequence to follow.
In short, I suggest you should leave the Check when it was bought
task out if there is no work involved in deciding the control flow sequence or if it is irrelevant to your audience.
Upvotes: 0
Reputation: 6318
The simple answer is: it depends.
Both representations are correct, just used in different contexts.
When presenting the process on project meetings, the second representation will be sufficient to convey the message. The additional simple step will only clutter the picture.
When building the solution in some workflow engine, it might depend on the engine itself. It might be necessary to add this additional step, to be able to perform the calculation.
Upvotes: 2