I am teaching the EPC model method and of course I tell my students, that in the EPC trivial events can be omitted. But until now I always insisted in telling that events should in any case be used before a connector. Checking out the delivered patterns in ARIS Express, I found that in all patterns, events are rarely used. Even in the pattern for the parallel process, there is no event before joining the two parallel paths. Here this can be argumented, but what is your position on this topic?
Should we as well omit the events when we have an exclusive OR connector? What about merging two exclusive paths via an exclusive OR? If we omit the events, we need somthing like in BPMN in order to be able to make clear to our audience which path is taken. But then, we can as well use BPMN instead of EPC :-)
I would be pleased to get your opinion.
Ivo Velitchkov on
Great topic, Klaus!
Well, start and end events are needed for sure for many reasons. For those intermediate that follow or precede rules, I have mixed feelings. From one side, from pure business point of view, they do not add much value and could be removed. The information about the special state/condition triggering and ending activities (I hope the term 'function' will be changed in ARIS pro soon) is very important but it should be an attribute of the connector. A good practice is probability attribute for simulation. The actual "change of state" represented by an event could be expresses in a value of some connector attribute.
From the other side, the good thing about EPC is that it's really a good "common language". So the IT capabilities are of equal importance. Although that it lacks the rigour of BPMN for describing the control flow, EPCs have many qualities as technical notation as well. Just compared with UML for example, one EPC can contain more or less the same information as activity, state chart and use case diagram together but in a single model and readable by the business and with much less number of objects. Events play an important role here in showing all states one business object might take and in what sequence. The other is representing pre- and post-conditions.
Yet another "pro" is their role when using assignmnets to link processes horizontally or different levels of details. May be there are better ways to solve this but I really find the "event" approach quite useful. Well, now it's a little bit inconvenient that a straight flow modeld at one point without events which are really not necessary, should be changed, and events added before and after an activity that should be detailed in a new EPC at a later stage.
Regarding usage of BPMN instead of EPC, have you read this discussion?
Ivo