SlideShare a Scribd company logo
1 of 83
The Automated Discovery of Declarative Process
Models
Claudio Di Ciccio
claudio.di.ciccio@wu.ac.at
Humboldt-Universität zu Berlin, 7 December 2016
www.wu.ac.at
www.wu.ac.at/infobiz
www.wu.ac.at/infobiz/team/diciccio
Control-flow discovery
?
Objective: understanding the
temporal structure that best
describes the process behind
the event log
SEITE 3
Knowledge-intensive
Processes
SEITE 4
Knowledge-intensive
Processes
SEITE 5
Mining flexible processes
SEITE 6
Declarative modelling of
processes
 Usage of constraints
 “Open model”
 Declare
 state-of-the-art language
If A is performed,
B must be performed,
no matter if before or afterwards
(responded existence)
Whenever B is performed,
C must be performed afterwards
and B can not be repeated
until C is done
(alternate response)
SEITE 7
Workflow Nets
as process models
SEITE 8
Imperative v declarative
SEITE 9
SEITE 9
Declarative processes
DECLARE
Declarative process modelling
 “Open model”
 Specify constraints for
permitted behaviour
 Every execution that
complies with them is
acceptable
 Works best with flexible
processes
 The set of DECLARE
templates is extendible
SEITE 11
A fragment of declarative
process model
 If an abstract is submitted, a new paper
had been written or will be written
 After the paper submission, a
confirmation email is sent
 After the paper submission, the paper
will be reviewed;
there can be no review without a
preceding submission
 A paper can be accepted only after it has
been reviewed
 After the rejection, no further
submission follows
 Paper cannot be both accepted and
rejected
SEITE 12
Submit abstract Write new paper
Submit paper
Send
confirmation
email
Submit paper Review paper
Review paper Accept paper
Reject paper Submit paper
Accept paper Reject paper
= activation task
Responded existence(Submit abstract, Write new
paper)
Response(Submit paper, Send confirmation email)
Succession(Submit paper, Review paper)
Precedence(Review paper, Accept paper)
Not succession(Reject paper, Submit paper)
Not co-existence(Accept paper, Reject paper)
Template Tasks
A fragment of declarative
process model
SEITE 13
Submit abstract
Write new paper Submit paper
Send
confirmation
email
Review paper Accept paper
Reject paper
Declare:
Existence Constraint Templates
Existence(n, A)
Activity A occurs at least n times in the process instance
BCAAC ✓ BCAAAC ✓ BCAC ✗ (for n = 2)
Absence(A)
Activity A does not occur in the process instance
BCC ✓ BCAC ✗
Absence(n+1, A)
Activity A occurs at most n-1 times in the process instance
BCAAC ✗ BCAC ✓ BCC ✓ (for n = 2)
Exactly(n, A)
Activity A occurs exactly n times in the process instance
BCAAC ✓ BCAAAC ✗ BCAC ✗ (for n = 2)
Init(A)
Activity A is the first to occur in each process instance
BCAAC ✗ ACAAAC ✓ BCC ✗
Absence(2, A) ≡ AtMostOne(A)
Existence(1, A) ≡ Participation(A)
SEITE 14
Declare:
Relation Constraint Templates
RespondedExistence(A, B)
If A occurs in the process instance, then B occurs as well
CAC ✗ CAACB ✓
BCAC ✓ BCC ✓
SEITE 15
Declare:
Relation Constraint Templates
RespondedExistence(A, B)
If A occurs in the process instance, then B occurs as well
CAC ✗ CAACB ✓
BCAC ✓ BCC ✓
Response(A, B)
If A occurs in the process instance, then B occurs after A
BCAAC ✗ CAACB ✓
CAC ✗ BCC ✓
SEITE 16
Declare:
Relation Constraint Templates
RespondedExistence(A, B)
If A occurs in the process instance, then B occurs as well
CAC ✗ CAACB ✓
BCAC ✓ BCC ✓
Response(A, B)
If A occurs in the process instance, then B occurs after A
BCAAC ✗ CAACB ✓
CAC ✗ BCC ✓
AlternateResponse(A, B)
Each time A occurs in the process instance, then B occurs
afterwards, before A recurs
BCAAC ✗ CAACB ✗ CACB ✓
CABCA ✗ BCC ✓ CACBBAB ✓
SEITE 17
Declare:
Relation Constraint Templates
RespondedExistence(A, B)
If A occurs in the process instance, then B occurs as well
CAC ✗ CAACB ✓
BCAC ✓ BCC ✓
Response(A, B)
If A occurs in the process instance, then B occurs after A
BCAAC ✗ CAACB ✓
CAC ✗ BCC ✓
AlternateResponse(A, B)
Each time A occurs in the process instance, then B occurs
afterwards, before A recurs
BCAAC ✗ CAACB ✗ CACB ✓
CABCA ✗ BCC ✓ CACBBAB ✓
ChainResponse(A, B)
Each time A occurs in the process instance, then B occurs
immediately afterwards
BCAAC ✗ BCAABC ✗ BCABABC ✓
Activation Target
Declare:
Relation Constraint Templates
RespondedExistence(B, A)
If B occurs in the process instance, then A occurs as well
CAC ✓ CAACB ✓
BCAC ✓ BCC ✗
Precedence(A, B)
B occurs in the process instance only if preceded by A
BCAAC ✗ CAACB ✓
CAC ✓ BCC ✓
AlternatePrecedence(A, B)
Each time B occurs in the process instance, it is preceded by A
and no other B can recur in between
BCAAC ✗ CAACB ✓ CACB ✓
CABCA ✓ BCC ✗ CACBAB ✓
ChainPrecedence(A, B)
Each time B occurs in the process instance, then B occurs
immediately beforehand
BCAAC ✗ BCAABC ✗ CABABCA ✓
Target Activation
Declare:
Relation Constraint Templates
CoExistence(A, B) ≡ Resp’dEx.(A, B) ∧ Resp’dEx.(B, A)
If B occurs in the process instance, then A occurs, and viceversa
CAC ✗ CAACB ✓
BCAC ✓ BCC ✗
Succession(A, B) ≡ Response(A, B) ∧ Precedence(A, B)
A occurs if and only if it is followed by B in the process instance
BCAAC ✗ CAACB ✓
CAC ✗ BCC ✗
AlternateSuccession(A, B) ≡ Alt.Resp.(A, B) ∧ Alt.Prec.(A, B)
A and B occur in the process instance if and only if the latter
follows the former, and they alternate each other in the trace
BCAAC ✗ CAACB ✗ CACB ✓
CABCA ✗ BCC ✗ CACBAB ✓
ChainSuccession(A, B) ≡ ChainResp.(A, B) ∧ ChainPrec.(A, B)
A and B occur in the process instance if and only if the latter
immediately follows the former
BCAAC ✗ BCAABC ✗ CABABC ✓
Activation Target
Target Activation
Declare: Negative
Relation Constraint Templates
NotCoExistence(A, B)
A and B never occur together in the process instance
CAC ✓ CAACB ✗
BCAC ✗ BCC ✓
NotSuccession(A, B)
A can never occur before B in the process instance
BCAAC ✓ CAACB ✗
CAC ✓ BCC ✓
NotChainSuccession(A, B)
A and B occur in the process instance if and only if the latter
does not immediately follows the former
BCAAC ✓ BCAABC ✗ CBACBA ✓
Activation Target
Target Activation
Subsumption hierarchy
of constraint templates
SEITE 22
Declarative processes
Discovery of DECLARE models
Constraints mining
?
Objective: understanding the
constraints that best define
the allowed behaviour of the
process behind the event log
SEITE 24
Mining declarative processes:
ingredients
“Submit abstract”,
“Submit paper”,
“Accept paper”,
…
SEITE 25
A,
B,
C,
…
Activities Process alphabet
Mining declarative processes
RespondedExistence(A, B) ?
RespondedExistence(A, C) ?
…
Response(A, B) ?
Response(A, C) ?
…
SEITE 26
• Support:
fraction of cases fulfilling the constraint
• Confidence:
support scaled by fraction of traces in
which the activation occurs
• Interest factor:
confidence scaled by fraction of traces in
which the target occurs
Support Conf. I.F.
Mining declarative processes
RespondedExistence(A, B) ?
RespondedExistence(A, C) ?
…
Response(A, B) ?
Response(A, C) ?
…
SEITE 27
Support Conf. I.F.
• Support:
fraction of cases fulfilling the constraint
• Confidence:
support scaled by fraction of traces in
which the activation occurs
• Interest factor:
confidence scaled by fraction of traces in
which the target occurs
Mining declarative processes
RespondedExistence(A, B) 
RespondedExistence(A, C) 
…
Response(A, B) ?
Response(A, C) 
…
SEITE 28
Support Conf. I.F.
• Support:
fraction of cases fulfilling the constraint
• Confidence:
support scaled by fraction of traces in
which the activation occurs
• Interest factor:
confidence scaled by fraction of traces in
which the target occurs
Mining declarative processes
RespondedExistence(A, B) 
RespondedExistence(A, C) 
…
Response(A, B) 
Response(A, C) 
…
SEITE 29
Support Conf. I.F.
• Support:
fraction of cases fulfilling the constraint
• Confidence:
support scaled by fraction of traces in
which the activation occurs
• Interest factor:
confidence scaled by fraction of traces in
which the target occurs
Constraints mining
An example
SEITE 30
A A B C A B C A C B C D
A C C A B B C B C A C B B D
C C C C C A A B C A A B A A B
A B B B D
C B A B D
A B B D
A A A C A C B D
A B C D
C A B A A C C B B D
B C C D
C A A C C C A A B C B C C B D
The role of Support
(event-based)
A A B C A B C A C B C D
A C C A B B C B C A C B B D
C C C C C A A B C A A B A A B
A B B B D
C B A B D
A B B D
A A A C A C B D
A B C D
C A B A A C C B B D
B C C D
C A A C C C A A B C B C C B D
 Support for
 Response(A, B)
 1.0
 Precedence(A, B)
 0.926 (25/27)
 Pruning on the basis of a
support threshold
 E.g., 0.95
 A threshold equal to 1.0
for a constraint means
“always valid in the log”
Activation
Target
Target
Activation
SEITE 31
http://github.com/cdc08x/minerful
Prom Nightly Builds > “Declare MINERful” plug-in
The role of Support
(trace-based)
A A B C A B C A C B C D
A C C A B B C B C A C B B D
C C C C C A A B C A A B A A B
A B B B D
C B A B D
A B B D
A A A C A C B D
A B C D
C A B A A C C B B D
B C C D
C A A C C C A A B C B C C B D
 Support for
 Response(A, B)
 1.0
 Precedence(A, B)
 0.818 (9/11)
 Pruning on the basis of a
support threshold
 E.g., 0.95
 A threshold equal to 1.0
for a constraint means
“always valid in the log”
SEITE 32 http://sourceforge.net/projects/prom/files/ProM/6.3
Declarative processes
Challenges
SEITE 34
Objective
SEITE 35
Make mined models
intelligible
 Prune irrelevant/redundant information
 Detect inconsistencies (yes, it happens)
 Picture what the model tells
 Increase the expressiveness of discovered
models
 Specify templates
SEITE 36
Make mined models
intelligible
 Prune irrelevant/redundant information
 Detect inconsistencies (yes, it happens)
 Picture what the model tells
 Increase the expressiveness of discovered
models
 Specify templates
SEITE 37
© Granger, NYC, source: https://www.granger.com/
Redundancies in discovered
constraints
 E.g.,
 A trace like
A B A B C A B C C
satisfies (w.r.t. A and B):
 RespondedExistence(A, B), RespondedExistence(B, A),
Response(A, B), AlternateResponse(A, B), ChainResponse(A, B),
Precedence(A, B), AlternatePrecedence(A, B), ChainPrecedence(A, B),
CoExistence(A, B), CoExistence(B, A),
Succession(A, B), AlternateSuccession(A, B), ChainSuccession(A, B)
 Among them, the mining algorithm should return only
the most restricting constraint – i.e., ChainSuccession(A, B)
 In order to face this issue, returned constraints
are pruned on the basis of the subsumption
hierarchy of constraints
SEITE 38
Pruning redundant constraints
1.0
1.0
1.0
1.01.0
1.0
1.0
1.0
1.0
1.0
1.0
✖
✖
✖
✖
✖
✖✖
✖✖
✖
SEITE 39
Pruning redundant constraints
0.8
0.8
0.9
0.90.9
0.9
0.7
0.7
0.9
0.9
0.9
✖ ✖
?
?
✖
✖
✖
?
?
S
u
p
p
o
r
t
✖
✖
✖
✖
SEITE 40
Mining declarative processes
RespondedExistence(A, B) 
RespondedExistence(A, C) ?
…
Response(A, B) 
Response(A, C) 
…
SEITE 41
Support Conf. I.F.
Mining declarative processes
RespondedExistence(A, B) 
RespondedExistence(A, C) ?
…
Response(A, B) 
Response(A, C) 
…
SEITE 42
Support Conf. I.F.
Mining declarative processes
RespondedExistence(A, B) 
RespondedExistence(A, C) 
…
Response(A, B) 
Response(A, C) 
…
SEITE 43
Support Conf. I.F.
http://github.com/cdc08x/minerful
Prom Nightly Builds > “Declare MINERful” plug-in
http://sourceforge.net/projects/prom/files/ProM/6.3
Make mined models
intelligible
 Prune irrelevant/redundant information
 Detect inconsistencies (yes, it happens)
 Picture what the model tells
 Increase the expressiveness of discovered
models
 Specify templates
SEITE 44
Make mined models
intelligible
 Prune irrelevant/redundant information
 Detect inconsistencies (yes, it happens)
 Picture what the model tells
 Increase the expressiveness of discovered
models
 Specify templates
Interlude
DECLARE & Regular Expressions
SEITE 45
Mining declarative processes
RespondedExistence(A, B)
RespondedExistence(A, C)
and
Response(A, B)
Response(A, C)
and
…
SEITE 46
Semantics of Declare:
Regular Expressions
SEITE 47
From constraints-based model
to FSA
SEITE 48
[^a]*((a.*b.*)|(b.*a.*))*[^a]* [^a]*(a.*c)*[^a]*

Regular
Expression
Deterministic
Finite
State
Automaton
RespondedExistence(A, B)
RespondedExistence(A, C)
and
Response(A, B)
Response(A, C)
and
…
Make mined models
intelligible
 Prune irrelevant/redundant information
 Detect inconsistencies (yes, it happens)
 Picture what the model tells
 Increase the expressiveness of discovered
models
Reprise
SEITE 49
While mining a real-life log…
SEITE 50
Time to challenge the X
SEITE 51

The result
SEITE 52
The problem
 When support threshold is lower than 100%,
constraints can be valid through most of the log, though being in conflict
 Example: an event log consists of two traces:
1. <A, B, A, B, A, B, C>
2. <A, B, A, B, A, C>
 Support threshold: 0.7
• a is always the first
 Init(A)
• c is always the last
 End(C)
• In 6 cases over 8 (75%), a and c do not directly follow
each other
 NotChainSuccession(A, C)
• In 5 cases over 7 (71.143%), b and c do not directly follow
each other
 NotChainSuccession(B, C)
SEITE 53
The problem
 When support threshold is lower than 100%,
constraints can be valid through most of the log, though being in conflict
 Example: an event log consists of two traces:
1. <A, B, A, B, A, B, C>
2. <A, B, A, B, A, C>
 Support threshold: 0.7
• a is always the first
 Init(A)
• c is always the last
 End(C)
• In 6 cases over 8 (75%), a and c do not directly follow
each other
 NotChainSuccession(A, C)
• In 5 cases over 7 (71.143%), a and b do not directly follow
each other
 NotChainSuccession(B, C)
 Question: what can be done right before C?
 inconsistency!
SEITE 54
The algorithm to detect
inconsistencies
SEITE 55

Init(a)
Participation(b)
AtMostOne(c)
End(c)
ChainPrecedence(a, b)
…
ChainSuccession(a, b)
Response(a, b)
ChainResponse(b, a)
NotChainSuccession(a, c)
ChainSuccession(b, a)
NotChainSuccession(b, c)
…
…
…
1
The algorithm to detect
inconsistencies

Init(a)
Participation(b)
AtMostOne(c)
End(c)
ChainPrecedence(a, b)
…
ChainSuccession(a, b)
Response(a, b)
ChainResponse(b, a)
NotChainSuccession(a, c) 
ChainSuccession(b, a)
NotChainSuccession(b, c)
…
…
…
1
2
SEITE 56 http://github.com/cdc08x/minerful
SEITE 57
Make mined models
intelligible
 Prune irrelevant/redundant information
 Detect inconsistencies (yes, it happens)
 Picture what the model tells
 Increase the expressiveness of discovered
models
SEITE 58
© Granger, NYC, source: https://www.granger.com/
The application of the method
to minimise the model
 Rationale:
1. How to find redundancies among constraints?
 Use the automaton-model correspondence
 Same language recognised after the product?
 Main difference with the inconsistency-
checking algorithm
 Constraints having support 100% are checked for
redundancies
 More details in the paper
SEITE 59 http://github.com/cdc08x/minerful
The application of the method
to minimise the model
SEITE 60
BPIC 2012
Make mined models
intelligible
 Prune irrelevant/redundant information
 Detect inconsistencies (yes, it happens)
 Picture what the model tells
 Inspect the imperative counterpart
 Simulate runs
 Increase the expressiveness of discovered
models
 Specify templates
SEITE 61
From declarative to imperative
models
SEITE 62
Response(Queued, Accepted)
NotChainSuccession(Queued, Completed)
Response(Queued, Completed)
NotChainSuccession(Queued, Unmatched)
Response(Accepted, Completed)
End(Completed)
NotSuccession(Completed, Unmatched)
AtMostOne(Unmatched)
RespondedExistence(Unmatched, Accepted)
AlternateResponse(Unmatched, Completed)



…
Make mined models
intelligible
 Prune irrelevant/redundant information
 Detect inconsistencies (yes, it happens)
 Picture what the model tells
 Inspect the imperative counterpart
 Simulate runs
 Increase the expressiveness of discovered
models
 Specify templates
SEITE 63
Generation of logs
SEITE 64
http://github.com/cdc08x/minerful
http://github.com/processmining/synthetic-log-generator
Make mined models
intelligible
 Prune irrelevant/redundant information
 Detect inconsistencies (yes, it happens)
 Picture what the model tells
 Inspect the imperative counterpart
 Simulate runs
 Increase the expressiveness of discovered
models
 Specify templates
SEITE 65
Target-Branched Declare
Support for
 Response(A, {B, C})
 1.0
B A A B A B C D
A A D B B A A D C
B A D D A D D A B E
C A B C
D A D B D
A E A C
A A A D B
D A D D B D
A A A D C D
A D D D A C
A A B
E D E B C E E C B E
SEITE 66
Activation
Target
Branching factor = 2
Objective
SEITE 67
+ Expressive Power
+ Conciseness
Evaluation:
constraints pruning
SEITE 68
BPI Challenge 2012
(0) 6,654,480 (1) 10,676 (2) 1446 (3) 12
Evaluation:
performance
SEITE 69
BPI Challenge 2012
(KB) 00:07.274 (Const’s) 25:51.678 (Total) 26:11.380
http://github.com/cdc08x/minerful
Make mined models
intelligible
 Prune irrelevant/redundant information
 Detect inconsistencies (yes, it happens)
 Picture what the model tells
 Inspect the imperative counterpart
 Simulate runs
 Increase the expressiveness of discovered
models
 Specify templates
SEITE 70
Semantics of Declare:
LTL and LTLf
 Linear Temporal Logic (LTL) initially was a
specification language for the execution of
(endless) concurrent programs (Pnueli, 1977)
 Syntax (let A be a propositional symbol):
 DECLARE was initially based on LTL
SEITE 71
“Until”
“Eventually”“Always”
“Next”
Semantics of Declare:
LTL
SEITE 72
Declarative process modelling
 “Open model”
 Specify constraints for
permitted behaviour
 Every execution that
complies with them is
acceptable
 Works best with flexible
processes
 The set of DECLARE
templates is extendible
SEITE 73
Extendibility of DECLARE:
A clear business impact
SEITE 74
Source: http://businessvalueexchange.com/
Semantics of Declare:
LTL and LTLf
 Linear Temporal Logic (LTL) initially was a
specification language for the execution of
(endless) concurrent programs (Pnueli, 1977)
 Syntax (let A be a propositional symbol):
 Interpretation over infinite traces,
i.e., an infinite sequence of consecutive instants of time
 LTLf formulae are meant to be interpreted over
finite traces
“Until”
“Eventually”“Always”
“Next”
SEITE 75
Semantics of Declare:
LTLf
SEITE 76
Semantics of Declare:
SCIFF
SEITE 77
Semantics of Declare:
R/I-nets
SEITE 78
Semantics of Declare:
FOL over finite traces
SEITE 79
Semantics of Declare:
Regular expressions
SEITE 80
More alternatives for DECLARE
spec.: A clear business impact
SEITE 81
Source: http://businessconsultantsnewyork.blogspot.co.at/
My long-term objective
 Establish an algebra of constraint templates,
built on a basis of behavioural relations that
are:
 orthogonal to one another (no entailments,
subsumptions…)
 covering multiple trace-based behavioural relations
definition languages by linear composition
 have clear semantics (last but for sure NOT least)
 ...
SEITE 82
Further reading
 Presented:
 About MINERful:
 Claudio Di Ciccio, Massimo Mecella: On the Discovery of Declarative Control Flows for Artful Processes. ACM Trans.
Management Inf. Syst. 5(4): 24:1-24:37 (2015)
 Simulation of DECLARE models:
 Claudio Di Ciccio, Mario Luca Bernardi, Marta Cimitile, Fabrizio Maria Maggi: Generating Event Logs Through the
Simulation of Declare Models. EOMAS@CAiSE 2015: 20-36
 Discovery of target-branched DECLARE models:
 Claudio Di Ciccio, Fabrizio Maria Maggi, Jan Mendling: Efficient discovery of Target-Branched Declare constraints. Inf.
Syst. 56: 258-283 (2016)
 Getting rid of redundancies and inconsistencies:
 Claudio Di Ciccio, Fabrizio Maria Maggi, Marco Montali, Jan Mendling: Ensuring Model Consistency in Declarative
Process Discovery. BPM 2015: 144-159
 From DECLARE to Petri nets:
 Johannes Prescher, Claudio Di Ciccio, Jan Mendling: From Declarative Processes to Imperative Models. SIMPDA 2014:
162-173
 More:
 First steps towards data awareness of discovered DECLARE models:
 Stefan Schönig, Claudio Di Ciccio, Fabrizio Maria Maggi, Jan Mendling: Discovery of Multi-perspective Declarative
Process Models. ICSOC 2016: 87-103
 Against the little learnibility of DECLARE:
 Michael Hanser, Claudio Di Ciccio, Jan Mendling: A New Notational Framework for Declarative Process Modeling.
Softwaretechnik-Trends 36(2) (2016)
 Guarantee of the significance of discovered DECLARE models:
 Fabrizio Maria Maggi, Marco Montali, Claudio Di Ciccio, Jan Mendling: Semantical Vacuity Detection in Declarative
Process Mining. BPM 2016: 158-175
SEITE 83

More Related Content

What's hot

Gemba walk: the start of your lean journey
Gemba walk: the start of your lean journeyGemba walk: the start of your lean journey
Gemba walk: the start of your lean journeyboscollkid
 
The Evolving Role of the Business Analyst
The Evolving Role of the Business AnalystThe Evolving Role of the Business Analyst
The Evolving Role of the Business AnalystTracy Cook
 
Process Mining - Chapter 9 - Operational Support
Process Mining - Chapter 9 - Operational SupportProcess Mining - Chapter 9 - Operational Support
Process Mining - Chapter 9 - Operational SupportWil van der Aalst
 
Business Process Management Introduction
Business Process Management IntroductionBusiness Process Management Introduction
Business Process Management IntroductionGBTEC Software AG
 
Kaizen Events Blitz & Lean Projects
Kaizen Events   Blitz  & Lean ProjectsKaizen Events   Blitz  & Lean Projects
Kaizen Events Blitz & Lean ProjectsAnand Subramaniam
 
Business analyst
Business analystBusiness analyst
Business analystlavinal
 
Introduction to Business Analysis
Introduction to Business AnalysisIntroduction to Business Analysis
Introduction to Business AnalysisSwatiS-BA
 
Introduction to Business Process Monitoring and Process Mining
Introduction to Business Process Monitoring and Process MiningIntroduction to Business Process Monitoring and Process Mining
Introduction to Business Process Monitoring and Process MiningMarlon Dumas
 
敏捷开发技术最佳实践(统一敏捷开发过程)
敏捷开发技术最佳实践(统一敏捷开发过程)敏捷开发技术最佳实践(统一敏捷开发过程)
敏捷开发技术最佳实践(统一敏捷开发过程)Weijun Zhong
 
Apache Kafka and the Data Mesh | Michael Noll, Confluent
Apache Kafka and the Data Mesh | Michael Noll, ConfluentApache Kafka and the Data Mesh | Michael Noll, Confluent
Apache Kafka and the Data Mesh | Michael Noll, ConfluentHostedbyConfluent
 
The Business Analyst And The Sdlc
The Business Analyst And The SdlcThe Business Analyst And The Sdlc
The Business Analyst And The SdlcCraig Brown
 
Architecture + Process: BPM for Enterprise Architects
Architecture + Process: BPM for Enterprise ArchitectsArchitecture + Process: BPM for Enterprise Architects
Architecture + Process: BPM for Enterprise ArchitectsMichael zur Muehlen
 
Process Mining Introduction
Process Mining IntroductionProcess Mining Introduction
Process Mining IntroductionVala Ali Rohani
 

What's hot (20)

Gemba walk: the start of your lean journey
Gemba walk: the start of your lean journeyGemba walk: the start of your lean journey
Gemba walk: the start of your lean journey
 
The Evolving Role of the Business Analyst
The Evolving Role of the Business AnalystThe Evolving Role of the Business Analyst
The Evolving Role of the Business Analyst
 
Montali: Declarative, Constraint-Based Business Process Management - Seville ...
Montali: Declarative, Constraint-Based Business Process Management - Seville ...Montali: Declarative, Constraint-Based Business Process Management - Seville ...
Montali: Declarative, Constraint-Based Business Process Management - Seville ...
 
Kaizen Poster
Kaizen PosterKaizen Poster
Kaizen Poster
 
Process Mining - Chapter 9 - Operational Support
Process Mining - Chapter 9 - Operational SupportProcess Mining - Chapter 9 - Operational Support
Process Mining - Chapter 9 - Operational Support
 
Business Process Management Introduction
Business Process Management IntroductionBusiness Process Management Introduction
Business Process Management Introduction
 
Kaizen Events Blitz & Lean Projects
Kaizen Events   Blitz  & Lean ProjectsKaizen Events   Blitz  & Lean Projects
Kaizen Events Blitz & Lean Projects
 
Business analyst
Business analystBusiness analyst
Business analyst
 
Introduction to Business Analysis
Introduction to Business AnalysisIntroduction to Business Analysis
Introduction to Business Analysis
 
Six Sigma Yellow Belt
Six Sigma Yellow BeltSix Sigma Yellow Belt
Six Sigma Yellow Belt
 
