=Paper=
{{Paper
|id=None
|storemode=property
|title=Overview of Recommendation Techniques in Business Process Modeling
|pdfUrl=https://ceur-ws.org/Vol-1070/kese9-05_07.pdf
|volume=Vol-1070
|dblpUrl=https://dblp.org/rec/conf/ki/KluzaBBN13
}}
==Overview of Recommendation Techniques in Business Process Modeling==
Overview of Recommendation Techniques
in Business Process Modeling?
Krzysztof Kluza, Mateusz Baran, Szymon Bobek, Grzegorz J. Nalepa
AGH University of Science and Technology,
al. A. Mickiewicza 30, 30-059 Krakow, Poland
{kluza,matb,s.bobek,gjn}@agh.edu.pl
Abstract Modeling business processes is an important issue in Business Process
Management. As model repositories often contain similar or related models, they
should be used when modeling new processes. The goal of this paper is to pro-
vide an overview of recommendation possibilities for business process models.
We introduce a categorization and give examples of recommendation approaches.
For these approaches, we present several machine learning methods which can be
used for recommending features of business process models.
1 Introduction
Business Process (BP) models are visual representations of processes in an organiza-
tion. Such models can help to manage process complexity and are also easy to un-
derstand for non-business user. Although there are many new tools and methodologies
which support process modeling, especially using Business Process Model and Nota-
tion (BPMN) [1], they do not support recommendation mechanisms for BP modelers.
As BPMN specifies only a notation, there can be several ways of using it. There are
style directions how to model BPs [2], or guidelines for analysts based on BPs under-
standability (e.g. [3]). However, a proper business process modeling is still a challeng-
ing task, especially for inexperienced users.
Recommendation methods in BP modeling can address this problem. Based on cur-
rent progress or additional pieces of information, various features can be recommended
to a modeler, and he/she can be assisted during designing models. Such assistance can
provide autocompleting mechanisms with capabilities of choosing next process frag-
ments from suggested ones. Names of model elements or attachments can be recom-
mended as well. Such approaches can reduce number of errors during process design as
well as speed up modeling process. It also supports reusing of existing process models,
especially when a process repository is provided.
The rest of this paper is organized as follows: In Section 2, we provide a cate-
gorization of recommendation methods used in business process modeling. Section 3
describes the current state of the art in this research area. Selected machine learning
methods that can be used for recommending features of process models are presented
in Section 4. Section 5 presents an example which can be considered as a suitable case
study for recommendation purposes. The paper is summarized in Section 6.
?
The paper is supported by the Prosecco project.
2 Types of recommendations
Basically, recommendation methods in BPs modeling can be classified as one of two
types: subject-based and position-based classification. The first one concentrates on
what is actually suggested, while the second one focuses on the place where the sug-
gestion is to be placed. However, they are suited for different purposes and therefore
are complementary. A hierarchy of the identified types of recommendation methods is
presented in Figure 1.
2.1 Subject-based classification
In subject-based classification we focus on what is actually suggested. The suggestion
itself is not directly dependent on the context it is placed in. The recommendation algo-
rithms may actually inspect the context to be able to deliver more accurate results but it
is not an inherent feature of recommended item.
1. Attachment recommendations – as the name suggests, these recommendations
suggest how to link a business process (or, more precisely, a selected element of it)
with an external entity like a decision table or another process. Attachment recom-
mendations appear naturally where user should link two already existing items.
(a) Decision tables – recommendations for a decision table describing conditions
in a gate. See an example in Figure 2.
Figure 2. Decision table suggestion
Recommendation
classification
Subject-based Position-based
classification classification
Attachment Structural Textual Forward Backward
recommendations recommendations recommendations recommendations recommendations
Decision table Single element Name of an element Guard conditions Autocomplete
Links Structure of elements Full name suggestion
Service task Name completion
Subprocesses and
call subprocesses
Figure 1. Identified types of recommendations
(b) Links – recommendations for a catching event that should be connected with
the selected throwing Intermediate Link Event. See an example on Figure 3.
Figure 3. Throwing Intermediate Link Event suggestion
(c) Service task – recommendation for a service task performed in the given task
item. See an example in Figure 4.
Figure 4. Service task selection with recommendation
(d) Subprocess and call subprocess – recommendation for a subprocess or call
subprocess that should be linked with the given activity (see Figure 5).
2. Structural recommendations – a new part of the diagram is suggested. One or
more elements with, for example, missing incoming or outgoing flows are selected.
The suggested structure is connected with old chosen elements.
(a) Single element – a single item (activity, gate, swimlane, artifact, data object
or event) is suggested. This is a more straightforward extension of editors like
Oryx/Signavio that can already insert single elements quite easily.
(b) Structure of elements – two or more items are suggested. A more sophis-
ticated solution where an entire part of the process is inserted into existing,
unfinished structure.
3. Textual recommendations are suggestions of names of elements or guard condi-
tions. Either the full text can be suggested or suggestions may show while the text
is being typed.
(a) Name of an element – a name of activity, swimlane or event may be suggested.
i. Name completion happens when user is typing the name. Several possible
completions of partially entered name are suggested to the user.
Figure 5. Subprocess selection with recommendation
ii. Full name suggestion happens when the user wants the name to be sug-
gested by the system based on the context in which the element is placed.
(b) Guard condition suggestions are different from name suggestions because
more than one text (condition) may be suggested at once and these conditions
must satisfy the requirements of the gateway. The latter requirement implies
that semantic analysis of conditions is necessary to give meaningful sugges-
tions. See example in Figure 6.
Figure 6. Guard condition suggestion
2.2 Position-based classification
1. Forward completion – a part of the process is known and the rest of the process,
starting with one selected activity, is to be suggested. See Figure 7.
Figure 7. Forward completion
2. Backward completion – a part of the process is known and the rest of the process,
ending with one selected activity, is to be suggested. See Figure 8.
Figure 8. Backward completion
3. Autocomplete – a part of the process is known and the rest of the process is to
be suggested. A number of items with no outgoing or incoming flows is selected –
missing flows will lead to or from the suggested structure. See Figure 9.
Figure 9. Autocompletion
3 Recommendation Techniques for Business Process Models
Empirical studies have proven that modelers prefered to receive and use recommen-
dation suggestions during design [4]. Recommendations can be based on many fac-
tors, including labels of elements, current progress of modeling process, or some ad-
ditional pieces of information, such as process description. There are several existing
approaches which can be assigned to the following subject-based categories:
1. Attachment recommendations: Born et al. [5] presented an approach that sup-
ports modelers during modeling tasks by finding appropriate services, meaningful
to the modeler. More complex approach which helps process designers facilitate
modeling by providing them a list of related services to the current designed model
was proposed by Nguyen et al. [6]. They capture the requested service’s compo-
sition context specified by the process fragment and recommend the services that
best match the given context. The authors also described an architecture of a recom-
mender system which bases on historical usage data for web service discovery [7].
2. Structural recommendations: Mazanek et al. [8] proposed a syntax-based assis-
tance in diagram editor which takes advantage of graph grammars for process mod-
els. Based on this research they proposed also a sketch-based diagram editor with
user assistance based on graph transformation and graph drawing techniques [9].
Hornung et al. [10] presented the idea of interpreting process descriptions as tags
and based on them provide a search interface to process models stored in a repos-
itory. Koschmider and Oberweis extended this idea in [11] and presented their
recommendation-based editor for business process modeling in [4]. The editor as-
sists users by providing search functionality via a query interface for business pro-
cess models or process model parts and using automatic tagging mechanism in
order to unveil the modeling intention of a user at process modeling time. An ap-
proach proposed by Wieloch et al. [12] delivers a list of suggestions for possi-
ble successor tasks or process fragments based on analysis of context and annota-
tions of process tasks. Case based reasoning for workflow adaptation was discussed
in [13]. It allows for structural adaptations of workflow instances at build time or
at run time. The approach supports the designer in performing such adaptations by
an automated method based on the adaptation episodes from the past. The recorded
changes can be automatically transferred to a new workflow that is in a similar
situation of change.
3. Textual recommendations: Naming strategies for individual model fragments and
whole process models was investigated in [14] They proposed an automatic naming
approach that builds on the linguistic analysis of process models from industry. This
allows for refactoring of activity labels in business process models [15].
According to Kopp et al. [16] it is not to automatically deduct concrete conditions
on the sequence flows going out from the new root activity as we cannot guess the
intention of the fragment designer. However, they presented how a single BPMN
fragment can be completed to a BPMN process using autocompletion of model
fragments, where the types of the joins are AND, OR, and XOR.
4 Machine Learning Approach for Recommendation
The idea of recommender systems was evolving along with a rapid evolution of the
Internet in mid-nineties. Methods such as collaborative filtering, content-based and
knowledge-based recommendation [17] gained huge popularity in the area of web ser-
vices [18] and recently most often in context-aware systems [19]. The principal rule
that most of the recommendation methods are based on, exploits an idea of similarities
measures. This measures can be easily applied to items that features can be extracted
(eg. book genre, price, author) and ranked according to some metrics (customer liked
the book or not). However, when applied to BPMN diagrams, common recommender
systems face a big problem of non existence of standard metrics that will allow for
comparison of models. What is more, feature extraction of the BPMN diagrams that
will allow for precise and unambiguous description of models is very challenging and,
to our knowledge, still unsolved issue.
Therefore, other machine learning methods should be investigated according to an
objective aiming at providing recommendation mechanisms for a designer. The follow-
ing Section contains an analysis of possible application of machine learning methods to
recommendations described in Section 2. A comprehensive summary is also provided
in Table 1. The black circle denotes full support of particular machine learning method
to recommendation; half-circle denoted partial support of particular machine learning
method to recommendation, and empty circle means no, or very limited support.
Clustering Decision Bayesian Markov
algorithmsa treesb networksc chains
Attachment recommendations m l m m
Structural recommendations m l l l
Textual recommendations m m w l
Position based classification m l l l
Table 1. Comparison of different machine learning methods for recommending features denoted
in Section 2
a
Useless as an individual recommendation mechanism, but can boost recommendation when
combined with other methods
b
No cycles in diagram
c
No cycles in diagram
4.1 Classification
Clustering methods Clustering methods [20] are based on optimization task that can
be described as an minimization of a cost function that are given by the equation 1. K
denotes number of clusters that the data set should be divided into.
N X
X K
2
kXn − µn k (1)
n=1 k=1
This cost function assume existence of a function f that allows for mapping element’s
features into an M dimensional space of X ∈ Rm . This however requires develop-
ing methods for feature extraction from BPMN diagrams, which is not trivial and still
unsolved task. Nevertheless, clustering methods can not be used directly for recommen-
dation, but can be very useful with combination with other methods.
Decision trees Decision trees [21] provide a powerful classification tool that exploits
the tree data structure to represent data. The most common approach for building a tree,
assumes possibility of calculation entropy (or based on it, so-called information gain)
that is given by the equation 2.
n
X
E(X) = − p(xi )log(p(xi ))) (2)
i=1
To calculate the entropy, and thus to build a decision tree, only a probability p of
presence of some features in a given element is required. For the BPMN diagram, those
features could be diagram nodes (gateways, tasks, etc) represented by a distinct real
numbers. Having a great number of learning examples (diagrams previously build by
the user), it is possible to build a tree that can be used for predicting next possible
element in the BPMN diagram. However, the nature of the tree structure requires from
BPMN diagram to not have cycles, which not always can be guaranteed.
4.2 Probabilistic Graphical Models
Probabilistic Graphical Models use a graph-based representation as the basis for com-
pactly encoding a complex probability distribution over a high dimensional space [22].
The most important advantage of probabilistic graphical models over methods described
in Section 4.1 is that it is possible to directly exploit the graphical representation of BP
diagrams, which can be almost immediately translated into such model.
Bayesian networks Bayesian network (BN) [23] is an acyclic graph that represents
dependencies between random variables, and provide graphical representation of the
probabilistic model. The example of a Bayesian network is presented in Figure 10.
B1
G1 G2
B2
Figure 10. Bayesian network
The advantage of BN is that the output of a recommendation is a set of probabilities,
allowing for ranking the suggestion from the most probable to the least probable. For
example to calculate the probability of the value of the random variable B1 from the
Figure 10, the equation 3 can be used. The G1,2 can be denoted as BPMN gateways,
and B1,2 as other blocks, e.g. Tasks or Events. Thus, having any of these blocks given,
we can calculate a probability of a particular block being a missing part.
XXX
P (B1) = P (G1)P (B1|G1)P (B2|G1)P (G2|B1, B2) (3)
G1 G2 B2
This method however, will not be efficient for large diagrams, since exact inference
in Bayesian networks is NP-hard problem. To solve this problem either the small chunks
of BPMN diagram can be selected for the inference, or approximate inference applied.
Markov Chains Markov chain [24] is defined in terms of graph of state space V al(X)
and a transition model τ that defines, for every state x ∈ V al(X) a next-state distri-
bution over V al(X). These models are widely used for text auto-completion and text
correction, but can be easily extended to cope with other problems such as Structural
recommendations, or position-based classification.
We can assume different BPMN block types as states x , and connections between
them as a transition model τ .
0.4
0.5
Gateway Task
0.3
0.75
0.3
0.5
Event
0.25
Figure 11. Markov Chain
An example Markov chain model is presented in Figure 11. The number above the
arrows denotes transition probability from one state to another. The characteristic of the
Markov chains allows for cycles.
5 Case Study
The presented recommendation approaches can be applied to process models, especially
modeled on the basis of the existing processes in a model repository. For the purpose
of evaluation, we prepared 3 different BPMN models of bug tracking systems (Django
and JIRA) and the model of the issue tracking approach in VersionOne. A bug tracking
system is a software application that helps in tracking and documenting the reported
software bugs (or other software issues in a more general case). Such a system is often
integrated with other software project management applications.
Reporter QA
Unreviewed Create Issue
Reporter
[UNREVIEWED]
Reopen defect
[REOPENED]
Create defect
Test
QA
resolution
Any Contributor
Close with any
Review flag
[CLOSED] patch has issues
Any Contributor
Close defect
Cannot be [CLOSED]
reviewed by
author
Developer
Reporter
Accept
[ACCEPTED] Create patch Review patch Developer
fixed Resolve defect
Core Developer [RESOLVED]
Postpone
Review patch
Developer
Core Developer
patch has issues Assess start progress
Make Design resolution Prepare solution
Decision Accept
[OPEN] [IN PROGRESS]
Merge and
resolve as fixed
[FIXED]
Resolve as invalid
wontfix
[WONTFIX] Close defect
[CLOSED]
Figure 12. Django Figure 13. Jira
QA, BA, Leader
QA, BA, Leader
Create defect
[OPEN]
Leader
Leader
Move defect to
Assign
defect future iteration
[FUTURE]
Developer
blocking issues Remove
blockages
Prepare for work Analyze defect [BLOCKED]
on defect cause
[PENDING
[IN ANALYSIS]
Developer
ANALYSIS]
start analysys tests failed
As designed
QA, BA, Leader
Commit Point at build
Asses Prepare defect defect number with
quick fix available solution resolution
resolution solution
[IN PROGRESS] [PENDING
[DONE] TEST]
QA
blocking issues Remove
blockages
[BLOCKED]
QA
Test resolution Accept Close defect
[IN TEST] [ACCEPTED] [CLOSED]
Reject
Defect still occurs [REJECTED]
Figure 14. VersionOne
We selected such models as a case study because of their similarity. As the processes
of different bug trackers present the existing variability, such example can be easily used
to present for recommendation purposes when modeling a new bug tracking flow for
a bucktracking system.
6 Conclusion and future work
This paper focuses on a problem of recommendation methods in BP modeling. Such
methods help in speeding up modeling process and producing less error prone mod-
els than modeling from scratch. The original contribution of the paper is introducing
a categorization of recommendation approaches in BP modeling and short overview of
machine learning methods corresponding to the presented recommendations.
Our future work will focus on specifying recommendation approach for company
management systems in order to enhance modeling process and evaluation of the se-
lected recommendation methods. We plan to carry out a set of experiments aiming at
testing recommendation approaches on various model sets.
References
1. OMG: Business Process Model and Notation (BPMN): Version 2.0 specification. Technical
Report formal/2011-01-03, Object Management Group (2011)
2. Silver, B.: BPMN Method and Style. Cody-Cassidy Press (2009)
3. Mendling, J., Reijers, H.A., van der Aalst, W.M.P.: Seven process modeling guidelines
(7pmg). Information & Software Technology 52 (2010) 127–136
4. Koschmider, A., Hornung, T., Oberweis, A.: Recommendation-based editor for business
process modeling. Data & Knowledge Engineering 70 (2011) 483 – 503
5. Born, M., Brelage, C., Markovic, I., Pfeiffer, D., Weber, I.: Auto-completion for executable
business process models. In Ardagna, D., Mecella, M., Yang, J., eds.: Business Process
Management Workshops. Volume 17 of Lecture Notes in Business Information Processing.
Springer Berlin Heidelberg (2009) 510–515
6. Chan, N., Gaaloul, W., Tata, S.: Context-based service recommendation for assisting busi-
ness process design. In Huemer, C., Setzer, T., eds.: E-Commerce and Web Technologies.
Volume 85 of Lecture Notes in Business Information Processing. Springer Berlin Heidelberg
(2011) 39–51
7. Chan, N., Gaaloul, W., Tata, S.: A recommender system based on historical usage data for
web service discovery. Service Oriented Computing and Applications 6 (2012) 51–63
8. Mazanek, S., Minas, M.: Business process models as a showcase for syntax-based assistance
in diagram editors. In: Proceedings of the 12th International Conference on Model Driven
Engineering Languages and Systems. MODELS ’09, Berlin, Heidelberg, Springer-Verlag
(2009) 322–336
9. Mazanek, S., Rutetzki, C., Minas, M.: Sketch-based diagram editors with user assistance
based on graph transformation and graph drawing techniques. In de Lara, J., Varro, D., eds.:
Proceedings of the Fourth International Workshop on Graph-Based Tools (GraBaTs 2010),
University of Twente, Enschede, The Netherlands, September 28, 2010. Satellite event of
ICGT’10. Volume 32 of Electronic Communications of the EASST. (2010)
10. Hornung, T., Koschmider, A., Lausen, G.: Recommendation based process modeling sup-
port: Method and user experience. In: Proceedings of the 27th International Conference on
Conceptual Modeling. ER ’08, Berlin, Heidelberg, Springer-Verlag (2008) 265–278
11. Koschmider, A., Oberweis, A.: Designing business processes with a recommendation-based
editor. In Brocke, J., Rosemann, M., eds.: Handbook on Business Process Management 1.
International Handbooks on Information Systems. Springer Berlin Heidelberg (2010) 299–
312
12. Wieloch, K., Filipowska, A., Kaczmarek, M.: Autocompletion for business process mod-
elling. In Abramowicz, W., Maciaszek, L., W˛ecel, K., eds.: Business Information Systems
Workshops. Volume 97 of Lecture Notes in Business Information Processing. Springer
Berlin Heidelberg (2011) 30–40
13. Minor, M., Bergmann, R., Görg, S., Walter, K.: Towards case-based adaptation of workflows.
In Bichindaritz, I., Montani, S., eds.: ICCBR. Volume 6176 of Lecture Notes in Computer
Science., Springer (2010) 421–435
14. Leopold, H., Mendling, J., Reijers, H.A.: On the automatic labeling of process models. In
Mouratidis, H., Rolland, C., eds.: Advanced Information Systems Engineering. Volume 6741
of Lecture Notes in Computer Science. Springer Berlin Heidelberg (2011) 512–520
15. Leopold, H., Smirnov, S., Mendling, J.: On the refactoring of activity labels in business
process models. Information Systems 37 (2012) 443–459
16. Kopp, O., Leymann, F., Schumm, D., Unger, T.: On bpmn process fragment auto-completion.
In Eichhorn, D., Koschmider, A., Zhang, H., eds.: Services und ihre Komposition. Proceed-
ings of the 3rd Central-European Workshop on Services and their Composition, ZEUS 2011,
Karlsruhe, Germany, February 21/22. Volume 705 of CEUR Workshop Proceedings., CEUR
(2011) 58–64
17. Jannach, D., Zanker, M., Felfernig, A., Friedrich, G.: Recommender Systems An Introduc-
tion. Cambridge University Press (2011)
18. Wei, K., Huang, J., Fu, S.: A survey of e-commerce recommender systems. In: Service
Systems and Service Management, 2007 International Conference on. (2007) 1–5
19. Bobek, S., Nalepa, G.J.: Overview of context-aware reasoning solutions for mobile devices.
proposal of a rule-based approach. Computer Science and Information Systems (2014) ac-
cepted.
20. Bishop, C.M.: Pattern Recognition and Machine Learning (Information Science and Statis-
tics). Springer-Verlag New York, Inc., Secaucus, NJ, USA (2006)
21. Mitchell, T.M.: Machine Learning. MIT Press and The McGraw-Hill companies, Inc. (1997)
22. Koller, D., Friedman, N.: Probabilistic Graphical Models: Principles and Techniques. MIT
Press (2009)
23. Friedman, N., Geiger, D., Goldszmidt, M.: Bayesian network classifiers. Machine Learning
29 (1997) 131–163
24. Rabiner, L., Juang, B.H.: An introduction to hidden markov models. ASSP Magazine, IEEE
3 (1986) 4–16