Category

Engineering Excellence

All Camunda blog posts tagged with Engineering Excellence.

External Tasks allows new Use Cases with Camunda BPM 7.4

In a recent Blog Post I wrote about a concept we call “External Tasks” where services were not actively called from the Workflow Engine (PUSH) but where “Workers” retrieve their tasks from the Workflow Engine (PULL). We discussed this a lot and got so much feedback that we decided to support this pattern out-of-the-box in Camunda BPM 7.4. Let’s have a look at an example (yes – we do have customers implementing video processing :-)): In this case transcoding and uploading a video file can take ages. It is done by special software which often does not have a SOAP or REST API to call. So in this case it is much easier to make an External Task out of…

By Bernd Ruecker

Escalation Events in Camunda BPM 7.4

The humble escalation event has arrived to the Camunda process engine. Well actually there are technically 6 of them and while each is special in its own little way I’m going to give some examples of the most widely used ones. Escalation events act a lot like error events with one very important difference – You can throw an escalation event without interrupting the process instance. A good example of the usefulness of this event can be seen in the following model: This model describes a situation where someone needs to be made aware of an issue within the process. Specifically where processing is going to take too long, but we also don’t want the process to stop. By using…

By Niall Deehan

Camunda 7.4.0-Alpha2 released

Today we release Camunda BPM 7.4.0-Alpha2. This is the second alpha release previewing the upcoming 7.4.0 Release. The highlights of this release are: Improved DMN Engine Hit Policies Data Types New Cockpit Features, Auditing of DMN Decisions, BPMN Heat Map, Improved BPMN Engine Support for BPMN Escalation Improved Asynchronous Execution Efficiency SLF4j Logging Faster Deployments Improved CMMN Engine Add Support for Repetition Rule Support for Tomcat 8 New Documentation Many Bugfixes Overall more than 170 issues were closed. See complete Release Notes in Jira. Download For Free Run with Docker DMN Auditing in Cockpit Cockpit now provides a preview of the support for DMN-based Decision Auditing. The dashboard displays now all deployed decision tables. Selecting a decision table opens the…

By Daniel Meyer

Scaling Camunda BPM in a Cluster: Job Executors and Coordination

Throughout development of Camunda 7.4, one of our focus points is job executor features and improvements. The job executor is the process engine’s component to perform deferred actions, such as executing an intermediate timer event or an asynchronous continuation. Thus it is central in the Camunda architecture and central for scaling the BPM platform in a cluster. In this post we provide insight in job executor behavior and how job executor instances be coordinated by employing a backoff strategy that is part of the upcoming Camunda 7.4.0-alpha2 release.   Setting: Clustered Job Execution As pointed out in the previous post on our new job prioritization feature, Camunda is widely used by customers in domains where the degree of automation is…

By Thorben Lindhauer

BPMN Quest – Camunda as a Game Engine!

This year at the annual Camunda hackdays one team bravely took it upon themselves to balance out the innovative and useful projects with something fun and frivolous. For two days somewhere in Brandenburg we were “Awesome-Team-Awesome” and we turned the Camunda engine into a platform to create a D&D style quest game. We call it BPMN Quest. The project was split into a few different features and handed out to the reverently skilled members of the (awesome) team (awesome). Location Map – showing the current location of the character as they moved through the story was given over to Paddy with help from Neville. Player’s Quest Page – the interface that the user playing the game would see, including story…

By Niall Deehan

Context Help in Camunda using SOLR Search Server

Last week we had our annual hack days – that means 48 hours of producing something awesome. Together with Falko, Ingo and Thorben we build a context help within the Camunda BPM Workbench prototype. This uses Apache SOLR to index various sources (we did the user forum, the docs on GitHub, a Community Extension and internal best practices). We discussed details on this index and did a comparison to ElasticSearch. It was a great study for options and use cases of such a help in our tool chain – but watch the result yourself: Context Help / Search via SOLR – hooken into Camunda BPM Workbench from Camunda on Vimeo. Note that this is a prototype – sources are on…

By Bernd Ruecker

Process Test Coverage Report

As part of the Hack Days this year my colleague Falko migrated an existing tool we (Camunda Consulting) used with success in a lot of projects to bpmn.io: The Process Test Coverage Report Generator. It just hooks into an automated test (typically JUnit) and creates an HTML report showing the coverage: For every Test Case For the whole Test Suite See this example for one test case – obviously the Happy Path of the process model: The report can easily be watched locally within your IDE or hooked into your Jenkins Build. See GitHub Readme for details. By the way – our Best Practice is to go for “Flow Node Coverage” – so your Test Suite should “visit” each BPMN Flow…

By Bernd Ruecker

How to repeat a task in CMMN?

We have some good news: We implemented the repetition rule in our CMMN engine. This gives the users the ability to repeat a task under certain conditions. We invite you to try it out! For testing purposes use the current 7.4.0-SNAPSHOT of the engine and repeat a CMMN task as often as you wish. There also exists some documentation with an explanation how the repetition rule works and how you can use it. Just read the section about repetition rule. Every feedback is welcome. If you miss something or something does not work as expected please let us know. PS: We are currently refactoring the documentation. So apologize if there is something in the documentation that does not work as usually….

By Roman Smirnov

Try All Features of Camunda