the state of our ruby workflow engine
OpenWFEru (nicknamed “Rufus”) is slowly growing into a full featured workflow engine.
“En vrac”, some points about it and its development :
* Lots of OpenWFE expressions got implemented. For example, sequence, concurrence, cursor, sleep, loop, reval, participant…
* It’s a pure open source ruby workflow engine, we’re looking forward testing it on JRuby.
* The development is unit test driven, as should be. Each test is currently run within its own engine.
We’re studying means to run this same serie of tests with an in memory engine (what’s currently being done), a persisted engine and then within a unique test engine, all concurrently.
* Persistence‘s implementation is on its way. Nicolas has implemented a Yaml expression storage service, we are currently tuning it.
* We’re experimenting with a process journaling system. The idea is to be able to play back segments of broken flows or to migrate a process from one engine to the other. This system, once it’s mature in OpenWFEru should be ported to OpenWFEja.
* You can already play with it by downloading it
svn checkout svn://rubyforge.org/var/svn/openwferu and running rake test or rake doc (and looking into html/).
* We’ll maybe allow for process definitions written in the Yaml syntax, could be way lighter than XML process definitions.
* Of course, motivated developers are welcome, a rails plugin could be an interesting direction to take, but there are many other things to explore and we prefer people coming with their own ideas (and thus a lot of motivation).
Our ultimate goal is of course going beyond the workflow engine and providing an open source [ruby] business process management system.
Feedback is welcome on the developer mailing list (we’ll set up a user mailing list later).