SOA Concepts (PowerPoint)

Document Sample
SOA Concepts (PowerPoint) Powered By Docstoc
					Contemporary SOA, Part II

   605.702 Service Oriented Architecture
   Johns-Hopkins University
   Montgomery County Center, Spring 2008
   Session 4: February 20, 2008
   Instructor: T. Pole
Session #4 Agenda

   Required Reading for This Week
       Complete Chap 6
       Chapter 7: Contemporary SOA part II
           Sections 7.1 through 7.
   Today’s Presentation
       Today’s Lecture
       In Class Case Study:
           Introduction of Federated System Engineering Asset
            Management System F-SEAM
           This will lead us into the class project
       Assignments
           Review Ex 1 and Ex 2
           Resubmit incomplete/non-functioning exercises by 02-27-08
Change in Schedule

   I will be out on March 5, 2008
       Therefore I have moved the mid term up one
        week to the 5th
       It will cover less material then originally planned
       March 12 will be a lecture instead of a mid term

    Chapter 6: Contemporary SOA Part I
        Coordination
        Atomic Transactions
        Business Activities
        Orchestration
        Choreography
    Chapter 7: Contemporary SOA Part II
        Addressing
        Reliable Messaging
        Correlation
        Policies
        Metadata Exchange
        Security
        Notification and Eventing
Ch 6: Transactions, Business Activities,
Orchestration and Choreography
   Review of 6.1 – 6.4
   Business Activities – Long running multi-step
    tasks, among multiple services
   Orchestration – Centrally controlled workflow
    among services
   Choreography – Like an orchestration, but
    without central control or ownership
6.1 Message Exchange Patterns (MEP’s)

   How services can share and cooperate in
    processing messages
       Primitive MEP’s
           Request response
           Fire and forget
               Single destination, multi-cast or broadcast
       Complex MEP’s
           Based on Primitive MEP’s
           Example: Publish and subscribe
       WSDL & MEP’s:
           Request-response, solicit-response, one-way, notification
6.2 Service Activity

   Interaction of group of services to complete a
       Sort of a MEP plus the pattern of messages
        exchanged to perform a specific task
           One MEP can perform multiple tasks
       Primitive activity ~= Simple MEP
       Complex Activity~= Multiple MEP’s or a large
        complex MEP
6.3 Coordination

   Coordination establishes a framework for
    complex activities to be managed and
    distributed to activity participants
   Can be extended to the concepts of
    choreography and orchestration
   Usually requires context state (information
    about the state of the complex activity) to be
6.4 Atomic Transaction

   WAKE UP – this section is complicated,
    boring and important
   ACID
       Atomic - All or nothing, you can’t do part of a
       Consistent – system data models must remain so
       Isolated – transactions can’t interfere with each
       Durable – Changes made by a transaction can
        survive subsequent system failures
6.5-6.7 Business Activities: Orchestration
and Choreography
   6.5.2 Business Activity Coordinator
       If business tasks and entities can be represented
        by services, then coordinator service(s) can be
        used to develop business agility through tailorable
        service base applications
   Centrally controlled Orchestration
   Peer to peer coordinated choreography
Ch 7: Web Services and Contemporary
   7.1 Addressing – Multi-stop and alternate addressing
   7.2 Reliable Messaging – Assurance of delivery and
    order of delivery
   7.3 Correlation – multiple ws-* implement it, to
    preserve state across multiple message exchanges
   7.4 Policies – adds metadata which attach properties
    to web services, used to implement other ws-*
   7.5 Metadata Exchange – ability to issue message
    request to retrieve metadata for service providers “give
    me all the data I need to evalute and interact with your
SOA Terminology

   Service roles:
       Not a client but a service requestor or consumer
       Not a server, but a service provider
       An intermediary service transitions from a service
        provider to a requestor
       Passive and active intermediaries
       Initial sender and ultimate receiver
SOA Case Study: System Engineering
Asset Management Systems
   Based on Document and Content Management
    (CM) concepts
       Reference:
   Content Management
       IT system which manages not just documents (files) but
        content (information explicit and implicit in the files)
   Asset Management
       Using CM, data warehousing, and knowledge management
        (KM) techniques to manage intellectual property
           Intellectual Property – what an individual or organization
            knows, specialized knowledge based on skills, training, and
System/Software Engineering Assets

   SE Assets are all of the work products
    consumed or produced during the
    development life cycle of systems
   SE Assets include the documentation of,
    source code for, design artifacts of a
    system/software engineering organization
   These assets capture the intellectual property
    of system/software development
System Engineering Asset Management

   The management of the capture, organization, preservation,
    access, and use of engineering assets
   Based on CM, KM, Software Reuse, Software Framework
   Every software engineer should be familiar with this topic
   Every IT architect should be very familiar with this topic
   A UDDI directory is one part of a complete SEAM system
   Reference:

     Flashline (BEA ??)

     LogicLibrary
CM, DM, KM Concepts

   Repository
       Either a very basic asset management system (AMS) or
        the part of an AMS which actually stores content and
   Content versus Document (or File)
       The document (e.g. file) is a container of the actual
        information the document contains
       Different renditions (powerpoint, word doc, etc) can each
        be a different presentation of the same content
   Metadata
       Data which describes data. e.g. an abstract or summary
   Query
           A defined search against a repository
Basic Services of a
   Submit New Asset
       To a repository (e.x. a rudimentary SEAMS)
   Update Existing Asset and/or Metadata
   Query for Assets
   Retrieve Asset(s)
   Synchronize Asset Metadata
Basic Components of a SEAMS

   Repository component – physical storage of
    data and metadata
   Ingest component – collects the data and
    metadata, may also derive additional
    metadata, validates and organizes
   Access component – supports search and
    retrieval from repository
   Other components are required and will be
    covered later
Class Project: A Federated SEAMS

   A federated system is a system of systems
       E.g. The U.S. Federal government is a government that
        unites, (not replaces) the individual state governments
           Some services are reserved for the states, some for the
            federal government, some are shared.
       In a Federated SEAMS, multiple engineering asset
        management repositories share services in a cooperative,
        loosely coupled distributed architecture.
           Sound familiar?
               Loosely coupled
               Distributed
               Cooperative
               Sharing services
Basic SEAMS Services

   Ingest Service
       Ingest New Asset Operation
       Update Asset Operation
       Update Asset Metadata Operation
   Access Service
       Query Operation
       Retrieve Operation
STL Architecture
                            SEAM Client

                          Service Consumer

    Ingest New Asset
      Update Asset                            Query
  Update Asset Metadata                      Retrieve

                          SEAM Repository
Exercises and Assignments
       Review Exercise #1: first service
       Review Exercise #2: Passing parameters
       Check Schedule page on web site for
        assignment updates
        Assignments 1 and 2 have been rescheduled at
         least one week later in semester

Shared By: