Interview with Miguel Valdes Faura on Bonita v3
Bonita, an open-source workflow and BPM solution recently released version 3. InfoQ sat down with Miguel Valdes Faura to talk about this release, which includes a set of graphical workflow development tools.
The major change in version 3 is the graphical workflow tools. These tools include the Workflow/BPM Console, a XPDL compliant workflow editor, and a web forms editor to customize the generated xForms. Bonita is available in two downloads: the Bonita Engine and the Bonita Platform.
Valdes Faura provided us an overview of the architecture of Bonita:
Bonita is a J2EE application taking advantage of the services provided by a J2EE 1.4 compliant application server. Thus, Bonita delegates all the non-workflow related stuff (such as transactions, notifications, persistence, web services calls or even security) to the application server. Bonita was indeed designed to simplify the workflow development process. This premise conditioned both product architecture and development phases. As a final result, Bonita is providing out of the box workflow and BPM capabilities to end users/developers either thought the rich Workflow APIs or through the graphical workflow environment.
The conversation then switched to Version 3, which has been under development for a couple years, in parallel with version 2.
Bonita v3 basically adds a fully integrated workflow environment to Bonita v2. That is: a workflow console, a XPDL compliant workflow editor and an xForms based web forms editor. This development was initially started to improve workflow development productivity of Bull services teams and required significant improvements to Bonita v1. Bonita configuration and packaging modules were also impacted by this new development so we decided to keep the whole on a separate branch. Nevertheless, most of the modifications applied to the workflow engine were already included in the Bonita v2 releases in order to minimize the migration gap between v2 and v3. Examples of that are: the workflow pagination API, the workflow services refactoring, the administration API and the workflow iterations being rewritten.
Valdes Faura went on to describe the technical challenges of v3.
Well, Bonita v3 was all about adding a graphical environment to the Bonita workflow system. That said, I guess you can imagine that the biggest challenge was not only a technical challenge (specifically related to the selection of right technologies for those tools and the integration with the whole platform) but also a matter of usability (how to build and put together a set of tools that really brings added value to the end users and developers).
On a technical side Bonita v3 adds support for technologies such xForms, JWT, JSPs and JCR using frameworks like Chiba, Struts and JackRabbit respectively. Those are the basics for the three graphical tools included in Bonita v3.
Next Valdes Faura described the monitoring capabilities that are available through the graphical tools.
Monitoring capabilities in Bonita v3 are available in the Process Console under the operator view. This view allows workflow operators to keep workflow execution under control and provides useful information about the historic workflow data coming from finished process instances. Some of the operations/functionalities available are: ongoing workflow instances and activities monitoring, historic files visualization, technical traces and logs visualization and a couple of workflow management operations (delegation patterns, workflow relevant data updates).
Valdes Faura on the future of Bonita.
JBoss application server is already supported in the Bonita v3 Engine version so we plan to extend this support also to the Bonita v3 Platform in the next few weeks. In addition to that, we have started some new developments in parallel. The first is related to the Eclipse IDE for which we would like to provide a plugin version of our Workflow Editor (called ProEd). In fact we already have a beta version of it. Even more, we are involved in a new Eclipse project, together with other partners, called JWT (Java Workflow Toolbox) which aims to provide a technology-independent business process tooling platform.
At the same time, we continue our work with the eXo Platform folks to provide added value features to the Bonita integration with the future eXo WebOS solution. A lot of nice features and tools (a graphical workflow execution portlet, an eXo version of ProEd Eclipse plugin) will be included in the next eXo-Bonita integration.
Lastly, Valdes Faura hinted at big news coming later this year involving collaboration with another open source workflow community.