Forum OpenACS Q&A: Re: Reactivating ACS-Workflow 4.5 (Petri Nets)

Collapse
Posted by Frank Bergmann on
Hi Andrew,

Do you remember Lars' initial rambling against the Petri-Net workflow and why he went for a state machine, and actually reduced the workflow the "State Pattern" (GoF, Gang of Five)? He said that very few people would actually use the features of branching/joining and other fancy Petri-Net stuff that makes it touring-complete.

We're reactivated the "Petri-Net Workflow" because of all the support pages, defaults, transition panels, role assignments etc., but not because the underlying formalism is Petri Nets... We've already written some WFs for customers, but all WFs could have been implemented using State Machines (the least expressive type of all of these networks).

Btw., the WF is actually running and available now as part of Version V3.2.beta1. You can check our SourceForge site for download in the "Support Files" release set (not the main V3.1 set). The download also includes a database dump of a working demo system.

perhaps (reputedly?) better for actual implementations,
particularly those involving distributed processing
(a la Erlang). (I don't actually understand it, though.)

These networks are frequently used by academics to proove strange mathematical claims on areas ranging from parallel processing to Business Process Engineering. However, prooving stuff is really different from designing user-friendly workflows...

Actually, what we'd need is something like a Workflow Designer's Guide that explains the possibilities and difficulties with WFs, and allows people to see where using WFs is useful and where not. Quest.ie (Ciaran De Buitlear, Michael Hinds and others) have actually started with such a document for their customers, but I'm not sure if it available publicly.

I had some very interesting conversations with Mervyn Colton some time ago about how to map a complex process to a WF and why this is an art and not engineering. But yes, this is the right vocabulary. Lars' Petri-Net WF is about mapping business processes to IT systems, and you'd have to start by defining and drawing your processes.

Cheers,
Frank

Collapse
Posted by Andrew Piskorski on
Frank, yes I remember Lars' explanations. You're reasons for going back to the older Workflow package are interesting. It's always better to hear from people with actual practical hands-on experience. :)