WS-Foo by nyut545e2

VIEWS: 5 PAGES: 21

									Web Services Interoperability
Ensuring interoperability through Web services
specifications




Jorgen Thelin
Senior Program Manager
Connected Systems Division
Microsoft Corporation
Agenda
 What is Interoperability
 Ways to Achieve Interoperability
   WS-* Interop Workshops
   Plug-fests
   Profiling / WS-I
 Microsoft’s Commitment to
 Interoperability
What is Interoperability?
  Integration

     Combining software or hardware components or both into
     an overall system.

  Interoperability

     The ability to exchange and use information (usually in a
     large heterogeneous network made up of several local area
     networks)

     The ability of software and hardware on multiple machines
     from multiple vendors to communicate

  Source: Dictionary.com
     http://dictionary.reference.com/search?q=interoperability
     http://dictionary.reference.com/search?q=integration
            It gives customers control
            over the data they create
            and want to share



Interoperability means connecting
people, data, and diverse systems


 Vendors create innovative      The nature of software
 solutions that bridge          allows for translatability
 technologies to address        in lieu of uniformity
 real customer needs in an
 innovative manner
 Integration via Interop
 App                      App                                       App                   App


                                                               Other                      Other
 WCF                    WSE
                                                               MSFT                       Stack

                                                   Devices
                    WS-Federation
                                WS-Management             Infrastructure    Metadata
                                                   Profile                 WS-Metadata
                                                            and Profiles
                                                                            Exchange
                     WS-Secure                   WS-Business
  Network           Conversation
                      WS-Trust
                                                   Activity
                                                  WS-Atomic
                                                            Assurances
                                                                           WS-Discovery

                                                 Transaction                   UDDI
                                    WS-Reliable
                     WS-Security               WS-Coordination
                                    Messaging                                WS-Policy


                   WS-* Protocols
                    WS-Transfer

                       SOAP
                              WS-Enumeration         Messaging
                                           WS-Eventing

                                   WS-Addressing    MTOM
                                                                              WSDL

                                                                           XML Schema

                     XML Infoset                                SOAP / UDPFoundation
                                       XML
                      XML 1.0                        MIME      SOAP / HTTP
                                    Namespaces




 Interoperability is the main way to achieve
integration in a heterogeneous environment.
Integration via Interoperability
       App                                              App                   App   App   App
                                                                 Other Other
        WCF                                              WCF WSE MSFT Vendor
                                                                 Stack Stack

       Network
                                     Devices
            WS-FederationWS-Management                         WS-Metadata
                                     Profile Infrastructure    Metadata
            WS-Secure                WS-Business
                                               and Profiles    Exchange
            Conversation             Activity Assurances
                                     WS-Atomic
                                                               WS-Discovery
            WS-Trust                                           UDDI
                         WS-Reliable Transaction
            WS-Security              WS-Coordination           WS-Policy


            WS-* Protocols
                         Messaging
                                     WS-Eventing
            WS-Transfer WS-Enumeration          Messaging      WSDL
            SOAP                      MTOM
                          WS-Addressing                        XML Schema

            XML Infoset                              SOAP / UDP
                                                              Foundation
                          XML
            XML 1.0                  MIME            SOAP / HTTP
                          Namespaces




   Wire level interoperability achieves
   integration in a heterogeneous
   environment.
A Standard is not Enough
 A specification does not guarantee
 integration or interoperability
   Problems that can arise:
     It’s paper not product
     Differing spec interpretations
     Optionality underlap / disconnect
     Fit to business scenario
   Also need to have:
     Implementations that are:
       Available
       Proven
       Compatible
     Proven scenarios
Components of Business
Interoperability
  Agreed syntax representations
    E.g. XML
  Agreed protocols
    E.g. SOAP + WS-* specs (such as WS-
    ReliableMessaging)
  Agreed payload formats
    E.g. HL7 schemas for healthcare data
  Profiled composition
    E.g. Pre-defined options to ensure functionality
  Agreed business scenarios
    E.g. Well defined interaction scenarios / use
    cases
       WS-* Specification Process
          Step 1                   Step 2                       Step 3          Step 4
          Develop            Broader Participation          Standardization     Profiling


                                                                                Such as:
Idea                    Feedback and                                             WS-I,
        Specification
                           Interop         Revise spec      Standards Org     HL7, ACORD,
         Published
                         Workshops                                              Devices
                                                                                 Profile




                        Increasing Industry Participation


                Process reconciles conflicting goals
                • Quality of engineering
                • Time to market
                • Breadth of industry support
Techniques for Achieving
Interoperability
  Protocol Implementation and Testing

  Scenario-based approaches
     Examples:
        WS-* Interop Workshops

        Product Plug-fests

        E2E (end-to-end) Scenario Testing

        Proof-of-Concept / Pilot projects

  Specification Profiling

  … and repeat
