In this lesson, we will be going to learn about:
- Jbpm
- Drools
- Community project Vs Enterprise projects
- Knowledge of API
JBPM
JBPM is a flexible Business Process Management (BPM) Suite, which 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.
It’s an open source BPM suite, which comprise of:
- Business process management, which create, test, deploy, monitor BPMN2 based business processes.
- Business rules management, which is used for business rules processing.

It can be considered as an integrated platform for business process and decision management.
Business process: It’s a series of steps/ activities which are performed by business users/ application to achieve a specific business goal or objective.
Features of JBPM:
- It stands for JBoss business process management.
- Light weight, open source process engine, which is written in Java.
- Executive business processes are designed by using BPMN2.O specification.
- UI tooling is available which enable business analyst and users to involve in process design.
- It can run in any Java environment, either embedded within an application or as a service.
- It can manage an entire life cycle of a process.
- It allows an integration of Rule tasks within a process flow, which can be executed by using Drool Rule Engine.
- It supports persistence and Transaction by using JPA and JTA.
- It supports human task service for tasks that needs to be performed by human actors.
- It is fully integrated with Eclipse IDE and graphical UI to create a business process.
- It is a business process which allows you to model your business goals by describing the steps which need to be executed in order to achieve that goal and the order, using a flow chart.
- This method improves the visibility and agility of business logic, results in higher-level and domain-specific representations that can be understood by business users and is easier to monitor.
- Pluggable human task service based on WS-Human Task 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.
- jBPM is also not just an isolated process engine. Complex business logic can be modelled 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.