Business Process Management Approach
Business Process Management Approach  Business Process Management Approach
Business Process Management Approach
 
Introduction to Business Process Monitoring and Process Mining
Introduction to Business Process Monitoring and Process MiningIntroduction to Business Process Monitoring and Process Mining
Introduction to Business Process Monitoring and Process Mining
 
What is bpm
What is bpmWhat is bpm
What is bpm
 
Kaizen
KaizenKaizen
Kaizen
 
敏捷开发技术最佳实践(统一敏捷开发过程)
敏捷开发技术最佳实践(统一敏捷开发过程)敏捷开发技术最佳实践(统一敏捷开发过程)
敏捷开发技术最佳实践(统一敏捷开发过程)
 
Apache Kafka and the Data Mesh | Michael Noll, Confluent
Apache Kafka and the Data Mesh | Michael Noll, ConfluentApache Kafka and the Data Mesh | Michael Noll, Confluent
Apache Kafka and the Data Mesh | Michael Noll, Confluent
 
Gemba walk
Gemba walkGemba walk
Gemba walk
 
The Business Analyst And The Sdlc
The Business Analyst And The SdlcThe Business Analyst And The Sdlc
The Business Analyst And The Sdlc
 
Architecture + Process: BPM for Enterprise Architects
Architecture + Process: BPM for Enterprise ArchitectsArchitecture + Process: BPM for Enterprise Architects
Architecture + Process: BPM for Enterprise Architects
 
Process Mining Introduction
Process Mining IntroductionProcess Mining Introduction
Process Mining Introduction
 

Viewers also liked

Del mito al logo
Del mito al logoDel mito al logo
Del mito al logonaxo luz
 
Lesson plan 8 octavo basico question words in the present
Lesson plan 8 octavo basico question words in the presentLesson plan 8 octavo basico question words in the present
Lesson plan 8 octavo basico question words in the presentRafael Alejandro
 
WSI Video Marketing Packages 2016
WSI Video Marketing Packages 2016WSI Video Marketing Packages 2016
WSI Video Marketing Packages 2016EworksWSI Cyprus
 
Ritmos circadianos
Ritmos circadianosRitmos circadianos
Ritmos circadianosjruizmed
 
Memorias Usb y Aplicaciones Portables
Memorias Usb y Aplicaciones PortablesMemorias Usb y Aplicaciones Portables
Memorias Usb y Aplicaciones PortablesCarlos Soler
 
Semantical Vacuity Detection in Declarative Process Mining
Semantical Vacuity Detection in Declarative Process MiningSemantical Vacuity Detection in Declarative Process Mining
Semantical Vacuity Detection in Declarative Process MiningClaudio Di Ciccio
 
TEDxGhent 2016 PhD Contest
TEDxGhent 2016 PhD ContestTEDxGhent 2016 PhD Contest
TEDxGhent 2016 PhD ContestJan Claes
 
Hoe business intelligence zich verhoudt tot process mining
Hoe business intelligence zich verhoudt tot process miningHoe business intelligence zich verhoudt tot process mining
Hoe business intelligence zich verhoudt tot process miningO&i Management Consultants
 
Travesías entre refugios
Travesías entre refugiosTravesías entre refugios
Travesías entre refugiosguiandosentidos
 
Un largo bertedero con barquitos de papel
Un largo bertedero con barquitos de papelUn largo bertedero con barquitos de papel
Un largo bertedero con barquitos de papelDaniel Dagna
 

Viewers also liked (20)

IPAC Brochure
IPAC BrochureIPAC Brochure
IPAC Brochure
 
Diaposotivas proyecto futuro I Oscar David G.M
Diaposotivas proyecto futuro I Oscar David G.MDiaposotivas proyecto futuro I Oscar David G.M
Diaposotivas proyecto futuro I Oscar David G.M
 
Del mito al logo
Del mito al logoDel mito al logo
Del mito al logo
 
Jakou učebnici fyziky pro 21. století?
Jakou učebnici fyziky pro 21. století?Jakou učebnici fyziky pro 21. století?
Jakou učebnici fyziky pro 21. století?
 
Lesson plan 8 octavo basico question words in the present
Lesson plan 8 octavo basico question words in the presentLesson plan 8 octavo basico question words in the present
Lesson plan 8 octavo basico question words in the present
 
WSI Video Marketing Packages 2016
WSI Video Marketing Packages 2016WSI Video Marketing Packages 2016
WSI Video Marketing Packages 2016
 
Agenda networker
Agenda networkerAgenda networker
Agenda networker
 
Vivienda jacal
Vivienda jacalVivienda jacal
Vivienda jacal
 
marketing forum
marketing forummarketing forum
marketing forum
 
Cesar vallejo
Cesar vallejoCesar vallejo
Cesar vallejo
 
Laboratorio de física II Ley de Ohm
Laboratorio de física II Ley de OhmLaboratorio de física II Ley de Ohm
Laboratorio de física II Ley de Ohm
 
Ritmos circadianos
Ritmos circadianosRitmos circadianos
Ritmos circadianos
 
Memorias Usb y Aplicaciones Portables
Memorias Usb y Aplicaciones PortablesMemorias Usb y Aplicaciones Portables
Memorias Usb y Aplicaciones Portables
 
Semantical Vacuity Detection in Declarative Process Mining
Semantical Vacuity Detection in Declarative Process MiningSemantical Vacuity Detection in Declarative Process Mining
Semantical Vacuity Detection in Declarative Process Mining
 
TEDxGhent 2016 PhD Contest
TEDxGhent 2016 PhD ContestTEDxGhent 2016 PhD Contest
TEDxGhent 2016 PhD Contest
 
Hoe business intelligence zich verhoudt tot process mining
Hoe business intelligence zich verhoudt tot process miningHoe business intelligence zich verhoudt tot process mining
Hoe business intelligence zich verhoudt tot process mining
 
Informe final metodología de la Investigación 2
Informe final metodología de la Investigación 2Informe final metodología de la Investigación 2
Informe final metodología de la Investigación 2
 
Travesías entre refugios
Travesías entre refugiosTravesías entre refugios
Travesías entre refugios
 
2015-Polyform Catalog
2015-Polyform Catalog2015-Polyform Catalog
2015-Polyform Catalog
 
Un largo bertedero con barquitos de papel
Un largo bertedero con barquitos de papelUn largo bertedero con barquitos de papel
Un largo bertedero con barquitos de papel
 

Similar to Automated Discovery of Declarative Process Models

Ensuring Model Consistency in Declarative Process Discovery
Ensuring Model Consistency in Declarative Process DiscoveryEnsuring Model Consistency in Declarative Process Discovery
Ensuring Model Consistency in Declarative Process DiscoveryClaudio Di Ciccio
 
Discovering Target-Branched Declare Constraints
Discovering Target-Branched Declare ConstraintsDiscovering Target-Branched Declare Constraints
Discovering Target-Branched Declare ConstraintsClaudio Di Ciccio
 
Resolving Inconsistencies and Redundancies in Declarative Process Models
Resolving Inconsistencies and Redundancies in Declarative Process ModelsResolving Inconsistencies and Redundancies in Declarative Process Models
Resolving Inconsistencies and Redundancies in Declarative Process ModelsClaudio Di Ciccio
 
Introduction to the declarative specification of processes
Introduction to the declarative specification of processesIntroduction to the declarative specification of processes
Introduction to the declarative specification of processesClaudio Di Ciccio
 
Dac07
Dac07Dac07
Dac07makro
 

Similar to Automated Discovery of Declarative Process Models (6)

Ensuring Model Consistency in Declarative Process Discovery
Ensuring Model Consistency in Declarative Process DiscoveryEnsuring Model Consistency in Declarative Process Discovery
Ensuring Model Consistency in Declarative Process Discovery
 
Discovering Target-Branched Declare Constraints
Discovering Target-Branched Declare ConstraintsDiscovering Target-Branched Declare Constraints
Discovering Target-Branched Declare Constraints
 
Resolving Inconsistencies and Redundancies in Declarative Process Models
Resolving Inconsistencies and Redundancies in Declarative Process ModelsResolving Inconsistencies and Redundancies in Declarative Process Models
Resolving Inconsistencies and Redundancies in Declarative Process Models
 
Introduction to the declarative specification of processes
Introduction to the declarative specification of processesIntroduction to the declarative specification of processes
Introduction to the declarative specification of processes
 
Dac07
Dac07Dac07
Dac07
 
Doe introductionh
Doe introductionhDoe introductionh
Doe introductionh
 

More from Claudio Di Ciccio

Look but don’t touch: On the impalpable bond between blockchain and process
Look but don’t touch: On the impalpable bond between blockchain and processLook but don’t touch: On the impalpable bond between blockchain and process
Look but don’t touch: On the impalpable bond between blockchain and processClaudio Di Ciccio
 
Measurement of Rule-based LTLf Declarative Process Specifications
Measurement of Rule-based LTLf Declarative Process SpecificationsMeasurement of Rule-based LTLf Declarative Process Specifications
Measurement of Rule-based LTLf Declarative Process SpecificationsClaudio Di Ciccio
 
Blockchain and smart contracts: infrastructure and platforms
Blockchain and smart contracts: infrastructure and platformsBlockchain and smart contracts: infrastructure and platforms
Blockchain and smart contracts: infrastructure and platformsClaudio Di Ciccio
 
