SlideShare a Scribd company logo
A Feature-Complete Petri Net Semantics for WS-BPEL 2.0
WS-BPEL




                                                        A Feature-Complete Petri Net Semantics for WS-BPEL 2.0
  Web   Service Business Process Execution Language

  Language
          to describe business processes
  implemented as Web services

  Described   as XML document

              <process  name="example">
                  <sequence>
                      <receive  partnerLink="p1"  />
                      <invoke  partnerLink="p2"  />
                      <reply  partnerLink="p1"  />
                  </sequence>
              </process>
                                                                       2
Petri Net Semantics for WS-BPEL




                                         A Feature-Complete Petri Net Semantics for WS-BPEL 2.0
   Goal:
        a formal semantics for WS-BPEL
     … to understand WS-BPEL
     … to analyze WS-BPEL processes

   Formal   model: open workflow nets

     workflow nets
   + interface
   – structural constraints
   = open workflow nets

                                                         3
Example: <receive> Activity
                      initial




                                                                                     A Feature-Complete Petri Net Semantics for WS-BPEL 2.0
                                                                   stop
                                                         t4
    channel
              x
                       t1

                  x
                      running          x
                                                         t5
                  x           x
                                                     x                    variable
                                                                             v
                      t2                             y
                                                                   stopped
                                  t3       faulted       t6


                              faultName
                                                              t7
                                                                   failed
                      final
                                                                                                  4
Example: <flow> Activity




                                                            A Feature-Complete Petri Net Semantics for WS-BPEL 2.0
                          initial

                                                  stop
                    t1                  t3



                running                      t4




        A                           B



                                        t5
                            sync
                                                  stopped
                                             t6

                          final                                              5
New Features of WS-BPEL 2.0




                                                      A Feature-Complete Petri Net Semantics for WS-BPEL 2.0
   Semanticclarifications
     What happens during compensation?


   Syntactic
           sugar
     <repeatUntil> activity, inline validation, …


   Some new activities and features
     <forEach> activity, termination handlers, ...




                                                                    6
Implementation




                                                                                         A Feature-Complete Petri Net Semantics for WS-BPEL 2.0
                                         BPEL2oWFN
                            meta model           Petri net model

                           Abstract                  Petri Net
                          Syntax Tree                  API

      BPEL process                                                        Petri net


                          Control/Data            Pattern
Input Formats:            Flow Graph             Repository          Output Formats:
  WS-BPEL 2.0                                                         Fiona oWFN
                           static analysis       pattern selection
  BPEL4WS 1.1                                                         LoLA
  Abstract WS-BPEL 2.0                                                PNML
  BPEL4Chor                                                           INA, PEP, SPIN
  WSDL 1.1                                                            …



           http://www.gnu.org/software/bpel2owfn
                                                                                                         7
Applications of the Semantics (1)




                                                         A Feature-Complete Petri Net Semantics for WS-BPEL 2.0
 Open workflow nets allow for…

   Analysis  of the inner of the oWFN (w/o interface)
      Deadlock freedom
      (relaxed) Soundness
      Temporal logics
      …


   Analysis   results can be mapped back to WS-BPEL



                                                                        8
Tools4BPEL Tool Chain (1)




                                                         A Feature-Complete Petri Net Semantics for WS-BPEL 2.0
                        BPEL2oWFN




              WS-BPEL                 Petri Net
              Process                  Model



  LoLA2BPEL                                       LoLA
                            Witness
                             Path



                                                                       9
Applications of the Semantics (2)




                                                          A Feature-Complete Petri Net Semantics for WS-BPEL 2.0
 Open workflow nets allow for…

   Analysis of the open workflow net
      Consistency
      Controllability
      Partner synthesis
      …


   Synthesis   results can be re-translated to WS-BPEL



                                                               10
Tools4BPEL Tool Chain (2)




                                                      A Feature-Complete Petri Net Semantics for WS-BPEL 2.0
                        BPEL2oWFN




              WS-BPEL                 oWFN
              Process                 Model



 oWFN2BPEL                                    Fiona
                            Partner
                            oWFN



                                                               11
