SlideShare a Scribd company logo
1 of 33
State Space Reduction Techniquesto Verify Business ProcessesNielsLohmann
Correctness of Business Processes Business process models need to be correct! Ramifications of incorrect models: execution deadlocks ➙ down times simulation results are wrong ➙ wrong optimizations design-by-contract scenario ➙ legal problems … Faults have business impact! State Space Reduction Techniques 11.01.10
Dimensions of Correctness State Space Reduction Techniques 11.01.10 correctness criteria legal properties (compliance) semantical properties (ontologies) quantitative properties (cost, throughput) control flow (soundness, deadlock freedom) manual domain specific partial (interactive) domain independent full-automatic level of automation correctness approach
Model Checking full-automatically check whether a system meets a specification “full-automatically” = no interaction with expert “check” = mathematically prove by exhaustion “system” = formal model “specification” = formal correctness criterion advantages: complete fast automated cheap provides counterexamples State Space Reduction Techniques 11.01.10 ,[object Object]
requires formal model
specification might be complex
state space explosion,[object Object]
State Space Explosion reasons for state space explosion: explicit (arbitrary) ordering of unordered events interleaving of independent components global states global transitions in business processes: parallel branches (AND-Splits) parallel composition refinement asynchronous communication … State Space Reduction Techniques 11.01.10 3 4 1 2
Example example business process: 66 parallel branches assume each state needs 66 bits to store: 4 Zettabytes required (…, giga, tera, peta, exa, zetta…) assume a notebook can check 1 state per cycle at 3 GHz: 51475 years required energy consumption (50 watts) would be close to 1 megaton TNT unrealistic? real business process model made with IBM Business Modeler models are not state based modeler is not the limiting factor State Space Reduction Techniques 11.01.10 ➙ ≥ 266 ≈ 7.37 ∙ 1019 states
Fight the State Explosion! restrict modeling language (block structure) abstract model (data abstractions) decomposition techniques (SESE) reduce model (structural reduction techniques) compactly represent state space (symbolic techniques) reduce state space (partial order reduction, symmetries, …) … State Space Reduction Techniques 11.01.10 ✕
Agenda State Space Reduction Techniques 11.01.10 Introduction✔ Partial Order Reduction ☜ Symmetry Reduction Lessons Learned
Partial Order Reduction Core idea: only fire a small subset of activated transitions State Space Reduction Techniques 11.01.10 211 121 112 311 113 221 212 131 122 213 123 321 231 222 132 312 322 331 232 313 133 223 332 323 233 333 444 3 4 1 2 111
Partial Order Reduction Core idea: only fire a subset of activated transitions State Space Reduction Techniques 11.01.10 3 4 1 2 111 121 122 222 223 323 333 444
Model Checking with Partial Order Reduction selection idea: postpone firing of independent transitions unselected transitions cannot activate/deactivate selected transitions the more concurrency, the better! prerequisite: specificationmust be stutter-equivalent(no X-operator) State Space Reduction Techniques 11.01.10 R := E := ø; dfs(m0); dfs(m): R := R  {m}; FOR ALL t: t selected in m DO m' = m – •t + t• 	IF m'  R THEN 		E := E {[m, m']} 	ELSE 		E := E {[m, m']}; dfs(m'); 	END END	 FOR ALL t: t enabled in m DO
Partial Order Reduction and Petri Nets selection is guided by Petri net structure deadlock preserving partial order reduction initially: add an activated transition until fixed point reached: add conflicting transitions example: mutual exclusion not calculated: (c,i,0), (i,c,0) State Space Reduction Techniques 11.01.10 (i,i,1) t1,t4 r r t1,t6 (r,i,1) (i,r,1) t6 t4,t2 t2 s c c t4 t1 i (r,r,1) t2,t6 t5 t3 i (r,c,0) t5 (c,r,0) t3
Partial Order Reduction: Case Study 735 industrial business processes from IBM customers maximal 118 nodes, 66 parallel branches about 50% were sound comparison between three approaches: LoLA with partial order reduction SESE decomposition as BOM plugin (IBM Research Zurich) Woflan (TU Eindhoven) State Space Reduction Techniques 11.01.10
Case Study: Results LoLA was the fastest tool to decide soundness: maximal 50 ms per process (9 ms on average) faster than domain-specific approaches partial order reduction made verification very easy: at most 6467 statesneeded to be analyzed (100 on average) never more than 2 MBof memory needed structural reduction had no impact in runtime nets study available at http://service-technology.org/soundness State Space Reduction Techniques 11.01.10
Checking Soundness classical: soundness = short-circuited net is live and bounded naïve: check CTL property “AGEF final” LoLA: use partial order reduction: check AGEF final check boundedness exploit domain knowledge: Free Choice Petri nets + workflow structure:boundedness implies 1-safeness check “EF (p1>1 ∨ … ∨ pn>1)” instead of boundedness State Space Reduction Techniques 11.01.10 can be paralellized
Partial Order Reduction in LoLA thefeature in LoLA (#define STUBBORN) adapted versions for several specifications: deadlock freedom, reachability reversibility, boundedness, liveness, home markings special state predicates (EF, AGEF, GF, FG, …) CTL always recommended also applicable for random searches State Space Reduction Techniques 11.01.10
Agenda Introduction✔ Partial Order Reduction ✔ Symmetry Reduction☜ Lessons Learned State Space Reduction Techniques 11.01.10
Symmetry Reduction Core idea: symmetric structuredsystems have symmetric behavior State Space Reduction Techniques 11.01.10 ,[object Object],[object Object]
Symmetries for Petri Nets formally: bijective mapping on Petri net nodes that respects node types and the flow relation (“net automorphism”) markings [r1, i2, s] and [i1, r2, s] are symmetric symmetries can be calculated without prior knowledge State Space Reduction Techniques 11.01.10 r1 r2 t6 t2 s c1 c2 t4 t1 i2 i1 t5 t3
Representation of Symmetries identity is always a symmetry symmetries are closed underinversion and concatenation exponential number of symmetries can berepresented by polynomial generator set performs best if system has many components example: 5 symmetries full: 242 stats reduced: 50 states State Space Reduction Techniques 11.01.10 group theory
Symmetry Reduction: Case Study BPEL4Chor choreography inter-organizational business process with 2+n participants State Space Reduction Techniques 11.01.10
Symmetry Reduction: Case Study BPEL4Chor choreography inter-organizational business process with 2+n participants State Space Reduction Techniques 11.01.10
Case Study: Results State Space Reduction Techniques 11.01.10 exponential growth   unreduced  symmetry reduction  partial order reduction  symmetry reduction + partial order reduction  overflow (>2 GB) linear growth 
Symmetry Reduction in LoLA adapted versions for several specifications: deadlock freedom reachability, properties of transitions/places reversibility, boundedness can be combined with partial order reduction implements several strategies/heuristics to calculate symmetries(#define SYMMETRY) tradeoff between memory/runtime needed for symmetries requires preprocessing time and yields runtime overhead State Space Reduction Techniques 11.01.10
Agenda State Space Reduction Techniques 11.01.10 VERIFYING ! Introduction✔ Partial Order Reduction ✔ Symmetry Reduction ✔ Lessons Learned☜
Lessons Learned (1/4): LoLA >10 years of development, 25 KLOC very efficient limit: memory allocation exploits Petri net theory where possible implemented heuristics close to domain knowledge applications in biology, BPM, services, hardware, … CTL model checker, dedicated algorithms for many properties partial order reduction, symmetry, sweep line, invariant compression, … alternative file format: high-level Petri net free software:http://service-technology.org/lola State Space Reduction Techniques 11.01.10
Lessons Learned (2/4): Model Checking Tools naïve algorithms are quickly implemented, but useless abstract data types are key to success understand your algorithm and the lifecycle of each variable understand the assumptions theory is your friend usability ≠ tool is extendible, user-friendly, … usability = tool performs on realistic models memory management, data structures, object lifecycleGo back 20 years and do it all yourself! a special discipline of software engineering:Ignore design patterns and best practices! State Space Reduction Techniques 11.01.10
Lessons Learned (3/4): State Space Reduction active research community group theory, concurrency theory, net theory, coding theory, … technology transfer very hard key to success: Don’t be afraid of worst-case complexity! understand verification problem decompose specification to several easier properties only model relevant properties State Space Reduction Techniques 11.01.10
Lessons Learned (4/4): Correctness in BPM quality of models is still very low models are rather simple right now many features of BPM languages are not yet used correctness notions are rather simple domainunspecific tools are still competitive control flow verification solved more to come: inter-organizational business processes Web services SOA Cloud Computing State Space Reduction Techniques 11.01.10
Thank you! Questions? State Space Reduction Techniques 11.01.10 NielsLohmannUniversity of Rostockniels.lohmann@uni-rostock.dehttp://service-technology.org/tools

More Related Content

What's hot

Concurrent Bounded Model Checking
Concurrent Bounded Model CheckingConcurrent Bounded Model Checking
Concurrent Bounded Model CheckingQuoc-Sang Phan
 
Gordon morrison temporalengineering-delphi-v3
Gordon morrison temporalengineering-delphi-v3Gordon morrison temporalengineering-delphi-v3
Gordon morrison temporalengineering-delphi-v3Gordon Morrison
 
Федор Поляков (Looksery) “Face Tracking на мобильных устройствах в режиме реа...
Федор Поляков (Looksery) “Face Tracking на мобильных устройствах в режиме реа...Федор Поляков (Looksery) “Face Tracking на мобильных устройствах в режиме реа...
Федор Поляков (Looksery) “Face Tracking на мобильных устройствах в режиме реа...Provectus
 
Algorithm Analyzing
Algorithm AnalyzingAlgorithm Analyzing
Algorithm AnalyzingHaluan Irsad
 
Introduction to Algorithms Complexity Analysis
Introduction to Algorithms Complexity Analysis Introduction to Algorithms Complexity Analysis
Introduction to Algorithms Complexity Analysis Dr. Pankaj Agarwal
 
Dynamic Binary Analysis and Obfuscated Codes
Dynamic Binary Analysis and Obfuscated Codes Dynamic Binary Analysis and Obfuscated Codes
Dynamic Binary Analysis and Obfuscated Codes Jonathan Salwan
 
Efficient and Advanced Omniscient Debugging for xDSMLs (SLE 2015)
Efficient and Advanced Omniscient Debugging for xDSMLs (SLE 2015)Efficient and Advanced Omniscient Debugging for xDSMLs (SLE 2015)
Efficient and Advanced Omniscient Debugging for xDSMLs (SLE 2015)Benoit Combemale
 
Introduction to algorithn class 1
Introduction to algorithn class 1Introduction to algorithn class 1
Introduction to algorithn class 1Kumar
 
Session 6 sv_randomization
Session 6 sv_randomizationSession 6 sv_randomization
Session 6 sv_randomizationNirav Desai
 
Towards Automatic Code Selection with ppOpen-AT: A Case of FDM - Variants of ...
Towards Automatic Code Selection with ppOpen-AT: A Case of FDM - Variants of ...Towards Automatic Code Selection with ppOpen-AT: A Case of FDM - Variants of ...
Towards Automatic Code Selection with ppOpen-AT: A Case of FDM - Variants of ...Takahiro Katagiri
 
Lecture 2 data structures and algorithms
Lecture 2 data structures and algorithmsLecture 2 data structures and algorithms
Lecture 2 data structures and algorithmsAakash deep Singhal
 
Mediump support in Mesa (XDC 2019)
Mediump support in Mesa (XDC 2019)Mediump support in Mesa (XDC 2019)
Mediump support in Mesa (XDC 2019)Igalia
 
Unit i basic concepts of algorithms
Unit i basic concepts of algorithmsUnit i basic concepts of algorithms
Unit i basic concepts of algorithmssangeetha s
 
Parametrized Model Checking of Fault Tolerant Distributed Algorithms by Abstr...
Parametrized Model Checking of Fault Tolerant Distributed Algorithms by Abstr...Parametrized Model Checking of Fault Tolerant Distributed Algorithms by Abstr...
Parametrized Model Checking of Fault Tolerant Distributed Algorithms by Abstr...Iosif Itkin
 
Design & Analysis of Algorithms Lecture Notes
Design & Analysis of Algorithms Lecture NotesDesign & Analysis of Algorithms Lecture Notes
Design & Analysis of Algorithms Lecture NotesFellowBuddy.com
 

What's hot (20)

Concurrent Bounded Model Checking
Concurrent Bounded Model CheckingConcurrent Bounded Model Checking
Concurrent Bounded Model Checking
 
Gordon morrison temporalengineering-delphi-v3
Gordon morrison temporalengineering-delphi-v3Gordon morrison temporalengineering-delphi-v3
Gordon morrison temporalengineering-delphi-v3
 
Федор Поляков (Looksery) “Face Tracking на мобильных устройствах в режиме реа...
Федор Поляков (Looksery) “Face Tracking на мобильных устройствах в режиме реа...Федор Поляков (Looksery) “Face Tracking на мобильных устройствах в режиме реа...
Федор Поляков (Looksery) “Face Tracking на мобильных устройствах в режиме реа...
 
Doulos coverage-tips-tricks
Doulos coverage-tips-tricksDoulos coverage-tips-tricks
Doulos coverage-tips-tricks
 
Algorithm Analyzing
Algorithm AnalyzingAlgorithm Analyzing
Algorithm Analyzing
 
Introduction to Algorithms Complexity Analysis
Introduction to Algorithms Complexity Analysis Introduction to Algorithms Complexity Analysis
Introduction to Algorithms Complexity Analysis
 
Dynamic Binary Analysis and Obfuscated Codes
Dynamic Binary Analysis and Obfuscated Codes Dynamic Binary Analysis and Obfuscated Codes
Dynamic Binary Analysis and Obfuscated Codes
 
Efficient and Advanced Omniscient Debugging for xDSMLs (SLE 2015)
Efficient and Advanced Omniscient Debugging for xDSMLs (SLE 2015)Efficient and Advanced Omniscient Debugging for xDSMLs (SLE 2015)
Efficient and Advanced Omniscient Debugging for xDSMLs (SLE 2015)
 
report
reportreport
report
 
Introduction to algorithn class 1
Introduction to algorithn class 1Introduction to algorithn class 1
Introduction to algorithn class 1
 
Session 6 sv_randomization
Session 6 sv_randomizationSession 6 sv_randomization
Session 6 sv_randomization
 
Towards Automatic Code Selection with ppOpen-AT: A Case of FDM - Variants of ...
Towards Automatic Code Selection with ppOpen-AT: A Case of FDM - Variants of ...Towards Automatic Code Selection with ppOpen-AT: A Case of FDM - Variants of ...
Towards Automatic Code Selection with ppOpen-AT: A Case of FDM - Variants of ...
 
Mutual exclusion and sync
Mutual exclusion and syncMutual exclusion and sync
Mutual exclusion and sync
 
Lecture 2 data structures and algorithms
Lecture 2 data structures and algorithmsLecture 2 data structures and algorithms
Lecture 2 data structures and algorithms
 
Mediump support in Mesa (XDC 2019)
Mediump support in Mesa (XDC 2019)Mediump support in Mesa (XDC 2019)
Mediump support in Mesa (XDC 2019)
 
Unit i basic concepts of algorithms
Unit i basic concepts of algorithmsUnit i basic concepts of algorithms
Unit i basic concepts of algorithms
 
Parametrized Model Checking of Fault Tolerant Distributed Algorithms by Abstr...
Parametrized Model Checking of Fault Tolerant Distributed Algorithms by Abstr...Parametrized Model Checking of Fault Tolerant Distributed Algorithms by Abstr...
Parametrized Model Checking of Fault Tolerant Distributed Algorithms by Abstr...
 
Design & Analysis of Algorithms Lecture Notes
Design & Analysis of Algorithms Lecture NotesDesign & Analysis of Algorithms Lecture Notes
Design & Analysis of Algorithms Lecture Notes
 
OS_Ch7
OS_Ch7OS_Ch7
OS_Ch7
 
Analyzing algorithms
Analyzing algorithmsAnalyzing algorithms
Analyzing algorithms
 

Similar to State Space Reduction Techniques to Verify Business Processes

Software Testing: Test Design and the Project Life Cycle
Software Testing: Test Design and the Project Life CycleSoftware Testing: Test Design and the Project Life Cycle
Software Testing: Test Design and the Project Life CycleDerek Callaway
 
EclipseCon Eu 2015 - Breathe life into your Designer!
EclipseCon Eu 2015 - Breathe life into your Designer!EclipseCon Eu 2015 - Breathe life into your Designer!
EclipseCon Eu 2015 - Breathe life into your Designer!melbats
 
2008-10-09 - Bits and Chips Conference - Embedded Systemen Architecture patterns
2008-10-09 - Bits and Chips Conference - Embedded Systemen Architecture patterns2008-10-09 - Bits and Chips Conference - Embedded Systemen Architecture patterns
2008-10-09 - Bits and Chips Conference - Embedded Systemen Architecture patternsJaap van Ekris
 
SiriusCon 2015 - Breathe Life into Your Designer!
SiriusCon 2015 - Breathe Life into Your Designer!SiriusCon 2015 - Breathe Life into Your Designer!
SiriusCon 2015 - Breathe Life into Your Designer!melbats
 
Inside LoLA - Experiences from building a state space tool for place transiti...
Inside LoLA - Experiences from building a state space tool for place transiti...Inside LoLA - Experiences from building a state space tool for place transiti...
Inside LoLA - Experiences from building a state space tool for place transiti...Universität Rostock
 
devjam2018 - angular 5 performance
devjam2018  - angular 5 performancedevjam2018  - angular 5 performance
devjam2018 - angular 5 performanceElad Hirsch
 
cupdf.com_chapter-11-system-level-verification-issues-the-importance-of-verif...
cupdf.com_chapter-11-system-level-verification-issues-the-importance-of-verif...cupdf.com_chapter-11-system-level-verification-issues-the-importance-of-verif...
cupdf.com_chapter-11-system-level-verification-issues-the-importance-of-verif...SamHoney6
 
Prelim Slides
Prelim SlidesPrelim Slides
Prelim Slidessmpant
 
Nafems15 systeme
Nafems15 systemeNafems15 systeme
Nafems15 systemeSDTools
 
Compiler optimizations based on call-graph flattening
Compiler optimizations based on call-graph flatteningCompiler optimizations based on call-graph flattening
Compiler optimizations based on call-graph flatteningCAFxX
 
Gate-Level Simulation Methodology Improving Gate-Level Simulation Performance
Gate-Level Simulation Methodology Improving Gate-Level Simulation PerformanceGate-Level Simulation Methodology Improving Gate-Level Simulation Performance
Gate-Level Simulation Methodology Improving Gate-Level Simulation Performancesuddentrike2
 
Verilog Ams Used In Top Down Methodology For Wireless Integrated Circuits
Verilog Ams Used In Top Down Methodology For Wireless Integrated CircuitsVerilog Ams Used In Top Down Methodology For Wireless Integrated Circuits
Verilog Ams Used In Top Down Methodology For Wireless Integrated CircuitsRégis SANTONJA
 
Fast Insights to Optimized Vectorization and Memory Using Cache-aware Rooflin...
Fast Insights to Optimized Vectorization and Memory Using Cache-aware Rooflin...Fast Insights to Optimized Vectorization and Memory Using Cache-aware Rooflin...
Fast Insights to Optimized Vectorization and Memory Using Cache-aware Rooflin...Intel® Software
 
Testing Autonomous Cars for Feature Interaction Failures using Many-Objective...
Testing Autonomous Cars for Feature Interaction Failures using Many-Objective...Testing Autonomous Cars for Feature Interaction Failures using Many-Objective...
Testing Autonomous Cars for Feature Interaction Failures using Many-Objective...Lionel Briand
 

Similar to State Space Reduction Techniques to Verify Business Processes (20)

Dill may-2008
Dill may-2008Dill may-2008
Dill may-2008
 
Software Testing: Test Design and the Project Life Cycle
Software Testing: Test Design and the Project Life CycleSoftware Testing: Test Design and the Project Life Cycle
Software Testing: Test Design and the Project Life Cycle
 
EclipseCon Eu 2015 - Breathe life into your Designer!
EclipseCon Eu 2015 - Breathe life into your Designer!EclipseCon Eu 2015 - Breathe life into your Designer!
EclipseCon Eu 2015 - Breathe life into your Designer!
 
2008-10-09 - Bits and Chips Conference - Embedded Systemen Architecture patterns
2008-10-09 - Bits and Chips Conference - Embedded Systemen Architecture patterns2008-10-09 - Bits and Chips Conference - Embedded Systemen Architecture patterns
2008-10-09 - Bits and Chips Conference - Embedded Systemen Architecture patterns
 
Matopt
MatoptMatopt
Matopt
 
SiriusCon 2015 - Breathe Life into Your Designer!
SiriusCon 2015 - Breathe Life into Your Designer!SiriusCon 2015 - Breathe Life into Your Designer!
SiriusCon 2015 - Breathe Life into Your Designer!
 
Inside LoLA - Experiences from building a state space tool for place transiti...
Inside LoLA - Experiences from building a state space tool for place transiti...Inside LoLA - Experiences from building a state space tool for place transiti...
Inside LoLA - Experiences from building a state space tool for place transiti...
 
devjam2018 - angular 5 performance
devjam2018  - angular 5 performancedevjam2018  - angular 5 performance
devjam2018 - angular 5 performance
 
cupdf.com_chapter-11-system-level-verification-issues-the-importance-of-verif...
cupdf.com_chapter-11-system-level-verification-issues-the-importance-of-verif...cupdf.com_chapter-11-system-level-verification-issues-the-importance-of-verif...
cupdf.com_chapter-11-system-level-verification-issues-the-importance-of-verif...
 
Prelim Slides
Prelim SlidesPrelim Slides
Prelim Slides
 
Nafems15 systeme
Nafems15 systemeNafems15 systeme
Nafems15 systeme
 
Compiler optimizations based on call-graph flattening
Compiler optimizations based on call-graph flatteningCompiler optimizations based on call-graph flattening
Compiler optimizations based on call-graph flattening
 
Coding style for good synthesis
Coding style for good synthesisCoding style for good synthesis
Coding style for good synthesis
 
Gate-Level Simulation Methodology Improving Gate-Level Simulation Performance
Gate-Level Simulation Methodology Improving Gate-Level Simulation PerformanceGate-Level Simulation Methodology Improving Gate-Level Simulation Performance
Gate-Level Simulation Methodology Improving Gate-Level Simulation Performance
 
Verilog Ams Used In Top Down Methodology For Wireless Integrated Circuits
Verilog Ams Used In Top Down Methodology For Wireless Integrated CircuitsVerilog Ams Used In Top Down Methodology For Wireless Integrated Circuits
Verilog Ams Used In Top Down Methodology For Wireless Integrated Circuits
 
Fast Insights to Optimized Vectorization and Memory Using Cache-aware Rooflin...
Fast Insights to Optimized Vectorization and Memory Using Cache-aware Rooflin...Fast Insights to Optimized Vectorization and Memory Using Cache-aware Rooflin...
Fast Insights to Optimized Vectorization and Memory Using Cache-aware Rooflin...
 
Unit iii ppt
Unit iii pptUnit iii ppt
Unit iii ppt
 
Ch1
Ch1Ch1
Ch1
 
Ch1
Ch1Ch1
Ch1
 
Testing Autonomous Cars for Feature Interaction Failures using Many-Objective...
Testing Autonomous Cars for Feature Interaction Failures using Many-Objective...Testing Autonomous Cars for Feature Interaction Failures using Many-Objective...
Testing Autonomous Cars for Feature Interaction Failures using Many-Objective...
 

More from Universität Rostock

Where did I go wrong? Explaining errors in process models
Where did I go wrong? Explaining errors in process modelsWhere did I go wrong? Explaining errors in process models
Where did I go wrong? Explaining errors in process modelsUniversität Rostock
 
Decidability Results for Choreography Realization
Decidability Results for Choreography RealizationDecidability Results for Choreography Realization
Decidability Results for Choreography RealizationUniversität Rostock
 
Artifact-centric modeling using BPMN
Artifact-centric modeling using BPMNArtifact-centric modeling using BPMN
Artifact-centric modeling using BPMNUniversität Rostock
 
Compliance by Design for Artifact-Centric Business Processes
Compliance by Design for Artifact-Centric Business ProcessesCompliance by Design for Artifact-Centric Business Processes
Compliance by Design for Artifact-Centric Business ProcessesUniversität Rostock
 
Verification with LoLA: 7 Implementation
Verification with LoLA: 7 ImplementationVerification with LoLA: 7 Implementation
Verification with LoLA: 7 ImplementationUniversität Rostock
 
Verification with LoLA: 6 Integrating LoLA
Verification with LoLA: 6 Integrating LoLAVerification with LoLA: 6 Integrating LoLA
Verification with LoLA: 6 Integrating LoLAUniversität Rostock
 
Verification with LoLA: 5 Case Studies
Verification with LoLA: 5 Case StudiesVerification with LoLA: 5 Case Studies
Verification with LoLA: 5 Case StudiesUniversität Rostock
 
Verification with LoLA: 4 Using LoLA
Verification with LoLA: 4 Using LoLAVerification with LoLA: 4 Using LoLA
Verification with LoLA: 4 Using LoLAUniversität Rostock
 
Verification with LoLA: 3 State Space Reduction
Verification with LoLA: 3 State Space ReductionVerification with LoLA: 3 State Space Reduction
Verification with LoLA: 3 State Space ReductionUniversität Rostock
 
Verification with LoLA: 2 The LoLA Input Language
Verification with LoLA: 2 The LoLA Input LanguageVerification with LoLA: 2 The LoLA Input Language
Verification with LoLA: 2 The LoLA Input LanguageUniversität Rostock
 
Internal Behavior Reduction for Services
Internal Behavior Reduction for ServicesInternal Behavior Reduction for Services
Internal Behavior Reduction for ServicesUniversität Rostock
 
Karsten Wolf @ Carl Adam Petri Memorial Symposium
Karsten Wolf @ Carl Adam Petri Memorial SymposiumKarsten Wolf @ Carl Adam Petri Memorial Symposium
Karsten Wolf @ Carl Adam Petri Memorial SymposiumUniversität Rostock
 
Implementation of an Interleaving Semantics for TLDA
Implementation of an Interleaving Semantics for TLDAImplementation of an Interleaving Semantics for TLDA
Implementation of an Interleaving Semantics for TLDAUniversität Rostock
 
Formale Fundierung und effizientere Implementierung der schrittbasierten TLDA...
Formale Fundierung und effizientere Implementierung der schrittbasierten TLDA...Formale Fundierung und effizientere Implementierung der schrittbasierten TLDA...
Formale Fundierung und effizientere Implementierung der schrittbasierten TLDA...Universität Rostock
 
Demonstration of BPEL2oWFN and Fiona
Demonstration of BPEL2oWFN and FionaDemonstration of BPEL2oWFN and Fiona
Demonstration of BPEL2oWFN and FionaUniversität Rostock
 
service-technology.org — A tool family for correct
business processes and ser...
service-technology.org — A tool family for correct
business processes and ser...service-technology.org — A tool family for correct
business processes and ser...
service-technology.org — A tool family for correct
business processes and ser...Universität Rostock
 

More from Universität Rostock (20)

Where did I go wrong? Explaining errors in process models
Where did I go wrong? Explaining errors in process modelsWhere did I go wrong? Explaining errors in process models
Where did I go wrong? Explaining errors in process models
 
Decidability Results for Choreography Realization
Decidability Results for Choreography RealizationDecidability Results for Choreography Realization
Decidability Results for Choreography Realization
 
Artifact-centric modeling using BPMN
Artifact-centric modeling using BPMNArtifact-centric modeling using BPMN
Artifact-centric modeling using BPMN
 
Compliance by Design for Artifact-Centric Business Processes
Compliance by Design for Artifact-Centric Business ProcessesCompliance by Design for Artifact-Centric Business Processes
Compliance by Design for Artifact-Centric Business Processes
 
Verification with LoLA
Verification with LoLAVerification with LoLA
Verification with LoLA
 
Verification with LoLA: 7 Implementation
Verification with LoLA: 7 ImplementationVerification with LoLA: 7 Implementation
Verification with LoLA: 7 Implementation
 
Verification with LoLA: 6 Integrating LoLA
Verification with LoLA: 6 Integrating LoLAVerification with LoLA: 6 Integrating LoLA
Verification with LoLA: 6 Integrating LoLA
 
Verification with LoLA: 5 Case Studies
Verification with LoLA: 5 Case StudiesVerification with LoLA: 5 Case Studies
Verification with LoLA: 5 Case Studies
 
Verification with LoLA: 4 Using LoLA
Verification with LoLA: 4 Using LoLAVerification with LoLA: 4 Using LoLA
Verification with LoLA: 4 Using LoLA
 
Verification with LoLA: 3 State Space Reduction
Verification with LoLA: 3 State Space ReductionVerification with LoLA: 3 State Space Reduction
Verification with LoLA: 3 State Space Reduction
 
Verification with LoLA: 1 Basics
Verification with LoLA: 1 BasicsVerification with LoLA: 1 Basics
Verification with LoLA: 1 Basics
 
Verification with LoLA: 2 The LoLA Input Language
Verification with LoLA: 2 The LoLA Input LanguageVerification with LoLA: 2 The LoLA Input Language
Verification with LoLA: 2 The LoLA Input Language
 
Saarbruecken
SaarbrueckenSaarbruecken
Saarbruecken
 
Ws4 dsec talk @ Kickoff RS3
Ws4 dsec talk @ Kickoff RS3Ws4 dsec talk @ Kickoff RS3
Ws4 dsec talk @ Kickoff RS3
 
Internal Behavior Reduction for Services
Internal Behavior Reduction for ServicesInternal Behavior Reduction for Services
Internal Behavior Reduction for Services
 
Karsten Wolf @ Carl Adam Petri Memorial Symposium
Karsten Wolf @ Carl Adam Petri Memorial SymposiumKarsten Wolf @ Carl Adam Petri Memorial Symposium
Karsten Wolf @ Carl Adam Petri Memorial Symposium
 
Implementation of an Interleaving Semantics for TLDA
Implementation of an Interleaving Semantics for TLDAImplementation of an Interleaving Semantics for TLDA
Implementation of an Interleaving Semantics for TLDA
 
Formale Fundierung und effizientere Implementierung der schrittbasierten TLDA...
Formale Fundierung und effizientere Implementierung der schrittbasierten TLDA...Formale Fundierung und effizientere Implementierung der schrittbasierten TLDA...
Formale Fundierung und effizientere Implementierung der schrittbasierten TLDA...
 
Demonstration of BPEL2oWFN and Fiona
Demonstration of BPEL2oWFN and FionaDemonstration of BPEL2oWFN and Fiona
Demonstration of BPEL2oWFN and Fiona
 
service-technology.org — A tool family for correct
business processes and ser...
service-technology.org — A tool family for correct
business processes and ser...service-technology.org — A tool family for correct
business processes and ser...
service-technology.org — A tool family for correct
business processes and ser...
 

Recently uploaded

Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactdawncurless
 
Solving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxSolving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxOH TEIK BIN
 
Employee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxEmployee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxNirmalaLoungPoorunde1
 
Crayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon ACrayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon AUnboundStockton
 
mini mental status format.docx
mini    mental       status     format.docxmini    mental       status     format.docx
mini mental status format.docxPoojaSen20
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...EduSkills OECD
 
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTiammrhaywood
 
Hybridoma Technology ( Production , Purification , and Application )
Hybridoma Technology  ( Production , Purification , and Application  ) Hybridoma Technology  ( Production , Purification , and Application  )
Hybridoma Technology ( Production , Purification , and Application ) Sakshi Ghasle
 
_Math 4-Q4 Week 5.pptx Steps in Collecting Data
_Math 4-Q4 Week 5.pptx Steps in Collecting Data_Math 4-Q4 Week 5.pptx Steps in Collecting Data
_Math 4-Q4 Week 5.pptx Steps in Collecting DataJhengPantaleon
 
Introduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher EducationIntroduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher Educationpboyjonauth
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityGeoBlogs
 
CARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxCARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxGaneshChakor2
 
URLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website AppURLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website AppCeline George
 
Mastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionMastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionSafetyChain Software
 
Interactive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationInteractive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationnomboosow
 
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdfEnzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdfSumit Tiwari
 

Recently uploaded (20)

Model Call Girl in Bikash Puri Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Bikash Puri  Delhi reach out to us at 🔝9953056974🔝Model Call Girl in Bikash Puri  Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Bikash Puri Delhi reach out to us at 🔝9953056974🔝
 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impact
 
Solving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxSolving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptx
 
Employee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxEmployee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptx
 
Crayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon ACrayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon A
 
mini mental status format.docx
mini    mental       status     format.docxmini    mental       status     format.docx
mini mental status format.docx
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
 
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
 
Hybridoma Technology ( Production , Purification , and Application )
Hybridoma Technology  ( Production , Purification , and Application  ) Hybridoma Technology  ( Production , Purification , and Application  )
Hybridoma Technology ( Production , Purification , and Application )
 
Staff of Color (SOC) Retention Efforts DDSD
Staff of Color (SOC) Retention Efforts DDSDStaff of Color (SOC) Retention Efforts DDSD
Staff of Color (SOC) Retention Efforts DDSD
 
Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1
 
_Math 4-Q4 Week 5.pptx Steps in Collecting Data
_Math 4-Q4 Week 5.pptx Steps in Collecting Data_Math 4-Q4 Week 5.pptx Steps in Collecting Data
_Math 4-Q4 Week 5.pptx Steps in Collecting Data
 
Introduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher EducationIntroduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher Education
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activity
 
CARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxCARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptx
 
9953330565 Low Rate Call Girls In Rohini Delhi NCR
9953330565 Low Rate Call Girls In Rohini  Delhi NCR9953330565 Low Rate Call Girls In Rohini  Delhi NCR
9953330565 Low Rate Call Girls In Rohini Delhi NCR
 
URLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website AppURLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website App
 
Mastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionMastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory Inspection
 
Interactive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationInteractive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communication
 
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdfEnzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
 

State Space Reduction Techniques to Verify Business Processes

  • 1. State Space Reduction Techniquesto Verify Business ProcessesNielsLohmann
  • 2. Correctness of Business Processes Business process models need to be correct! Ramifications of incorrect models: execution deadlocks ➙ down times simulation results are wrong ➙ wrong optimizations design-by-contract scenario ➙ legal problems … Faults have business impact! State Space Reduction Techniques 11.01.10
  • 3. Dimensions of Correctness State Space Reduction Techniques 11.01.10 correctness criteria legal properties (compliance) semantical properties (ontologies) quantitative properties (cost, throughput) control flow (soundness, deadlock freedom) manual domain specific partial (interactive) domain independent full-automatic level of automation correctness approach
  • 4.
  • 7.
  • 8. State Space Explosion reasons for state space explosion: explicit (arbitrary) ordering of unordered events interleaving of independent components global states global transitions in business processes: parallel branches (AND-Splits) parallel composition refinement asynchronous communication … State Space Reduction Techniques 11.01.10 3 4 1 2
  • 9. Example example business process: 66 parallel branches assume each state needs 66 bits to store: 4 Zettabytes required (…, giga, tera, peta, exa, zetta…) assume a notebook can check 1 state per cycle at 3 GHz: 51475 years required energy consumption (50 watts) would be close to 1 megaton TNT unrealistic? real business process model made with IBM Business Modeler models are not state based modeler is not the limiting factor State Space Reduction Techniques 11.01.10 ➙ ≥ 266 ≈ 7.37 ∙ 1019 states
  • 10. Fight the State Explosion! restrict modeling language (block structure) abstract model (data abstractions) decomposition techniques (SESE) reduce model (structural reduction techniques) compactly represent state space (symbolic techniques) reduce state space (partial order reduction, symmetries, …) … State Space Reduction Techniques 11.01.10 ✕
  • 11. Agenda State Space Reduction Techniques 11.01.10 Introduction✔ Partial Order Reduction ☜ Symmetry Reduction Lessons Learned
  • 12. Partial Order Reduction Core idea: only fire a small subset of activated transitions State Space Reduction Techniques 11.01.10 211 121 112 311 113 221 212 131 122 213 123 321 231 222 132 312 322 331 232 313 133 223 332 323 233 333 444 3 4 1 2 111
  • 13. Partial Order Reduction Core idea: only fire a subset of activated transitions State Space Reduction Techniques 11.01.10 3 4 1 2 111 121 122 222 223 323 333 444
  • 14. Model Checking with Partial Order Reduction selection idea: postpone firing of independent transitions unselected transitions cannot activate/deactivate selected transitions the more concurrency, the better! prerequisite: specificationmust be stutter-equivalent(no X-operator) State Space Reduction Techniques 11.01.10 R := E := ø; dfs(m0); dfs(m): R := R  {m}; FOR ALL t: t selected in m DO m' = m – •t + t• IF m'  R THEN E := E {[m, m']} ELSE E := E {[m, m']}; dfs(m'); END END FOR ALL t: t enabled in m DO
  • 15. Partial Order Reduction and Petri Nets selection is guided by Petri net structure deadlock preserving partial order reduction initially: add an activated transition until fixed point reached: add conflicting transitions example: mutual exclusion not calculated: (c,i,0), (i,c,0) State Space Reduction Techniques 11.01.10 (i,i,1) t1,t4 r r t1,t6 (r,i,1) (i,r,1) t6 t4,t2 t2 s c c t4 t1 i (r,r,1) t2,t6 t5 t3 i (r,c,0) t5 (c,r,0) t3
  • 16. Partial Order Reduction: Case Study 735 industrial business processes from IBM customers maximal 118 nodes, 66 parallel branches about 50% were sound comparison between three approaches: LoLA with partial order reduction SESE decomposition as BOM plugin (IBM Research Zurich) Woflan (TU Eindhoven) State Space Reduction Techniques 11.01.10
  • 17. Case Study: Results LoLA was the fastest tool to decide soundness: maximal 50 ms per process (9 ms on average) faster than domain-specific approaches partial order reduction made verification very easy: at most 6467 statesneeded to be analyzed (100 on average) never more than 2 MBof memory needed structural reduction had no impact in runtime nets study available at http://service-technology.org/soundness State Space Reduction Techniques 11.01.10
  • 18. Checking Soundness classical: soundness = short-circuited net is live and bounded naïve: check CTL property “AGEF final” LoLA: use partial order reduction: check AGEF final check boundedness exploit domain knowledge: Free Choice Petri nets + workflow structure:boundedness implies 1-safeness check “EF (p1>1 ∨ … ∨ pn>1)” instead of boundedness State Space Reduction Techniques 11.01.10 can be paralellized
  • 19. Partial Order Reduction in LoLA thefeature in LoLA (#define STUBBORN) adapted versions for several specifications: deadlock freedom, reachability reversibility, boundedness, liveness, home markings special state predicates (EF, AGEF, GF, FG, …) CTL always recommended also applicable for random searches State Space Reduction Techniques 11.01.10
  • 20. Agenda Introduction✔ Partial Order Reduction ✔ Symmetry Reduction☜ Lessons Learned State Space Reduction Techniques 11.01.10
  • 21.
  • 22. Symmetries for Petri Nets formally: bijective mapping on Petri net nodes that respects node types and the flow relation (“net automorphism”) markings [r1, i2, s] and [i1, r2, s] are symmetric symmetries can be calculated without prior knowledge State Space Reduction Techniques 11.01.10 r1 r2 t6 t2 s c1 c2 t4 t1 i2 i1 t5 t3
  • 23. Representation of Symmetries identity is always a symmetry symmetries are closed underinversion and concatenation exponential number of symmetries can berepresented by polynomial generator set performs best if system has many components example: 5 symmetries full: 242 stats reduced: 50 states State Space Reduction Techniques 11.01.10 group theory
  • 24. Symmetry Reduction: Case Study BPEL4Chor choreography inter-organizational business process with 2+n participants State Space Reduction Techniques 11.01.10
  • 25. Symmetry Reduction: Case Study BPEL4Chor choreography inter-organizational business process with 2+n participants State Space Reduction Techniques 11.01.10
  • 26. Case Study: Results State Space Reduction Techniques 11.01.10 exponential growth   unreduced  symmetry reduction  partial order reduction  symmetry reduction + partial order reduction  overflow (>2 GB) linear growth 
  • 27. Symmetry Reduction in LoLA adapted versions for several specifications: deadlock freedom reachability, properties of transitions/places reversibility, boundedness can be combined with partial order reduction implements several strategies/heuristics to calculate symmetries(#define SYMMETRY) tradeoff between memory/runtime needed for symmetries requires preprocessing time and yields runtime overhead State Space Reduction Techniques 11.01.10
  • 28. Agenda State Space Reduction Techniques 11.01.10 VERIFYING ! Introduction✔ Partial Order Reduction ✔ Symmetry Reduction ✔ Lessons Learned☜
  • 29. Lessons Learned (1/4): LoLA >10 years of development, 25 KLOC very efficient limit: memory allocation exploits Petri net theory where possible implemented heuristics close to domain knowledge applications in biology, BPM, services, hardware, … CTL model checker, dedicated algorithms for many properties partial order reduction, symmetry, sweep line, invariant compression, … alternative file format: high-level Petri net free software:http://service-technology.org/lola State Space Reduction Techniques 11.01.10
  • 30. Lessons Learned (2/4): Model Checking Tools naïve algorithms are quickly implemented, but useless abstract data types are key to success understand your algorithm and the lifecycle of each variable understand the assumptions theory is your friend usability ≠ tool is extendible, user-friendly, … usability = tool performs on realistic models memory management, data structures, object lifecycleGo back 20 years and do it all yourself! a special discipline of software engineering:Ignore design patterns and best practices! State Space Reduction Techniques 11.01.10
  • 31. Lessons Learned (3/4): State Space Reduction active research community group theory, concurrency theory, net theory, coding theory, … technology transfer very hard key to success: Don’t be afraid of worst-case complexity! understand verification problem decompose specification to several easier properties only model relevant properties State Space Reduction Techniques 11.01.10
  • 32. Lessons Learned (4/4): Correctness in BPM quality of models is still very low models are rather simple right now many features of BPM languages are not yet used correctness notions are rather simple domainunspecific tools are still competitive control flow verification solved more to come: inter-organizational business processes Web services SOA Cloud Computing State Space Reduction Techniques 11.01.10
  • 33. Thank you! Questions? State Space Reduction Techniques 11.01.10 NielsLohmannUniversity of Rostockniels.lohmann@uni-rostock.dehttp://service-technology.org/tools
  • 34. Copyrights Public domain:http://commons.wikimedia.org/wiki/File:Castle_Romeo.jpghttp://en.wikipedia.org/wiki/File:Colossus.jpg CC Attribution-NonCommercial 2.5:http://xkcd.com/303/ - image byRandallMunroe http://11.media.tumblr.com/tumblr_kqs9kyN2fE1qzma4ho1_400.jpg GNU FDL 1.2:http://en.wikipedia.org/wiki/File:Rubik%27s_cube.svg State Space Reduction Techniques 11.01.10