SlideShare une entreprise Scribd logo
1  sur  22
Télécharger pour lire hors ligne
Third International Workshop on Engineering Service-Oriented Applications:
                     Analysis, Design and Composition
               WESOA’07 – http://wesoa07.googlepages.com/



               Web Service Choreography
                Configurations for BPMN




          Kerstin Pfitzner1, Gero Decker2, Oliver Kopp1, Frank Leymann1
Motivation
                                                                     configurations
                 BPMN                                                   needed
                           transformation
                           instead of manual steps
            BPEL4Chor
                           transformation

        set of abstract
       BPEL processes
                           executable completion
                           (manual work)
      set of executable
      BPEL processes
Presented by Oliver Kopp                                                                                   2
                                             © Kerstin Pfitzner, Gero Decker, Oliver Kopp, Frank Leymann
Agenda

            Orchestrations and Choreographies

            BPEL4Chor
                      Extensions for BPEL to model
                      choreographies


            Configurations for BPMN to support
            modeling BPEL4Chor


Presented by Oliver Kopp                                                                                   3
                                             © Kerstin Pfitzner, Gero Decker, Oliver Kopp, Frank Leymann
Bookshop orchestration
                                                                                        Supplier
                           Client                  Book shop




                                                    Not
                                                                request
                                                   found
                                                                 price

                                      update
                                     suppliers
                                       data




                                        no price
                                                           price received
                                        received


                                                                  select
                                    send not                    cheapest
                                     found                       supplier


                                                                  send
                                                                response

                                                                                          De facto standards:
                                                                                          BPMN, BPEL
Presented by Oliver Kopp                                                                                                                  4
                                                                            © Kerstin Pfitzner, Gero Decker, Oliver Kopp, Frank Leymann
The bookshop choreography - pure BPMN
                                                                                                  Supplier
                            Client                     Book shop




                                                                                              calculate
                           send price
                                                                                                price
                            request

                                                        Not                             book
                                                                    request                            book found
                                                       found                          not found
                                                                     price

                                          update
                                         suppliers
                                                                                        reply
                                           data
                                                                                      not found


                                                                                                          reply




                                            no price
                                                               price received
                                            received


                                                                      select
                                        send not                    cheapest
                                         found                       supplier


                                                                      send
                                                                                             De facto standard:
                                                                    response



                                                                                             BPMN
Presented by Oliver Kopp                                                                                                                      5
                                                                                © Kerstin Pfitzner, Gero Decker, Oliver Kopp, Frank Leymann
Other languages to model choreographies
                                                                                                         Interaction model
                 Interconnection model
                                                                                                         (simplified)
                                                                               Supplier
        Client                            Book shop



                                                                                                      Client        Book shop
                                                                                                      (c)                 (bs)
                                                                           calculate
       send price
                                                                             price
        request

                                                                                                                 Order
                                           Not                       book
                                                       request                      book found
                                          found                    not found
                                                        price

                             update
                            suppliers
                                                                     reply
                              data
                                                                                                 for each element in S (concurrent) (bs)
                                                                   not found


                                                                                                      Book shop          Supplier
                                                                                       reply

                                                                                                      (bs)                   (S)

                                                                                                         Price Request
                               no price
                                                  price received
                               received



                                                                                                      Supplier      Book shop
                                                         select
                           send not                    cheapest
                            found
                                                                                                      (S)                 (bs)
                                                        supplier



                                                                                                               Response
                                                         send
                                                       response




                                                                                                      Book shop            Client
                                                                                                                                           Let’s Dance,
                                                                                                      (bs)                    (c)

                                                                                                                 Offer
                                                                                                                                           WS-CDL
                    BPEL4Chor
Presented by Oliver Kopp                                                                                                                                               6
                                                                                                         © Kerstin Pfitzner, Gero Decker, Oliver Kopp, Frank Leymann
BPEL4Chor




            7
BPEL4Chor

            Includes all features of BPEL 2.0, e.g.
                      Event handler
                      Termination handler
                      Uses abstract BPEL
            Plus choreography information
                      Notion of participants
                      Multiplicity of participants
                      Participant references




