After applying Zope to a couple of in-house projects (which turned out pretty well, thank you), I've started to come to the realization that many applications boil down to workflow management. A job comes in, attributes get set, things get attached to it, and it gets passed from person to person (to machine, in some cases) as it flows through the system. I guess to start out it would need the following: -- user classes -- job creation -- job attributes, with protection from view and modification depending on user classes -- multiple job queues, with access control, and some sort of priority. Queues may end up being implemented simply by having a job state, sequence number, and priority, and moving from one queue to another would just be changing the state. -- job timeouts for escalation, -- e-mail "ticklers" and notification -- job routing based on attributes and actions. -- some sort of api other then HTTP/HTML for external programs to access jobs, perform actions, and update jobs. -- Extra Credit: Graphical workflow editor. -- (what else am I missing) Sounds like a job for Zope, doesn't it. Basically I've implemented a couple of systems like this, either classic database-driven or z-class driven. But I'm tired of re-inventing the wheel. It would be nicer if systems like this could be implemented at the "workflow logic" level rather than the Zclass level. IE a set of ZClasses or Product classes that implemented workflow systems. Is there such a thing? Has anyone worked on such a thing? Any ideas how to implement such a thing? I've got a couple of modifications to an existing system coming up, which sounds like just the excuse I need for a total rewrite :) -- cary There are several workflow activites within Zope that I know of: PTK has and "implicit" workflow support for moving documents in a review process. Unfortunately workflow hangs off of the documents from what I saw of its design patterns. Not a good design if a workflow step involves multiple documents and the execution of applications on data. Several Zope sites have some kind of workflow for what they do. There is a mesh healing (CAD/CAM) Zope based application service provider (ASP) that comes to mind. There is an standards based (WFMC -- workflow management coalition, www.wfmc.org) Zope product that really has seen no progress since early this year - see openflow.sourceforge.net You might consider marrying a workflow engine like Staffware's to Zope. This marriage may be easier if they support SWAP (simple workflow access protocol see www.ics.uci.edu/~ietfswap). Staffware has indicated that they will (are) supporting SWAP. We are a company, vPatch, that is building web-based workflow that can run apps for the oil and gas industry. Our current system uses tclets to display workflow graphically, but we are going to Java. It would be nice to work on a good set of (standards based) design patterns for workflow and implement them in Zope. In my mind these patterns would consider pluggable workflow engines like Staffware's using SWAP. Yours in workflow, Albert Boulanger aboulanger@vpatch.com