Sarasvati is a free and open source workflow/bpm engine based on graph execution. Sarasvati features a simple core which allows for different implementations.
For example one may change the persistence mechanism (or avoid it altogether), change token representation or build additional functionality on top.
Here are some key features of "Sarasvati":
· Simple graph execution based core
· Backtracking
· Process Definition/Graph Visualizations
· Process Visualizations
· Process level attributes
· XML file format for process definitions
Token attributes:
· Efficient copy-on-write database storage of token attributes
· Execution history available through 'immutable' tokens
Node guards allow bypassing nodes or discarding tokens for flow control:
· Domain specific language (Rubric) for user understandable guards
Java implementation:
· Hibernate backed engine for DB persistence
· Memory backed engine for cases where persistence is not required.
Haskell implementation:
· HDBC backed engine
· Memory backed engine
Requirements:
· Java
What's New in This Release: [ read full changelog ]
· "Invalid column name 'behaviour'" or similar error in case-sensitive databases
· token set join behaviour does not correspond to the declared one, may lead to process 'hanging'
· Allow process names to contain dots