SlideShare ist ein Scribd-Unternehmen logo
1 von 26
Downloaden Sie, um offline zu lesen
Where did I go wrong? 
Explaining errors in process models 
Niels Lohmann @nlohmann 
Dirk Fahland @dfahland
Verification of processes and services 
2 
process model 
property 
verification technique 
diagnostic information
Verification of processes and services 
3 
verification technique 
diagnostic information 
BPMN 
Soundness 
domain-specific 
high-quality
Verification of processes and services 
4 
CMMN 
Declare 
WS-BPEL 
WS-Policy 
EPC 
BPMN 
YAWL 
Object Life-Cycles 
GSM 
Rules 
Soundness 
Security 
Compliance 
Conformance to 
 
diagnostic information 
verification technique 
domain-specific 
high-quality 
-moving target 
-domain-specific approaches too specific to follow
Verification of processes and services 
5 
CMMN 
Declare 
WS-BPEL 
WS-Policy 
EPC 
BPMN 
YAWL 
Object Life-Cycles 
GSM 
Rules 
Soundness 
Security 
Compliance 
Conformance to 
 
diagnostic information 
verification technique 
high-quality 
general purpose
Model checking 
general purpose verification approach: 
1. formalize model and specification* 
2. push a button 
6 
*can be hidden from the user
Effectiveness and efficiency 
-model checking works in reality 
-successful applications in many domains 
-very fast: “verify while you model” 
7
Diagnosis 
-in case of error: outputs target state and produce a witness path 
-describes how target state can be reached 
-operational semantics: can be simulated 
8 
witness path 
target state
Diagnosis: the bad 
PATH process.s00000823##s00006200.inputCriterion.s00001053 fork.s00001071.activate.s00001072 fork.s00001071.fire.s00001078 merge.s00001061.activate.s00001065 merge.s00001061.fire.s00001069 callToTask.s00006202.inputCriterion.s00001053 callToTask.s00006202.outputCriterion.s00001055 callToTask.s00006211.inputCriterion.s00001053 callToTask.s00006211.outputCriterion.s00001055 callToTask.s00006209.inputCriterion.s00001053 callToTask.s00006209.outputCriterion.s00001055 decision.s00001158.activate.s00001072 decision.s00001158.fire.s00001075 merge.s00001160.activate.s00001064 merge.s00001160.fire.s00001069 callToTask.s00006203.inputCriterion.s00001053 callToTask.s00006203.outputCriterion.s00001055 callToTask.s00006214.inputCriterion.s00001053 callToTask.s00006214.outputCriterion.s00001055 callToTask.s00006213.inputCriterion.s00001053 callToTask.s00006213.outputCriterion.s00001055 decision.s00001840.activate.s00001072 decision.s00001840.fire.s00001075 callToTask.s00006201.inputCriterion.s00001053 callToTask.s00006201.outputCriterion.s00001055 decision.s00001123.activate.s00001072 decision.s00001123.fire.s00001075 merge.s00001161.activate.s00001064 merge.s00001161.fire.s00001069 callToTask.s00006208.inputCriterion.s00001053 callToTask.s00006208.outputCriterion.s00001055 
decision.s00001157.activate.s00001072 
decision.s00001157.fire.s00001073 
fork.s00001071.fire.s00001073 
merge.s00001061.activate.s00001064 
join.s00001163.activate.s00001062 
merge.s00001061.fire.s00001069 
join.s00001163.activate.s00001064 
merge.s00001162.activate.s00001062 
merge.s00001162.fire.s00001069 
callToTask.s00006210.inputCriterion.s00001053 
callToTask.s00006210.outputCriterion.s00001055 
decision.s00001159.activate.s00001072 
decision.s00001159.fire.s00001073 
join.s00001163.activate.s00001065 
join.s00001163.fire.s00001069 
fork.s00001071.fire.s00001075 
merge.s00001160.activate.s00001065 
callToTask.s00006207.inputCriterion.s00001053 
merge.s00001160.fire.s00001069 
callToTask.s00006207.outputCriterion.s00001055 
callToTask.s00006203.inputCriterion.s00001053 
decision.s00001126.activate.s00001072 
callToTask.s00006203.outputCriterion.s00001055 
decision.s00001126.fire.s00001073 
callToTask.s00006214.inputCriterion.s00001053 
callToTask.s00006202.inputCriterion.s00001053 
callToTask.s00006202.outputCriterion.s00001055 
callToTask.s00006211.inputCriterion.s00001053 
callToTask.s00006211.outputCriterion.s00001055 
callToTask.s00006209.inputCriterion.s00001053 
callToTask.s00006209.outputCriterion.s00001055 
decision.s00001158.activate.s00001072 
decision.s00001158.fire.s00001075 
callToTask.s00006214.outputCriterion.s00001055 
callToTask.s00006213.inputCriterion.s00001053 
callToTask.s00006213.outputCriterion.s00001055 
decision.s00001840.activate.s00001072 
decision.s00001840.fire.s00001075 
callToTask.s00006201.inputCriterion.s00001053 
callToTask.s00006201.outputCriterion.s00001055 
decision.s00001123.activate.s00001072 
decision.s00001123.fire.s00001073 
callToTask.s00006204.inputCriterion.s00001053 
callToTask.s00006204.outputCriterion.s00001055 
callToTask.s00003714.inputCriterion.s00001053 
callToTask.s00003714.outputCriterion.s00001055 
callToTask.s00006215.inputCriterion.s00001053 
callToTask.s00006215.outputCriterion.s00001055 
callToTask.s00006206.inputCriterion.s00001053 
join.s00001163.activate.s00001064 
callToTask.s00006206.outputCriterion.s00001055 
callToTask.s00006205.inputCriterion.s00001053 
callToTask.s00006205.outputCriterion.s00001055 
merge.s00001161.activate.s00001062 
merge.s00001161.fire.s00001069 
callToTask.s00006208.inputCriterion.s00001053 
callToTask.s00006208.outputCriterion.s00001055 
decision.s00001157.activate.s00001072 
decision.s00001157.fire.s00001073 
join.s00001163.activate.s00001062 
callToTask.s00006212.inputCriterion.s00001053 
callToTask.s00006212.outputCriterion.s00001055 
merge.s00001162.activate.s00001064 merge.s00001162.fire.s00001069 callToTask.s00006210.inputCriterion.s00001053 callToTask.s00006210.outputCriterion.s00001055 decision.s00001159.activate.s00001072 decision.s00001159.fire.s00001073 join.s00001163.activate.s00001065 join.s00001163.fire.s00001069 callToTask.s00006207.inputCriterion.s00001053 callToTask.s00006207.outputCriterion.s00001055 decision.s00001126.activate.s00001072 decision.s00001126.fire.s00001073 STATE decision.s00001126.output.s00001054 : 2 
-paths can become very long 
-length correlates with size of the model 
-reports all events equally: disregarding importance
This talk: better diagnosis 
PATH process.s00000823##s00006200.inputCriterion.s00001053 fork.s00001071.activate.s00001072 fork.s00001071.fire.s00001078 merge.s00001061.activate.s00001065 merge.s00001061.fire.s00001069 callToTask.s00006202.inputCriterion.s00001053 callToTask.s00006202.outputCriterion.s00001055 callToTask.s00006211.inputCriterion.s00001053 callToTask.s00006211.outputCriterion.s00001055 callToTask.s00006209.inputCriterion.s00001053 callToTask.s00006209.outputCriterion.s00001055 decision.s00001158.activate.s00001072 decision.s00001158.fire.s00001075 merge.s00001160.activate.s00001064 merge.s00001160.fire.s00001069 callToTask.s00006203.inputCriterion.s00001053 callToTask.s00006203.outputCriterion.s00001055 callToTask.s00006214.inputCriterion.s00001053 callToTask.s00006214.outputCriterion.s00001055 callToTask.s00006213.inputCriterion.s00001053 callToTask.s00006213.outputCriterion.s00001055 decision.s00001840.activate.s00001072 decision.s00001840.fire.s00001075 callToTask.s00006201.inputCriterion.s00001053 callToTask.s00006201.outputCriterion.s00001055 decision.s00001123.activate.s00001072 decision.s00001123.fire.s00001075 merge.s00001161.activate.s00001064 merge.s00001161.fire.s00001069 callToTask.s00006208.inputCriterion.s00001053 callToTask.s00006208.outputCriterion.s00001055 
decision.s00001157.activate.s00001072 
decision.s00001157.fire.s00001073 
fork.s00001071.fire.s00001073 
merge.s00001061.activate.s00001064 
join.s00001163.activate.s00001062 
merge.s00001061.fire.s00001069 
join.s00001163.activate.s00001064 
merge.s00001162.activate.s00001062 
merge.s00001162.fire.s00001069 
callToTask.s00006210.inputCriterion.s00001053 
callToTask.s00006210.outputCriterion.s00001055 
decision.s00001159.activate.s00001072 
decision.s00001159.fire.s00001073 
join.s00001163.activate.s00001065 
join.s00001163.fire.s00001069 
fork.s00001071.fire.s00001075 
merge.s00001160.activate.s00001065 
callToTask.s00006207.inputCriterion.s00001053 
merge.s00001160.fire.s00001069 
callToTask.s00006207.outputCriterion.s00001055 
callToTask.s00006203.inputCriterion.s00001053 
decision.s00001126.activate.s00001072 
callToTask.s00006203.outputCriterion.s00001055 
decision.s00001126.fire.s00001073 
callToTask.s00006214.inputCriterion.s00001053 
callToTask.s00006202.inputCriterion.s00001053 
callToTask.s00006202.outputCriterion.s00001055 
callToTask.s00006211.inputCriterion.s00001053 
callToTask.s00006211.outputCriterion.s00001055 
callToTask.s00006209.inputCriterion.s00001053 
callToTask.s00006209.outputCriterion.s00001055 
decision.s00001158.activate.s00001072 decision.s00001158.fire.s00001075 callToTask.s00006214.outputCriterion.s00001055 callToTask.s00006213.inputCriterion.s00001053 callToTask.s00006213.outputCriterion.s00001055 decision.s00001840.activate.s00001072 decision.s00001840.fire.s00001075 callToTask.s00006201.inputCriterion.s00001053 callToTask.s00006201.outputCriterion.s00001055 decision.s00001123.activate.s00001072 decision.s00001123.fire.s00001073 callToTask.s00006204.inputCriterion.s00001053 callToTask.s00006204.outputCriterion.s00001055 callToTask.s00003714.inputCriterion.s00001053 callToTask.s00003714.outputCriterion.s00001055 callToTask.s00006215.inputCriterion.s00001053 callToTask.s00006215.outputCriterion.s00001055 callToTask.s00006206.inputCriterion.s00001053 join.s00001163.activate.s00001064 callToTask.s00006206.outputCriterion.s00001055 callToTask.s00006205.inputCriterion.s00001053 callToTask.s00006205.outputCriterion.s00001055 merge.s00001161.activate.s00001062 merge.s00001161.fire.s00001069 callToTask.s00006208.inputCriterion.s00001053 callToTask.s00006208.outputCriterion.s00001055 decision.s00001157.activate.s00001072 decision.s00001157.fire.s00001073 join.s00001163.activate.s00001062 callToTask.s00006212.inputCriterion.s00001053 callToTask.s00006212.outputCriterion.s00001055 
merge.s00001162.activate.s00001064 
merge.s00001162.fire.s00001069 
callToTask.s00006210.inputCriterion.s00001053 
callToTask.s00006210.outputCriterion.s00001055 
decision.s00001159.activate.s00001072 
decision.s00001159.fire.s00001073 
join.s00001163.activate.s00001065 
join.s00001163.fire.s00001069 
callToTask.s00006207.inputCriterion.s00001053 
callToTask.s00006207.outputCriterion.s00001055 
decision.s00001126.activate.s00001072 
decision.s00001126.fire.s00001073 
STATE decision.s00001126.output.s00001054 : 2
This talk: better diagnosis 
path 
essential path 
distill 
Why useless?
Reasons for useless paths 
12 
detours 
depth-first search 
indisputable parts 
bootstrapping 
interleavings 
concurrency
Running example 
13 
lack of synchronization
Reduction: obvious parts 
-classify transitions 
-only report points of alternative continuations* 
14 
* XOR-gateways, events, exceptions, 
 
