## 6 Composition of a BPMN Diagram
### Mining-Driven Approach  
The mining-driven approach allows the user to generate a BPMN diagram using the output from the constraint-based model described in Section 5. For this purpose, one of the most widely-used open source environments for process mining is the ProM Tools software [58; 59]. The user can select one of the desired methods and generate a BPMN model based on a workflow log of a process.  
In the first step, the ordered list of tasks obtained as a result of solving the constraint satisfaction problem presented in Section 5.2 needs to be converted into a file in XESformat, which is an XML-based standard for event logs [60].  
In our previous paper [52], we presented a solution for this problem, using Heuristic Miner with the default parameters. This Petri-net mining algorithm provides a good level of construct recognition [61]; however, it has a tendency to underfit the model. In other words, there can be more admissible task sequences in the resulting model than included in the logs. In addition, heuristic-based algorithms include noise reduction, which results in ignoring workflow traces that appear less frequently in the log. A process model composed using such an algorithm may lack alternative branches, which serve as a bypass for a large number of tasks, e.g., paths leading to error end events.  
There are several different process discovery algorithms that can be applied to process composition. In general, they can be divided into five main groups [61; 62]:  
1. Abstraction-based (also known as \(\alpha\)-series): consists of three phases: abstraction, induction and construction. In such an algorithm, ordering relations between tasks are identified, and the final workflow net is constructed based on predefined rules.
2. Heuristic-based: consider the frequency of ordering relations appearing in workflow traces, and filter out the potential noise.
3. Search-based: use genetic algorithms to discover process models that represent the most frequent behavior in a workflow log.
4. Language-based: assume that each activity in a trace is a letter in an alphabet and each trace is a word. One of the approaches [63] uses Integer Linear Programming (ILP) to discover control flows.
5. Inductive: filter the most frequent activities, and produce a process tree. The generated model is then enriched with frequency information for each task and the information about how the generated model deviates from the input log.  
Table 7 presents a comparison of selected process mining algorithms and their suitability for constraint-based process composition. In this brief summary, we consider only these mining techniques, which can generate a BPMN model in the ProM environment (see: [[http://www.promtools.org/](http://www.promtools.org/)]([http://www.promtools.org/](http://www.promtools.org/))).  
It is worth noting that although using an existing process mining framework to generate a BPMN model is a comfortable task, the available algorithms are not fully dedicated to work on artificial data.  
\begin{table}
\begin{tabular}{c c c c c} \hline \hline
**Feature** & **\(\alpha\) algorithm** & **Heuristic Miner** & **ILP Miner** & **Inductive Miner** \\ \hline _Type_ & abstraction & heuristic & language & inductive \\ _Construct discovery_ & \(\blacklozenge\) & \(\blacklozenge\) & \(\blacklozenge\) & \(\blacklozenge\) & \(\blacklozenge\) \\ _Fitness tendency_ & overfitting & underfitting & overfitting & overfitting \\ _Generalization_ & \(\blacklozenge\) & \(\blacklozenge\) & \(\blacklozenge\) & \(\blacklozenge\) \\ _Advantage_ & simplicity & control flow & high fitness & high fitness \\  & & discovery & & \\ _Inconvenience_ & low quality & high generalization & complex use & block division \\ _Recommended_ & \(\bigvee\) & \(\bigvee\) & \(\bigvee\) & \(\bigvee\) \\ \hline \hline \end{tabular}
\end{table}
Table 7: Comparison of selected process mining approaches present in the ProM environment (\(\blacklozenge\)—supported feature, \(\blacklozenge\)—partially supported feature).