Summary (1)




                                                      A Feature-Complete Petri Net Semantics for WS-BPEL 2.0
   Feature-complete semantics for WS-BPEL 2.0
   and its predecessor specification

   Simplified   patterns for important constructs

   Case study:
                      Old Semantics   New Semantics
        Places             410             242
        Transitions       1,069            397
        States          6,261,648        304,007

   Compiler   BPEL2oWFN
                                                             12
Summary (2)




                                                           A Feature-Complete Petri Net Semantics for WS-BPEL 2.0
   Petri
       net semantics allows to formally analyze
   WS-BPEL processes

   Analysis   results can be re-translated into WS-BPEL

   Completetool chains help to “conceal” formal
   methods from the WS-BPEL designer

   Danger:
         new semantics needed for future versions
   WS-BPEL 2.1, WS-BPEL 3.0, WS-BPEL 4.0, …

                     Thank you very much!                          13
A Feature-Complete Petri Net Semantics for WS-BPEL 2.0
Parallel <forEach>




                                                                                                                               A Feature-Complete Petri Net Semantics for WS-BPEL 2.0
                                                                            initial


                                                               initialize
                                                                                      running




                                                                                                 stop1
                 initial stop                                                                                        stop
                                      stop3                     x
                                                                        b                        stop2
                    stopped                                      active
                                                                                                          stopping
                                        t1
                                                                                                                     stopped
         scope




                  Successful    x=0
                                                                                      skipping
                                                                                                    all stopped
                                                          x
                                 t2
                                                    x
                 !Successful    x=0                             c
                                                    x-1       counter
                                                                                      finish2
                                 t3                  x
                        final   x>0

                                 t4                              finish1


                                             done
     instance 1

                                                                            final




                                                                                                                                       15
<scope>




                                                                                                                                                                                                                      A Feature-Complete Petri Net Semantics for WS-BPEL 2.0
                                                                                                                                                                            !Exiting             Exiting
                initial                         fault in                     ch fault up                              compensate


                                                                                                     Active
                                                        fn              fn                                                                                                 inner stopped
                                                                                     fn
                                                      fn              ignore
                                                                      fault
  !Active            initialize   Active      term                                                            Successful        !Successful               Active               !Active
                                                                                         pass
                                                                                            handle
                                                      fn     !Active                                               start ch                skip ch             start th             skip th
                                                                    inner
                                                        fsave       stopped                                                                                                            stop
                                   stop                                      stop                                                            ch stop                                                       stop
             inner activity        inner                                                                             activity of the
                                                                             stopped              skip                                       ch stopped             termination                            stopped
                 and               stopped           fault handlers                                                  compensation
                                                                                                                                                                      handler
            event handlers                                                                                              handler                                                        stopped
                                   fault in                                  fault up           fn                                                                                                         fault up

                                                                                                                                       ch fault up
                                                           final                                                     compensated                                     stopped
                     finalize



                                                                                    fn                 fn
!Successful                Successful




                 final                                                                   ch fault in                                         compensated


       positive control flow                                       fault handling                                 compensation handling                            termination handling

                                                                                                                                                                                                                           16

More Related Content

PDF
A Feature-Complete Petri Net A Feature-Complete Petri Net Semantics for WS-BP...
PPTX
Aumentando a eficiência do Web Container usando chamadas Assíncronas
PDF
PPT
Log Visualization - Bellua BCS 2006
PDF
Parallel program design
PDF
Research Interests Dr. Bassam Alameddine
PPT
Sf rmr - Servicing Forwarding Remote Multiplexing Relay
PPT
Np unit iv i
A Feature-Complete Petri Net A Feature-Complete Petri Net Semantics for WS-BP...
Aumentando a eficiência do Web Container usando chamadas Assíncronas
Log Visualization - Bellua BCS 2006
Parallel program design
Research Interests Dr. Bassam Alameddine
Sf rmr - Servicing Forwarding Remote Multiplexing Relay
Np unit iv i