Declarative Specification of Processes: Discovery and Reasoning
Declarative Specification of Processes: Discovery and ReasoningDeclarative Specification of Processes: Discovery and Reasoning
Declarative Specification of Processes: Discovery and ReasoningClaudio Di Ciccio
 
Extracting Event Logs for Process Mining from Data Stored on the Blockchain
Extracting Event Logs for Process Mining from Data Stored on the BlockchainExtracting Event Logs for Process Mining from Data Stored on the Blockchain
Extracting Event Logs for Process Mining from Data Stored on the BlockchainClaudio Di Ciccio
 
Execution of business processes on the blockchain
Execution of business processes on the blockchainExecution of business processes on the blockchain
Execution of business processes on the blockchainClaudio Di Ciccio
 
Blockchain based traceability of inter-organisational business processes
Blockchain based traceability of inter-organisational business processesBlockchain based traceability of inter-organisational business processes
Blockchain based traceability of inter-organisational business processesClaudio Di Ciccio
 
Log-Based Understanding of Business Processes through Temporal Logic Query Ch...
Log-Based Understanding of Business Processes through Temporal Logic Query Ch...Log-Based Understanding of Business Processes through Temporal Logic Query Ch...
Log-Based Understanding of Business Processes through Temporal Logic Query Ch...Claudio Di Ciccio
 
Detecting Flight Trajectory Anomalies and Predicting Diversions in Freight Tr...
Detecting Flight Trajectory Anomalies and Predicting Diversions in Freight Tr...Detecting Flight Trajectory Anomalies and Predicting Diversions in Freight Tr...
Detecting Flight Trajectory Anomalies and Predicting Diversions in Freight Tr...Claudio Di Ciccio
 

More from Claudio Di Ciccio (9)

Look but don’t touch: On the impalpable bond between blockchain and process
Look but don’t touch: On the impalpable bond between blockchain and processLook but don’t touch: On the impalpable bond between blockchain and process
Look but don’t touch: On the impalpable bond between blockchain and process
 
Measurement of Rule-based LTLf Declarative Process Specifications
Measurement of Rule-based LTLf Declarative Process SpecificationsMeasurement of Rule-based LTLf Declarative Process Specifications
Measurement of Rule-based LTLf Declarative Process Specifications
 
Blockchain and smart contracts: infrastructure and platforms
Blockchain and smart contracts: infrastructure and platformsBlockchain and smart contracts: infrastructure and platforms
Blockchain and smart contracts: infrastructure and platforms
 
Declarative Specification of Processes: Discovery and Reasoning
Declarative Specification of Processes: Discovery and ReasoningDeclarative Specification of Processes: Discovery and Reasoning
Declarative Specification of Processes: Discovery and Reasoning
 
Extracting Event Logs for Process Mining from Data Stored on the Blockchain
Extracting Event Logs for Process Mining from Data Stored on the BlockchainExtracting Event Logs for Process Mining from Data Stored on the Blockchain
Extracting Event Logs for Process Mining from Data Stored on the Blockchain
 
Execution of business processes on the blockchain
Execution of business processes on the blockchainExecution of business processes on the blockchain
Execution of business processes on the blockchain
 
Blockchain based traceability of inter-organisational business processes
Blockchain based traceability of inter-organisational business processesBlockchain based traceability of inter-organisational business processes
Blockchain based traceability of inter-organisational business processes
 
Log-Based Understanding of Business Processes through Temporal Logic Query Ch...
Log-Based Understanding of Business Processes through Temporal Logic Query Ch...Log-Based Understanding of Business Processes through Temporal Logic Query Ch...
Log-Based Understanding of Business Processes through Temporal Logic Query Ch...
 
Detecting Flight Trajectory Anomalies and Predicting Diversions in Freight Tr...
Detecting Flight Trajectory Anomalies and Predicting Diversions in Freight Tr...Detecting Flight Trajectory Anomalies and Predicting Diversions in Freight Tr...
Detecting Flight Trajectory Anomalies and Predicting Diversions in Freight Tr...
 

Recently uploaded

Call Girls In Mahipalpur O9654467111 Escorts Service
Call Girls In Mahipalpur O9654467111  Escorts ServiceCall Girls In Mahipalpur O9654467111  Escorts Service
Call Girls In Mahipalpur O9654467111 Escorts ServiceSapana Sha
 
04242024_CCC TUG_Joins and Relationships
04242024_CCC TUG_Joins and Relationships04242024_CCC TUG_Joins and Relationships
04242024_CCC TUG_Joins and Relationshipsccctableauusergroup
 
Dubai Call Girls Wifey O52&786472 Call Girls Dubai
Dubai Call Girls Wifey O52&786472 Call Girls DubaiDubai Call Girls Wifey O52&786472 Call Girls Dubai
Dubai Call Girls Wifey O52&786472 Call Girls Dubaihf8803863
 
Low Rate Call Girls Bhilai Anika 8250192130 Independent Escort Service Bhilai
Low Rate Call Girls Bhilai Anika 8250192130 Independent Escort Service BhilaiLow Rate Call Girls Bhilai Anika 8250192130 Independent Escort Service Bhilai
Low Rate Call Girls Bhilai Anika 8250192130 Independent Escort Service BhilaiSuhani Kapoor
 
100-Concepts-of-AI by Anupama Kate .pptx
100-Concepts-of-AI by Anupama Kate .pptx100-Concepts-of-AI by Anupama Kate .pptx
100-Concepts-of-AI by Anupama Kate .pptxAnupama Kate
 
Generative AI on Enterprise Cloud with NiFi and Milvus
Generative AI on Enterprise Cloud with NiFi and MilvusGenerative AI on Enterprise Cloud with NiFi and Milvus
Generative AI on Enterprise Cloud with NiFi and MilvusTimothy Spann
 
Delhi Call Girls CP 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
Delhi Call Girls CP 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip CallDelhi Call Girls CP 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
Delhi Call Girls CP 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Callshivangimorya083
 
꧁❤ Greater Noida Call Girls Delhi ❤꧂ 9711199171 ☎️ Hard And Sexy Vip Call
꧁❤ Greater Noida Call Girls Delhi ❤꧂ 9711199171 ☎️ Hard And Sexy Vip Call꧁❤ Greater Noida Call Girls Delhi ❤꧂ 9711199171 ☎️ Hard And Sexy Vip Call
꧁❤ Greater Noida Call Girls Delhi ❤꧂ 9711199171 ☎️ Hard And Sexy Vip Callshivangimorya083
 
Delhi Call Girls Punjabi Bagh 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
Delhi Call Girls Punjabi Bagh 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip CallDelhi Call Girls Punjabi Bagh 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
Delhi Call Girls Punjabi Bagh 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Callshivangimorya083
 
Unveiling Insights: The Role of a Data Analyst
Unveiling Insights: The Role of a Data AnalystUnveiling Insights: The Role of a Data Analyst
Unveiling Insights: The Role of a Data AnalystSamantha Rae Coolbeth
 
Week-01-2.ppt BBB human Computer interaction
Week-01-2.ppt BBB human Computer interactionWeek-01-2.ppt BBB human Computer interaction
Week-01-2.ppt BBB human Computer interactionfulawalesam
 
Mature dropshipping via API with DroFx.pptx
Mature dropshipping via API with DroFx.pptxMature dropshipping via API with DroFx.pptx
Mature dropshipping via API with DroFx.pptxolyaivanovalion
 
Brighton SEO | April 2024 | Data Storytelling
Brighton SEO | April 2024 | Data StorytellingBrighton SEO | April 2024 | Data Storytelling
Brighton SEO | April 2024 | Data StorytellingNeil Barnes
 
定制英国白金汉大学毕业证(UCB毕业证书) 成绩单原版一比一
定制英国白金汉大学毕业证(UCB毕业证书)																			成绩单原版一比一定制英国白金汉大学毕业证(UCB毕业证书)																			成绩单原版一比一
定制英国白金汉大学毕业证(UCB毕业证书) 成绩单原版一比一ffjhghh
 
EMERCE - 2024 - AMSTERDAM - CROSS-PLATFORM TRACKING WITH GOOGLE ANALYTICS.pptx
EMERCE - 2024 - AMSTERDAM - CROSS-PLATFORM  TRACKING WITH GOOGLE ANALYTICS.pptxEMERCE - 2024 - AMSTERDAM - CROSS-PLATFORM  TRACKING WITH GOOGLE ANALYTICS.pptx
EMERCE - 2024 - AMSTERDAM - CROSS-PLATFORM TRACKING WITH GOOGLE ANALYTICS.pptxthyngster
 
Beautiful Sapna Vip Call Girls Hauz Khas 9711199012 Call /Whatsapps
Beautiful Sapna Vip  Call Girls Hauz Khas 9711199012 Call /WhatsappsBeautiful Sapna Vip  Call Girls Hauz Khas 9711199012 Call /Whatsapps
Beautiful Sapna Vip Call Girls Hauz Khas 9711199012 Call /Whatsappssapnasaifi408
 
Introduction-to-Machine-Learning (1).pptx
Introduction-to-Machine-Learning (1).pptxIntroduction-to-Machine-Learning (1).pptx
Introduction-to-Machine-Learning (1).pptxfirstjob4
 

