SlideShare a Scribd company logo
Retry Scopes to Enable Robust Workflow Execution in Pervasive Environments2nd Workshop on Monitoring, Adaptation and Beyond (MONA+)November 24, 2009
OutlineIntroduction1Background Information2Concept & BPEL Realization34Outlook and Conclusion
IntroductionProcesses running in a real world environment usually have to deal with environment instability and data uncertaintyE.g. workers and tools are moving around in spaceE.g. network connections breaks down temporaryFaults occur at a certain point time. A short time later, the faults would not occur again.Under this assumption, a restart might would result in a successful execution. Therefore, the restart of the steps is a much more performing option, than starting straight off with traditional fault handling, where all work done would be lost.Goals:Extend BPEL with Retry/Rerun semantics
Extensions should integrate with BPEL smartly3
Allow ProjectGoal: New programming paradigm for flow-based pervasive applicationsOur vision is that everything can be modeled. Design of suitable modelsExecution infrastructure for the modelsAway from programming towards modelingBringing together BPM and pervasive systems4http://www.allow-project.eu
What is a flow? (Beyond classical workflows)5
BPEL Scopes (1)A Scope compasses a set of activitiesA Scope is a unit of workIn BPEL a scope is a unit of fault, compensation, and termination handlingForward recovery by fault handlersSimilar to try … catchAll-or-nothing behavior CompensationTermination handlerScope is terminated if fault occurs in parallel activityIn BPEL a scope is an activity6SequenceEmptyScopeFlowInvoke1Scope
BPEL Scopes (2)7
Retry/Rerun SemanticsRetryWork already done is compensatedRerunWork already done is not compensated8
Additional RequirementsNo general retry/rerunAs common in BPEL different faults should be treated differentlyE.g. Retry on fault A, rerun on fault B, rethrow on fault CDefinition of the iterationsper faultLimit the number of retries/reruns9
Design Goals For BPEL ExtensionsNew modeling elements should follow BPEL’s modeling paradigmNew modeling elements should support the required semantics and concise as possibleNew modeling elements shall support the modeler’s work and should be therefore intuitive and comprehensibleNew modeling elements should not define redundant semantics10
Possible Modeling Approaches (1)Adding a Restart/Rerun property to the BPEL scopeIntroducing a Retry/Rerun Scope (extension activity)Introducing Retry/Rerun extension activities for usage within fault handlerIntroduce a Restart extension activity which simply trigger a restart of the scope11
Possible Modeling Apporaches (2)12
ApproachIntroducing a Restart ActivityRerun semantics can be executed by using the restart activity in fault handlerRetry can be executed as combination of normal compensation followed by restartComplies with BPEL’s approach of explicitly modeling compensation, termination and fault handlingDefines no redundant semanticsNot compliant to BPEL’s extension rules, that none of BPEL’s semantics is allowed to be changedUnfortunately, none of the proposed approach would have been 13
Scope State Transition Extensions14
Retry Example<faultHandlers>  <catch faultName="NoUserFound">    <sequence><compensate/>      <wait/><restart times="5" />   </sequence>  </ catch></faultHandlers>15
Rerun Example<faultHandlers>  <catch faultName="NoUserFound">    <sequence>      <wait/><restart times="5" />   </sequence>  </ catch></faultHandlers>16
ConclusionsRestart activity allows modelers to model retry as well as rerun semanticsSolution fits best into BPEL as possibleCompliance with BPEL’s extension rules not reachableFuture workNative implementation17

More Related Content

PDF
Fact Sheet: Yi Zhang, EMC
PDF
Project Management CH9 Project Scheduling
PDF
PR12-179 M3D-GAN: Multi-Modal Multi-Domain Translation with Universal Attention
PPTX
Classical estimating methods
PDF
Project Management Ch10
PDF
A Feature-Complete Petri Net A Feature-Complete Petri Net Semantics for WS-BP...
PDF
Toward a Formalization of BPEL 2.0 : An Algebra Approach
Fact Sheet: Yi Zhang, EMC
Project Management CH9 Project Scheduling
PR12-179 M3D-GAN: Multi-Modal Multi-Domain Translation with Universal Attention
Classical estimating methods
Project Management Ch10
A Feature-Complete Petri Net A Feature-Complete Petri Net Semantics for WS-BP...
Toward a Formalization of BPEL 2.0 : An Algebra Approach

