The Manager can now decide to accept or reject this request.
After the request task has been completed, the manager will find a verification task in its tasklist. The business process is simple: an employee can start a new process and make a request for a certain amount of vacation days. You might recognize this example, since we’ve also implemented it in JPDL as an example in our distribution. The business process we’re going to implement looks as follows (click to enlarge – created using the wonderful editor from our friends at Signavio). You can find a lot more information in our wiki. Of course, this is just the nutshell explanation. In fact, from a high-level point of view, BPMN2 and JPDL are in concept solving the same problem (which is a biiiiig difference with BPEL – but that’s a story I’ll let other tell). People who are familiar with JPDL (the current native language of jBPM) will have generally no difficulties in learning the BPMN2 language, as many constructs and concepts are shared. Since process executions are the raison-d-être of jBPM, it is only natural we are now investing in BPMN2.
The primary benefit of BPMN2 is that it is a standard accepted by the IT industry, which means that process models become portable (graphical and execution-wise) across process engines such as jBPM. Version 2.0, which currently is in beta, adds execution semantics to the specification and this is of course where it gets interesting for jBPM. This is open-source power at its fullest…īasically, the Business Process Modeling Notation (BPMN) started out a pure graphical notation standard for business processes, maintained by the Object Management Group (OMG). Many thanks go out to our community members Ronald Van Kuijk and Bernd Rücker, who have contributed a significant amount of ideas and code (and in fact, still are contributing to the BPMN2 implementation now as we speak). In this post I’ll give you a sneak peek of our current BPMN2 execution effort which will be documented, QA’d and incorporated in the jBPM 4.3 release (scheduled January 1st). However, the only proof were some classes in our SVN trunk …. Since this summer we’re coding away at a native BPMN2 implementation on top of our Process Virtual Machine (PVM), and you might have seen tweets or forum posts passing by where the term ‘BPMN’ pops up.
For those who follow the jBPM internal discussions a bit, the marriage of jBPM and BPMN will come as no surprise.