Viewers also liked (10)

PDF
HBaseCon 2015: NRT Event Processing with Guaranteed Delivery of HTTP Callbacks
PPTX
QuickBooks Connect 2016 - Using WebHooks to handle data changes in your app
PPTX
Trabalhando com WebHooks no ASP.NET
PPT
Petri Net Modelling of Physical Vulnerability
KEY
Creating the Internet of Things with JavaScript - Fluent Conf
PDF
Webhooks - glue for the web (japanese)
PDF
Webhooks in Microsoft SharePoint Online
PDF
AMS Node Meetup February presentation Jasper Spoel
PPTX
Real-time Ruby for the Real-time Web
PPTX
Workflow Automation with Logic Apps
HBaseCon 2015: NRT Event Processing with Guaranteed Delivery of HTTP Callbacks
QuickBooks Connect 2016 - Using WebHooks to handle data changes in your app
Trabalhando com WebHooks no ASP.NET
Petri Net Modelling of Physical Vulnerability
Creating the Internet of Things with JavaScript - Fluent Conf
Webhooks - glue for the web (japanese)
Webhooks in Microsoft SharePoint Online
AMS Node Meetup February presentation Jasper Spoel
Real-time Ruby for the Real-time Web
Workflow Automation with Logic Apps
Ad

Similar to A Feature-Complete Petri Net Semantics for WS-BPEL 2.0 (20)

PDF
Tools4BPEL4Chor
PDF
Mexico 3070 user group meeting 2012 test coverage john
PDF
3 Vampir Trace In Detail
PPTX
DAC 2012
PDF
Large customers want postgresql too !!
PDF
[Webinar Slides] Programming the Network Dataplane in P4
PDF
Analyzing BPEL4Chor: Verification and Participant Synthesis
PDF
Advanced Oracle Troubleshooting
PPTX
Openflow overview
PDF
Open stack with_openflowsdn-torii
PDF
PDF
Performance Evaluation of Cloudera Impala GA
PDF
25.3.10 packet tracer explore a net flow implementation
DOCX
Etherchannel
PDF
Config Lab L2 EtherChannel 2 Both layer 2 EtherChannel and layer 3 Eth.pdf
PDF
2015 FOSDEM - OVS Stateful Services
PDF
Input And Output Control
PDF
Input and Output Control
PPTX
Aiche 2008, Philadelphia
PDF
SDN in Warehouse Scale Datacenters v2.0
Tools4BPEL4Chor
Mexico 3070 user group meeting 2012 test coverage john
3 Vampir Trace In Detail
DAC 2012
Large customers want postgresql too !!
[Webinar Slides] Programming the Network Dataplane in P4
Analyzing BPEL4Chor: Verification and Participant Synthesis
Advanced Oracle Troubleshooting
Openflow overview
Open stack with_openflowsdn-torii
Performance Evaluation of Cloudera Impala GA
25.3.10 packet tracer explore a net flow implementation
Etherchannel
Config Lab L2 EtherChannel 2 Both layer 2 EtherChannel and layer 3 Eth.pdf
2015 FOSDEM - OVS Stateful Services
Input And Output Control
Input and Output Control
Aiche 2008, Philadelphia
SDN in Warehouse Scale Datacenters v2.0
Ad

More from Universität Rostock (20)

