• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Analyzing Interacting BPEL Processes - An Overview of the Chair’s Work
 

Analyzing Interacting BPEL Processes - An Overview of the Chair’s Work

on

  • 503 views

Workshop presentation given by Niels Lohmann on August 30, 2006 in Eindhoven, The Netherlands at the Berlin-Eindhoven Service Technology Colloquium 2006.

Workshop presentation given by Niels Lohmann on August 30, 2006 in Eindhoven, The Netherlands at the Berlin-Eindhoven Service Technology Colloquium 2006.

Statistics

Views

Total Views
503
Views on SlideShare
503
Embed Views
0

Actions

Likes
0
Downloads
1
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Analyzing Interacting BPEL Processes - An Overview of the Chair’s Work Analyzing Interacting BPEL Processes - An Overview of the Chair’s Work Presentation Transcript

    • Analyzing Interacting BPEL ProcessesAn Overview of the Chair’s Work B!E!S!T Colloquium, Eindhoven Niels Lohmann nlohmann@informatik.hu-berlin.de http://www.informatik.hu-berlin.de/~nlohmann 30.08.2006
    • Analyzing Interacting BPEL Processes B!E!S!T Colloquium, Eindhoven 2
    • Analyzing Interacting BPEL Processes B!E!S!T Colloquium, Eindhoven ! choreography of BPEL processes may cause nontrivial communication ! arising question: Do the involved processes interact properly? 2
    • Examples for ill-designed Interaction B!E!S!T Colloquium, Eindhoven ! a sent message may not be received: 3
    • Examples for ill-designed Interaction B!E!S!T Colloquium, Eindhoven ! a sent message may not be received: ! processes run into a deadlock: 3
    • Examples for ill-designed Interaction B!E!S!T Colloquium, Eindhoven ! a sent message may not be received: ! processes run into a deadlock: 3
    • Translating BPEL to open Workflow Nets B!E!S!T Colloquium, Eindhoven !"#$#%&# ()"*+#",%+-./$01*23#"/ (2"*45(#./$01*23#"64/ 2(#")*%2+./728%+/ &)"%)97#./&)"/: !;"#$#%&#: 4
    • Translating BPEL to open Workflow Nets B!E!S!T Colloquium, Eindhoven! pattern-based translation: BPEL activity ! Petri net pattern init !"#$#%&# ()"*+#",%+-./$01*23#"/ stop (2"*45(#./$01*23#"64/ 2(#")*%2+./728%+/ ?login &)"%)97#./&)"/: login !;"#$#%&#: (customer) stopped final 4
    • Translating BPEL to open Workflow Nets B!E!S!T Colloquium, Eindhoven! pattern-based translation: BPEL activity ! Petri net pattern init !"#$#%&# ()"*+#",%+-./$01*23#"/ stop (2"*45(#./$01*23#"64/ 2(#")*%2+./728%+/ ?login &)"%)97#./&)"/: login !;"#$#%&#: (customer) stopped final! optimized translation is implemented in tool BPEL2oWFN 4
    • Open Workflow Net: An Example B!E!S!T Colloquium, Eindhoven p0! Petri net ?login ?order ?terms !confirm !invoice p6 p7 5
    • Open Workflow Net: An Example B!E!S!T Colloquium, Eindhoven p0! Petri net login ?login terms order ?order ?terms confirm !confirm !invoice invoice p6 p7 5
    • Open Workflow Net: An Example B!E!S!T Colloquium, Eindhoven p0! Petri net login ?login! enhanced with interface terms order ?order ?terms confirm !confirm !invoice invoice p6 p7 5
    • Open Workflow Net: An Example B!E!S!T Colloquium, Eindhoven p0! Petri net login ?login! enhanced with interface! initial marking terms here: [p0] order ?order ?terms confirm !confirm !invoice invoice p6 p7 5
    • Open Workflow Net: An Example B!E!S!T Colloquium, Eindhoven p0! Petri net login ?login! enhanced with interface! initial marking terms here: [p0] order ?order ?terms! final marking confirm !confirm !invoice here: [p6, p7] invoice p6 p7 5
    • Open Workflow Net: An Example B!E!S!T Colloquium, Eindhoven p0! Petri net login ?login! enhanced with interface! initial marking terms here: [p0] order ?order ?terms! final marking confirm !confirm !invoice here: [p6, p7] invoice p6 p7 5
    • Controllability B!E!S!T Colloquium, Eindhoven ! interaction steps to reach final marking p0 !login login ?login !terms terms !order order ?order ?terms ?confirm confirm !confirm !invoice ?invoice invoice p6 p7 6
    • Controllability B!E!S!T Colloquium, Eindhoven ! interaction steps to reach final marking p0 !login login ?login !terms terms !order order ?order ?terms ?confirm confirm !confirm !invoice ?invoice invoice p6 p7 6
    • Controllability B!E!S!T Colloquium, Eindhoven ! interaction steps to reach final marking p0 !login login ?login !terms terms !order order ?order ?terms ?confirm confirm !confirm !invoice ?invoice invoice p6 p7 6
    • Controllability B!E!S!T Colloquium, Eindhoven ! interaction steps to reach final marking p0 !login login ?login !terms terms !order order ?order ?terms ?confirm confirm !confirm !invoice ?invoice invoice p6 p7 6
    • Controllability B!E!S!T Colloquium, Eindhoven ! interaction steps to reach final marking p0 !login login ?login !terms terms !order order ?order ?terms ?confirm confirm !confirm !invoice ?invoice invoice p6 p7 6
    • Controllability B!E!S!T Colloquium, Eindhoven ! interaction steps to reach final marking p0 !login login ?login !terms terms !order order ?order ?terms ?confirm confirm !confirm !invoice ?invoice invoice p6 p7 6
    • Controllability B!E!S!T Colloquium, Eindhoven ! interaction steps to reach final marking p0 !login login ?login !terms terms !order order ?order ?terms ?confirm confirm !confirm !invoice ?invoice invoice p6 p7 6
    • Controllability B!E!S!T Colloquium, Eindhoven ! interaction steps to reach final marking p0 !login login ?login !terms terms !order order ?order ?terms ?confirm confirm !confirm !invoice ?invoice invoice p6 p7 net is controllable 6
    • Interaction Graph (IG) B!E!S!T Colloquium, Eindhoven IG choice 7
    • Interaction Graph (IG) B!E!S!T Colloquium, Eindhoven IG ! a canonically generated partner choice 7
    • Interaction Graph (IG) B!E!S!T Colloquium, Eindhoven IG ! a canonically generated partner choice 7
    • Interaction Graph (IG) B!E!S!T Colloquium, Eindhoven IG ! a canonically generated partner choice ! empty if none exists 7
    • Interaction Graph (IG) B!E!S!T Colloquium, Eindhoven IG ! a canonically generated partner choice ! empty if none exists ! IG can be automatically generated with tool Fiona 7
    • Interaction Graph (IG) B!E!S!T Colloquium, Eindhoven IG ! a canonically generated partner choice ! empty if none exists ! IG can be automatically generated with tool Fiona 7
    • Operating Guideline (OG) B!E!S!T Colloquium, Eindhoven! represents all partners OG of a service 8
    • Operating Guideline (OG) B!E!S!T Colloquium, Eindhoven! represents all partners OG of a service 8
    • Operating Guideline (OG) B!E!S!T Colloquium, Eindhoven! represents all partners OG of a service 8
    • Operating Guideline (OG) B!E!S!T Colloquium, Eindhoven! represents all partners OG of a service 8
    • Operating Guideline (OG) B!E!S!T Colloquium, Eindhoven! represents all partners OG of a service! nodes are annotated 8
    • Operating Guideline (OG) B!E!S!T Colloquium, Eindhoven! represents all partners OG of a service! nodes are annotated! partner = subgraph with fulfilling annotations 8
    • Operating Guideline (OG) B!E!S!T Colloquium, Eindhoven! represents all partners OG of a service! nodes are annotated! partner = subgraph with fulfilling annotations! OG can be automatically generated with tool Fiona 8
    • Operating Guideline (OG) B!E!S!T Colloquium, Eindhoven! represents all partners OG of a service! nodes are annotated! partner = subgraph with fulfilling annotations! OG can be automatically generated with tool Fiona 8
    • B!E!S!T Colloquium, Eindhoven 9 Example
    • B!E!S!T Colloquium, Eindhoven 10 no yesOnline Shop
    • B!E!S!T Colloquium, Eindhoven 10 no yesOnline Shop
    • B!E!S!T Colloquium, Eindhoven 10 no yesOnline Shop
    • B!E!S!T Colloquium, Eindhoven 10 no yesOnline Shop
    • B!E!S!T Colloquium, Eindhoven 10 no yesOnline Shop
    • B!E!S!T Colloquium, Eindhoven 10 no yesOnline Shop
    • B!E!S!T Colloquium, Eindhoven 10 no yesOnline Shop
    • B!E!S!T Colloquium, Eindhoven 10 no yesOnline Shop
    • B!E!S!T Colloquium, Eindhoven 10 no yesOnline Shop
    • B!E!S!T Colloquium, Eindhoven 10 no yesOnline Shop
    • Generated oWFN B!E!S!T Colloquium, Eindhoven! generated by BPEL2oWFN! 64 places ! 4 input places ! 3 output places! 74 transitions! 226 arcs 11
    • Generated oWFN B!E!S!T Colloquium, Eindhoven! generated by BPEL2oWFN! 64 places ! 4 input places ! 3 output places! 74 transitions! 226 arcs 11
    • IG and OG of Online Shop B!E!S!T Colloquium, Eindhoven IG ! IG not empty: Online Shop is controllable 12
    • IG and OG of Online Shop B!E!S!T Colloquium, Eindhoven IG ! IG not empty: Online Shop is controllable 12
    • IG and OG of Online Shop B!E!S!T Colloquium, Eindhoven IG ! IG not empty: Online Shop is controllable ! generated partner behaves as expected 12
    • IG and OG of Online Shop B!E!S!T Colloquium, Eindhoven IG ! generated partner behaves as expected 12
    • IG and OG of Online Shop B!E!S!T Colloquium, Eindhoven IG ! generated partner behaves as expected 12
    • IG and OG of Online Shop B!E!S!T Colloquium, Eindhoven IG OG 12
    • B!E!S!T Colloquium, Eindhoven 13 noModified Shop yes
    • B!E!S!T Colloquium, Eindhoven 13 noModified Shop yes
    • IG and OG of Modified Shop B!E!S!T Colloquium, Eindhoven IG ! Modified Shop is still controllable 14
    • IG and OG of Modified Shop B!E!S!T Colloquium, Eindhoven IG ! Modified Shop is still controllable ! generated partner eventually aborts 14
    • IG and OG of Modified Shop B!E!S!T Colloquium, Eindhoven IG ! Modified Shop is still controllable ! generated partner eventually aborts 14
    • IG and OG of Modified Shop B!E!S!T Colloquium, Eindhoven IG ! Modified Shop is still controllable ! generated partner eventually aborts ! Do all partners behave in this way? 14
    • IG and OG of Modified Shop B!E!S!T Colloquium, Eindhoven IG OG! all partners will eventually send an abort message 14
    • IG and OG of Modified Shop B!E!S!T Colloquium, Eindhoven IG OG! all partners will eventually send an abort message! no partner will ever receive an invoice 14
    • IG and OG of Modified Shop B!E!S!T Colloquium, Eindhoven IG OG! all partners will eventually send an abort message! no partner will ever receive an invoice! modified shop is useless! But why..? 14
    • Modified Shop B!E!S!T Colloquium, Eindhoven decision not communicated! yes no 15
    • Modified Shop B!E!S!T Colloquium, Eindhoven decision not communicated! yes no 15
    • Modified Shop B!E!S!T Colloquium, Eindhoven decision not communicated! yes no 15
    • Conclusion B!E!S!T Colloquium, Eindhoven! small changes can make BPEL processes useless! finding these bugs is nontrivial! tool chain BPEL2oWFN ! Fiona automates verification 16
    • Open Tasks B!E!S!T Colloquium, Eindhoven! map counterexamples back to BPEL 17
    • Open Tasks B!E!S!T Colloquium, Eindhoven! map counterexamples back to BPEL! add data aspects to model 17
    • Open Tasks B!E!S!T Colloquium, Eindhoven! map counterexamples back to BPEL! add data aspects to model! implementation of existing results for cyclic processes 17
    • Open Tasks B!E!S!T Colloquium, Eindhoven! map counterexamples back to BPEL! add data aspects to model! implementation of existing results for cyclic processes Thank you very much! 17