Presented by Oliver Kopp                                                                                           8
                                                     © Kerstin Pfitzner, Gero Decker, Oliver Kopp, Frank Leymann
BPEL4Chor Participant Behavior Descriptions
                                          Client
   <sequence>                                                                     Book shop



    <invoke
      wsu:id=“sendPriceRequest”         send price
                                         request


      />                                                                           Not
                                                                                               request
                                                                                  found
                                                                                                price


    <pick>                                                          update
                                                                   suppliers
                                                                     data

     <onMessage
      wsu:id=“receivePrice” />
     <onMessage
                                                                       no price

       wsu:id=“receiveNotFound”                                                           price received
                                                                       received


                                                                                                 select

      />                                                          send not                     cheapest
                                                                   found                        supplier


    </pick>                                                                                      send
                                                                                               response


   </sequence>

Presented by Oliver Kopp                                                                              9
                                  © Kerstin Pfitzner, Gero Decker, Oliver Kopp, Frank Leymann
BPEL4Chor Participant Topologies
    <topology name=“bookshopquot; …>

     <participantTypes>                                                                                    Supplier
                                               Client                        Book shop

      <participantType
        name=“BookShopquot;
        participantBehaviorDescription
        =“mychor:BookShopquot; />
        <participantType
        name=“Supplier“ … /> …
     </participantTypes>

          <participants>
            <participant name=“bquot;
                 type=“BookShopquot; />
            <participantSet name=“suppliers”
                 type=“Supplier”
                <participant
                 name=“currentSupplier” />
            </participantSet>
            …
Presented by Oliver Kopp                                                                                              10
                                                        © Kerstin Pfitzner, Gero Decker, Oliver Kopp, Frank Leymann
BPEL4Chor Participant Topologies
                                       Client                                 Book shop




 <messageLinks>                       send price
                                       request

   <messageLink                                                                Not
                                                                                           request
                                                                              found
                                                                                            price

    sender=“c“                                                   update
                                                                suppliers

    sendActivity=“sendPriceRequest”                               data



    receiver=“BookShop“
    receiveActivity=“getOrder”
    messageName=“orderquot; /> …                                       no price
                                                                                      price received
 </messageLinks>
                                                                   received


                                                                                             select
                                                              send not                     cheapest
                                                               found                        supplier


                                                                                             send
                                                                                           response




Presented by Oliver Kopp                                                                               11
                                       © Kerstin Pfitzner, Gero Decker, Oliver Kopp, Frank Leymann
Configurations for BPMN




                          12
What is missing in BPMN?

            Features of BPEL 2.0
                      Event handler
                      Termination handler
                           BPMN: only termination of transactional sub-processes
            Certain choreography information
                      Multiplicity of participants
                      Participant references




Presented by Oliver Kopp                                                                                               13
                                                         © Kerstin Pfitzner, Gero Decker, Oliver Kopp, Frank Leymann
BPEL basic activities
            Basic activities distinguished by marking




Presented by Oliver Kopp                                                                                   14
                                             © Kerstin Pfitzner, Gero Decker, Oliver Kopp, Frank Leymann
BPEL4Chor data types




            Rendering of the different variable types of BPEL




Presented by Oliver Kopp                                                                                   15
                                             © Kerstin Pfitzner, Gero Decker, Oliver Kopp, Frank Leymann
Reference passing




            There exist only one instance of Z
            This instance is created by X
            The reference to Z needs to be passed to Y




Presented by Oliver Kopp                                                                                 16
                                           © Kerstin Pfitzner, Gero Decker, Oliver Kopp, Frank Leymann
Pool sets and references




            Pool sets contain multiple instances of one participant
            Sender and receiver have to be specified, if there are
            multiple instances of them




Presented by Oliver Kopp                                                                                   17
                                             © Kerstin Pfitzner, Gero Decker, Oliver Kopp, Frank Leymann
Iteration over a participant set


                              Specification of
                                      Set to iterate on
                                      Name of the current
                                      participant reference




Presented by Oliver Kopp                                                                     18
                               © Kerstin Pfitzner, Gero Decker, Oliver Kopp, Frank Leymann