PDF
Pragmatic model checking: from theory to implementations
PDF
Where did I go wrong? Explaining errors in process models
PDF
Decidability Results for Choreography Realization
PDF
Artifact-centric modeling using BPMN
PDF
Compliance by Design for Artifact-Centric Business Processes
KEY
Verification with LoLA
KEY
Verification with LoLA: 7 Implementation
KEY
Verification with LoLA: 6 Integrating LoLA
KEY
Verification with LoLA: 5 Case Studies
KEY
Verification with LoLA: 4 Using LoLA
KEY
Verification with LoLA: 3 State Space Reduction
KEY
Verification with LoLA: 1 Basics
KEY
Verification with LoLA: 2 The LoLA Input Language
PDF
Saarbruecken
PDF
Ws4 dsec talk @ Kickoff RS3
PDF
Internal Behavior Reduction for Services
PDF
Karsten Wolf @ Carl Adam Petri Memorial Symposium
PDF
Implementation of an Interleaving Semantics for TLDA
PDF
Formale Fundierung und effizientere Implementierung der schrittbasierten TLDA...
PDF
Demonstration of BPEL2oWFN and Fiona
Pragmatic model checking: from theory to implementations
Where did I go wrong? Explaining errors in process models
Decidability Results for Choreography Realization
Artifact-centric modeling using BPMN
Compliance by Design for Artifact-Centric Business Processes
Verification with LoLA
Verification with LoLA: 7 Implementation
Verification with LoLA: 6 Integrating LoLA
Verification with LoLA: 5 Case Studies
Verification with LoLA: 4 Using LoLA
Verification with LoLA: 3 State Space Reduction
Verification with LoLA: 1 Basics
Verification with LoLA: 2 The LoLA Input Language
Saarbruecken
Ws4 dsec talk @ Kickoff RS3
Internal Behavior Reduction for Services
Karsten Wolf @ Carl Adam Petri Memorial Symposium
Implementation of an Interleaving Semantics for TLDA
Formale Fundierung und effizientere Implementierung der schrittbasierten TLDA...
Demonstration of BPEL2oWFN and Fiona

Recently uploaded (20)

PPT
Teaching material agriculture food technology
PPTX
MYSQL Presentation for SQL database connectivity
PDF
Electronic commerce courselecture one. Pdf
PDF
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
Encapsulation_ Review paper, used for researhc scholars
PPTX
Big Data Technologies - Introduction.pptx
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
A comparative analysis of optical character recognition models for extracting...
PDF
cuic standard and advanced reporting.pdf
PPTX
Tartificialntelligence_presentation.pptx
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PPTX
1. Introduction to Computer Programming.pptx
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PPTX
SOPHOS-XG Firewall Administrator PPT.pptx
PDF
Assigned Numbers - 2025 - Bluetooth® Document
Teaching material agriculture food technology
MYSQL Presentation for SQL database connectivity
Electronic commerce courselecture one. Pdf
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
Unlocking AI with Model Context Protocol (MCP)
Encapsulation_ Review paper, used for researhc scholars
Big Data Technologies - Introduction.pptx
Diabetes mellitus diagnosis method based random forest with bat algorithm
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
“AI and Expert System Decision Support & Business Intelligence Systems”
A comparative analysis of optical character recognition models for extracting...
cuic standard and advanced reporting.pdf
Tartificialntelligence_presentation.pptx
Dropbox Q2 2025 Financial Results & Investor Presentation
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
MIND Revenue Release Quarter 2 2025 Press Release
1. Introduction to Computer Programming.pptx
20250228 LYD VKU AI Blended-Learning.pptx
SOPHOS-XG Firewall Administrator PPT.pptx
Assigned Numbers - 2025 - Bluetooth® Document

