SlideShare a Scribd company logo
Virtualizing Services and Resources with ProBus: 
          The WS‐Policy‐Aware Service and Resource Bus




            Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland,
                          Dimka Karastoyanova, and Frank Leymann
                            Institute of Architecture of Application Systems
                                                  (IAAS)
University of Stuttgart
Universitätsstr. 38
70569 Stuttgart
Germany
                                                                      tammo.van.lessen@iaas.uni‐stuttgart.de
The Talk Today

              Motivation and Introduction
              Classification of WS‐Policy based Service 
              Selection
              The ProBus approach for Web Services
              The ProBus approach for WS‐Resources
              Architecture & Implementation
              Conclusions & Outlook



© Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann   2
Service/Resource Selection

                                                                             Service 
                                                                             Registry



                                                           find                                      publish



                                                  Service                                               Service 
                                                 Requestor                        bind                 Provider


              WS‐Policy provides a promising approach to Web service/Resource 
              selection based on non‐functional properties.
              Established approaches are quite cumbersome and not as easy as they 
              could be.
              We have identified 3 classes of WS‐Policy based service selection.
© Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann      3
Classes of WS‐Policy based Service Selection

              Class 1: Manual Service Selection




                          Advantages: Easy to use, no “magic” involved.
                          Disadvantages: inflexible, not really loosely coupled
© Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann   5
Classes of WS‐Policy based Service Selection

              Class 2: Policy Based Service Selection




                          Advantages: more flexible
                          Disadvantes: Additional components are needed on 
                          client‐side (for “find” and “select”)



© Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann   6
Classes of WS‐Policy based Service Selection

              Class 3: The ProBus approach




                          Advantages: easy to use, “make it happen” semantics, 
                          more flexibility as the bus is aware of any conversations




© Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann   7
Sample Request


               <soap:Envelope ...>
                 <soap:Header>
                   <rb:requiredPolicy>
                     <wsp:Policy>
                       <wsp:ExactlyOne>
                         <wsp:All>
                           <prn:printer prn:maxCostPerPage="$0.3"/>
                         </wsp:All>
                       </wsp:ExactlyOne>
                     </wsp:Policy>
                   </rb:requiredPolicy>
                 </soap:Header>
                 <soap:Body>
                   <!-- Payload of the message -->
                 </soap:Body>
               </soap:Envelope>




© Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann   8
Post‐Processing Rules

              When only the bus takes care of policy matchmaking, 
              it must be aware of domain‐specific details
                          E.g. “There is a match when costPerPage of a printer is 
                          less or equal to a given amount”
              XPath‐based post‐processor

              <rb:XPathRules rb:assertionQName="prn:printer" ...>
                <rb:Rule>
                  $reqAssertion/@prn:maxCostPerPage <=
                                      $provAssertion/@prn:maxCostPerPage
                </rb:Rule>
                <!-- additional rules for this assertion -->
              </rb:XPathRules>




© Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann   9
Using ProBus for Dynamic Resource Selection

              Sample Scenario: Printer Selection




© Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann   10
How to apply the ProBus approach to WSRF

              Defining Policies Relating to Resource Properties
                          New WS‐Policy assertion type: resource property 
                          condition
                                                                                                                Resource Property Document
            <prn:Printer>
              <prn:waitingQueue>10</prn:waitingQueue>
              <prn:costPerPage>0.03</prn:costPerPage>
              <!--other resource properties -->
            </prn:Printer>

            <wsp:Policy ...>
                                                                                                                                       Request Policy
              <wsp:ExactlyOne>
                <wsp:All>
                  <!-- some assertions -->
                  <rb:resourcePropertyCondition rb:type="prn:printer">
                    <rb:XPath rb:propertyQName="prn:waitingQueue">
                        number(prn:waitingQueue/text()) <10
                    </rb:XPath>
                  </rb:resourcePropertyCondition>
                  <!-- more assertions -->
                </wsp:All>
              </wsp:ExactlyOne>
            </wsp:Policy>
© Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann                                    11
How to apply the ProBus approach to WSRF

              Conversations
                          Resources are stateful, hence the EPR is important for 
                          subsequent requests




              Dynamic Resource Management
                          Annotations for factory operations
              Exception Handling
                          “What happens, if a resource is not available (anymore)?”
                          New fault type: noSuitableResourceFound
© Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann   12
Architecture and Implementation




              Implementation based on Apache ServiceMix
                          Policy‐aware message routing
                          Pluggable processors for post‐processing rules
                          Deployment support for policies, post‐processing rules and 
                          resource factory descriptors
© Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann   13
Conclusions and Outlook
              Conclusions
                          One‐step service/resource selection completely decouples 
                          service providers and service consumers
                          XPath‐based post‐processing rules allow for fine‐granular 
                          domain‐specific policy matchmaking
                          WS‐Policy can be used in conjunction with WSRF and 
                          helps to easily discover suited resources for a particular 
                          request
              Future Work
                          We plan to combine ProBus with a BPEL engine in order to 
                          define dynamic policy‐based provisioning workflows on 
                          standard based SOA infrastructures
                          We investigate how ProBus can help to achieve better fail‐
                          over behaviors
© Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann   14
Thank you for your attention!

                                                         Any Questions?



© Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann   15
End of Document

More Related Content

PDF
Quality Assurance and Testing of Automated Business Processes
PDF
Vorsicht Schuldenfalle - Was die IT aus der Finanzwelt lernen kann
PDF
Mehr Softwarequalität: Technische Schulden
PDF
BPM meets Semantic Web
PDF
Behavior-driven Business Process Development with BPMN
PDF
Business Process Management with BPMN & BPEL
PDF
Logging & Metrics
PPT
Web Service Composition mit WS-BPEL und dem Open-Source-Orchester
Quality Assurance and Testing of Automated Business Processes
Vorsicht Schuldenfalle - Was die IT aus der Finanzwelt lernen kann
Mehr Softwarequalität: Technische Schulden
BPM meets Semantic Web
Behavior-driven Business Process Development with BPMN
Business Process Management with BPMN & BPEL
Logging & Metrics
Web Service Composition mit WS-BPEL und dem Open-Source-Orchester

Similar to Virtualizing Services and Resources with ProBus: The WS-Policy-Aware Service and Resource Bus (20)

PDF
Service operator aware trust scheme for resource matchmaking across multiple ...
PDF
ISP Connectivity Webinar: No Longer a Black Box
PPT
Managing Enterprise Services through Service Versioning & Governance - Impact...
PDF
Avoiding disaster recovery disasters
PDF
Avoiding disaster recovery disasters
PDF
The MTTR Chronicles: Evolution of SRE Self Service Operations Platform
PDF
Risk Thinking for Cloud-Based Application Services
PPT
Network Management and Flow Analysis in Today’s Dense IT Environments
PPTX
Presence cloud
PPTX
Service Mesh CTO Forum (Draft 3)
PPTX
Perf 101-lab-slideshare
PPTX
High-Speed Reactive Microservices - trials and tribulations
PDF
Summit 2009 performance-tuning_banner
PDF
Chapter01.pdf
PDF
Bottlenecks exposed web app db servers
PPTX
A scalable server architecture for mobile presence services
PPTX
Meetup Microservices Commandments
PDF
RabbitMQ Implementation as Message Broker in Distributed Application with RES...
DOCX
Kartheek Resume
PPT
SWsoft Hosting Solutions for SaaS
Service operator aware trust scheme for resource matchmaking across multiple ...
ISP Connectivity Webinar: No Longer a Black Box
Managing Enterprise Services through Service Versioning & Governance - Impact...
Avoiding disaster recovery disasters
Avoiding disaster recovery disasters
The MTTR Chronicles: Evolution of SRE Self Service Operations Platform
Risk Thinking for Cloud-Based Application Services
Network Management and Flow Analysis in Today’s Dense IT Environments
Presence cloud
Service Mesh CTO Forum (Draft 3)
Perf 101-lab-slideshare
High-Speed Reactive Microservices - trials and tribulations
Summit 2009 performance-tuning_banner
Chapter01.pdf
Bottlenecks exposed web app db servers
A scalable server architecture for mobile presence services
Meetup Microservices Commandments
RabbitMQ Implementation as Message Broker in Distributed Application with RES...
Kartheek Resume
SWsoft Hosting Solutions for SaaS
Ad

More from Tammo van Lessen (6)

PPT
SOA-based Business Integration with Eclipse BPEL and Apache ODE
PDF
Facilitating Rich Data Manipulation in BPEL using E4X
PDF
Formalizing Message Exchange Patterns using BPEL light
PDF
BPM meets Semantic Web
PDF
An Execution Engine For Semantic Business Processes
PDF
Web Services Orchestration with BPEL 2.0
SOA-based Business Integration with Eclipse BPEL and Apache ODE
Facilitating Rich Data Manipulation in BPEL using E4X
Formalizing Message Exchange Patterns using BPEL light
BPM meets Semantic Web
An Execution Engine For Semantic Business Processes
Web Services Orchestration with BPEL 2.0
Ad

Recently uploaded (20)

PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PPTX
Programs and apps: productivity, graphics, security and other tools
PDF
Empathic Computing: Creating Shared Understanding
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PDF
KodekX | Application Modernization Development
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PPTX
sap open course for s4hana steps from ECC to s4
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PPTX
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PPT
Teaching material agriculture food technology
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
Programs and apps: productivity, graphics, security and other tools
Empathic Computing: Creating Shared Understanding
Advanced methodologies resolving dimensionality complications for autism neur...
Dropbox Q2 2025 Financial Results & Investor Presentation
NewMind AI Weekly Chronicles - August'25 Week I
KodekX | Application Modernization Development
20250228 LYD VKU AI Blended-Learning.pptx
Chapter 3 Spatial Domain Image Processing.pdf
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
Building Integrated photovoltaic BIPV_UPV.pdf
sap open course for s4hana steps from ECC to s4
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
“AI and Expert System Decision Support & Business Intelligence Systems”
Teaching material agriculture food technology
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...