Similar to Retry Scopes to Enable Robust Workflow Execution in Pervasive Environments (20)

PDF
Toward a Formalization of BPEL 2.0 : An Algebra Approach
PDF
Toward a Formalization of BPEL 2.0 : An Algebra Approach
PDF
A Feature-Complete Petri Net Semantics for WS-BPEL 2.0
PDF
Toward a Formalization of BPEL 2.0 : An Algebra Approach
PDF
International Journal on Web Service Computing (IJWSC)
PDF
Toward a Formalization of BPEL 2.0 : An Algebra Approach
PDF
Toward a Formalization of BPEL 2.0 : An Algebra Approach
PDF
Back-annotation of Simulation Traces with Change-Driven Model Transformations
PDF
Bpel activities to upload club oracle
PDF
Bpel activities to upload club oracle
PDF
Bpel activities to upload club oracle
PPTX
Enforcement from the Inside: Improving Quality of Business in Process Management
PPTX
Quick fix generation for DSMLs
KEY
Verification with LoLA: 4 Using LoLA
PDF
Task flow
PDF
BPEL Conformance in Open Source Engines
PPT
Fault Handling in SOA Suite 11g
PPTX
J developer 11g components ppt
PPT
Web Service Composition mit WS-BPEL und dem Open-Source-Orchester
PDF
Taverna 2 in Pictures
Toward a Formalization of BPEL 2.0 : An Algebra Approach
Toward a Formalization of BPEL 2.0 : An Algebra Approach
A Feature-Complete Petri Net Semantics for WS-BPEL 2.0
Toward a Formalization of BPEL 2.0 : An Algebra Approach
International Journal on Web Service Computing (IJWSC)
Toward a Formalization of BPEL 2.0 : An Algebra Approach
Toward a Formalization of BPEL 2.0 : An Algebra Approach
Back-annotation of Simulation Traces with Change-Driven Model Transformations
Bpel activities to upload club oracle
Bpel activities to upload club oracle
Bpel activities to upload club oracle
Enforcement from the Inside: Improving Quality of Business in Process Management
Quick fix generation for DSMLs
Verification with LoLA: 4 Using LoLA
Task flow
BPEL Conformance in Open Source Engines
Fault Handling in SOA Suite 11g
J developer 11g components ppt
Web Service Composition mit WS-BPEL und dem Open-Source-Orchester
Taverna 2 in Pictures
Ad

Recently uploaded (20)

PPTX
Big Data Technologies - Introduction.pptx
PDF
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
PPT
Teaching material agriculture food technology
PDF
cuic standard and advanced reporting.pdf
PDF
Network Security Unit 5.pdf for BCA BBA.
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
Review of recent advances in non-invasive hemoglobin estimation
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PPTX
Programs and apps: productivity, graphics, security and other tools
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PPTX
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PPTX
Machine Learning_overview_presentation.pptx
PDF
gpt5_lecture_notes_comprehensive_20250812015547.pdf
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Assigned Numbers - 2025 - Bluetooth® Document
Big Data Technologies - Introduction.pptx
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
Teaching material agriculture food technology
cuic standard and advanced reporting.pdf
Network Security Unit 5.pdf for BCA BBA.
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Review of recent advances in non-invasive hemoglobin estimation
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
Spectral efficient network and resource selection model in 5G networks
Chapter 3 Spatial Domain Image Processing.pdf
Programs and apps: productivity, graphics, security and other tools
Unlocking AI with Model Context Protocol (MCP)
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
Reach Out and Touch Someone: Haptics and Empathic Computing
Machine Learning_overview_presentation.pptx
gpt5_lecture_notes_comprehensive_20250812015547.pdf
Digital-Transformation-Roadmap-for-Companies.pptx
Assigned Numbers - 2025 - Bluetooth® Document
Ad