assume progress of flow
Reduction: obvious parts 
15 
t1 
t2 
t9 
t10 
t11 
t12 
t14 
t8 
t2 
t3 
t4 
t5 
“down” 
“down” 
“up”
Non-obvious “core” of a path ≈ 10-25% 
16
Reduction: spurious decisions 
-can be found by model checking 
-results: 50%-80% spurious, occasionally no reduction (timeout) 
17 
p1 
p3 
p2 
p4 
p5 
p6 
p1 
p3 
p5 
p6 
genuine decision 
spurious decision = irrelevant for outcome
Reasons for useless paths 
18 
detours depth-first search 
indisputable parts bootstrapping 
interleavings 
concurrency
Reduction: unorder steps 
-idea: show independence of steps ( partially ordered runs) 
-makes synchronization points (milestones) explicit 
19 
independent steps 
many paths to same goal state order of steps irrelevant
Reduction: unorder steps 
20 
t1 
t2 
t9 
t10 
t11 
t12 
t14 
t8 
t2 
t3 
t4 
t5 
t9 
t14 
t3
More aid: preserve reference points 
21 
t1 
t2 
t9 
t10 
t11 
t12 
t14 
t8 
t2 
t3 
t4 
t5 
t9 
t14 
t3 
p1 
p6 
p6 
t5 
t11 
t10 
t1
Final: remove obvious/spurious parts 
22 
t1 
t2 
t9 
t10 
t11 
t12 
t14 
t8 
t2 
t3 
t4 
t5 
t9 
t14 
t3 
p1 
p6 
p6 
t5 
t11 
t10 
t1
Essential path: find source of error 
PATH 
process.s00000823##s00006200.inputCriterion.s00001053 
fork.s00001071.activate.s00001072 
fork.s00001071.fire.s00001078 
merge.s00001061.activate.s00001065 
merge.s00001061.fire.s00001069 
callToTask.s00006202.inputCriterion.s00001053 
callToTask.s00006202.outputCriterion.s00001055 
callToTask.s00006211.inputCriterion.s00001053 
callToTask.s00006211.outputCriterion.s00001055 
callToTask.s00006209.inputCriterion.s00001053 
callToTask.s00006209.outputCriterion.s00001055 
decision.s00001158.activate.s00001072 
decision.s00001158.fire.s00001075 
merge.s00001160.activate.s00001064 
merge.s00001160.fire.s00001069 
callToTask.s00006203.inputCriterion.s00001053 
callToTask.s00006203.outputCriterion.s00001055 
callToTask.s00006214.inputCriterion.s00001053 
callToTask.s00006214.outputCriterion.s00001055 
callToTask.s00006213.inputCriterion.s00001053 
callToTask.s00006213.outputCriterion.s00001055 
decision.s00001840.activate.s00001072 
decision.s00001840.fire.s00001075 
callToTask.s00006201.inputCriterion.s00001053 
callToTask.s00006201.outputCriterion.s00001055 
decision.s00001123.activate.s00001072 
decision.s00001123.fire.s00001075 
merge.s00001161.activate.s00001064 
merge.s00001161.fire.s00001069 
callToTask.s00006208.inputCriterion.s00001053 
callToTask.s00006208.outputCriterion.s00001055 
decision.s00001157.activate.s00001072 
decision.s00001157.fire.s00001073 
fork.s00001071.fire.s00001073 
merge.s00001061.activate.s00001064 
join.s00001163.activate.s00001062 
merge.s00001061.fire.s00001069 
join.s00001163.activate.s00001064 
merge.s00001162.activate.s00001062 
merge.s00001162.fire.s00001069 
callToTask.s00006210.inputCriterion.s00001053 
callToTask.s00006210.outputCriterion.s00001055 
decision.s00001159.activate.s00001072 
decision.s00001159.fire.s00001073 
join.s00001163.activate.s00001065 
join.s00001163.fire.s00001069 
fork.s00001071.fire.s00001075 
merge.s00001160.activate.s00001065 
callToTask.s00006207.inputCriterion.s00001053 
merge.s00001160.fire.s00001069 
callToTask.s00006207.outputCriterion.s00001055 
callToTask.s00006203.inputCriterion.s00001053 
decision.s00001126.activate.s00001072 
callToTask.s00006203.outputCriterion.s00001055 
decision.s00001126.fire.s00001073 
callToTask.s00006214.inputCriterion.s00001053 
callToTask.s00006202.inputCriterion.s00001053 
callToTask.s00006202.outputCriterion.s00001055 
callToTask.s00006211.inputCriterion.s00001053 
callToTask.s00006211.outputCriterion.s00001055 
callToTask.s00006209.inputCriterion.s00001053 
callToTask.s00006209.outputCriterion.s00001055 
decision.s00001158.activate.s00001072 
decision.s00001158.fire.s00001075 
callToTask.s00006214.outputCriterion.s00001055 
callToTask.s00006213.inputCriterion.s00001053 
callToTask.s00006213.outputCriterion.s00001055 
decision.s00001840.activate.s00001072 
decision.s00001840.fire.s00001075 
callToTask.s00006201.inputCriterion.s00001053 
callToTask.s00006201.outputCriterion.s00001055 
decision.s00001123.activate.s00001072 
decision.s00001123.fire.s00001073 
callToTask.s00006204.inputCriterion.s00001053 
callToTask.s00006204.outputCriterion.s00001055 
callToTask.s00003714.inputCriterion.s00001053 
callToTask.s00003714.outputCriterion.s00001055 
callToTask.s00006215.inputCriterion.s00001053 
callToTask.s00006215.outputCriterion.s00001055 
callToTask.s00006206.inputCriterion.s00001053 
join.s00001163.activate.s00001064 
callToTask.s00006206.outputCriterion.s00001055 
callToTask.s00006205.inputCriterion.s00001053 
callToTask.s00006205.outputCriterion.s00001055 
merge.s00001161.activate.s00001062 
merge.s00001161.fire.s00001069 
callToTask.s00006208.inputCriterion.s00001053 
callToTask.s00006208.outputCriterion.s00001055 
decision.s00001157.activate.s00001072 
decision.s00001157.fire.s00001073 
join.s00001163.activate.s00001062 
callToTask.s00006212.inputCriterion.s00001053 
callToTask.s00006212.outputCriterion.s00001055 
merge.s00001162.activate.s00001064 
merge.s00001162.fire.s00001069 
callToTask.s00006210.inputCriterion.s00001053 
callToTask.s00006210.outputCriterion.s00001055 
decision.s00001159.activate.s00001072 
decision.s00001159.fire.s00001073 
join.s00001163.activate.s00001065 
join.s00001163.fire.s00001069 
callToTask.s00006207.inputCriterion.s00001053 
callToTask.s00006207.outputCriterion.s00001055 
decision.s00001126.activate.s00001072 
decision.s00001126.fire.s00001073
Results: typical reduced paths 
24 
2x lack of synchronization 
improper completion 
deadlock
Summary 
-general purpose verification more user friendly 
-paths  partial order of important decisions 
-applicable to any verification goal 
-keep reference points to aid diagnosis Next steps 
-error localization vs. explanation 
-detect useless cycles 
-How should a good diagnosis for $problem look like? 
25
Where did I go wrong? 
Explaining errors in process models 
Niels Lohmann