Recently uploaded (20)

Call Girls In Mahipalpur O9654467111 Escorts Service
Call Girls In Mahipalpur O9654467111  Escorts ServiceCall Girls In Mahipalpur O9654467111  Escorts Service
Call Girls In Mahipalpur O9654467111 Escorts Service
 
E-Commerce Order PredictionShraddha Kamble.pptx
E-Commerce Order PredictionShraddha Kamble.pptxE-Commerce Order PredictionShraddha Kamble.pptx
E-Commerce Order PredictionShraddha Kamble.pptx
 
04242024_CCC TUG_Joins and Relationships
04242024_CCC TUG_Joins and Relationships04242024_CCC TUG_Joins and Relationships
04242024_CCC TUG_Joins and Relationships
 
VIP Call Girls Service Charbagh { Lucknow Call Girls Service 9548273370 } Boo...
VIP Call Girls Service Charbagh { Lucknow Call Girls Service 9548273370 } Boo...VIP Call Girls Service Charbagh { Lucknow Call Girls Service 9548273370 } Boo...
VIP Call Girls Service Charbagh { Lucknow Call Girls Service 9548273370 } Boo...
 
Dubai Call Girls Wifey O52&786472 Call Girls Dubai
Dubai Call Girls Wifey O52&786472 Call Girls DubaiDubai Call Girls Wifey O52&786472 Call Girls Dubai
Dubai Call Girls Wifey O52&786472 Call Girls Dubai
 
Low Rate Call Girls Bhilai Anika 8250192130 Independent Escort Service Bhilai
Low Rate Call Girls Bhilai Anika 8250192130 Independent Escort Service BhilaiLow Rate Call Girls Bhilai Anika 8250192130 Independent Escort Service Bhilai
Low Rate Call Girls Bhilai Anika 8250192130 Independent Escort Service Bhilai
 
100-Concepts-of-AI by Anupama Kate .pptx
100-Concepts-of-AI by Anupama Kate .pptx100-Concepts-of-AI by Anupama Kate .pptx
100-Concepts-of-AI by Anupama Kate .pptx
 
Delhi 99530 vip 56974 Genuine Escort Service Call Girls in Kishangarh
Delhi 99530 vip 56974 Genuine Escort Service Call Girls in  KishangarhDelhi 99530 vip 56974 Genuine Escort Service Call Girls in  Kishangarh
Delhi 99530 vip 56974 Genuine Escort Service Call Girls in Kishangarh
 
Generative AI on Enterprise Cloud with NiFi and Milvus
Generative AI on Enterprise Cloud with NiFi and MilvusGenerative AI on Enterprise Cloud with NiFi and Milvus
Generative AI on Enterprise Cloud with NiFi and Milvus
 
Delhi Call Girls CP 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
Delhi Call Girls CP 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip CallDelhi Call Girls CP 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
Delhi Call Girls CP 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
 
꧁❤ Greater Noida Call Girls Delhi ❤꧂ 9711199171 ☎️ Hard And Sexy Vip Call
꧁❤ Greater Noida Call Girls Delhi ❤꧂ 9711199171 ☎️ Hard And Sexy Vip Call꧁❤ Greater Noida Call Girls Delhi ❤꧂ 9711199171 ☎️ Hard And Sexy Vip Call
꧁❤ Greater Noida Call Girls Delhi ❤꧂ 9711199171 ☎️ Hard And Sexy Vip Call
 
Delhi Call Girls Punjabi Bagh 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
Delhi Call Girls Punjabi Bagh 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip CallDelhi Call Girls Punjabi Bagh 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
Delhi Call Girls Punjabi Bagh 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
 
Unveiling Insights: The Role of a Data Analyst
Unveiling Insights: The Role of a Data AnalystUnveiling Insights: The Role of a Data Analyst
Unveiling Insights: The Role of a Data Analyst
 
Week-01-2.ppt BBB human Computer interaction
Week-01-2.ppt BBB human Computer interactionWeek-01-2.ppt BBB human Computer interaction
Week-01-2.ppt BBB human Computer interaction
 
Mature dropshipping via API with DroFx.pptx
Mature dropshipping via API with DroFx.pptxMature dropshipping via API with DroFx.pptx
Mature dropshipping via API with DroFx.pptx
 
Brighton SEO | April 2024 | Data Storytelling
Brighton SEO | April 2024 | Data StorytellingBrighton SEO | April 2024 | Data Storytelling
Brighton SEO | April 2024 | Data Storytelling
 
定制英国白金汉大学毕业证(UCB毕业证书) 成绩单原版一比一
定制英国白金汉大学毕业证(UCB毕业证书)																			成绩单原版一比一定制英国白金汉大学毕业证(UCB毕业证书)																			成绩单原版一比一
定制英国白金汉大学毕业证(UCB毕业证书) 成绩单原版一比一
 
EMERCE - 2024 - AMSTERDAM - CROSS-PLATFORM TRACKING WITH GOOGLE ANALYTICS.pptx
EMERCE - 2024 - AMSTERDAM - CROSS-PLATFORM  TRACKING WITH GOOGLE ANALYTICS.pptxEMERCE - 2024 - AMSTERDAM - CROSS-PLATFORM  TRACKING WITH GOOGLE ANALYTICS.pptx
EMERCE - 2024 - AMSTERDAM - CROSS-PLATFORM TRACKING WITH GOOGLE ANALYTICS.pptx
 
Beautiful Sapna Vip Call Girls Hauz Khas 9711199012 Call /Whatsapps
Beautiful Sapna Vip  Call Girls Hauz Khas 9711199012 Call /WhatsappsBeautiful Sapna Vip  Call Girls Hauz Khas 9711199012 Call /Whatsapps
Beautiful Sapna Vip Call Girls Hauz Khas 9711199012 Call /Whatsapps
 
Introduction-to-Machine-Learning (1).pptx
Introduction-to-Machine-Learning (1).pptxIntroduction-to-Machine-Learning (1).pptx
Introduction-to-Machine-Learning (1).pptx
 