Retry Scopes to Enable Robust Workflow Execution in Pervasive Environments

  • 1. Retry Scopes to Enable Robust Workflow Execution in Pervasive Environments2nd Workshop on Monitoring, Adaptation and Beyond (MONA+)November 24, 2009
  • 2. OutlineIntroduction1Background Information2Concept & BPEL Realization34Outlook and Conclusion
  • 3. IntroductionProcesses running in a real world environment usually have to deal with environment instability and data uncertaintyE.g. workers and tools are moving around in spaceE.g. network connections breaks down temporaryFaults occur at a certain point time. A short time later, the faults would not occur again.Under this assumption, a restart might would result in a successful execution. Therefore, the restart of the steps is a much more performing option, than starting straight off with traditional fault handling, where all work done would be lost.Goals:Extend BPEL with Retry/Rerun semantics
  • 4. Extensions should integrate with BPEL smartly3
  • 5. Allow ProjectGoal: New programming paradigm for flow-based pervasive applicationsOur vision is that everything can be modeled. Design of suitable modelsExecution infrastructure for the modelsAway from programming towards modelingBringing together BPM and pervasive systems4http://www.allow-project.eu
  • 6. What is a flow? (Beyond classical workflows)5
  • 7. BPEL Scopes (1)A Scope compasses a set of activitiesA Scope is a unit of workIn BPEL a scope is a unit of fault, compensation, and termination handlingForward recovery by fault handlersSimilar to try … catchAll-or-nothing behavior CompensationTermination handlerScope is terminated if fault occurs in parallel activityIn BPEL a scope is an activity6SequenceEmptyScopeFlowInvoke1Scope
  • 9. Retry/Rerun SemanticsRetryWork already done is compensatedRerunWork already done is not compensated8
  • 10. Additional RequirementsNo general retry/rerunAs common in BPEL different faults should be treated differentlyE.g. Retry on fault A, rerun on fault B, rethrow on fault CDefinition of the iterationsper faultLimit the number of retries/reruns9
  • 11. Design Goals For BPEL ExtensionsNew modeling elements should follow BPEL’s modeling paradigmNew modeling elements should support the required semantics and concise as possibleNew modeling elements shall support the modeler’s work and should be therefore intuitive and comprehensibleNew modeling elements should not define redundant semantics10
  • 12. Possible Modeling Approaches (1)Adding a Restart/Rerun property to the BPEL scopeIntroducing a Retry/Rerun Scope (extension activity)Introducing Retry/Rerun extension activities for usage within fault handlerIntroduce a Restart extension activity which simply trigger a restart of the scope11
  • 14. ApproachIntroducing a Restart ActivityRerun semantics can be executed by using the restart activity in fault handlerRetry can be executed as combination of normal compensation followed by restartComplies with BPEL’s approach of explicitly modeling compensation, termination and fault handlingDefines no redundant semanticsNot compliant to BPEL’s extension rules, that none of BPEL’s semantics is allowed to be changedUnfortunately, none of the proposed approach would have been 13
  • 15. Scope State Transition Extensions14
  • 16. Retry Example<faultHandlers> <catch faultName="NoUserFound"> <sequence><compensate/> <wait/><restart times="5" /> </sequence> </ catch></faultHandlers>15
  • 17. Rerun Example<faultHandlers> <catch faultName="NoUserFound"> <sequence> <wait/><restart times="5" /> </sequence> </ catch></faultHandlers>16
  • 18. ConclusionsRestart activity allows modelers to model retry as well as rerun semanticsSolution fits best into BPEL as possibleCompliance with BPEL’s extension rules not reachableFuture workNative implementation17