SOA Reference Model

Document Sample
SOA Reference Model Powered By Docstoc
					       SOA Reference Model

          Generic Presentation

DRAFT: Not approved by the OASIS SOA RM TC.

• What is SOA; what is a reference model for SOA
• Why is a reference model needed
             In order define SOA…

• If SOA is Architecture, as the name implies, it
  should be definable as architecture.
• We should not do it by referencing an
• DEFINITION (from Charter):
  – “Architecture: A software architecture for a system is
    the structure or structures of the system, which
    consist of elements and their externally visible
    properties, and the relationships among them.”
       Closer look: “Service Oriented”

• Is a paradigm (model) for developing
  – Focus herein is “software & systems architecture”
• “Services” are the central concept, yet other
  concepts are present in all implementations.
• Is not currently defined other than a “common
  law” or “defacto” perception of what it is.
• Perceptions of what SOA is vastly disparate.
             SOA Reference Model...

• Is not architecture for a single implementation.
• Is a model for developing a range of Service Oriented
  Architectures and analysis/comparison thereof.
• Is a framework for understanding significant relationships
  among the entities in a SOA environment.
   – DISCUSSION POINT: should the word “elements” be used in
     place of “entities” above?
• Is based on a small number of unifying concepts of all
• A Reference Model is the best mechanism to define
  To develop a Reference Model for SOA

• Ask questions:
  – What elements are common in all implementations of
    SOA? ( be careful – think about this )
  – What abstract concepts do those elements
  – What relationships exist amongst those concepts?
  – How do we represent those concepts without
    referencing concrete implementations.
  – How does this relate to infrastructure concepts?
Draft: Candidate SOA Reference Model

DISCUSSION POINT: Details of how to interpret “Concept Maps” are
included in the position paper submitted by Mackenzie, Nickull.
  Base Components and Concepts of SOA

• Service: A service is a contractually defined behavior that
  can be implemented and provided by a component for
  use by any component solely based on the contract.
• Service Description: Technical parameters, constraints,
  policies that come together to define terms of invocation.
   – DISCUSSION POINT: Is the contract part of the service
     description or referenced from it (if explicit)? The contract is
     shown linked to the service since it may be implied only and
     not physically able to be linked via a Service Description..
• Advertising: Makes all potential or intended consumers of
  a service on a fabric aware that the service exists. This
  MAY involve advertising the Service Description.
  Base Components and Concepts of SOA

• Data Model: The specification and constraints
  imposed on instance data.
   – QUESTION: Are semantics part of the data model? If not,
     how to others know what data model authors really mean?
• Contract: The implicit or explicit bi-lateral or multi-
  lateral agreement between the owners or agents of a
  service and those who use the service.
   – QUESTION: Is “no contract” still ipso facto a contract? Is
     “zero” a number or “null” a value?

• What is SOA; what is a reference model for SOA
• Why is a reference model needed
                 Existing situation

                                  Question: How do I map my
Requirements                      Requirements to concrete

                   WS-Security             WS-*
                                 WSDL     XML & WS-Trust
Base Standards
                      SOAP               Schema
                    UDDI         WS-RM    Addressing Reg/Rep
        Developing SO Architecture

• Probably not logical to try and develop a “one
  size, fits all” architecture for SOA or WS.
• Not rational to develop multiple architectures in
  standards bodies for every set of requirements.
• Best solution: develop an SOA reference Model.
  – Used by architects to guide service oriented
    architecture development.
  – Model for a way of thinking when developing
  – Re-useable by multiple architects writing SOA for
    multiple domains.
  – Helps architects slot existing standards into their
       SOA RM used for range of architectures
QUESTION: Does this
adequately explain the need for
a reference model?                                      SOA-RM
Does this also clarify why a        Guides developments of
reference model is better than
developing multiple

       Requirements                                 Specific
                                   Input for      Architectures


                              WS-Security                WS-*
                                               WSDL     XML & WS-Trust
       Base Standards
                                    SOAP               Schema
                                  UDDI         WS-RM    Addressing Reg/Rep

• What is SOA; what is a reference model for SOA
• Why is a reference model needed
       OASIS SOA Reference Model TC

• Chartered February 2005
• Problem to be solved:
   – "Service Oriented Architecture" (SOA) as a term is being used in
     an increasing number of contexts and specific technology
     implementations, sometimes with differing or conflicting
     understandings of implicit terminology and components.
   – The proposal to establish a Reference Model is intended to
     encourage the continued growth of specific and different SOA
     implementations whilst preserving a common layer that can be
     shared and understood between those or future
      OASIS SOA Reference Model TC

• Purpose:
   – The SOA-RM TC will deliver a Service Oriented
     Architecture Reference Model (SOA-RM).
   – The TC may also create sub-committees, promotional
     material, liaisons or other promulgation of the TC's
     work, in order to promote the use of the SOA
     Reference Model.
   – May help vertical industries develop SOA for their
             Charter Definition

• Reference Model:
 A reference model is an abstract framework for
 understanding significant relationships among the entities
 of some environment, and for the development of
 consistent standards or specifications supporting that
 environment. A reference model is based on a small
 number of unifying concepts. A reference model is not
 directly tied to any standards, technologies or other
 concrete implementation details, but it does seek to provide
 a common semantics that can be used unambiguously
 across and between different implementations.

• OASIS SOA RM TC - http://www.oasis-