Question

This question might seem too broad, but I really need help with this.

I am required to choose a standard or notation to model an integration between two business processes, one of which is external.

I'm thinking of UML Activity Diagram or BPMN. But are there any other standards or notations than could compete with these? If there are, which would be their objective pros and cons in view of my goal (including the two mentioned)?

Thanks in advance.

Was it helpful?

Solution

If your role is to choose a standard, choose a standard and don't look for exotic approaches.

BPMN and process modeling

BPMN is an OMG standard since 2006 and the international standard ISO/IEC 19510 since 2013. It's recognized worldwide, is simple to learn, well supported by many tools and is dominant on the process modeling market.

There is no alternative worthwile to consider. In fact, BPMN is the survivor in a long competition among methods. A small summary:

  • Earlier popular methods used some kind of flow chart variants, or used IT system analysis notations such as for example SADT (also known as IDEF0) to represent business processes. But these methods were not accurate enough for representing synchronized concurrent flows of activities (flow chart is good for sequences, IDEF0 is good for function flows but no time dependent flows).
  • In the 80's, with the hype for business process engineering, and the advent of large ERP projects that depended on successful business process analysis, the EPC method emerged. Its most known instantiation was ARIS, the company created by the inventor of this notation which was very popular in the SAP context. The principle is to decompose a process into event driven process chain, that is a sequence of elementary business events and activities, events being input and output to glue activities. The resulting process chains could be combined to form a deep web of business activities. This method was impressively accurate and formal. Unfortunately, its models are very difficult to understand for business people and had poor acceptance oustide the experts communicty.
  • BPMN was the next big thing. it was created 2004 by a consortium of software companies active in the field of process modeling and process management. For gaining better market presence, the consortium merged with the OMG group, which had a proven success track in the domain of standard development. BPMN was then fine tuned and aligned with BPEL (so to enable automated rule driven process automation).

It is now the dominant standard on this market.

UML and system analysis and design

UML is an OMG standard since 2000 and the international ISO standard 19505 since 2012.

UML also emerged from a long history of object oriented modeling methods, and is the clear survivor of many many methods. Begin of the 90's, there were three leading methods in the OO environment:

  • Objectory, a sweedisch method developped by Ivar Jacobson in 1991. It's idea was to start with a use case to represent the system in its environment, and then to continue the analysis to design classes and behavior.
  • OMT, a method developed by James Rumbaugh in 1991, which focused very much on modelling classes and their dynamic.
  • Booch, a method developped by Grady Booch. His focus was on the interactions between the classes. So he used some models with small clouds to represent the classes, and had some original notations for the modeling the interactions between the classes, such as the sequence diagrams. Booch, as Jacobson, had also some ideas on the methodolodgy as well.

Long story short, the 3 guys ended in the same company, Rational and worked together to merge their methods, taking the best aspects of each, which gave birth to UML. In the same time, they also worked on a sofware lifecycle, which resulted in the RUP method.

Outside the OO development, you still have a strong Entity-Relationship or Entity-Relationship-Attribute model. But this is limited to the design of static data structures in an RDBMS context. It's not an alternative to UML which is much broader and complete.

You also have some older methods, like Yourdon&Demarco, or Gane&Sarson which are nice for data flow analysis, but which lack the data modeling capability, as well as the possibility to model a complex set of interactions.

So no doubt. There's no real alternative as complete as UML. UML kept the best of different methods and survived so long because it's extremely powerful in terms of representation.

(BPMN and UML) or (BPMN or UML) ?

There are people who have demonstrated that it's possible to represent simple BPMN models with UML activity diagrams and vice versa, but with some loss of information. So, one could be tempted to keep only UML.

However, the goal and the perspective is not the same. UML is more appropriate to model the internals of a system, and BPMN is better equipped to represent in an understandable way a complex set of interactions across several systems.

So BPMN and UML. For your specific integration issue, you could consider a BPMN collaboration diagram.

Licensed under: CC-BY-SA with attribution
scroll top