Weitere Àhnliche Inhalte

Andere mochten auch

Technology + education =
Technology + education =Technology + education =
Technology + education =NSP21
 
Presentation International Trade Show Of New Technologies [Modo De Compatibil...
Presentation International Trade Show Of New Technologies [Modo De Compatibil...Presentation International Trade Show Of New Technologies [Modo De Compatibil...
Presentation International Trade Show Of New Technologies [Modo De Compatibil...Renata Lodar
 
Simplifying Mined Process Models
Simplifying Mined Process ModelsSimplifying Mined Process Models
Simplifying Mined Process ModelsDirk Fahland
 
Process Mining for ERP Systems
Process Mining for ERP SystemsProcess Mining for ERP Systems
Process Mining for ERP SystemsDirk Fahland
 
Mining Branch-Time Scenarios From Execution Logs
Mining Branch-Time Scenarios From Execution LogsMining Branch-Time Scenarios From Execution Logs
Mining Branch-Time Scenarios From Execution LogsDirk Fahland
 
Many-to-Many: Interactions in Artifact-Centric Choreographies
Many-to-Many: Interactions in Artifact-Centric ChoreographiesMany-to-Many: Interactions in Artifact-Centric Choreographies
Many-to-Many: Interactions in Artifact-Centric ChoreographiesDirk Fahland
 
Steel Tube Mill Instrument by K s-electromech-private-limited
Steel Tube Mill Instrument by K s-electromech-private-limitedSteel Tube Mill Instrument by K s-electromech-private-limited
Steel Tube Mill Instrument by K s-electromech-private-limited K. S. Electromech Private Limited
 
LSC Revisited - From Scenarios to Distributed Components
LSC Revisited - From Scenarios to Distributed ComponentsLSC Revisited - From Scenarios to Distributed Components
LSC Revisited - From Scenarios to Distributed ComponentsDirk Fahland
 
From Live Sequence Chart Specifications to Distributed Components
From Live Sequence Chart Specifications to Distributed ComponentsFrom Live Sequence Chart Specifications to Distributed Components
From Live Sequence Chart Specifications to Distributed ComponentsDirk Fahland
 
The Process of Process Modeling
The Process of Process ModelingThe Process of Process Modeling
The Process of Process ModelingDirk Fahland
 

Andere mochten auch (10)

Technology + education =
Technology + education =Technology + education =
Technology + education =
 
Presentation International Trade Show Of New Technologies [Modo De Compatibil...
Presentation International Trade Show Of New Technologies [Modo De Compatibil...Presentation International Trade Show Of New Technologies [Modo De Compatibil...
Presentation International Trade Show Of New Technologies [Modo De Compatibil...
 
Simplifying Mined Process Models
Simplifying Mined Process ModelsSimplifying Mined Process Models
Simplifying Mined Process Models
 
Process Mining for ERP Systems
Process Mining for ERP SystemsProcess Mining for ERP Systems
Process Mining for ERP Systems
 
Mining Branch-Time Scenarios From Execution Logs
Mining Branch-Time Scenarios From Execution LogsMining Branch-Time Scenarios From Execution Logs
Mining Branch-Time Scenarios From Execution Logs
 
Many-to-Many: Interactions in Artifact-Centric Choreographies
Many-to-Many: Interactions in Artifact-Centric ChoreographiesMany-to-Many: Interactions in Artifact-Centric Choreographies
Many-to-Many: Interactions in Artifact-Centric Choreographies
 
Steel Tube Mill Instrument by K s-electromech-private-limited
Steel Tube Mill Instrument by K s-electromech-private-limitedSteel Tube Mill Instrument by K s-electromech-private-limited
Steel Tube Mill Instrument by K s-electromech-private-limited
 
LSC Revisited - From Scenarios to Distributed Components
LSC Revisited - From Scenarios to Distributed ComponentsLSC Revisited - From Scenarios to Distributed Components
LSC Revisited - From Scenarios to Distributed Components
 
From Live Sequence Chart Specifications to Distributed Components
From Live Sequence Chart Specifications to Distributed ComponentsFrom Live Sequence Chart Specifications to Distributed Components
From Live Sequence Chart Specifications to Distributed Components
 
The Process of Process Modeling
The Process of Process ModelingThe Process of Process Modeling
The Process of Process Modeling
 

Ähnlich wie Where did I go wrong? Explaining errors in process models

Process Validation Master Planning DMAIC Fusion
Process Validation Master Planning DMAIC FusionProcess Validation Master Planning DMAIC Fusion
Process Validation Master Planning DMAIC FusionGENEO
 
EPM In-Line Verification 24-04-2014
EPM In-Line Verification 24-04-2014EPM In-Line Verification 24-04-2014
EPM In-Line Verification 24-04-2014Bert Roos
 
Intrusion Access Catalog August 09
Intrusion Access Catalog August 09Intrusion Access Catalog August 09
Intrusion Access Catalog August 09Alex McAllister
 
PhD First Year Conference (MAY 2019)
PhD First Year Conference (MAY 2019)PhD First Year Conference (MAY 2019)
PhD First Year Conference (MAY 2019)Bang Xiang Yong
 
SAP HANA Status.pptx
SAP HANA Status.pptxSAP HANA Status.pptx
SAP HANA Status.pptxREVD3
 
Supply chain design and operation
Supply chain design and operationSupply chain design and operation
Supply chain design and operationAngelainBay
 
Latest Juniper JN0-214 Certification Study Guide
Latest Juniper JN0-214 Certification Study GuideLatest Juniper JN0-214 Certification Study Guide
Latest Juniper JN0-214 Certification Study GuideNWEXAM
 
NISSAN 2014 LEAF DOOR & LOCK SERVICE MANUAL
NISSAN 2014 LEAF DOOR & LOCK SERVICE MANUALNISSAN 2014 LEAF DOOR & LOCK SERVICE MANUAL
NISSAN 2014 LEAF DOOR & LOCK SERVICE MANUALOBD Codex
 
Reliability Instrumented System | Arrelic Insights
Reliability Instrumented System | Arrelic Insights Reliability Instrumented System | Arrelic Insights
Reliability Instrumented System | Arrelic Insights Arrelic
 
Case demo powerpoint-final
Case demo powerpoint-finalCase demo powerpoint-final
Case demo powerpoint-finalpixaque
 
Metrology & The Consequences of Bad Measurement Decisions
Metrology & The Consequences of Bad Measurement DecisionsMetrology & The Consequences of Bad Measurement Decisions
Metrology & The Consequences of Bad Measurement DecisionsRick Hogan
 
Evaluation of transport safety policies in commercial motorcycle operation in...
Evaluation of transport safety policies in commercial motorcycle operation in...Evaluation of transport safety policies in commercial motorcycle operation in...
Evaluation of transport safety policies in commercial motorcycle operation in...Institute for Transport Studies (ITS)
 
Systeme de contrÎle - Vos opérateurs sont trop occupés pour s'occuper de ce q...
Systeme de contrÎle - Vos opérateurs sont trop occupés pour s'occuper de ce q...Systeme de contrÎle - Vos opérateurs sont trop occupés pour s'occuper de ce q...
Systeme de contrÎle - Vos opérateurs sont trop occupés pour s'occuper de ce q...Laurentide Controls
 
Process validation and its types
Process validation and its typesProcess validation and its types
Process validation and its typesAnjali9410
 
for printout
for printoutfor printout
for printoutSURYA TEJA
 
Treasury HelpDesk Acceptance Test Procedure
Treasury HelpDesk Acceptance Test ProcedureTreasury HelpDesk Acceptance Test Procedure
Treasury HelpDesk Acceptance Test ProcedureMakeNET
 
Setting up and managing a test lab
Setting up and managing a test labSetting up and managing a test lab
Setting up and managing a test labkurkj
 
SensorFusion_DanielPiri_2014
SensorFusion_DanielPiri_2014SensorFusion_DanielPiri_2014
SensorFusion_DanielPiri_2014Daniel Piri
 

Ähnlich wie Where did I go wrong? Explaining errors in process models (20)

Process Validation Master Planning DMAIC Fusion
Process Validation Master Planning DMAIC FusionProcess Validation Master Planning DMAIC Fusion
Process Validation Master Planning DMAIC Fusion
 
EPM In-Line Verification 24-04-2014
EPM In-Line Verification 24-04-2014EPM In-Line Verification 24-04-2014
EPM In-Line Verification 24-04-2014
 
Intrusion Access Catalog August 09
Intrusion Access Catalog August 09Intrusion Access Catalog August 09
Intrusion Access Catalog August 09
 
PhD First Year Conference (MAY 2019)
PhD First Year Conference (MAY 2019)PhD First Year Conference (MAY 2019)
PhD First Year Conference (MAY 2019)
 
SAP HANA Status.pptx
SAP HANA Status.pptxSAP HANA Status.pptx
SAP HANA Status.pptx
 
Supply chain design and operation
Supply chain design and operationSupply chain design and operation
Supply chain design and operation
 
Latest Juniper JN0-214 Certification Study Guide
Latest Juniper JN0-214 Certification Study GuideLatest Juniper JN0-214 Certification Study Guide
Latest Juniper JN0-214 Certification Study Guide
 
NISSAN 2014 LEAF DOOR & LOCK SERVICE MANUAL
NISSAN 2014 LEAF DOOR & LOCK SERVICE MANUALNISSAN 2014 LEAF DOOR & LOCK SERVICE MANUAL
NISSAN 2014 LEAF DOOR & LOCK SERVICE MANUAL
 
Reliability Instrumented System | Arrelic Insights
Reliability Instrumented System | Arrelic Insights Reliability Instrumented System | Arrelic Insights
Reliability Instrumented System | Arrelic Insights
 
Case demo powerpoint-final
Case demo powerpoint-finalCase demo powerpoint-final
Case demo powerpoint-final
 
Metrology & The Consequences of Bad Measurement Decisions
Metrology & The Consequences of Bad Measurement DecisionsMetrology & The Consequences of Bad Measurement Decisions
Metrology & The Consequences of Bad Measurement Decisions
 
Catalog 2012 us
Catalog 2012 usCatalog 2012 us
Catalog 2012 us
 
Evaluation of transport safety policies in commercial motorcycle operation in...
Evaluation of transport safety policies in commercial motorcycle operation in...Evaluation of transport safety policies in commercial motorcycle operation in...
Evaluation of transport safety policies in commercial motorcycle operation in...
 
Systeme de contrÎle - Vos opérateurs sont trop occupés pour s'occuper de ce q...
Systeme de contrÎle - Vos opérateurs sont trop occupés pour s'occuper de ce q...Systeme de contrÎle - Vos opérateurs sont trop occupés pour s'occuper de ce q...
Systeme de contrÎle - Vos opérateurs sont trop occupés pour s'occuper de ce q...
 
Process validation and its types
Process validation and its typesProcess validation and its types
Process validation and its types
 
for printout
for printoutfor printout
for printout
 
Treasury HelpDesk Acceptance Test Procedure
Treasury HelpDesk Acceptance Test ProcedureTreasury HelpDesk Acceptance Test Procedure
Treasury HelpDesk Acceptance Test Procedure
 
Setting up and managing a test lab
Setting up and managing a test labSetting up and managing a test lab
Setting up and managing a test lab
 
SensorFusion_DanielPiri_2014
SensorFusion_DanielPiri_2014SensorFusion_DanielPiri_2014
SensorFusion_DanielPiri_2014
 
Six sigma
Six sigmaSix sigma
Six sigma
 

Mehr von Dirk Fahland

Object-Centric Processes - from cases to objects and relations
 and beyond
Object-Centric Processes - from cases to objects and relations
 and beyondObject-Centric Processes - from cases to objects and relations
 and beyond
Object-Centric Processes - from cases to objects and relations
 and beyondDirk Fahland
 
Multi-Dimensional Process Analysis
Multi-Dimensional Process Analysis Multi-Dimensional Process Analysis
Multi-Dimensional Process Analysis Dirk Fahland
 
Artifacts and Databases - the Need for Event Relation Graphs and Synchronous ...
Artifacts and Databases - the Need for Event Relation Graphs and Synchronous ...Artifacts and Databases - the Need for Event Relation Graphs and Synchronous ...
Artifacts and Databases - the Need for Event Relation Graphs and Synchronous ...Dirk Fahland
 
Describing, Discovering, and Understanding Multi-Dimensional Processes
Describing, Discovering, and Understanding Multi-Dimensional ProcessesDescribing, Discovering, and Understanding Multi-Dimensional Processes
Describing, Discovering, and Understanding Multi-Dimensional ProcessesDirk Fahland
 
Process Mining: Past, Present, and Open Challenges (AIST 2017 Keynote)
Process Mining: Past, Present, and Open Challenges (AIST 2017 Keynote)Process Mining: Past, Present, and Open Challenges (AIST 2017 Keynote)
Process Mining: Past, Present, and Open Challenges (AIST 2017 Keynote)Dirk Fahland
 
Behavioral Conformance of Artifact-Centric Process Models
Behavioral Conformance of Artifact-Centric Process ModelsBehavioral Conformance of Artifact-Centric Process Models
Behavioral Conformance of Artifact-Centric Process ModelsDirk Fahland
 

Mehr von Dirk Fahland (6)

Object-Centric Processes - from cases to objects and relations
 and beyond
Object-Centric Processes - from cases to objects and relations
 and beyondObject-Centric Processes - from cases to objects and relations
 and beyond
Object-Centric Processes - from cases to objects and relations
 and beyond
 
Multi-Dimensional Process Analysis
Multi-Dimensional Process Analysis Multi-Dimensional Process Analysis
Multi-Dimensional Process Analysis
 
Artifacts and Databases - the Need for Event Relation Graphs and Synchronous ...
Artifacts and Databases - the Need for Event Relation Graphs and Synchronous ...Artifacts and Databases - the Need for Event Relation Graphs and Synchronous ...
Artifacts and Databases - the Need for Event Relation Graphs and Synchronous ...
 
Describing, Discovering, and Understanding Multi-Dimensional Processes
Describing, Discovering, and Understanding Multi-Dimensional ProcessesDescribing, Discovering, and Understanding Multi-Dimensional Processes
Describing, Discovering, and Understanding Multi-Dimensional Processes
 
Process Mining: Past, Present, and Open Challenges (AIST 2017 Keynote)
Process Mining: Past, Present, and Open Challenges (AIST 2017 Keynote)Process Mining: Past, Present, and Open Challenges (AIST 2017 Keynote)
Process Mining: Past, Present, and Open Challenges (AIST 2017 Keynote)
 
Behavioral Conformance of Artifact-Centric Process Models
Behavioral Conformance of Artifact-Centric Process ModelsBehavioral Conformance of Artifact-Centric Process Models
Behavioral Conformance of Artifact-Centric Process Models
 

KĂŒrzlich hochgeladen

Call Girls Bannerghatta Road Just Call 👗 7737669865 👗 Top Class Call Girl Ser...
Call Girls Bannerghatta Road Just Call 👗 7737669865 👗 Top Class Call Girl Ser...Call Girls Bannerghatta Road Just Call 👗 7737669865 👗 Top Class Call Girl Ser...
Call Girls Bannerghatta Road Just Call 👗 7737669865 👗 Top Class Call Girl Ser...amitlee9823
 
Just Call Vip call girls Erode Escorts ☎9352988975 Two shot with one girl (E...
Just Call Vip call girls Erode Escorts ☎9352988975 Two shot with one girl (E...Just Call Vip call girls Erode Escorts ☎9352988975 Two shot with one girl (E...
Just Call Vip call girls Erode Escorts ☎9352988975 Two shot with one girl (E...gajnagarg
 
Call Girls In Bellandur ☎ 7737669865 đŸ„” Book Your One night Stand
Call Girls In Bellandur ☎ 7737669865 đŸ„” Book Your One night StandCall Girls In Bellandur ☎ 7737669865 đŸ„” Book Your One night Stand
Call Girls In Bellandur ☎ 7737669865 đŸ„” Book Your One night Standamitlee9823
 
Just Call Vip call girls roorkee Escorts ☎9352988975 Two shot with one girl ...
Just Call Vip call girls roorkee Escorts ☎9352988975 Two shot with one girl ...Just Call Vip call girls roorkee Escorts ☎9352988975 Two shot with one girl ...
Just Call Vip call girls roorkee Escorts ☎9352988975 Two shot with one girl ...gajnagarg
 
Detecting Credit Card Fraud: A Machine Learning Approach
Detecting Credit Card Fraud: A Machine Learning ApproachDetecting Credit Card Fraud: A Machine Learning Approach
Detecting Credit Card Fraud: A Machine Learning ApproachBoston Institute of Analytics
 
âž„đŸ” 7737669865 đŸ”â–» Sambalpur Call-girls in Women Seeking Men 🔝Sambalpur🔝 Esc...
âž„đŸ” 7737669865 đŸ”â–» Sambalpur Call-girls in Women Seeking Men  🔝Sambalpur🔝   Esc...âž„đŸ” 7737669865 đŸ”â–» Sambalpur Call-girls in Women Seeking Men  🔝Sambalpur🔝   Esc...
âž„đŸ” 7737669865 đŸ”â–» Sambalpur Call-girls in Women Seeking Men 🔝Sambalpur🔝 Esc...amitlee9823
 
âž„đŸ” 7737669865 đŸ”â–» Bangalore Call-girls in Women Seeking Men 🔝Bangalore🔝 Esc...
âž„đŸ” 7737669865 đŸ”â–» Bangalore Call-girls in Women Seeking Men  🔝Bangalore🔝   Esc...âž„đŸ” 7737669865 đŸ”â–» Bangalore Call-girls in Women Seeking Men  🔝Bangalore🔝   Esc...
âž„đŸ” 7737669865 đŸ”â–» Bangalore Call-girls in Women Seeking Men 🔝Bangalore🔝 Esc...amitlee9823
 
Call Girls Bommasandra Just Call 👗 7737669865 👗 Top Class Call Girl Service B...
Call Girls Bommasandra Just Call 👗 7737669865 👗 Top Class Call Girl Service B...Call Girls Bommasandra Just Call 👗 7737669865 👗 Top Class Call Girl Service B...
Call Girls Bommasandra Just Call 👗 7737669865 👗 Top Class Call Girl Service B...amitlee9823
 
Chintamani Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore ...
Chintamani Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore ...Chintamani Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore ...
Chintamani Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore ...amitlee9823
 
Call Girls Indiranagar Just Call 👗 9155563397 👗 Top Class Call Girl Service B...
Call Girls Indiranagar Just Call 👗 9155563397 👗 Top Class Call Girl Service B...Call Girls Indiranagar Just Call 👗 9155563397 👗 Top Class Call Girl Service B...
Call Girls Indiranagar Just Call 👗 9155563397 👗 Top Class Call Girl Service B...only4webmaster01
 
âž„đŸ” 7737669865 đŸ”â–» Dindigul Call-girls in Women Seeking Men 🔝Dindigul🔝 Escor...
âž„đŸ” 7737669865 đŸ”â–» Dindigul Call-girls in Women Seeking Men  🔝Dindigul🔝   Escor...âž„đŸ” 7737669865 đŸ”â–» Dindigul Call-girls in Women Seeking Men  🔝Dindigul🔝   Escor...
âž„đŸ” 7737669865 đŸ”â–» Dindigul Call-girls in Women Seeking Men 🔝Dindigul🔝 Escor...amitlee9823
 
Just Call Vip call girls Mysore Escorts ☎9352988975 Two shot with one girl (...
Just Call Vip call girls Mysore Escorts ☎9352988975 Two shot with one girl (...Just Call Vip call girls Mysore Escorts ☎9352988975 Two shot with one girl (...
Just Call Vip call girls Mysore Escorts ☎9352988975 Two shot with one girl (...gajnagarg
 
âž„đŸ” 7737669865 đŸ”â–» mahisagar Call-girls in Women Seeking Men 🔝mahisagar🔝 Esc...
âž„đŸ” 7737669865 đŸ”â–» mahisagar Call-girls in Women Seeking Men  🔝mahisagar🔝   Esc...âž„đŸ” 7737669865 đŸ”â–» mahisagar Call-girls in Women Seeking Men  🔝mahisagar🔝   Esc...
âž„đŸ” 7737669865 đŸ”â–» mahisagar Call-girls in Women Seeking Men 🔝mahisagar🔝 Esc...amitlee9823
 
Just Call Vip call girls Palakkad Escorts ☎9352988975 Two shot with one girl...
Just Call Vip call girls Palakkad Escorts ☎9352988975 Two shot with one girl...Just Call Vip call girls Palakkad Escorts ☎9352988975 Two shot with one girl...
Just Call Vip call girls Palakkad Escorts ☎9352988975 Two shot with one girl...gajnagarg
 
Digital Advertising Lecture for Advanced Digital & Social Media Strategy at U...
Digital Advertising Lecture for Advanced Digital & Social Media Strategy at U...Digital Advertising Lecture for Advanced Digital & Social Media Strategy at U...
Digital Advertising Lecture for Advanced Digital & Social Media Strategy at U...Valters Lauzums
 

KĂŒrzlich hochgeladen (20)

Call Girls Bannerghatta Road Just Call 👗 7737669865 👗 Top Class Call Girl Ser...
Call Girls Bannerghatta Road Just Call 👗 7737669865 👗 Top Class Call Girl Ser...Call Girls Bannerghatta Road Just Call 👗 7737669865 👗 Top Class Call Girl Ser...
Call Girls Bannerghatta Road Just Call 👗 7737669865 👗 Top Class Call Girl Ser...
 
Just Call Vip call girls Erode Escorts ☎9352988975 Two shot with one girl (E...
Just Call Vip call girls Erode Escorts ☎9352988975 Two shot with one girl (E...Just Call Vip call girls Erode Escorts ☎9352988975 Two shot with one girl (E...
Just Call Vip call girls Erode Escorts ☎9352988975 Two shot with one girl (E...
 
Call Girls In Bellandur ☎ 7737669865 đŸ„” Book Your One night Stand
Call Girls In Bellandur ☎ 7737669865 đŸ„” Book Your One night StandCall Girls In Bellandur ☎ 7737669865 đŸ„” Book Your One night Stand
Call Girls In Bellandur ☎ 7737669865 đŸ„” Book Your One night Stand
 
Just Call Vip call girls roorkee Escorts ☎9352988975 Two shot with one girl ...
Just Call Vip call girls roorkee Escorts ☎9352988975 Two shot with one girl ...Just Call Vip call girls roorkee Escorts ☎9352988975 Two shot with one girl ...
Just Call Vip call girls roorkee Escorts ☎9352988975 Two shot with one girl ...
 
Detecting Credit Card Fraud: A Machine Learning Approach
Detecting Credit Card Fraud: A Machine Learning ApproachDetecting Credit Card Fraud: A Machine Learning Approach
Detecting Credit Card Fraud: A Machine Learning Approach
 
âž„đŸ” 7737669865 đŸ”â–» Sambalpur Call-girls in Women Seeking Men 🔝Sambalpur🔝 Esc...
âž„đŸ” 7737669865 đŸ”â–» Sambalpur Call-girls in Women Seeking Men  🔝Sambalpur🔝   Esc...âž„đŸ” 7737669865 đŸ”â–» Sambalpur Call-girls in Women Seeking Men  🔝Sambalpur🔝   Esc...
âž„đŸ” 7737669865 đŸ”â–» Sambalpur Call-girls in Women Seeking Men 🔝Sambalpur🔝 Esc...
 
âž„đŸ” 7737669865 đŸ”â–» Bangalore Call-girls in Women Seeking Men 🔝Bangalore🔝 Esc...
âž„đŸ” 7737669865 đŸ”â–» Bangalore Call-girls in Women Seeking Men  🔝Bangalore🔝   Esc...âž„đŸ” 7737669865 đŸ”â–» Bangalore Call-girls in Women Seeking Men  🔝Bangalore🔝   Esc...
âž„đŸ” 7737669865 đŸ”â–» Bangalore Call-girls in Women Seeking Men 🔝Bangalore🔝 Esc...
 
Abortion pills in Jeddah | +966572737505 | Get Cytotec
Abortion pills in Jeddah | +966572737505 | Get CytotecAbortion pills in Jeddah | +966572737505 | Get Cytotec
Abortion pills in Jeddah | +966572737505 | Get Cytotec
 
(NEHA) Call Girls Katra Call Now 8617697112 Katra Escorts 24x7
(NEHA) Call Girls Katra Call Now 8617697112 Katra Escorts 24x7(NEHA) Call Girls Katra Call Now 8617697112 Katra Escorts 24x7
(NEHA) Call Girls Katra Call Now 8617697112 Katra Escorts 24x7
 
Call Girls In Shalimar Bagh ( Delhi) 9953330565 Escorts Service
Call Girls In Shalimar Bagh ( Delhi) 9953330565 Escorts ServiceCall Girls In Shalimar Bagh ( Delhi) 9953330565 Escorts Service
Call Girls In Shalimar Bagh ( Delhi) 9953330565 Escorts Service
 
Call Girls Bommasandra Just Call 👗 7737669865 👗 Top Class Call Girl Service B...
Call Girls Bommasandra Just Call 👗 7737669865 👗 Top Class Call Girl Service B...Call Girls Bommasandra Just Call 👗 7737669865 👗 Top Class Call Girl Service B...
Call Girls Bommasandra Just Call 👗 7737669865 👗 Top Class Call Girl Service B...
 
Chintamani Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore ...
Chintamani Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore ...Chintamani Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore ...
Chintamani Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore ...
 
Abortion pills in Doha Qatar (+966572737505 ! Get Cytotec
Abortion pills in Doha Qatar (+966572737505 ! Get CytotecAbortion pills in Doha Qatar (+966572737505 ! Get Cytotec
Abortion pills in Doha Qatar (+966572737505 ! Get Cytotec
 
CHEAP Call Girls in Saket (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Saket (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Saket (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Saket (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
Call Girls Indiranagar Just Call 👗 9155563397 👗 Top Class Call Girl Service B...
Call Girls Indiranagar Just Call 👗 9155563397 👗 Top Class Call Girl Service B...Call Girls Indiranagar Just Call 👗 9155563397 👗 Top Class Call Girl Service B...
Call Girls Indiranagar Just Call 👗 9155563397 👗 Top Class Call Girl Service B...
 
âž„đŸ” 7737669865 đŸ”â–» Dindigul Call-girls in Women Seeking Men 🔝Dindigul🔝 Escor...
âž„đŸ” 7737669865 đŸ”â–» Dindigul Call-girls in Women Seeking Men  🔝Dindigul🔝   Escor...âž„đŸ” 7737669865 đŸ”â–» Dindigul Call-girls in Women Seeking Men  🔝Dindigul🔝   Escor...
âž„đŸ” 7737669865 đŸ”â–» Dindigul Call-girls in Women Seeking Men 🔝Dindigul🔝 Escor...
 
Just Call Vip call girls Mysore Escorts ☎9352988975 Two shot with one girl (...
Just Call Vip call girls Mysore Escorts ☎9352988975 Two shot with one girl (...Just Call Vip call girls Mysore Escorts ☎9352988975 Two shot with one girl (...
Just Call Vip call girls Mysore Escorts ☎9352988975 Two shot with one girl (...
 
âž„đŸ” 7737669865 đŸ”â–» mahisagar Call-girls in Women Seeking Men 🔝mahisagar🔝 Esc...
âž„đŸ” 7737669865 đŸ”â–» mahisagar Call-girls in Women Seeking Men  🔝mahisagar🔝   Esc...âž„đŸ” 7737669865 đŸ”â–» mahisagar Call-girls in Women Seeking Men  🔝mahisagar🔝   Esc...
âž„đŸ” 7737669865 đŸ”â–» mahisagar Call-girls in Women Seeking Men 🔝mahisagar🔝 Esc...
 
Just Call Vip call girls Palakkad Escorts ☎9352988975 Two shot with one girl...
Just Call Vip call girls Palakkad Escorts ☎9352988975 Two shot with one girl...Just Call Vip call girls Palakkad Escorts ☎9352988975 Two shot with one girl...
Just Call Vip call girls Palakkad Escorts ☎9352988975 Two shot with one girl...
 
Digital Advertising Lecture for Advanced Digital & Social Media Strategy at U...
Digital Advertising Lecture for Advanced Digital & Social Media Strategy at U...Digital Advertising Lecture for Advanced Digital & Social Media Strategy at U...
Digital Advertising Lecture for Advanced Digital & Social Media Strategy at U...
 

Where did I go wrong? Explaining errors in process models

  • 1. Where did I go wrong? Explaining errors in process models Niels Lohmann @nlohmann Dirk Fahland @dfahland
  • 2. Verification of processes and services 2 process model property verification technique diagnostic information
  • 3. Verification of processes and services 3 verification technique diagnostic information BPMN Soundness domain-specific high-quality
  • 4. Verification of processes and services 4 CMMN Declare WS-BPEL WS-Policy EPC BPMN YAWL Object Life-Cycles GSM Rules Soundness Security Compliance Conformance to 
 diagnostic information verification technique domain-specific high-quality -moving target -domain-specific approaches too specific to follow
  • 5. Verification of processes and services 5 CMMN Declare WS-BPEL WS-Policy EPC BPMN YAWL Object Life-Cycles GSM Rules Soundness Security Compliance Conformance to 
 diagnostic information verification technique high-quality general purpose
  • 6. Model checking general purpose verification approach: 1. formalize model and specification* 2. push a button 6 *can be hidden from the user
  • 7. Effectiveness and efficiency -model checking works in reality -successful applications in many domains -very fast: “verify while you model” 7
  • 8. Diagnosis -in case of error: outputs target state and produce a witness path -describes how target state can be reached -operational semantics: can be simulated 8 witness path target state
  • 9. Diagnosis: the bad PATH process.s00000823##s00006200.inputCriterion.s00001053 fork.s00001071.activate.s00001072 fork.s00001071.fire.s00001078 merge.s00001061.activate.s00001065 merge.s00001061.fire.s00001069 callToTask.s00006202.inputCriterion.s00001053 callToTask.s00006202.outputCriterion.s00001055 callToTask.s00006211.inputCriterion.s00001053 callToTask.s00006211.outputCriterion.s00001055 callToTask.s00006209.inputCriterion.s00001053 callToTask.s00006209.outputCriterion.s00001055 decision.s00001158.activate.s00001072 decision.s00001158.fire.s00001075 merge.s00001160.activate.s00001064 merge.s00001160.fire.s00001069 callToTask.s00006203.inputCriterion.s00001053 callToTask.s00006203.outputCriterion.s00001055 callToTask.s00006214.inputCriterion.s00001053 callToTask.s00006214.outputCriterion.s00001055 callToTask.s00006213.inputCriterion.s00001053 callToTask.s00006213.outputCriterion.s00001055 decision.s00001840.activate.s00001072 decision.s00001840.fire.s00001075 callToTask.s00006201.inputCriterion.s00001053 callToTask.s00006201.outputCriterion.s00001055 decision.s00001123.activate.s00001072 decision.s00001123.fire.s00001075 merge.s00001161.activate.s00001064 merge.s00001161.fire.s00001069 callToTask.s00006208.inputCriterion.s00001053 callToTask.s00006208.outputCriterion.s00001055 decision.s00001157.activate.s00001072 decision.s00001157.fire.s00001073 fork.s00001071.fire.s00001073 merge.s00001061.activate.s00001064 join.s00001163.activate.s00001062 merge.s00001061.fire.s00001069 join.s00001163.activate.s00001064 merge.s00001162.activate.s00001062 merge.s00001162.fire.s00001069 callToTask.s00006210.inputCriterion.s00001053 callToTask.s00006210.outputCriterion.s00001055 decision.s00001159.activate.s00001072 decision.s00001159.fire.s00001073 join.s00001163.activate.s00001065 join.s00001163.fire.s00001069 fork.s00001071.fire.s00001075 merge.s00001160.activate.s00001065 callToTask.s00006207.inputCriterion.s00001053 merge.s00001160.fire.s00001069 callToTask.s00006207.outputCriterion.s00001055 callToTask.s00006203.inputCriterion.s00001053 decision.s00001126.activate.s00001072 callToTask.s00006203.outputCriterion.s00001055 decision.s00001126.fire.s00001073 callToTask.s00006214.inputCriterion.s00001053 callToTask.s00006202.inputCriterion.s00001053 callToTask.s00006202.outputCriterion.s00001055 callToTask.s00006211.inputCriterion.s00001053 callToTask.s00006211.outputCriterion.s00001055 callToTask.s00006209.inputCriterion.s00001053 callToTask.s00006209.outputCriterion.s00001055 decision.s00001158.activate.s00001072 decision.s00001158.fire.s00001075 callToTask.s00006214.outputCriterion.s00001055 callToTask.s00006213.inputCriterion.s00001053 callToTask.s00006213.outputCriterion.s00001055 decision.s00001840.activate.s00001072 decision.s00001840.fire.s00001075 callToTask.s00006201.inputCriterion.s00001053 callToTask.s00006201.outputCriterion.s00001055 decision.s00001123.activate.s00001072 decision.s00001123.fire.s00001073 callToTask.s00006204.inputCriterion.s00001053 callToTask.s00006204.outputCriterion.s00001055 callToTask.s00003714.inputCriterion.s00001053 callToTask.s00003714.outputCriterion.s00001055 callToTask.s00006215.inputCriterion.s00001053 callToTask.s00006215.outputCriterion.s00001055 callToTask.s00006206.inputCriterion.s00001053 join.s00001163.activate.s00001064 callToTask.s00006206.outputCriterion.s00001055 callToTask.s00006205.inputCriterion.s00001053 callToTask.s00006205.outputCriterion.s00001055 merge.s00001161.activate.s00001062 merge.s00001161.fire.s00001069 callToTask.s00006208.inputCriterion.s00001053 callToTask.s00006208.outputCriterion.s00001055 decision.s00001157.activate.s00001072 decision.s00001157.fire.s00001073 join.s00001163.activate.s00001062 callToTask.s00006212.inputCriterion.s00001053 callToTask.s00006212.outputCriterion.s00001055 merge.s00001162.activate.s00001064 merge.s00001162.fire.s00001069 callToTask.s00006210.inputCriterion.s00001053 callToTask.s00006210.outputCriterion.s00001055 decision.s00001159.activate.s00001072 decision.s00001159.fire.s00001073 join.s00001163.activate.s00001065 join.s00001163.fire.s00001069 callToTask.s00006207.inputCriterion.s00001053 callToTask.s00006207.outputCriterion.s00001055 decision.s00001126.activate.s00001072 decision.s00001126.fire.s00001073 STATE decision.s00001126.output.s00001054 : 2 -paths can become very long -length correlates with size of the model -reports all events equally: disregarding importance
  • 10. This talk: better diagnosis PATH process.s00000823##s00006200.inputCriterion.s00001053 fork.s00001071.activate.s00001072 fork.s00001071.fire.s00001078 merge.s00001061.activate.s00001065 merge.s00001061.fire.s00001069 callToTask.s00006202.inputCriterion.s00001053 callToTask.s00006202.outputCriterion.s00001055 callToTask.s00006211.inputCriterion.s00001053 callToTask.s00006211.outputCriterion.s00001055 callToTask.s00006209.inputCriterion.s00001053 callToTask.s00006209.outputCriterion.s00001055 decision.s00001158.activate.s00001072 decision.s00001158.fire.s00001075 merge.s00001160.activate.s00001064 merge.s00001160.fire.s00001069 callToTask.s00006203.inputCriterion.s00001053 callToTask.s00006203.outputCriterion.s00001055 callToTask.s00006214.inputCriterion.s00001053 callToTask.s00006214.outputCriterion.s00001055 callToTask.s00006213.inputCriterion.s00001053 callToTask.s00006213.outputCriterion.s00001055 decision.s00001840.activate.s00001072 decision.s00001840.fire.s00001075 callToTask.s00006201.inputCriterion.s00001053 callToTask.s00006201.outputCriterion.s00001055 decision.s00001123.activate.s00001072 decision.s00001123.fire.s00001075 merge.s00001161.activate.s00001064 merge.s00001161.fire.s00001069 callToTask.s00006208.inputCriterion.s00001053 callToTask.s00006208.outputCriterion.s00001055 decision.s00001157.activate.s00001072 decision.s00001157.fire.s00001073 fork.s00001071.fire.s00001073 merge.s00001061.activate.s00001064 join.s00001163.activate.s00001062 merge.s00001061.fire.s00001069 join.s00001163.activate.s00001064 merge.s00001162.activate.s00001062 merge.s00001162.fire.s00001069 callToTask.s00006210.inputCriterion.s00001053 callToTask.s00006210.outputCriterion.s00001055 decision.s00001159.activate.s00001072 decision.s00001159.fire.s00001073 join.s00001163.activate.s00001065 join.s00001163.fire.s00001069 fork.s00001071.fire.s00001075 merge.s00001160.activate.s00001065 callToTask.s00006207.inputCriterion.s00001053 merge.s00001160.fire.s00001069 callToTask.s00006207.outputCriterion.s00001055 callToTask.s00006203.inputCriterion.s00001053 decision.s00001126.activate.s00001072 callToTask.s00006203.outputCriterion.s00001055 decision.s00001126.fire.s00001073 callToTask.s00006214.inputCriterion.s00001053 callToTask.s00006202.inputCriterion.s00001053 callToTask.s00006202.outputCriterion.s00001055 callToTask.s00006211.inputCriterion.s00001053 callToTask.s00006211.outputCriterion.s00001055 callToTask.s00006209.inputCriterion.s00001053 callToTask.s00006209.outputCriterion.s00001055 decision.s00001158.activate.s00001072 decision.s00001158.fire.s00001075 callToTask.s00006214.outputCriterion.s00001055 callToTask.s00006213.inputCriterion.s00001053 callToTask.s00006213.outputCriterion.s00001055 decision.s00001840.activate.s00001072 decision.s00001840.fire.s00001075 callToTask.s00006201.inputCriterion.s00001053 callToTask.s00006201.outputCriterion.s00001055 decision.s00001123.activate.s00001072 decision.s00001123.fire.s00001073 callToTask.s00006204.inputCriterion.s00001053 callToTask.s00006204.outputCriterion.s00001055 callToTask.s00003714.inputCriterion.s00001053 callToTask.s00003714.outputCriterion.s00001055 callToTask.s00006215.inputCriterion.s00001053 callToTask.s00006215.outputCriterion.s00001055 callToTask.s00006206.inputCriterion.s00001053 join.s00001163.activate.s00001064 callToTask.s00006206.outputCriterion.s00001055 callToTask.s00006205.inputCriterion.s00001053 callToTask.s00006205.outputCriterion.s00001055 merge.s00001161.activate.s00001062 merge.s00001161.fire.s00001069 callToTask.s00006208.inputCriterion.s00001053 callToTask.s00006208.outputCriterion.s00001055 decision.s00001157.activate.s00001072 decision.s00001157.fire.s00001073 join.s00001163.activate.s00001062 callToTask.s00006212.inputCriterion.s00001053 callToTask.s00006212.outputCriterion.s00001055 merge.s00001162.activate.s00001064 merge.s00001162.fire.s00001069 callToTask.s00006210.inputCriterion.s00001053 callToTask.s00006210.outputCriterion.s00001055 decision.s00001159.activate.s00001072 decision.s00001159.fire.s00001073 join.s00001163.activate.s00001065 join.s00001163.fire.s00001069 callToTask.s00006207.inputCriterion.s00001053 callToTask.s00006207.outputCriterion.s00001055 decision.s00001126.activate.s00001072 decision.s00001126.fire.s00001073 STATE decision.s00001126.output.s00001054 : 2
  • 11. This talk: better diagnosis path essential path distill Why useless?
  • 12. Reasons for useless paths 12 detours depth-first search indisputable parts bootstrapping interleavings concurrency
  • 13. Running example 13 lack of synchronization
  • 14. Reduction: obvious parts -classify transitions -only report points of alternative continuations* 14 * XOR-gateways, events, exceptions, 
 assume progress of flow
  • 15. Reduction: obvious parts 15 t1 t2 t9 t10 t11 t12 t14 t8 t2 t3 t4 t5 “down” “down” “up”
  • 16. Non-obvious “core” of a path ≈ 10-25% 16
  • 17. Reduction: spurious decisions -can be found by model checking -results: 50%-80% spurious, occasionally no reduction (timeout) 17 p1 p3 p2 p4 p5 p6 p1 p3 p5 p6 genuine decision spurious decision = irrelevant for outcome
  • 18. Reasons for useless paths 18 detours depth-first search indisputable parts bootstrapping interleavings concurrency
  • 19. Reduction: unorder steps -idea: show independence of steps ( partially ordered runs) -makes synchronization points (milestones) explicit 19 independent steps many paths to same goal state order of steps irrelevant
  • 20. Reduction: unorder steps 20 t1 t2 t9 t10 t11 t12 t14 t8 t2 t3 t4 t5 t9 t14 t3
  • 21. More aid: preserve reference points 21 t1 t2 t9 t10 t11 t12 t14 t8 t2 t3 t4 t5 t9 t14 t3 p1 p6 p6 t5 t11 t10 t1
  • 22. Final: remove obvious/spurious parts 22 t1 t2 t9 t10 t11 t12 t14 t8 t2 t3 t4 t5 t9 t14 t3 p1 p6 p6 t5 t11 t10 t1
  • 23. Essential path: find source of error PATH process.s00000823##s00006200.inputCriterion.s00001053 fork.s00001071.activate.s00001072 fork.s00001071.fire.s00001078 merge.s00001061.activate.s00001065 merge.s00001061.fire.s00001069 callToTask.s00006202.inputCriterion.s00001053 callToTask.s00006202.outputCriterion.s00001055 callToTask.s00006211.inputCriterion.s00001053 callToTask.s00006211.outputCriterion.s00001055 callToTask.s00006209.inputCriterion.s00001053 callToTask.s00006209.outputCriterion.s00001055 decision.s00001158.activate.s00001072 decision.s00001158.fire.s00001075 merge.s00001160.activate.s00001064 merge.s00001160.fire.s00001069 callToTask.s00006203.inputCriterion.s00001053 callToTask.s00006203.outputCriterion.s00001055 callToTask.s00006214.inputCriterion.s00001053 callToTask.s00006214.outputCriterion.s00001055 callToTask.s00006213.inputCriterion.s00001053 callToTask.s00006213.outputCriterion.s00001055 decision.s00001840.activate.s00001072 decision.s00001840.fire.s00001075 callToTask.s00006201.inputCriterion.s00001053 callToTask.s00006201.outputCriterion.s00001055 decision.s00001123.activate.s00001072 decision.s00001123.fire.s00001075 merge.s00001161.activate.s00001064 merge.s00001161.fire.s00001069 callToTask.s00006208.inputCriterion.s00001053 callToTask.s00006208.outputCriterion.s00001055 decision.s00001157.activate.s00001072 decision.s00001157.fire.s00001073 fork.s00001071.fire.s00001073 merge.s00001061.activate.s00001064 join.s00001163.activate.s00001062 merge.s00001061.fire.s00001069 join.s00001163.activate.s00001064 merge.s00001162.activate.s00001062 merge.s00001162.fire.s00001069 callToTask.s00006210.inputCriterion.s00001053 callToTask.s00006210.outputCriterion.s00001055 decision.s00001159.activate.s00001072 decision.s00001159.fire.s00001073 join.s00001163.activate.s00001065 join.s00001163.fire.s00001069 fork.s00001071.fire.s00001075 merge.s00001160.activate.s00001065 callToTask.s00006207.inputCriterion.s00001053 merge.s00001160.fire.s00001069 callToTask.s00006207.outputCriterion.s00001055 callToTask.s00006203.inputCriterion.s00001053 decision.s00001126.activate.s00001072 callToTask.s00006203.outputCriterion.s00001055 decision.s00001126.fire.s00001073 callToTask.s00006214.inputCriterion.s00001053 callToTask.s00006202.inputCriterion.s00001053 callToTask.s00006202.outputCriterion.s00001055 callToTask.s00006211.inputCriterion.s00001053 callToTask.s00006211.outputCriterion.s00001055 callToTask.s00006209.inputCriterion.s00001053 callToTask.s00006209.outputCriterion.s00001055 decision.s00001158.activate.s00001072 decision.s00001158.fire.s00001075 callToTask.s00006214.outputCriterion.s00001055 callToTask.s00006213.inputCriterion.s00001053 callToTask.s00006213.outputCriterion.s00001055 decision.s00001840.activate.s00001072 decision.s00001840.fire.s00001075 callToTask.s00006201.inputCriterion.s00001053 callToTask.s00006201.outputCriterion.s00001055 decision.s00001123.activate.s00001072 decision.s00001123.fire.s00001073 callToTask.s00006204.inputCriterion.s00001053 callToTask.s00006204.outputCriterion.s00001055 callToTask.s00003714.inputCriterion.s00001053 callToTask.s00003714.outputCriterion.s00001055 callToTask.s00006215.inputCriterion.s00001053 callToTask.s00006215.outputCriterion.s00001055 callToTask.s00006206.inputCriterion.s00001053 join.s00001163.activate.s00001064 callToTask.s00006206.outputCriterion.s00001055 callToTask.s00006205.inputCriterion.s00001053 callToTask.s00006205.outputCriterion.s00001055 merge.s00001161.activate.s00001062 merge.s00001161.fire.s00001069 callToTask.s00006208.inputCriterion.s00001053 callToTask.s00006208.outputCriterion.s00001055 decision.s00001157.activate.s00001072 decision.s00001157.fire.s00001073 join.s00001163.activate.s00001062 callToTask.s00006212.inputCriterion.s00001053 callToTask.s00006212.outputCriterion.s00001055 merge.s00001162.activate.s00001064 merge.s00001162.fire.s00001069 callToTask.s00006210.inputCriterion.s00001053 callToTask.s00006210.outputCriterion.s00001055 decision.s00001159.activate.s00001072 decision.s00001159.fire.s00001073 join.s00001163.activate.s00001065 join.s00001163.fire.s00001069 callToTask.s00006207.inputCriterion.s00001053 callToTask.s00006207.outputCriterion.s00001055 decision.s00001126.activate.s00001072 decision.s00001126.fire.s00001073
  • 24. Results: typical reduced paths 24 2x lack of synchronization improper completion deadlock
  • 25. Summary -general purpose verification more user friendly -paths  partial order of important decisions -applicable to any verification goal -keep reference points to aid diagnosis Next steps -error localization vs. explanation -detect useless cycles -How should a good diagnosis for $problem look like? 25
  • 26. Where did I go wrong? Explaining errors in process models Niels Lohmann