BPEL handlers

                                  invoke
                                  synch.


                                             ...
               ...         ...
    ...




            Different handlers distinguished by marking
                      Event Handler
                      Fault Handler
                      Termination Handler
                      Compensation Handler



Presented by Oliver Kopp                                                                                         19
                                                   © Kerstin Pfitzner, Gero Decker, Oliver Kopp, Frank Leymann
Bookshop choreography / configured BPMN
                                                                                                    Supplier
                            Client                      Bookshop



                                                                         suppliers


                                                                                                     calculate
                           send price
                                                                                                       price
                            request                          current
                                                             supplier
                                                                                               book
                                                       not
                                                                        request              not found      book found
                                                     found
                                                                         price

                                          update
                                         suppliers                                            reply
                                           data                                             not found



                                                                                                             reply




                                             no price
                                                                 price received
                                             received



                                                                          select
                                        send not
                                                                        cheapest
                                         found
                                                                         supplier


                                                                        send not
                                                                         found




Presented by Oliver Kopp                                                                                                                        20
                                                                                  © Kerstin Pfitzner, Gero Decker, Oliver Kopp, Frank Leymann
Transform configured BPMN to BPEL4Chor

            Extending existing transformation
                      Ouyang et al.: Pattern-based translation of BPMN
                      process models to BPEL web services
            Adopting restrictions:
                      Exclusion of e.g.
                           Ad-hoc or transactional sub-processes
                           End-events with triggers
                           Tasks of type user, script, abstract, manual reference, non-
                           typed
            Excluded support of arbitrary cycles
            BPMN configuration respected in the mapping


Presented by Oliver Kopp                                                                                                 21
                                                           © Kerstin Pfitzner, Gero Decker, Oliver Kopp, Frank Leymann
Summary


            BPEL4Chor as choreography extension of BPEL
                      Multiple participants of one type
            Configurations of BPMN to fully support modeling
            of BPEL4Chor
            Ongoing work
                      Implementation of mapping of configured BPMN to
                      BPEL4Chor
                      Interaction models vs. interconnection models
            Future work
                      Evaluation

Presented by Oliver Kopp                                                                                          22
                                                    © Kerstin Pfitzner, Gero Decker, Oliver Kopp, Frank Leymann

Contenu connexe

Plus de Oliver Kopp

Do We Need Internal Behavior in Choreography Models?
Do We Need Internal Behavior in Choreography Models?Do We Need Internal Behavior in Choreography Models?
Do We Need Internal Behavior in Choreography Models?Oliver Kopp
 
A Model-Driven Approach to Implementing Coordination Protocols in BPEL
A Model-Driven Approach to Implementing Coordination Protocols in BPELA Model-Driven Approach to Implementing Coordination Protocols in BPEL
A Model-Driven Approach to Implementing Coordination Protocols in BPELOliver Kopp
 
Deriving Explicit Data Links in WS-BPEL Processes
Deriving Explicit Data Links in WS-BPEL ProcessesDeriving Explicit Data Links in WS-BPEL Processes
Deriving Explicit Data Links in WS-BPEL ProcessesOliver Kopp
 
On the Choice Between Graph-Based and Block-Structured Business Process Mod...
On the Choice Between  Graph-Based and Block-Structured  Business Process Mod...On the Choice Between  Graph-Based and Block-Structured  Business Process Mod...
On the Choice Between Graph-Based and Block-Structured Business Process Mod...Oliver Kopp
 
Service Referrals in BPEL-based Choreographies
Service Referrals in BPEL-based ChoreographiesService Referrals in BPEL-based Choreographies
Service Referrals in BPEL-based ChoreographiesOliver Kopp
 
Tools4BPEL Abschlusspräsentation
Tools4BPEL AbschlusspräsentationTools4BPEL Abschlusspräsentation
Tools4BPEL AbschlusspräsentationOliver Kopp
 

Plus de Oliver Kopp (7)

Do We Need Internal Behavior in Choreography Models?
Do We Need Internal Behavior in Choreography Models?Do We Need Internal Behavior in Choreography Models?
Do We Need Internal Behavior in Choreography Models?
 
A Model-Driven Approach to Implementing Coordination Protocols in BPEL
A Model-Driven Approach to Implementing Coordination Protocols in BPELA Model-Driven Approach to Implementing Coordination Protocols in BPEL
A Model-Driven Approach to Implementing Coordination Protocols in BPEL
 