Virtualizing Services and Resources with ProBus: The WS-Policy-Aware Service and Resource Bus

  • 1. Virtualizing Services and Resources with ProBus:  The WS‐Policy‐Aware Service and Resource Bus Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann Institute of Architecture of Application Systems (IAAS) University of Stuttgart Universitätsstr. 38 70569 Stuttgart Germany tammo.van.lessen@iaas.uni‐stuttgart.de
  • 2. The Talk Today Motivation and Introduction Classification of WS‐Policy based Service  Selection The ProBus approach for Web Services The ProBus approach for WS‐Resources Architecture & Implementation Conclusions & Outlook © Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann 2
  • 3. Service/Resource Selection Service  Registry find publish Service  Service  Requestor bind Provider WS‐Policy provides a promising approach to Web service/Resource  selection based on non‐functional properties. Established approaches are quite cumbersome and not as easy as they  could be. We have identified 3 classes of WS‐Policy based service selection. © Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann 3
  • 4. Classes of WS‐Policy based Service Selection Class 1: Manual Service Selection Advantages: Easy to use, no “magic” involved. Disadvantages: inflexible, not really loosely coupled © Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann 5
  • 5. Classes of WS‐Policy based Service Selection Class 2: Policy Based Service Selection Advantages: more flexible Disadvantes: Additional components are needed on  client‐side (for “find” and “select”) © Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann 6
  • 6. Classes of WS‐Policy based Service Selection Class 3: The ProBus approach Advantages: easy to use, “make it happen” semantics,  more flexibility as the bus is aware of any conversations © Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann 7
  • 7. Sample Request <soap:Envelope ...> <soap:Header> <rb:requiredPolicy> <wsp:Policy> <wsp:ExactlyOne> <wsp:All> <prn:printer prn:maxCostPerPage="$0.3"/> </wsp:All> </wsp:ExactlyOne> </wsp:Policy> </rb:requiredPolicy> </soap:Header> <soap:Body> <!-- Payload of the message --> </soap:Body> </soap:Envelope> © Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann 8
  • 8. Post‐Processing Rules When only the bus takes care of policy matchmaking,  it must be aware of domain‐specific details E.g. “There is a match when costPerPage of a printer is  less or equal to a given amount” XPath‐based post‐processor <rb:XPathRules rb:assertionQName="prn:printer" ...> <rb:Rule> $reqAssertion/@prn:maxCostPerPage <= $provAssertion/@prn:maxCostPerPage </rb:Rule> <!-- additional rules for this assertion --> </rb:XPathRules> © Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann 9
  • 9. Using ProBus for Dynamic Resource Selection Sample Scenario: Printer Selection © Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann 10
  • 10. How to apply the ProBus approach to WSRF Defining Policies Relating to Resource Properties New WS‐Policy assertion type: resource property  condition Resource Property Document <prn:Printer> <prn:waitingQueue>10</prn:waitingQueue> <prn:costPerPage>0.03</prn:costPerPage> <!--other resource properties --> </prn:Printer> <wsp:Policy ...> Request Policy <wsp:ExactlyOne> <wsp:All> <!-- some assertions --> <rb:resourcePropertyCondition rb:type="prn:printer"> <rb:XPath rb:propertyQName="prn:waitingQueue"> number(prn:waitingQueue/text()) <10 </rb:XPath> </rb:resourcePropertyCondition> <!-- more assertions --> </wsp:All> </wsp:ExactlyOne> </wsp:Policy> © Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann 11
  • 11. How to apply the ProBus approach to WSRF Conversations Resources are stateful, hence the EPR is important for  subsequent requests Dynamic Resource Management Annotations for factory operations Exception Handling “What happens, if a resource is not available (anymore)?” New fault type: noSuitableResourceFound © Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann 12
  • 12. Architecture and Implementation Implementation based on Apache ServiceMix Policy‐aware message routing Pluggable processors for post‐processing rules Deployment support for policies, post‐processing rules and  resource factory descriptors © Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann 13
  • 13. Conclusions and Outlook Conclusions One‐step service/resource selection completely decouples  service providers and service consumers XPath‐based post‐processing rules allow for fine‐granular  domain‐specific policy matchmaking WS‐Policy can be used in conjunction with WSRF and  helps to easily discover suited resources for a particular  request Future Work We plan to combine ProBus with a BPEL engine in order to  define dynamic policy‐based provisioning workflows on  standard based SOA infrastructures We investigate how ProBus can help to achieve better fail‐ over behaviors © Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann 14
  • 14. Thank you for your attention! Any Questions? © Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann 15