BPMN and XPDL
My previous post about the future of BPMN created quite some noise in the community. It seems there are many people out there having some great ideas how to move forward BPMN. One clear issue to be tackled in BPMN 2.0 is the missing exchange format. Some readers suggest using XPDL for this purpose. Let's take a look at it and see if this is a good idea.
At the current point, BPMN has several problems. One major problem are the unclear execution semantics. SAP's David Frankel provides some more details on the current situation and his post is an interesting read for those seeking more details.
Besides this problem of undefined execution semantics, another major problem is the missing file format to exchange BPMN models between different tools. People like Keith Swenson wonder, why XPDL is not used for this purpose? First, I can assure Keith that we at IDS are pretty aware of XPDL. ARIS supports XPDL since several years, so no need for a rant. Second, I'm torn about this idea. One half of me says it is a great idea and we should do it, because XPDL is already available today and can be used immediately. However, there are also some disadvantages, which must be taken into account as well.
Before we start talking about the disadvantages of using XPDL, I first want to define clearly what we want to achieve. We are looking for a file format to exchange BPMN models. Such a file format must be able to exchange the content of the models (like which activities are connected to which events) and the diagram information (like at which position is an activity located in the diagram). For me this sounds straight-forward.
Therefore, the first problem with XPDL is that the current specification is 216 pages long. Of course not all pages deal with the file format, but relying on such a long specification to exchange a model seems to be overkill for me. This also leads to the second major problem. Why should we create a dependency between 2 standards (BPMN and XPDL)? Such a dependency creates the need for synchronisation between the involved parties. This seems to be no good idea, because BPMN is maintained by OMG and XPDL is maintained by WfMC, both being two organisations with completely different backgrounds. I don't believe that a close cooperation between both organisations will really work out. There are also some other issues. For example, OMG requires that each of its standards is integrated in their overall meta model (i.e. MOF). Therefore, BPMN will have to be integrated there as well. However, this integration already brings a serialisation format (i.e. XMI) for free, so need for an extra format.
So at the current point I'm not convinced that using XPDL is really a solution. It seems to be a quick fix only. As public standards are often used for many years, I don't think we should go for a quick fix, but instead come up with a really good solution.