A full-featured business process management suite might not be the first thing you'd expect to see coming from the open source community, and yet that's exactly what a number of projects are working to deliver. With the rise of SOAs, the need for a business-process engine to manage and orchestrate disparate services and EJBs has never been greater -- even for sites that otherwise rely on open source technologies.
That's why the Apache Software Foundation considers Project Agila the crowning jewel of its Jakarta Java tool suite. Based on an initial code donation from Gluecode in October 2004, Agila is a lightweight, embeddable open source BPM engine suitable for use with both J2EE and lower-end platforms such as J2ME. As such, Apache representatives say, it is the last major piece of an Apache Java middleware stack to compare with those offered by major commercial vendors such as BEA or IBM. The project is currently in the incubation phase, with no files yet available to the general public, but active development is expected to begin soon.
The Apache Software Foundation isn't the only organization thinking along these lines. JBoss is looking to expand its portfolio beyond its core application server. With the acquisition of an open source workflow engine called jBPM, JBoss brings its considerable Java development experience to bear on the BPM market.
As does Project Agila, jBPM can run as a stand-alone application or as an embedded component in another application. As opposed to the Apache project, jBPM code is already available for download from JBoss' site, under the company's customary LGPL (Lesser General Public License). In addition to the engine itself, jBPM includes a graphical process designer for creating workflows. Future plans for the project include native support for BPEL (Business Process Execution Language) and, in the long term, extending jBPM to become a full-fledged ESB.
Besides these two large players, a number of other open source workflow engines are available or have been proposed, but the status of those projects is often difficult to ascertain. Managing business processes is a complex endeavor requiring specialized expertise, however. If you're looking for an open source alternative in this category, the safe bet would be on projects backed by organizations with the funding and professional dedication of an Apache or JBoss.