jBPM is a flexible Business Process Management (BPM) Suite. It makes the bridge between business analysts and developers. Traditional BPM engines have a focus that is limited to non-technical people only. jBPM has a dual focus: it offers process management features in a way that both business users and developers like it.
What does jBPM do?
A business process allows you to model your business goals by describing the steps that need to be executed to achieve that goal and the order, using a flow chart. This greatly improves the visibility and agility of your business logic, results in higher-level and domain-specific representations that can be understood by business users and is easier to monitor.
The core of jBPM is a light-weight, extensible workflow engine written in pure Java that allows you to execute business processes using the latest BPMN 2.0 specification. It can run in any Java environment, embedded in your application or as a service.
On top of the core engine, a lot of features and tools are offered to support business processes throughout their entire life cycle:
- Eclipse-based and web-based editor to support the graphical creation of your business processes (drag & drop)
- Pluggable persistence and transactions based on JPA / JTA
- Pluggable human task service based on WS-HumanTask for including tasks that need to be performed by human actors
- Management console supporting process instance management, task lists and task form management, and reporting
- Optional process repository to deploy your process (and other related knowledge)
- History logging (for querying / monitoring / analysis)
- Integration with Seam, Spring, OSGi, etc.
BPM makes the bridge between business analysts, developers and end users, by offering process management features and tools in a way that both business users and developers like it. Domain-specific nodes can be plugged into the palette, making the processes more easily understood by business users.
jBPM supports adaptive and dynamic processes that require flexibility to model complex, real-life situations that cannot easily be described using a rigid process. We bring control back to the end users by allowing them to control which parts of the process should be executed, to dynamically deviate from the process, etc.
jBPM is also not just an isolated process engine. Complex business logic can be modeled as a combination of business processes with business rules and complex event processing. jBPM can be combined with the Drools project to support one unified environment that integrates these paradigms where you model your business logic as a combination of processes, rules and events.
jBPM is based on a generic process engine, which is our foundation to support multiple process languages natively. jBPM5 focusses on BPMN 2.0 as the language for expressing business processes. BPMN 2.0 is a standardized specification that defines a visualization and XML serialization of business processes, and can be extended (if necessary) to include more advanced features.
jBPM5 is the latest community version of the jBPM project. It is based on the BPMN 2.0 specification and supports the entire life cycle of the business process (from authoring through execution to monitoring and management).
The current jBPM5 snapshot offers open-source business process execution and management, including
- embeddable, lightweight Java process engine, supporting native BPMN 2.0 execution
- BPMN 2.0 process modeling in Eclipse (developers) and the web (business users)
- process collaboration, monitoring and management through the Guvnor repository and the web console
- human interaction using an independent WS-HT task service
- tight, powerful integration with business rules and event processing
What to do if I encounter problems or have questions?
You can always contact the jBPM community for assistance.
(note that you have to subscribe to the list first before being able to post)
IRC: #jbpm at chat.freenode.net
jBPM User Forum
- Barcelona JUG: Drools & jBPM workshop
- Salaboy is back again with some great news! They are planning a meeting in Barcelona to show the new tooling provided by Drools & …
- jBPM 6 first steps
- This post is about to give a very quick introduction to how users can take their first steps in jBPM 6. Using completely web toolin…
- jBPM6 Showcase: jBPM Console - Hiring Process
- Salaboy has written a blog about the new jBPM Console in jBPM6 . He uses the "Hiring Process" (which is package out-of-the-box as …
- View more project news
Syncro Soft has donated OxygenXML licenses for use on the open-source jBPM projects.
jBPM 6.0 CR2 available
We just put out our second release candidate for the jBPM 6.0 release. All the components are feature complete and we're working on solving the last remaining issues. So now is a good time to check out what's coming and give feedback on some of the new features or issues you may encounter.
jBPM 5.4 released!
jBPM 5.4 has been released, offering business process execution and management using BPMN2 and targeting both developers and business users. This release has a nice set of new features, like for example business process simulation. Read all about it here !
jBPM5 Developer Guide
The latest book on jBPM, written by Mauricio and Esteban, is available from Packt Publishing. More info and a link to some promotional codes here!
jBPM was a big part of the this year! The demo featured the JBoss Toy Store, a simple shopping cart application. You could use your mobile device to order various products (from phones to shirts), and a jBPM process was used to handle and manage the orders, all running in the cloud (on OpenShift). keynote demo
jBPM support in BRMS
Red Hat announced the availability of JBoss Enterprise BRMS 5.3. BRMS 5.3 adds support for jBPM, so that means you can get official support from JBoss for your business processes now. BRMS 5.3 has support for business processes (jBPM), business rules (Drools Expert) and complex event processing (Drools Fusion) in one integrated solution.