WS-* Interoperability Workshops
  Focus: Testing the specification(s)
  Goal: Produce well-engineered, quality WS-*
  specifications
    Based in specified interop scenarios
    Ground the spec development efforts in implementation
    and usage experience
    Demonstrate / prove spec interoperability
    Gain implementation experience earlier
    Discover inconsistencies with other WS-* specifications
    Apply software testing disciplines to specs
    Refine the important spec usage scenarios
    Determine readiness for standardization
  Involvement:
    Vendors with implementations
    Initiated by key vendors or standards orgs
    Often prototype or early development code
Product Plug-fests
  Focus: Unit Testing the product(s)
  Goal: Get products working together
    Based in specified interop scenarios
    May or may not be using business data
    Ground the product implementation efforts in usage
    experience
    Demonstrate / prove product interoperability
    Gain interoperability experience earlier
    Discover inconsistencies with other WS-* products
    Refine the important product usage scenarios
    Determine readiness for product release
  Involvement:
    Vendors with implementations
    Initiated by key vendors or key interest groups
    Usually close-to-release products
End-to-End Scenario Testing
  Focus: System Testing the product(s) with a
  realistic E2E business scenario
  Goal: Demonstrate products working together
    Based on specified end-to-end business scenarios
    Uses realistic business data
    Ground the product implementation efforts in usage
    experience
    Demonstrate / prove product interoperability
    Discover inconsistencies with other WS-* products
    Refine the important product usage scenarios
  Involvement:
    Vendors with implementations
    Initiated by key vendors or key interest groups
    Usually released or close-to-release products
Proof-of-Concept / Pilot Projects
  Focus: Testing the application and product
  deployment(s)
  Goal: Demonstrate internal systems working
  together
    Based on specified end-to-end business scenarios
    Uses realistic business data
    Ground the in-house implementation and product
    deployment efforts in realistic usage experience
    Demonstrate / prove product applicability
    Gain deployment experience earlier
    Discover inconsistencies with other systems
    Refine the important product deployment scenarios
    Determine readiness for product and system deployment
  Involvement:
    Customers + Vendors products
    Initiated by customers or vendor partnership
    Usually released products
Interop Profiles
  Define a subset of specifications and options
  that are:
    Composable
    Scoped
    Work together
  Examples:
    Secure RM – WS-ReliableMessaging + WS-Trust / WS-
    SecureConversation / WS-Security
    ACORD Messaging Profile – WS-* + ACORD payload
    schemas
  Who defines the profile?
    Vertical domain org – eg. ACORD
    Horizontal org – eg. WS-I
    Customer – singly or in groups
Why Do We Need Interop
Profiles?
  Need to constrain (soften) runtime options to
  achieve out-of-box interoperability
    WS-* Architecture is designed for general
    applicability across a wide range of industries /
    scenarios
       Often too much optionality in the base specifications
    Tailor to specific domain / environment
       E.g. Devices Profile only requires SOAP 1.2 not SOAP
       1.1 to lower implementation footprint
  Guide implementation and deployment
  choices
  Achieve a proven composition of protocols
  and payloads
  Allows simplification of application
  deployment
    e.g. WCF allows selection of interop profile to use
Profiling: WS-I
  Focus: Cross-industry profiling for baseline
  Web Service interoperability
  Deliverables – Current work:
    Basic Profile v1.2
       SOAP 1.1 + WSDL 1.1 + UDDI 2.0 + Attachments (MTOM)
    Basic Security Profile v1.1
       BP v1.x + WS-Security 1.1 + HTTPS
    Basic Profile v2.0
       SOAP 1.2 + WSDL 1.1 + UDDI 2.0 + WS-Addressing +
       Attachments (MTOM)
    Reliable Secure Profile (RSP)
       BP 1.x + BSP 1.x + WS-ReliableMessaging 1.1 + WS-
       SecureConversation 1.3
    Sample Applications (Supply Chain Management)
    Profile testing tools (vendor / user self-testing)
Proving Interop Compatibility

  Vendors
    Vendor self-test
  Community
    Multi-vendor community testing (eg. WS-*
    Interop Workshops and plug-fests)
    Industry wide demo (eg. WS-Security
    Interop Demo @ Gartner WS Summit)
  Customers
    In-house testing
    Competitor bake-off
Summary
 Interoperability is the best way to achieve integration in a
 heterogeneous IT environment
 Wire-level interoperability is the real goal
 Web Services WS-* Architecture designed to support
 multi-vendor environments
 There are several ways to help achieve interoperability:
    Usage scenarios based techniques (WS-* Interop Workshops,
    Plug-fests, Proof-of-Concept / Pilot projects)
    Specification Profiling
    Testing
 Microsoft is deeply committed to delivering products
 with proven interoperability that work well in
 heterogeneous environments
Links
 WS-* Workshop Process Overview
   http://msdn.microsoft.com/library/en-us/dnwebsrv/html/wkshopprocess.asp


 WS-* Workshops home page
   http://msdn.microsoft.com/webservices/community/workshops/


 Microsoft Interoperabilty home page
   http://www.microsoft.com/interop


 WS-* Specifications index page
   http://msdn.microsoft.com/webservices/understanding/specs/


 MSDN Web Services Developer Center
   http://msdn.microsoft.com/webservices/

								
To top