A Feature-Complete Petri Net Semantics for WS-BPEL 2.0

  • 2. WS-BPEL A Feature-Complete Petri Net Semantics for WS-BPEL 2.0   Web Service Business Process Execution Language   Language to describe business processes implemented as Web services   Described as XML document <process  name="example">    <sequence>        <receive  partnerLink="p1"  />        <invoke  partnerLink="p2"  />        <reply  partnerLink="p1"  />    </sequence> </process> 2
  • 3. Petri Net Semantics for WS-BPEL A Feature-Complete Petri Net Semantics for WS-BPEL 2.0   Goal: a formal semantics for WS-BPEL … to understand WS-BPEL … to analyze WS-BPEL processes   Formal model: open workflow nets workflow nets + interface – structural constraints = open workflow nets 3
  • 4. Example: <receive> Activity initial A Feature-Complete Petri Net Semantics for WS-BPEL 2.0 stop t4 channel x t1 x running x t5 x x x variable v t2 y stopped t3 faulted t6 faultName t7 failed final 4
  • 5. Example: <flow> Activity A Feature-Complete Petri Net Semantics for WS-BPEL 2.0 initial stop t1 t3 running t4 A B t5 sync stopped t6 final 5
  • 6. New Features of WS-BPEL 2.0 A Feature-Complete Petri Net Semantics for WS-BPEL 2.0   Semanticclarifications   What happens during compensation?   Syntactic sugar   <repeatUntil> activity, inline validation, …   Some new activities and features   <forEach> activity, termination handlers, ... 6
  • 7. Implementation A Feature-Complete Petri Net Semantics for WS-BPEL 2.0 BPEL2oWFN meta model Petri net model Abstract Petri Net Syntax Tree API BPEL process Petri net Control/Data Pattern Input Formats: Flow Graph Repository Output Formats:   WS-BPEL 2.0   Fiona oWFN static analysis pattern selection   BPEL4WS 1.1   LoLA   Abstract WS-BPEL 2.0   PNML   BPEL4Chor   INA, PEP, SPIN   WSDL 1.1   … http://www.gnu.org/software/bpel2owfn 7
  • 8. Applications of the Semantics (1) A Feature-Complete Petri Net Semantics for WS-BPEL 2.0 Open workflow nets allow for…   Analysis of the inner of the oWFN (w/o interface)   Deadlock freedom   (relaxed) Soundness   Temporal logics   …   Analysis results can be mapped back to WS-BPEL 8
  • 9. Tools4BPEL Tool Chain (1) A Feature-Complete Petri Net Semantics for WS-BPEL 2.0 BPEL2oWFN WS-BPEL Petri Net Process Model LoLA2BPEL LoLA Witness Path 9
  • 10. Applications of the Semantics (2) A Feature-Complete Petri Net Semantics for WS-BPEL 2.0 Open workflow nets allow for…   Analysis of the open workflow net   Consistency   Controllability   Partner synthesis   …   Synthesis results can be re-translated to WS-BPEL 10
  • 11. Tools4BPEL Tool Chain (2) A Feature-Complete Petri Net Semantics for WS-BPEL 2.0 BPEL2oWFN WS-BPEL oWFN Process Model oWFN2BPEL Fiona Partner oWFN 11
  • 12. Summary (1) A Feature-Complete Petri Net Semantics for WS-BPEL 2.0   Feature-complete semantics for WS-BPEL 2.0 and its predecessor specification   Simplified patterns for important constructs Case study: Old Semantics New Semantics Places 410 242 Transitions 1,069 397 States 6,261,648 304,007   Compiler BPEL2oWFN 12
  • 13. Summary (2) A Feature-Complete Petri Net Semantics for WS-BPEL 2.0   Petri net semantics allows to formally analyze WS-BPEL processes   Analysis results can be re-translated into WS-BPEL   Completetool chains help to “conceal” formal methods from the WS-BPEL designer   Danger: new semantics needed for future versions WS-BPEL 2.1, WS-BPEL 3.0, WS-BPEL 4.0, … Thank you very much! 13
  • 15. Parallel <forEach> A Feature-Complete Petri Net Semantics for WS-BPEL 2.0 initial initialize running stop1 initial stop stop stop3 x b stop2 stopped active stopping t1 stopped scope Successful x=0 skipping all stopped x t2 x !Successful x=0 c x-1 counter finish2 t3 x final x>0 t4 finish1 done instance 1 final 15
  • 16. <scope> A Feature-Complete Petri Net Semantics for WS-BPEL 2.0 !Exiting Exiting initial fault in ch fault up compensate Active fn fn inner stopped fn fn ignore fault !Active initialize Active term Successful !Successful Active !Active pass handle fn !Active start ch skip ch start th skip th inner fsave stopped stop stop stop ch stop stop inner activity inner activity of the stopped skip ch stopped termination stopped and stopped fault handlers compensation handler event handlers handler stopped fault in fault up fn fault up ch fault up final compensated stopped finalize fn fn !Successful Successful final ch fault in compensated positive control flow fault handling compensation handling termination handling 16