about processes and engines

Archive for the ‘xpdl’ Category

lunch with Keith Swenson

Last week, I had the privilege of having lunch with Keith Swenson. I have to admit I’m a fan of his “Go Flow” blog.

Keith Swenson is a fellow of the Workflow Management Coalition and he works for the R&D of Fujitsu Computers Systems. He has more than 15 years of experience in the workflow and business process management fields.

We talked about XPDL, federated workflows, RESTful BPM, WfXML-R and he gave me some explanations about the new Fujitsu process discovery service (I’d love to work on such a tool).

This meeting could have happened a bit earlier as we realized that our offices are just 4 blocks away from each other.

Keith gladly accepted to give a speech soon at a BPMinna meeting (Wakizaka-san, we have to talk about that).

This lunch was very instructive as well as friendly, I just forgot to ask for his business card, well, next time.

Written by John Mettraux

August 2, 2008 at 2:48 pm

Posted in bpm, rest, workflow, xpdl

xpdl for fun

I took some time to implement a converter from XPDL to OpenWFEru’s process definition language.

Seems like a certain number of graphical process design tools do serialize their BPMN diagrams to XPDL. Pat has been bothering me about such a serialization for while.

I called that “ruote-transition”, it’s available at the GitHub. It’s not much work but it yields good results. I gave a shot a YAWL as well in the same run.

The challenge is about turning a states+transitions set into the “block structured” format OpenWFEru (Ruote) uses.

I already took a look at that in a former post, the trouble ticket. The transformation (from BPMN to OpenWFEru) was manual. The resulting process definition used a “macro” : a subprocess named “step” that handled the XOR outgoing transitions on the activities of the original process.

The “step” is back as a Ruote expression (like ‘sequence’, ‘concurrence’, ‘if’ or ‘participant’), part of the upcoming OpenWFEru 0.9.18. Ruote-transition [ab]uses this new expression a lot.

Ruote-transition has an intermediary representation format that is easy to output to graphviz format (example). I use it for quick verifications.

I call ruote-transition a “compiler”, turning from one language to another, “translator” would perhaps be a better term.

It was lots of fun to implement that (it’s not over). But I still favour OpenWFEru’s process definition language over anything else, I like its conciseness.

Don’t ask me for “round-tripping”.

Written by John Mettraux

May 18, 2008 at 1:04 pm

Posted in bpm, openwferu, workflow, xpdl, yawl