Flowable

Flowable is an open-source workflow engine written in Java that can execute business processes described in BPMN 2.0. It is an actively maintained fork of Activiti (software).

History
In October 2016, the lead developers of Activiti (software) left Alfresco (software) and started the Flowable Open Source project based on a fork of Activiti code.

The first version of Flowable was 5.22, based on a fork of Activiti 5.21, but added Transient Variables. The first release of Flowable version 6.0 was based on a fork of Activiti version 6 beta 4. Version 6 of the Flowable engine includes a rewrite of the core process virtual machine.

Components
The project comprises a set of modules that can operate together:
 * BPMN Engine, the core Business Process Model and Notation workflow processor
 * CMMN Engine, a Case Management Model and Notation processor
 * DMN Engine, an implementation of a subset of Decision Model and Notation based business rules
 * Flowable Design, a cloud-based graphical authoring interface for editing BPMN, CMMN, and DMN

Differences between Version 5 and Version 6
The key changes in Flowable 6 are:
 * Abstract persistence layer, enabling use of relational or non-relational data sources
 * 1-to-1 mapping of BPMN model to executable instruction set
 * Simplified execution tree, enabling easier analysis and manipulation of in-flight processes
 * Single agenda for process execution plans
 * Queue-based job execution
 * Ad hoc Sub Processes
 * Dynamic process execution