[Zope] Generic Workflow Products?

Cary O'Brien cobrien@Radix.Net
Wed, 23 Aug 2000 09:21:10 -0400 (EDT)


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