Hybrid Process Models Prof.dr.ir. Hajo Reijers
D. Fahland, J. Mendling, H.A. Reijers, B. Weber, M. Weidlich, and S. Zugal. Declarative vs. Imperative Process Modeling Languages: The Issue of Maintainability. In S. Rinderle-Ma, S. Sadiq, and F. Leymann, editors, Proceedings of the BPM workshops 2009, Lecture Notes in Business Information Processing 43, 477-488. Springer Verlag, Berlin, 2010. B. Weber, H.A. Reijers, S. Zugal, and W. Wild. The Declarative Approach to Business Process Execution: An Empirical Test. In P. van Eck, J. Gordijn, and R. Wieringa, editors. Proceedings of the 21st International Conference on Advanced Information Systems (CAiSE 2009), Lecture Notes in Computer Science 5565, 470-485. Springer-Verlag, Berlin, 2009. D. Fahland, D. Lübke, J. Mendling, H.A. Reijers, B. Weber, M. Weidlich, and S. Zugal. Declarative versus Imperative Process Modeling Languages: The Issue of Understandability. In T. Halpin, J. Krogstie, S. Nurcan, E. Proper, R. Schmidt, P. Soffer, and R. Ukor, editors, Proceedings of the 14th International Workshop on ExploringModeling Methods in Systems Analysis and Design 2009 (EMMSAD 2009), Lecture Notes in Business Information Processing 29, 353-366, 2009.
Imperative Process Models
Imperative Process Models
• Flow-oriented • Well-suited to rigid processes • In a model with no flow, nothing can happen • Adding flow allows for additional possible
behaviors • Common in academia and industry
Declarative Process Models
Declarative Process Models
• Constraint-oriented • Well-suited to flexible processes • In an unconstrained model, anything can
happen • Adding constraints limits behavior • Still a novelty in industry
Industry test
• Ten professionals: Five consultants & five developers, average experience in BPM: >11 years, average #models read in last 12 months: 15
• Rather easy to learn • The more experienced, the more optimistic regarding usefulness
H.A. Reijers, T. Slaats, and C. Stahl. Declarative Modeling - An Academic Dream or the Future for BPM? In F. Daniel, J. Wang, and B. Weber, editors, Proceedings of the 11th International Conference on Business Process Management (BPM 2013), Lecture Notes in Computer Science 8094, 307-322, 2013.
Hybrid Process Models
Hybrid Process Models • Different parts of the same process may be more or less flexible. • Modeling a flexible process imperatively, or a strict process declaratively, may lead to incomprehensible models.
• Full-blown mixing of imperative and declarative paradigms:
– Petri nets + Declare [Westergaard et al.] • Mixing of paradigms on the sub-process level:
– Pockets of flexibility in workflow services [Sadiq et al.] – Flexibility as a Service (FAAS) [Aalst et al.]
Hybrid Process Models
Production side
Consumption side
Automated discovery (process mining)
Human modeling
Production side
Define groups
Define blocks
Define relations between
blocks
Define relations between activities
Vivian Hermans
Human modeling
V. Hermans. A hybrid process modeling approach. Master Thesis Report, 76 pages, TU Eindhoven, 2014.
Human modeling
• Partial evaluation of the approach
• Deciding which process part is to be modeled declaratively or impretatively is surprisingly simple
• Overall perception is that the approach is useful, but not so easy to use
Automated Discovery
Event Log Process Model
Fabrizio Maggi
Tijs Slaats
F.M. Maggi, T. Slaats, and H.A. Reijers. The Automated Discovery of Hybrid Processes. In S. Sadiq, P. Soffer, H. Völzer, editors, Proceedings of the 12th International Conference on Business Process Management (BPM 2014), Lecture Notes in Computer Science 8659, 392-399, 2014.
Automated Discovery
Context analysis
Clustering (based on
context analysis)
Clustering (association rule
mining)
Standard Process
Discovery
Declare Discovery
String Edit Distance
Results of Imperative Miners
http://dx.doi.org/10.4121/uuid:3926db30-f712-4394-aebc-75976070e91f
Result of Hybrid Miner
Open issues
• How to guide human developers to create hybrid process models?
• How to deal with some technical issues, e.g. distinguishing parallellism from variation?
• How to properly evaluate the value of a modeling notation?
Questions?
www.reijers.com @profBPM