eClarus Leads the Pack in BPMN-BPEL Roundtripping

The operative word is "easily" because I'm positive that, faster than you can say "pi-calculus," some math genius is going to tell me it's proven that BPEL in theory can describe any process that can be implemented in a universe of 10 dimensions or less. The object, however, is not doing it in theory but actually automating the mapping from BPMN. That's tricky when the BPMN, which is "graph-oriented" (like a flowchart), is not "isomorphic" to BPEL, which is "block-oriented" (meaning all paths from a split or branch reconverge at a single node). Today the eClarus tool analyzes the BPMN and can tell you from static analysis whether the diagram is BPEL-isomorphic or not. If not, you'll have to redraw it.

So far that's no more than I got with ITP-Commerce. But eClarus wants to go further. A white paper by Yi Gao, eClarus's Chief Architect, says,

Rewriting BPMN diagrams is a semantic analysis process which is very hard for people without in- depth knowledge of BPMN, BPEL and the expression languages. It can be done manually by IT architects and developers. It is also possible to automate in software along with other BPEL mapping steps.
For example, the simple diagram

BPMN_BPEL_Mapping.GIF

is not BPEL-isomorphic but an insane genius could redraw it in a way that is, such as

BPMN_BPEL_Mapping2.jpg

using BPEL's alternative mind-boggling "link" activity, or a more stable individual might redraw it as

BPMN_BPEL_Mapping3.GIF

where two BPMN shapes represent the same BPEL activity. Generating BPEL from either of these BPEL-isomorphic diagrams is straightforward. The hard part -- which eClarus doesn't do yet -- is automatically generating one of them (ideally the second one, not the "links"!) from the non-isomorphic original. But at least they're working on it!

The key point that eClarus, ITP-Commerce, and other BPMN-to-BPEL vendors haven't yet completely internalized is that BPM's top-down world the model comes first, then the design. If the designer has to redraw the model to make it executable, you've broken the round-trip magic linking business and IT. The business analyst's view of the process is where the isomorphic analysis has to take place, and the software has to either automatically redraw the model there (while the business analyst is around to approve it) or just redraw it "in its own mind" for use in its BPEL mapping algorithm, hiding the redrawing completely from the business analyst's diagram. I don't think this is far-fetched. We're just not there yet.

eClarus allows BPMN activities to be annotated with properties such as costs and KPIs, suggesting its evolution towards a true modeling tool. Today eClarus provides no simulation analysis capability, but they're working on it. The product, which went GA this week, comes in a free community edition that just allows drawing the BPMN, a business analyst edition ($739/seat) that adds custom attributes like KPIs, a simple model repository, and documentation generation, and the full SOA architect edition ($1339/seat) that adds Eclipse, BPEL generation and -- what started the whole discussion -- BPEL-to-BPMN round-tripping, also UML and Rose integration (the tech guys come from Rational), and other stuff. A free 15-day trial license is available through the website. You should definitely try it out.

One additional point is worth mentioning. Most of the BPMN "conformance" touted by BPMS vendors today is just adoption of selected BPMN shapes, not support for the full BPMN diagram semantics, including intermediate events, compensation, multiple pools and message flows, etc. One reason is that most XPDL-based products can't handle them. But BPEL can.

The problem with BPEL is that graphical BPEL designers operate at too low a level for efficient process design. BPMN is a much better design interface, hiding the ugly details of BPEL behind a high-level graphical front end. The BPMS pureplays, mostly XPDL-based, have figured it out already that you need that kind of design interface, but the BPEL vendors, still mostly selling to SOA propellerheads, haven't yet gotten the message. A few vendors like Intalio and Cordys are beginning to blaze a trail with BPMN as a BPEL design tool. eClarus is now trying to make that available for any BPEL product -- it's a natural OEM component. Some features of real-world processes, notably human tasks, are still vendor-proprietary, so we'll have to see how eClarus deals with that. But all in all, a major step forward.