What’s New in jBPM 5.0?
jBPM5 makes sure that the (executable) business process itself can be understood by business analysts.
Kris Verlaenen is leading the jBPM project at JBoss. He is also one of the core developers of the Drools project, to which he started contributing in 2006. After finishing his PhD in Computer Science in 2008, he joined JBoss full-time and became the Drools Flow lead. He is currently leading the jBPM project and contributed to the BPMN 2.0 specification task force. He also has a keen interest in the healthcare domain, one of the areas that have already shown to have a great need for a unified process, rule and event processing framework.
Version 5.0 of the jBPM Business Process Management suite has just been released. JAXenter speaks to Kris Verlaenen, jBPM project lead, on what’s new in this release, and how the BPMN 2.0 specification affected jBPM 5.0……
JAXenter: How does jBPM attempt to bridge the gap between business analysts and developers?
Kris Verlaenen: To bridge the gap between business analysts and developers, one must make sure they use the same language to communicate. jBPM5 makes sure that the (executable) business process itself can be understood by business analysts, by making sure the business process uses higher-level representations, removes (or hides) implementation details, uses domain-specific representations that are easily understood by the business analyst, etc.
There is no mapping between a representation understood by business analysts and an underlying implementation generated from that representation by developers, as this can lead to inconsistencies between both models, outdated representations that do no longer match with the actual implementation, etc. Business analysts and developers can communicate using the same business process representation.
JAXenter: What’s new in the recent 5.0 release?
Kris Verlaenen: jBPM 5.0 uses the latest BPMN 2.0 format for modeling business processes. This includes both Eclipse-based and web-based tooling, for developers and business users. It also introduces a new process repository, improved support for domain-specific processes (by plugging in your own node types in the palette) and mayor changes to the core engine to make it more flexible, adaptive and dynamic. Finally, it is also part of a much larger solution for modeling business knowledge where business processes can easily be combined with business rules and complex event processing to offer the kind of flexibility and interoperability that is needed nowadays in more complex real-life business use cases.
JAXenter: How does the 5.0 release adhere to the latest BPMN 2.0 specification?
Kris Verlaenen: The jBPM 5.0 core engine supports native execution of business processes using the BPMN 2.0 XML format. It already supports a large set of elements and attributes as defined in the BPMN 2.0 specification for modeling so-called “executable” business processes. It offers both Eclipse-based and web-based business process modeling using the BPMN 2.0 XML. We try to stay as close as possible to the BPMN 2.0 specification, only introducing a few custom extensions whenever we believe them to be valuable. This means that processes created using other tooling that can export BPMN 2.0 XML can also be imported and executed in jBPM5.
JAXenter: The 5.1 edition is currently scheduled for release in May. What can we expect from this release?
Kris Verlaenen: While jBPM 5.0 focuses mostly on business process execution in a Java environment (J2SE / J2EE), the next release will first of all extend the various language constructs to better support web service orchestration. On top of that, it will also include a new fully compliant BPMN 2.0 Eclipse editor and improved support for plugging in domain-specific nodes using a repository where predefined node types can be selected and imported. Finally, we will extend our Business Activity Monitoring (BAM) support, adding improved support for listening to the process engine in real time and generating reports or triggering direct intervention based on the collected data.