Search this Blog

Search this Blog

Loading...

Follow our Blog by Email

Tuesday, September 1, 2015

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.

If you can't wait for it - here you can play it right away.


Start page for bpmn quest.


Context Help in Camunda using SOLR Search Server

Last week we had our anual hack days - that means 48 hours of producing something aswesome. Together with Falko, Ingo and Thorben we build a context help within the Camunda BPM Workbench protoype. 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:

Monday, August 31, 2015

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 Node (Events, Activities, Gateways, ...) at least once.

Happy Testing!

Wednesday, August 19, 2015

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. We are working on it.

Monday, August 10, 2015

Migrate Process Versions

My colleague Ingo just finished a new cockpit plugin allowing to easily migrate a running process instance to a new version of the process definition:



Bringing Together: Transactions, Cancel Events and Compensation Tasks

If you've ever been lucky enough to enjoy Camunda's BPMN training then you probably have fond memories of the slide featuring Compensation tasks and Cancel events. It happens to be the very last slide in the symbol set section and is traditionally follows by a well deserved break. It also happens to be a very well implemented part of the Camunda engine.

This post is going to be all about how a process containing a transaction, cancel end event and compensation task are all implemented. The process I'm going to be describing is available on github to download and play with yourself. the process itself looks like this:

Thursday, August 6, 2015

First Version of dmn.io Released

Today we release the first version of dmn.io, our new DMN modeling toolkit. dmn.io allows you to view and model decisions with the DMN 1.0 standard directly on the web. The dmn.io library provides a viewer and an editor that can be embedded into web applications. With this release we provide the front-end element for the latest Camunda BPM 7.4.0 alpha release, which introduced support for DMN.