- Process instance repair and modification: go back or skip ahead in a process.
- Authorizations: restrict access to processes, tasks and administrative actions.
- Search for process instances and incidents in Cockpit
- Starting new process instance at any activity / set of activities
A detailed feature overview can be found at the end of this the post.
Process Instance Repair and Modification
Sometimes process instances somehow take a wrong turn or end up in a state they should not be in. Or, you need to “rewind”, “go back” in order to re-execute some steps with different parameters. Sometimes you also need to skip some steps for whatever reason. Yes, that should not happen but in reality there are all kinds of things that can go wrong in the environment of a process which lead to a situation where you need to “repair” a process instance. Camunda now provides a killer feature for this:
We call this feature Process instance Modification. It allows you to freely start or cancel any activity in a BPMN process or “move” a token by cancelling the current activity and starting another activity as shown in the animation above.
More information on process instance modification including the corresponding apis can be found in the docs.
Note: In the community edition, the feature is exposed through the Java and Rest apis. The UI plugin for Cockpit shown in the animation above is only included in the Commercial version of Camunda BPM.
Camunda now features a full fledged authorization framework allowing you to configure
- which tasks, processes, cases… a user is allowed to see,
- how a user can interact with these resources, for instance, which tasks a user is authorized to complete, which processes he can start and so forth.
Authorizations can be configured in the Camunda Admin application (or using the Java and Rest apis):
Once configured, authorizations are enforced by the Java api and the Rest api.
More details on authorizations can be found in the User Guide.
Search for process instances and incidents in Cockpit
In Cockpit, you can now search for process instances and incidents (failures) on the dashboard. You can use all the criteria provided by the historic process instance and incident search api:
More information can be found in the docs
Starting new process instance at any activity / set of activities
You can now start a process instance at any activity / set of activities. The following example shows how to create a new process instance which does not start at the start event but at two other activities (“SendInvoiceReceiptTask” and “DeliverPizzaSubProcess”):
ProcessInstance instance = runtimeService.createProcessInstanceByKey("invoice") .startBeforeActivity("SendInvoiceReceiptTask") .setVariable("creditor", "Nice Pizza Inc.") .startBeforeActivity("DeliverPizzaSubProcess") .setVariableLocal("destination", "12 High Street") .execute();
More details can be found in the documentation.
Tasklist Extensibility and Customization
You can now extend and customize Camunda Tasklist with plugins.
Tasklist plugins can be implemented with HTML and Java Script. They allow you to add additional domain specific functionality to the Tasklist.
More details on Tasklist Plugins can be found in the Docs.
Getting the new Release
Download Camunda or run it with Docker.
You can use Apache Maven for embedding Camunda in your custom java applications.
This new minor release is fully supported in the Camunda BPM Enterprise Subscription. Support includes Help Requests based on different SLAs as well as access to maintenance releases. Maintenance releases allow customers to get bugfixes for production systems based on the 7.3 branch. While the community project will now start working on 7.4, we will backport bugfixes to the 7.3 branch and perform maintenance releases reserved for enterprise subscription customers.
Upgrading to 7.3.0
There is a Migration Guide targeting existing Camunda BPM 7.2 installations.
Detailed Feature Overview
Here is a more detailed feature overview of both Api and web application features:
New Api Features
- Authorization Framework,
- Runtime Api:
Starting a Process Instance at any activity / set of activities,
Process instance repair and modification: go back and skip ahead in a process,
- History Api:
Monitor Job Execution with Historic Job Log,
Sorting History Events by occurrence, Extended auditing through User Operation Log,
- Task Api:
sort by variable value, additional search parameters
Re-implementation of Multi Instance Loop Characteristics,
Correct implementation of Event Subprocess,
Use BPMN Call Activity for starting a CMMN Case
- Data format Api:
native support for Json and XML variables,
support for namespaces in XPath,
- Support for additional Databases, Application Servers and Java Runtimes,
- Job Executor:
Control order of Job Execution
New Web Application Features
Process Instance Modification,
Historic Job Log,
Improved support for Object Variables,
Customization and Extensibility (Plugins),
Advanced Search with advanced sorting options,
Zoom BPMN Process Diagram,
working with Json Data in Forms,
Flow Node Count,
- Commons UI:
Reusable Widget library including widgets for displaying BPMN diagrams, editing Variables …
I want to take this opportunity to thank everybody who contributed to the new release including our community members and our amazing team at Camunda.