BPELscript
BPELscriptBPELscript
BPELscript
 
Deriving Explicit Data Links in WS-BPEL Processes
Deriving Explicit Data Links in WS-BPEL ProcessesDeriving Explicit Data Links in WS-BPEL Processes
Deriving Explicit Data Links in WS-BPEL Processes
 
On the Choice Between Graph-Based and Block-Structured Business Process Mod...
On the Choice Between  Graph-Based and Block-Structured  Business Process Mod...On the Choice Between  Graph-Based and Block-Structured  Business Process Mod...
On the Choice Between Graph-Based and Block-Structured Business Process Mod...
 
Service Referrals in BPEL-based Choreographies
Service Referrals in BPEL-based ChoreographiesService Referrals in BPEL-based Choreographies
Service Referrals in BPEL-based Choreographies
 
Tools4BPEL Abschlusspräsentation
Tools4BPEL AbschlusspräsentationTools4BPEL Abschlusspräsentation
Tools4BPEL Abschlusspräsentation
 

Dernier

Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGSujit Pal
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 

Dernier (20)

Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAG
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 

Web Service Choreography Configurations for BPMN

  • 1. Third International Workshop on Engineering Service-Oriented Applications: Analysis, Design and Composition WESOA’07 – http://wesoa07.googlepages.com/ Web Service Choreography Configurations for BPMN Kerstin Pfitzner1, Gero Decker2, Oliver Kopp1, Frank Leymann1
  • 2. Motivation configurations BPMN needed transformation instead of manual steps BPEL4Chor transformation set of abstract BPEL processes executable completion (manual work) set of executable BPEL processes Presented by Oliver Kopp 2 © Kerstin Pfitzner, Gero Decker, Oliver Kopp, Frank Leymann
  • 3. Agenda Orchestrations and Choreographies BPEL4Chor Extensions for BPEL to model choreographies Configurations for BPMN to support modeling BPEL4Chor Presented by Oliver Kopp 3 © Kerstin Pfitzner, Gero Decker, Oliver Kopp, Frank Leymann
  • 4. Bookshop orchestration Supplier Client Book shop Not request found price update suppliers data no price price received received select send not cheapest found supplier send response De facto standards: BPMN, BPEL Presented by Oliver Kopp 4 © Kerstin Pfitzner, Gero Decker, Oliver Kopp, Frank Leymann
  • 5. The bookshop choreography - pure BPMN Supplier Client Book shop calculate send price price request Not book request book found found not found price update suppliers reply data not found reply no price price received received select send not cheapest found supplier send De facto standard: response BPMN Presented by Oliver Kopp 5 © Kerstin Pfitzner, Gero Decker, Oliver Kopp, Frank Leymann
  • 6. Other languages to model choreographies Interaction model Interconnection model (simplified) Supplier Client Book shop Client Book shop (c) (bs) calculate send price price request Order Not book request book found found not found price update suppliers reply data for each element in S (concurrent) (bs) not found Book shop Supplier reply (bs) (S) Price Request no price price received received Supplier Book shop select send not cheapest found (S) (bs) supplier Response send response Book shop Client Let’s Dance, (bs) (c) Offer WS-CDL BPEL4Chor Presented by Oliver Kopp 6 © Kerstin Pfitzner, Gero Decker, Oliver Kopp, Frank Leymann
  • 8. BPEL4Chor Includes all features of BPEL 2.0, e.g. Event handler Termination handler Uses abstract BPEL Plus choreography information Notion of participants Multiplicity of participants Participant references Presented by Oliver Kopp 8 © Kerstin Pfitzner, Gero Decker, Oliver Kopp, Frank Leymann
  • 9. BPEL4Chor Participant Behavior Descriptions Client <sequence> Book shop <invoke wsu:id=“sendPriceRequest” send price request /> Not request found price <pick> update suppliers data <onMessage wsu:id=“receivePrice” /> <onMessage no price wsu:id=“receiveNotFound” price received received select /> send not cheapest found supplier </pick> send response </sequence> Presented by Oliver Kopp 9 © Kerstin Pfitzner, Gero Decker, Oliver Kopp, Frank Leymann
  • 10. BPEL4Chor Participant Topologies <topology name=“bookshopquot; …> <participantTypes> Supplier Client Book shop <participantType name=“BookShopquot; participantBehaviorDescription =“mychor:BookShopquot; /> <participantType name=“Supplier“ … /> … </participantTypes> <participants> <participant name=“bquot; type=“BookShopquot; /> <participantSet name=“suppliers” type=“Supplier” <participant name=“currentSupplier” /> </participantSet> … Presented by Oliver Kopp 10 © Kerstin Pfitzner, Gero Decker, Oliver Kopp, Frank Leymann
  • 11. BPEL4Chor Participant Topologies Client Book shop <messageLinks> send price request <messageLink Not request found price sender=“c“ update suppliers sendActivity=“sendPriceRequest” data receiver=“BookShop“ receiveActivity=“getOrder” messageName=“orderquot; /> … no price price received </messageLinks> received select send not cheapest found supplier send response Presented by Oliver Kopp 11 © Kerstin Pfitzner, Gero Decker, Oliver Kopp, Frank Leymann
  • 13. What is missing in BPMN? Features of BPEL 2.0 Event handler Termination handler BPMN: only termination of transactional sub-processes Certain choreography information Multiplicity of participants Participant references Presented by Oliver Kopp 13 © Kerstin Pfitzner, Gero Decker, Oliver Kopp, Frank Leymann
  • 14. BPEL basic activities Basic activities distinguished by marking Presented by Oliver Kopp 14 © Kerstin Pfitzner, Gero Decker, Oliver Kopp, Frank Leymann
  • 15. BPEL4Chor data types Rendering of the different variable types of BPEL Presented by Oliver Kopp 15 © Kerstin Pfitzner, Gero Decker, Oliver Kopp, Frank Leymann
  • 16. Reference passing There exist only one instance of Z This instance is created by X The reference to Z needs to be passed to Y Presented by Oliver Kopp 16 © Kerstin Pfitzner, Gero Decker, Oliver Kopp, Frank Leymann
  • 17. Pool sets and references Pool sets contain multiple instances of one participant Sender and receiver have to be specified, if there are multiple instances of them Presented by Oliver Kopp 17 © Kerstin Pfitzner, Gero Decker, Oliver Kopp, Frank Leymann
  • 18. Iteration over a participant set Specification of Set to iterate on Name of the current participant reference Presented by Oliver Kopp 18 © Kerstin Pfitzner, Gero Decker, Oliver Kopp, Frank Leymann
  • 19. BPEL handlers invoke synch. ... ... ... ... Different handlers distinguished by marking Event Handler Fault Handler Termination Handler Compensation Handler Presented by Oliver Kopp 19 © Kerstin Pfitzner, Gero Decker, Oliver Kopp, Frank Leymann
  • 20. Bookshop choreography / configured BPMN Supplier Client Bookshop suppliers calculate send price price request current supplier book not request not found book found found price update suppliers reply data not found reply no price price received received select send not cheapest found supplier send not found Presented by Oliver Kopp 20 © Kerstin Pfitzner, Gero Decker, Oliver Kopp, Frank Leymann
  • 21. Transform configured BPMN to BPEL4Chor Extending existing transformation Ouyang et al.: Pattern-based translation of BPMN process models to BPEL web services Adopting restrictions: Exclusion of e.g. Ad-hoc or transactional sub-processes End-events with triggers Tasks of type user, script, abstract, manual reference, non- typed Excluded support of arbitrary cycles BPMN configuration respected in the mapping Presented by Oliver Kopp 21 © Kerstin Pfitzner, Gero Decker, Oliver Kopp, Frank Leymann
  • 22. Summary BPEL4Chor as choreography extension of BPEL Multiple participants of one type Configurations of BPMN to fully support modeling of BPEL4Chor Ongoing work Implementation of mapping of configured BPMN to BPEL4Chor Interaction models vs. interconnection models Future work Evaluation Presented by Oliver Kopp 22 © Kerstin Pfitzner, Gero Decker, Oliver Kopp, Frank Leymann