Zebra is a workflow engine - originally developed to fill in the gaps in some
commercial and open source workflow engines. The key differences between it and other workflow systems are
- Able to model all the workflows described in workflow patterns
- An easy to use GUI designer
- Interfaced persistence layer
- OO Design
- Integration component for Turbine web applications
To get started quickly go directly to Antelope
We are using some developer services from Berlios
The main components of Zebra are
- The workflow engine
- The Persistance Adaptor (currently Hibernate)
- The workflow designer (current in Visual Basic)
- Antelope a sample application for Zebra
- Meercat a component used by Zebra/Antelope to manage Hibernate sessions
- Penguin a Turbine Pull tool for form redisplay
The Engine itself is broken into the following components
Mission
Zebra aims to provide a useable workflow engine for commercial and open source
applications. To be useable it must be
- Easy to develop with
- Fast enough for user interaction
- Reliable
Currently we believe it is all of these - it has been proven in 1 large commercial implementation
Zebra aims to provide the server side services. It is not aimed as an end user tool - though with smart use of sub flows a level of user customisability is possible.
If you want commercial support for this tool - please ask on the developers mailing list - something could be
arranged.
For information on contibution please post of the developers list and see here
Zebra is being built in Java and is designed to be database independant. Currently the only persistance implementation uses Hibernate - but others are possible. The system should work on any Java/Hibernate platform but has primarily been tested on Windows/Oracle 9i and Linux/Postgresql
The designer is built using Visual Basic 6.0 and some commercial 3rd party components. The VB code will be open sourced and binaries will be provided by Anite who have licensed the components. It is the desire of the developers to port the designer to pure Java (probably as an eclipse plugin) as and when they have time.
Related resources
History
Zebra was developed after examing many of the Open Source and Commercial
workflow engines. Although there are a number of good engines around -
none of them met the standards required by Anite's customers.
So based on their experiance of the weakness of these engines they set out
to design an engine based around extreme flexibiliy (especially in looping flows)
- while maintaining a good OO API and ease of use - this is Zebra.
Once completed and deployed - it was decided to donate this to the open
source community. Anite have benefited hugely from Open Source projects like
Hibernate, Turbine
and log4j for a number of years and we thought it would
be good to contribute back.
It is called Zebra as Anite have a habit of internally naming projects odd
things and Zebra is what popped into someones head. We are afraid to say
it does not mean anything!