Chapter 10. Getting Started with Processes

JBoss Business Process Management System is a light-weight, open-source, flexible Business Process Management (BPM) Suite that allows you to create, execute, and monitor business processes throughout their life cycle. The business processes allow you to model your business goals. They describe the steps that need to be executed to achieve those goals. It depicts the order of these goals in a flow chart. The business processes greatly improve the visibility and agility of your business logic.

Red Hat JBoss BPM Suite creates 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. The life cycle of Business processes includes authoring, deployment, process management and task lists, and dashboards and reporting.

10.1. The Red Hat JBoss BPM Suite Engine

The core of Red Hat JBoss BPM Suite is a light-weight, extensible workflow engine called the BPM Suite engine in BPMN 2.0 format, written in pure Java that allows you to execute business processes. It can run in any Java environment, embedded in your application or as a service. It has the following features:

  • Solid, stable core engine for executing your process instances.
  • Native support for the latest BPMN 2.0 specification for modeling and executing business processes.
  • Strong focus on performance and scalability.
  • Light-weight. You can deploy it on almost any device that supports a simple Java Runtime Environment. It does not require any web container at all.
  • Pluggable persistence with a default JPA implementation (Optional).
  • Pluggable transaction support with a default JTA implementation.
  • Implemented as a generic process engine, so it can be extended to support new node types or other process languages.
  • Listeners to be notified of various events.
  • Ability to migrate running process instances to a new version of their process definition.

10.2. Integrating BPM Suite Engine With Other Services

The Red Hat JBoss BPM Suite engine can be integrated with a few independent core services such as:

The human task service
The human task service helps manage human tasks when human actors need to participate in the process. It is fully pluggable and the default implementation is based on the WS-HumanTask specification and manages the life cycle of the tasks, task lists, task forms, and some more advanced features like escalation, delegation, and rule-based assignments.
The history log
The history log stores all information about the execution of all the processes in the engine. This is necessary if you need access to historic information as runtime persistence only stores the current state of all active process instances. The history log can be used to store all current and historic states of active and completed process instances. It can be used to query for any information related to the execution of process instances, for monitoring, and analysis.