Automated Discovery of Declarative Process Models

  • 1. The Automated Discovery of Declarative Process Models Claudio Di Ciccio claudio.di.ciccio@wu.ac.at Humboldt-Universität zu Berlin, 7 December 2016
  • 3. Control-flow discovery ? Objective: understanding the temporal structure that best describes the process behind the event log SEITE 3
  • 7. Declarative modelling of processes  Usage of constraints  “Open model”  Declare  state-of-the-art language If A is performed, B must be performed, no matter if before or afterwards (responded existence) Whenever B is performed, C must be performed afterwards and B can not be repeated until C is done (alternate response) SEITE 7
  • 8. Workflow Nets as process models SEITE 8
  • 11. Declarative process modelling  “Open model”  Specify constraints for permitted behaviour  Every execution that complies with them is acceptable  Works best with flexible processes  The set of DECLARE templates is extendible SEITE 11
  • 12. A fragment of declarative process model  If an abstract is submitted, a new paper had been written or will be written  After the paper submission, a confirmation email is sent  After the paper submission, the paper will be reviewed; there can be no review without a preceding submission  A paper can be accepted only after it has been reviewed  After the rejection, no further submission follows  Paper cannot be both accepted and rejected SEITE 12 Submit abstract Write new paper Submit paper Send confirmation email Submit paper Review paper Review paper Accept paper Reject paper Submit paper Accept paper Reject paper = activation task Responded existence(Submit abstract, Write new paper) Response(Submit paper, Send confirmation email) Succession(Submit paper, Review paper) Precedence(Review paper, Accept paper) Not succession(Reject paper, Submit paper) Not co-existence(Accept paper, Reject paper) Template Tasks
  • 13. A fragment of declarative process model SEITE 13 Submit abstract Write new paper Submit paper Send confirmation email Review paper Accept paper Reject paper
  • 14. Declare: Existence Constraint Templates Existence(n, A) Activity A occurs at least n times in the process instance BCAAC ✓ BCAAAC ✓ BCAC ✗ (for n = 2) Absence(A) Activity A does not occur in the process instance BCC ✓ BCAC ✗ Absence(n+1, A) Activity A occurs at most n-1 times in the process instance BCAAC ✗ BCAC ✓ BCC ✓ (for n = 2) Exactly(n, A) Activity A occurs exactly n times in the process instance BCAAC ✓ BCAAAC ✗ BCAC ✗ (for n = 2) Init(A) Activity A is the first to occur in each process instance BCAAC ✗ ACAAAC ✓ BCC ✗ Absence(2, A) ≡ AtMostOne(A) Existence(1, A) ≡ Participation(A) SEITE 14
  • 15. Declare: Relation Constraint Templates RespondedExistence(A, B) If A occurs in the process instance, then B occurs as well CAC ✗ CAACB ✓ BCAC ✓ BCC ✓ SEITE 15
  • 16. Declare: Relation Constraint Templates RespondedExistence(A, B) If A occurs in the process instance, then B occurs as well CAC ✗ CAACB ✓ BCAC ✓ BCC ✓ Response(A, B) If A occurs in the process instance, then B occurs after A BCAAC ✗ CAACB ✓ CAC ✗ BCC ✓ SEITE 16
  • 17. Declare: Relation Constraint Templates RespondedExistence(A, B) If A occurs in the process instance, then B occurs as well CAC ✗ CAACB ✓ BCAC ✓ BCC ✓ Response(A, B) If A occurs in the process instance, then B occurs after A BCAAC ✗ CAACB ✓ CAC ✗ BCC ✓ AlternateResponse(A, B) Each time A occurs in the process instance, then B occurs afterwards, before A recurs BCAAC ✗ CAACB ✗ CACB ✓ CABCA ✗ BCC ✓ CACBBAB ✓ SEITE 17
  • 18. Declare: Relation Constraint Templates RespondedExistence(A, B) If A occurs in the process instance, then B occurs as well CAC ✗ CAACB ✓ BCAC ✓ BCC ✓ Response(A, B) If A occurs in the process instance, then B occurs after A BCAAC ✗ CAACB ✓ CAC ✗ BCC ✓ AlternateResponse(A, B) Each time A occurs in the process instance, then B occurs afterwards, before A recurs BCAAC ✗ CAACB ✗ CACB ✓ CABCA ✗ BCC ✓ CACBBAB ✓ ChainResponse(A, B) Each time A occurs in the process instance, then B occurs immediately afterwards BCAAC ✗ BCAABC ✗ BCABABC ✓ Activation Target
  • 19. Declare: Relation Constraint Templates RespondedExistence(B, A) If B occurs in the process instance, then A occurs as well CAC ✓ CAACB ✓ BCAC ✓ BCC ✗ Precedence(A, B) B occurs in the process instance only if preceded by A BCAAC ✗ CAACB ✓ CAC ✓ BCC ✓ AlternatePrecedence(A, B) Each time B occurs in the process instance, it is preceded by A and no other B can recur in between BCAAC ✗ CAACB ✓ CACB ✓ CABCA ✓ BCC ✗ CACBAB ✓ ChainPrecedence(A, B) Each time B occurs in the process instance, then B occurs immediately beforehand BCAAC ✗ BCAABC ✗ CABABCA ✓ Target Activation
  • 20. Declare: Relation Constraint Templates CoExistence(A, B) ≡ Resp’dEx.(A, B) ∧ Resp’dEx.(B, A) If B occurs in the process instance, then A occurs, and viceversa CAC ✗ CAACB ✓ BCAC ✓ BCC ✗ Succession(A, B) ≡ Response(A, B) ∧ Precedence(A, B) A occurs if and only if it is followed by B in the process instance BCAAC ✗ CAACB ✓ CAC ✗ BCC ✗ AlternateSuccession(A, B) ≡ Alt.Resp.(A, B) ∧ Alt.Prec.(A, B) A and B occur in the process instance if and only if the latter follows the former, and they alternate each other in the trace BCAAC ✗ CAACB ✗ CACB ✓ CABCA ✗ BCC ✗ CACBAB ✓ ChainSuccession(A, B) ≡ ChainResp.(A, B) ∧ ChainPrec.(A, B) A and B occur in the process instance if and only if the latter immediately follows the former BCAAC ✗ BCAABC ✗ CABABC ✓ Activation Target Target Activation
  • 21. Declare: Negative Relation Constraint Templates NotCoExistence(A, B) A and B never occur together in the process instance CAC ✓ CAACB ✗ BCAC ✗ BCC ✓ NotSuccession(A, B) A can never occur before B in the process instance BCAAC ✓ CAACB ✗ CAC ✓ BCC ✓ NotChainSuccession(A, B) A and B occur in the process instance if and only if the latter does not immediately follows the former BCAAC ✓ BCAABC ✗ CBACBA ✓ Activation Target Target Activation
  • 24. Constraints mining ? Objective: understanding the constraints that best define the allowed behaviour of the process behind the event log SEITE 24
  • 25. Mining declarative processes: ingredients “Submit abstract”, “Submit paper”, “Accept paper”, … SEITE 25 A, B, C, … Activities Process alphabet
  • 26. Mining declarative processes RespondedExistence(A, B) ? RespondedExistence(A, C) ? … Response(A, B) ? Response(A, C) ? … SEITE 26 • Support: fraction of cases fulfilling the constraint • Confidence: support scaled by fraction of traces in which the activation occurs • Interest factor: confidence scaled by fraction of traces in which the target occurs Support Conf. I.F.
  • 27. Mining declarative processes RespondedExistence(A, B) ? RespondedExistence(A, C) ? … Response(A, B) ? Response(A, C) ? … SEITE 27 Support Conf. I.F. • Support: fraction of cases fulfilling the constraint • Confidence: support scaled by fraction of traces in which the activation occurs • Interest factor: confidence scaled by fraction of traces in which the target occurs
  • 28. Mining declarative processes RespondedExistence(A, B)  RespondedExistence(A, C)  … Response(A, B) ? Response(A, C)  … SEITE 28 Support Conf. I.F. • Support: fraction of cases fulfilling the constraint • Confidence: support scaled by fraction of traces in which the activation occurs • Interest factor: confidence scaled by fraction of traces in which the target occurs
  • 29. Mining declarative processes RespondedExistence(A, B)  RespondedExistence(A, C)  … Response(A, B)  Response(A, C)  … SEITE 29 Support Conf. I.F. • Support: fraction of cases fulfilling the constraint • Confidence: support scaled by fraction of traces in which the activation occurs • Interest factor: confidence scaled by fraction of traces in which the target occurs
  • 30. Constraints mining An example SEITE 30 A A B C A B C A C B C D A C C A B B C B C A C B B D C C C C C A A B C A A B A A B A B B B D C B A B D A B B D A A A C A C B D A B C D C A B A A C C B B D B C C D C A A C C C A A B C B C C B D
  • 31. The role of Support (event-based) A A B C A B C A C B C D A C C A B B C B C A C B B D C C C C C A A B C A A B A A B A B B B D C B A B D A B B D A A A C A C B D A B C D C A B A A C C B B D B C C D C A A C C C A A B C B C C B D  Support for  Response(A, B)  1.0  Precedence(A, B)  0.926 (25/27)  Pruning on the basis of a support threshold  E.g., 0.95  A threshold equal to 1.0 for a constraint means “always valid in the log” Activation Target Target Activation SEITE 31 http://github.com/cdc08x/minerful Prom Nightly Builds > “Declare MINERful” plug-in
  • 32. The role of Support (trace-based) A A B C A B C A C B C D A C C A B B C B C A C B B D C C C C C A A B C A A B A A B A B B B D C B A B D A B B D A A A C A C B D A B C D C A B A A C C B B D B C C D C A A C C C A A B C B C C B D  Support for  Response(A, B)  1.0  Precedence(A, B)  0.818 (9/11)  Pruning on the basis of a support threshold  E.g., 0.95  A threshold equal to 1.0 for a constraint means “always valid in the log” SEITE 32 http://sourceforge.net/projects/prom/files/ProM/6.3
  • 36. Make mined models intelligible  Prune irrelevant/redundant information  Detect inconsistencies (yes, it happens)  Picture what the model tells  Increase the expressiveness of discovered models  Specify templates SEITE 36
  • 37. Make mined models intelligible  Prune irrelevant/redundant information  Detect inconsistencies (yes, it happens)  Picture what the model tells  Increase the expressiveness of discovered models  Specify templates SEITE 37 © Granger, NYC, source: https://www.granger.com/
  • 38. Redundancies in discovered constraints  E.g.,  A trace like A B A B C A B C C satisfies (w.r.t. A and B):  RespondedExistence(A, B), RespondedExistence(B, A), Response(A, B), AlternateResponse(A, B), ChainResponse(A, B), Precedence(A, B), AlternatePrecedence(A, B), ChainPrecedence(A, B), CoExistence(A, B), CoExistence(B, A), Succession(A, B), AlternateSuccession(A, B), ChainSuccession(A, B)  Among them, the mining algorithm should return only the most restricting constraint – i.e., ChainSuccession(A, B)  In order to face this issue, returned constraints are pruned on the basis of the subsumption hierarchy of constraints SEITE 38
  • 40. Pruning redundant constraints 0.8 0.8 0.9 0.90.9 0.9 0.7 0.7 0.9 0.9 0.9 ✖ ✖ ? ? ✖ ✖ ✖ ? ? S u p p o r t ✖ ✖ ✖ ✖ SEITE 40
  • 41. Mining declarative processes RespondedExistence(A, B)  RespondedExistence(A, C) ? … Response(A, B)  Response(A, C)  … SEITE 41 Support Conf. I.F.
  • 42. Mining declarative processes RespondedExistence(A, B)  RespondedExistence(A, C) ? … Response(A, B)  Response(A, C)  … SEITE 42 Support Conf. I.F.
  • 43. Mining declarative processes RespondedExistence(A, B)  RespondedExistence(A, C)  … Response(A, B)  Response(A, C)  … SEITE 43 Support Conf. I.F. http://github.com/cdc08x/minerful Prom Nightly Builds > “Declare MINERful” plug-in http://sourceforge.net/projects/prom/files/ProM/6.3
  • 44. Make mined models intelligible  Prune irrelevant/redundant information  Detect inconsistencies (yes, it happens)  Picture what the model tells  Increase the expressiveness of discovered models  Specify templates SEITE 44
  • 45. Make mined models intelligible  Prune irrelevant/redundant information  Detect inconsistencies (yes, it happens)  Picture what the model tells  Increase the expressiveness of discovered models  Specify templates Interlude DECLARE & Regular Expressions SEITE 45
  • 46. Mining declarative processes RespondedExistence(A, B) RespondedExistence(A, C) and Response(A, B) Response(A, C) and … SEITE 46
  • 47. Semantics of Declare: Regular Expressions SEITE 47
  • 48. From constraints-based model to FSA SEITE 48 [^a]*((a.*b.*)|(b.*a.*))*[^a]* [^a]*(a.*c)*[^a]*  Regular Expression Deterministic Finite State Automaton RespondedExistence(A, B) RespondedExistence(A, C) and Response(A, B) Response(A, C) and …
  • 49. Make mined models intelligible  Prune irrelevant/redundant information  Detect inconsistencies (yes, it happens)  Picture what the model tells  Increase the expressiveness of discovered models Reprise SEITE 49
  • 50. While mining a real-life log… SEITE 50
  • 51. Time to challenge the X SEITE 51 
  • 53. The problem  When support threshold is lower than 100%, constraints can be valid through most of the log, though being in conflict  Example: an event log consists of two traces: 1. <A, B, A, B, A, B, C> 2. <A, B, A, B, A, C>  Support threshold: 0.7 • a is always the first  Init(A) • c is always the last  End(C) • In 6 cases over 8 (75%), a and c do not directly follow each other  NotChainSuccession(A, C) • In 5 cases over 7 (71.143%), b and c do not directly follow each other  NotChainSuccession(B, C) SEITE 53
  • 54. The problem  When support threshold is lower than 100%, constraints can be valid through most of the log, though being in conflict  Example: an event log consists of two traces: 1. <A, B, A, B, A, B, C> 2. <A, B, A, B, A, C>  Support threshold: 0.7 • a is always the first  Init(A) • c is always the last  End(C) • In 6 cases over 8 (75%), a and c do not directly follow each other  NotChainSuccession(A, C) • In 5 cases over 7 (71.143%), a and b do not directly follow each other  NotChainSuccession(B, C)  Question: what can be done right before C?  inconsistency! SEITE 54
  • 55. The algorithm to detect inconsistencies SEITE 55  Init(a) Participation(b) AtMostOne(c) End(c) ChainPrecedence(a, b) … ChainSuccession(a, b) Response(a, b) ChainResponse(b, a) NotChainSuccession(a, c) ChainSuccession(b, a) NotChainSuccession(b, c) … … … 1
  • 56. The algorithm to detect inconsistencies  Init(a) Participation(b) AtMostOne(c) End(c) ChainPrecedence(a, b) … ChainSuccession(a, b) Response(a, b) ChainResponse(b, a) NotChainSuccession(a, c)  ChainSuccession(b, a) NotChainSuccession(b, c) … … … 1 2 SEITE 56 http://github.com/cdc08x/minerful
  • 58. Make mined models intelligible  Prune irrelevant/redundant information  Detect inconsistencies (yes, it happens)  Picture what the model tells  Increase the expressiveness of discovered models SEITE 58 © Granger, NYC, source: https://www.granger.com/
  • 59. The application of the method to minimise the model  Rationale: 1. How to find redundancies among constraints?  Use the automaton-model correspondence  Same language recognised after the product?  Main difference with the inconsistency- checking algorithm  Constraints having support 100% are checked for redundancies  More details in the paper SEITE 59 http://github.com/cdc08x/minerful
  • 60. The application of the method to minimise the model SEITE 60 BPIC 2012
  • 61. Make mined models intelligible  Prune irrelevant/redundant information  Detect inconsistencies (yes, it happens)  Picture what the model tells  Inspect the imperative counterpart  Simulate runs  Increase the expressiveness of discovered models  Specify templates SEITE 61
  • 62. From declarative to imperative models SEITE 62 Response(Queued, Accepted) NotChainSuccession(Queued, Completed) Response(Queued, Completed) NotChainSuccession(Queued, Unmatched) Response(Accepted, Completed) End(Completed) NotSuccession(Completed, Unmatched) AtMostOne(Unmatched) RespondedExistence(Unmatched, Accepted) AlternateResponse(Unmatched, Completed)    …
  • 63. Make mined models intelligible  Prune irrelevant/redundant information  Detect inconsistencies (yes, it happens)  Picture what the model tells  Inspect the imperative counterpart  Simulate runs  Increase the expressiveness of discovered models  Specify templates SEITE 63
  • 64. Generation of logs SEITE 64 http://github.com/cdc08x/minerful http://github.com/processmining/synthetic-log-generator
  • 65. Make mined models intelligible  Prune irrelevant/redundant information  Detect inconsistencies (yes, it happens)  Picture what the model tells  Inspect the imperative counterpart  Simulate runs  Increase the expressiveness of discovered models  Specify templates SEITE 65
  • 66. Target-Branched Declare Support for  Response(A, {B, C})  1.0 B A A B A B C D A A D B B A A D C B A D D A D D A B E C A B C D A D B D A E A C A A A D B D A D D B D A A A D C D A D D D A C A A B E D E B C E E C B E SEITE 66 Activation Target Branching factor = 2
  • 67. Objective SEITE 67 + Expressive Power + Conciseness
  • 68. Evaluation: constraints pruning SEITE 68 BPI Challenge 2012 (0) 6,654,480 (1) 10,676 (2) 1446 (3) 12
  • 69. Evaluation: performance SEITE 69 BPI Challenge 2012 (KB) 00:07.274 (Const’s) 25:51.678 (Total) 26:11.380 http://github.com/cdc08x/minerful
  • 70. Make mined models intelligible  Prune irrelevant/redundant information  Detect inconsistencies (yes, it happens)  Picture what the model tells  Inspect the imperative counterpart  Simulate runs  Increase the expressiveness of discovered models  Specify templates SEITE 70
  • 71. Semantics of Declare: LTL and LTLf  Linear Temporal Logic (LTL) initially was a specification language for the execution of (endless) concurrent programs (Pnueli, 1977)  Syntax (let A be a propositional symbol):  DECLARE was initially based on LTL SEITE 71 “Until” “Eventually”“Always” “Next”
  • 73. Declarative process modelling  “Open model”  Specify constraints for permitted behaviour  Every execution that complies with them is acceptable  Works best with flexible processes  The set of DECLARE templates is extendible SEITE 73
  • 74. Extendibility of DECLARE: A clear business impact SEITE 74 Source: http://businessvalueexchange.com/
  • 75. Semantics of Declare: LTL and LTLf  Linear Temporal Logic (LTL) initially was a specification language for the execution of (endless) concurrent programs (Pnueli, 1977)  Syntax (let A be a propositional symbol):  Interpretation over infinite traces, i.e., an infinite sequence of consecutive instants of time  LTLf formulae are meant to be interpreted over finite traces “Until” “Eventually”“Always” “Next” SEITE 75
  • 79. Semantics of Declare: FOL over finite traces SEITE 79
  • 80. Semantics of Declare: Regular expressions SEITE 80
  • 81. More alternatives for DECLARE spec.: A clear business impact SEITE 81 Source: http://businessconsultantsnewyork.blogspot.co.at/
  • 82. My long-term objective  Establish an algebra of constraint templates, built on a basis of behavioural relations that are:  orthogonal to one another (no entailments, subsumptions…)  covering multiple trace-based behavioural relations definition languages by linear composition  have clear semantics (last but for sure NOT least)  ... SEITE 82
  • 83. Further reading  Presented:  About MINERful:  Claudio Di Ciccio, Massimo Mecella: On the Discovery of Declarative Control Flows for Artful Processes. ACM Trans. Management Inf. Syst. 5(4): 24:1-24:37 (2015)  Simulation of DECLARE models:  Claudio Di Ciccio, Mario Luca Bernardi, Marta Cimitile, Fabrizio Maria Maggi: Generating Event Logs Through the Simulation of Declare Models. EOMAS@CAiSE 2015: 20-36  Discovery of target-branched DECLARE models:  Claudio Di Ciccio, Fabrizio Maria Maggi, Jan Mendling: Efficient discovery of Target-Branched Declare constraints. Inf. Syst. 56: 258-283 (2016)  Getting rid of redundancies and inconsistencies:  Claudio Di Ciccio, Fabrizio Maria Maggi, Marco Montali, Jan Mendling: Ensuring Model Consistency in Declarative Process Discovery. BPM 2015: 144-159  From DECLARE to Petri nets:  Johannes Prescher, Claudio Di Ciccio, Jan Mendling: From Declarative Processes to Imperative Models. SIMPDA 2014: 162-173  More:  First steps towards data awareness of discovered DECLARE models:  Stefan Schönig, Claudio Di Ciccio, Fabrizio Maria Maggi, Jan Mendling: Discovery of Multi-perspective Declarative Process Models. ICSOC 2016: 87-103  Against the little learnibility of DECLARE:  Michael Hanser, Claudio Di Ciccio, Jan Mendling: A New Notational Framework for Declarative Process Modeling. Softwaretechnik-Trends 36(2) (2016)  Guarantee of the significance of discovered DECLARE models:  Fabrizio Maria Maggi, Marco Montali, Claudio Di Ciccio, Jan Mendling: Semantical Vacuity Detection in Declarative Process Mining. BPM 2016: 158-175 SEITE 83