It's been almost 11 years (!!) since the Activiti open-source workflow product was created and since it carved out its own brand-new segment in the market. In those eleven years, illustrating the viability of its new market, Activiti has seen two significant forks of its source code, one by Camunda in 2013 and the other by Flowable in 2016. Time - as it so often does - has magnified differences in strategic direction for the three related products. Regrettably, from Activiti's perspective, a lack of attention has led to stagnation in its feature set, to the point where we believe that existing Activiti users & customers need to plan to migrate to another platform as soon as reasonably possible.
Why has Activiti stagnated? It's apparent that Alfresco's strategic direction has been to focus almost exclusively on content services, leading to the neglect of their workflow capabilities and Activiti. As a direct result, Alfresco's customer base is still making heavy use of the 5.x series of Activiti releases... more than ten years after the 5.0 release officially hit the Internet! (Although Alfresco was recently acquired by Hyland, we don't foresee any change in strategic direction there as it relates to Activiti.)
Although Camunda BPM is a competitive and very strong player in the open-source BPM space, its product is now fundamentally different from a feature set and look-and-feel perspective as compared to Activiti and Flowable. Given this and the steeper learning curve for existing Activiti users, we don't believe Camunda BPM is the strongest migration target for the Activiti user base.
Flowable, on the other hand, has picked up the baton and has continued the work of building on the Activiti code base, now offering a pair of products that are clearly similar - but far superior - to the latest versions of Activiti offered by Alfresco. These include its open-source product, which is available for download at https://flowable.com/open-source, and its more full-featured Enterprise product, the details for which can be found at https://www.flowable.com.
The open source product, which is alternatively called either Flowable OSS or Flowable Core, will be immediately recognizable and usable by any current or previous Activiti developer or user, leading to a very gentle learning curve. Here's a screen capture of its main user interface in the 6.6.0 version (with a few extra apps from my local instance), showing the familial resemblance:
Here's a sampling of some of the very important additions & enhancements that have been added to Flowable since its fork of the Activiti code base:
Support for Java 8's CompletableFuture functionality in delegate code, finally permitting simultaneous execution of multiple forks within individual process instances. See our recent blog post on this topic for more information: https://www.summit58.co/post/concurrent-execution-in-process-instances-with-flowable.
Native BPMN execution (eliminating what was called the Process Virtual Machine), offering more feature enhancement flexibility and reduced code complexity as compared to Activiti.
Optional, asynchronous historical data processing, offering the potential for improved runtime performance.
Event stream/messaging integration for easy connectivity to Kafka, RabbitMQ or JMS (Java Message Service), which are commonly used with workflow systems.
CockroachDB support, allowing for improved architectural flexibility for distributed computing.
CMMN (Case Management Model and Notation) support, providing the ability to model unstructured processes alongside structured processes (BPMN - Business Process Model and Notation).
DRD (Decision Requirements Diagram) support, allowing for dependency modeling for decisions.
Its Enterprise product, which embeds all of the features outlined above, offers a very interesting and compelling combination of open-source workflow flexibility & configurability and the features that many users might expect to find in more expensive and much less flexible BPM "suites". Here's just a small sampling of what it offers:
Flowable Work. This web-based UI introduces advanced user-interface capabilities - such as those offered by Appian and Pegasystems - to the open-source community. In addition, it offers a Slack-style interface for process management and interaction if your team prefers to work in that manner.
Flowable Engage. Engage extends Work by providing for process and decision integration with WhatsApp and WeChat.
Flowable Design. Design provides advanced process (BPMN), case (CMMN) and decision (DMN - Decision Model and Notation) editing capabilities along with advanced editing capabilities for forms and Event Registry integrations (Kafka, JMS, RabbitMQ).
Flowable Inspect. Inspect is a new feature in Flowable Enterprise that allows for active debugging and inspection of running process instances, well beyond what is possible with debugging and inspection within a Java IDE.
In addition to the above, Flowable Control offers a detailed user interface for managing Flowable Enterprise instances. Here's a screen capture of one of its out-of-the-box dashboards in action:
Activiti was once a revolutionary product in the workflow space, and its users have benefited from flexibility and configurability that was well beyond what was available before its launch. Unfortunately, years of neglect have caused it to fall well behind its competitors, and we're recommending that any users still leveraging the Activiti platform strongly consider migration in the near future. Flowable's clear familial resemblance to Activiti and its architectural similarities - along with significant feature improvements - make it the best choice for users looking to migrate from Activiti.
When migrating from Activiti to Flowable, users will have two options: Flowable OSS or Flowable Enterprise. Flowable OSS will be immediately familiar to Activiti users and will provide significant additional features with very little migration overhead. Many users will want to strongly consider upgrading to Flowable Enterprise, however, to gain access to the many additional features that are offered, especially if those users need or want access to features that one would expect to see in Flowable's closed-source competitors' products, such as Appian and Pegasystems.
Summit58 has a specific offering (https://www.summit58.co/migrate-to-flowable) to help our customers migrate from Activiti to Flowable OSS or Enterprise. If you're using Activiti and want to gain access to the many new features that are available in the Flowable product, please contact us at email@example.com.