Business applications collect lot of information, but I have always feeling that these data are not used enough. Yes, we make reports and charts that answer questions and drive next questions and we make next reports and so we develop our knowledge and perception about existing rules.
I would like to share one more way how to represent and analyse data. I learned this method in Process Mining course in Coursera (https://www.coursera.org/course/procmin).
General idea is to use event log to make analysis of event frequency, sequence, etc. First thing that come to my mind hearing event log is Windows system event logs or log4j logs. Unfortunately mentioned logs are not always useful, especially for business analysis. Why? Because there are lot of unnecessary data and vice versa lot of information is missing. Its a paradox. Of course we can develop business applications that generate reasonable and usable event logs, but story is not about generation of new data. Story is about usage of existing data, that is collected over years. There have to be some value that is not discovered yet.
Here I will talk about event logs that are created from existing information and that contain following information:
– case – thing that is processed. It can be customer, agreement, patient, etc.
– action – activity that is performed in case. For example, agreement can be registered, approved, cancelled or renewed.
– employee – person who is doing activity
– timestamp – at which moment employee performed action
I will use ProM to make dotted chart of business process. ProM is process mining tool that you can freely download here. It is not the simplest and most user friendly tool in the world and mainly that is the reason why I write this article.
Lets assume that we have collected some event log in CSV format. Please, note that timestamp date format have to be exactly in format YYYY-MM-DDTHH24:MI:SS.
CASE;ACTIVITY;TIMESTAMP;EMPLOYEE Agreement1;Registered;2012-01-01T08:09:00;John Agreement1;Edited;2012-01-01T08:10:00;John Agreement1;Signed;2012-01-01T08:11:00;David Agreement2;Registered;2012-01-02T08:13:00;John Agreement2;Signed;2012-01-02T08:14:00;David Agreement3;Registered;2012-01-03T08:15:00;John Agreement3;Edited;2012-01-03T08:17:00;John Agreement3;Signed;2012-01-03T08:18:00;David Agreement4;Registered;2012-01-04T08:20:00;John Agreement4;Edited;2012-01-04T08:21:00;John Agreement4;Signed;2012-01-04T08:22:00;David
Run ProM and use button “Import…” in the upper right corner, that will give you possibility to select CSV file and import it.
As a result “Key/Value Set” have to appear in the middle of workspace.
ProM automatically don’t recognize which of the CSV columns contain what information and we have to map them. Select “Key/Value Set” and press button “Play” that is in the middle right of workspace (third button in 4 button group). This will open list of actions that can be applied to inputs. You have to select action “Convert Key/Value Set to Log” and press “Start”.
This will open a screen where to map every CSV column to log attributes. You have to map it like this:
Trace identifier -> CASE lifecycle:transition -> ACTION org:resource -> EMPLOYEE time:timestamp -> TIMESTAMP
Please, be careful – after you select last mapping you have to press to some other attribute otherwise your last selection will not be taken. For instance, you can press on attribute “org:role” when you have finished mapping. Press button “Continue” and dashboard appear where general log information is visible.
Press button “Inspector” on the left side, review loaded cases and make sure that all data is loaded. It is reasonable to use such case identification that you can later track information in source system. Because during event log analysis some questions will come up and you will want to analyse some cases in details.
Now press on “Two document” icon (first tab of top-middle section) and workspace will appear where new log can be found.
Now Dotted Chart will be made based on created log. Click on log and again press button “Play” that is in the middle right of workspace (third button in 4 button group).
Again list of actions will be opened and we have to find “Analyze using Dotted Chart” typing “dot” in the search field.
Select action “Analyze using Dotted Chart” and press “Start” that will open dotted chart of event log.
In this case our sample log is very small and dotted chart analysis don’t show much reasonable information. But if log is bigger then dotted chart becomes much more interesting like shown in the next picture.
Every dot in the chart is event, dots colour is action type, every horizontal line is case and every vertical line is moment in time. Notice, that there are empty vertical lines that means no actions or less actions happen in these moments. In this case empty vertical lines means weekends or holydays.
Moreover it is visible that more events happen in the beginning of case and latter events are less. It is visible that density of events is less toward upper-right corner. Usually aim of business process analysis is to optimize processes meaning that process time or cost is reduced. Shorter process time means that customer is served faster and customer is more satisfied. Regarding this upper-right corner show cases that are processed more than 5 month and some detailed analysis have to be done. Pressing on each dot in dotted chart show details about event.
Dotted chart also have all kind of parameters on right side that can be used to browse and view data from many perspectives.