WfMC announced last week the BPMN Model Portability Validation test. This is a test that certifies that a BPM diagram, of a specified complexity, can be accurately exchanged between tools that have passed the test.
The test starts with a diagram that incorporates all the required BPMN elements. That diagram is written out as XPDL, and the resulting file is checked to make sure it is well formed XML, validated according to the XML Schema, run through a program that performs a consistency check for referential integrity, and finally loaded into an independent visualization tool to make sure that the diagram retains the graphical look of the original diagram after transport.
First question: “Isn’t this a test of XPDL?” It is, but this test focusses on the ability for a tool to exchange BPMN diagrams using XPDL. XPDL existed before BPMN. It allow for many different styles of process definitions. As BPM products implemented BPMN, they did not always do so completely or consistently. This test proves that the product incorporates all the BPMN elements at the SIMPLE conformance level, and that all of those elements are represented correctly in the XPDL file, so it is really a test of a product’s ability to create and exchange BPMN diagrams at the SIMPLE conformance level.
What is a conformance level? BPMN contains many different elements, some which are more useful than others. It also contains redundant elements. WfMC has defined three conformance classes: SIMPLE which is all the elements that every process tool should have, STANDARD which is an expanded set of elements that tool vendors are likely to use, but not all tools need for all situations, and COMPLETE which is the entire BPMN spec. Obviously the goal is to be able to exchange COMPLETE conformance level, but there are “disagreements” on the precise meanings of many elements, and not all tools have the ability to draw many elements. Studies at Stevens Institute and the DoD have shown that all elements are not needed, and there certainly is a diminishing return as you implement more obscure elements. It is possible that most diagrams (possibly 95% to 99% of all diagrams) can be represented with the SIMPLE conformance level, so lets get that level working before tackling the rest of the language. The definition of conformance levels is absolutely critical to achieving the exchange of process diagrams, but this is not defined by the BPMN spec. Instead, the XPDL spec defines the BPMN conformance classes.
Here is the standard simple process drawn in Fujitsu’s Studio:
This was exported as XPDL, and then read into Global 360′s sketchpad:
As you can see, the diagrams remain substantially the same. Each tool draws some aspects of the diagram in their own unique way, and you can notice that arrows are positioned according to slightly different rules, but it is still clearly BPMN and clearly all the attributes have been preserved.
While there have been a lot of talk about the ability to exchange process diagrams, this conformance test provides the first actual test that can assure that models are reliably exchanged between products at a specified level of complexity. Requiring products to pass the test will increase the quality and value of the entire marketplace.
The announcement also cites the first three vendors to pass the test: ITP Commerce, eClarus, and Fujitsu. This means, that in those products, you can exchange diagrams at the simple level without problem. I should mention that there are several other products which came very close to passing, but failed due to relatively small encoding mistakes. Those products will be announced when they pass the test.
Next post: I have some examples of interchange that I have tried between the products and can show examples of this … so stay tuned.