Monitor processes in camunda BPM with the help of a Camunda cockpit plugin - part 3: overlays, overlays, overlays
In the course of the extension of our cockpit statistics community contribution to the open source BPM framework Camunda BPM, described by Eric in the first part, I have implemented new features for our Camunda cockpit plugin that provides an insight into the historical data of process activities.
In the course of the extension of our cockpit statistics community contribution to the open source BPM framework Camunda BPM, described by Eric in the first part, I have implemented new features for our Camunda cockpit plugin that provides an insight into the historical data of process activities. These features extends the functionality of the process definition diagram by giving, at least partially, answers to one of the questions in Eric’s post – ‘Do process steps exist that need more time or human interaction than expected?’ – and additional questions like ‘How many instances of an activity have already been finished?’, ‘How long did they need?’, ‘Is an activity, in average, faster than expected?’ or ‘How many instances were faster and how many instances were slower than expected?’
The plugin extension consists of two main features that can be accessed in different ways.
First Feature – Highlight BPMN elements
The first feature is a highlighting functionality. For this feature, I have added a button in the panel on the right side of the process definition diagram. When you click on the button, a popup menu with two tabs is opened.
In the first tab, you can choose which of the BPMN elements, available in the current process definition diagram, should be highlighted in the diagram. If you have decided to show multiple elements at the same time, each kind of BPMN element is highlighted in a different color.
Highlight selected BPM elements in process definition diagram
In the second tab, you can enter a time limit in seconds, minutes or hours and have a look which of the activities need, in average, more or less time than the specified limit. I have restricted the duration analysis to BPMN tasks. All activities highlighted in green are, in average, faster than the specified time limit, the red colored ones are slower and for the activities, that are not colored at all, no historical data is available, i.e. no instances of this activity have been finished yet. The small badges with the numbers on the right of the highlighted tasks show the amount of finished instances that took more or less time than the specified time limit.
Highlight BPMN activities in the process definition diagram regarding their duration and the specified duration limit
Second Feature – Activity History
The second feature is a plot with historical data showing the duration of each finished instance of a selected activity. I have hidden this functionality behind the small black buttons at the bottom of each BPMN task and intermediate catching event. You just have to click on the button and have a look at the historical data of the selected activity that shows up in an overlay in front of the process definition diagram.
Modal dialog with plotted historical data for selected BPMN activity
I have divided the overlay into three sections: a navigator at the top, the main chart in the middle and an information panel at the bottom.
You can use the navigator to define the space of time for the plotted activity instances. Therefore, the start and end of the time period can be defined with the help of the calendar inputs, the navigational chart itself or a combination of both. If you know the exact time span you want to examine, just use the edit buttons next to the start and end date above the navigational chart and pick the exact date and time from the calendar that pops up. The chart below will be updated dynamically to show only the bounded time span. Alternatively, you can use the navigation chart itself. Looking at that chart, you will get a clue on the distribution of the historic activity instances. You can limit the time span by just dragging the vertical red lines in the diagram. For instance, you can limit the space of time to the section where many instances with a very high duration are located. If you have changed the time span, you can always go back to the initial time span by clicking on the “zoom out” button above the navigational chart.
Playing around with the time period, you will notice that the main chart is updated dynamically. This chart shows the duration of the activity instances finished in the specified date and time boundaries. Hovering over one instance, the end date and the accurate duration in the format DD:HH:MM:SS.mmm are displayed directly in the diagram and additional information is shown in the right of the panel at the bottom. Similarly to the navigational chart, I have added two draggable lines indicating the upper and the lower duration limit. If you change these limits, the number of instances located above, below or in this limit range is shown on the left in the information panel.
All in all, the plugin helps you to understand the performance of your process activities and detect weak points in the overall process.
We hope you like the features of our plugin. Please let us know if you have any ideas for improvement. Of course we would be also glad to hear in which ways you are using our plugin for your business processes.