Title: Contemporary SOA, Part II
1Contemporary SOA, Part II
- 605.702 Service Oriented ArchitectureJohns-Hopkin
s University - Montgomery County Center, Spring 2008
- Session 4 February 20, 2008
- Instructor T. Pole
2Session 4 Agenda
- Required Reading for This Week
- Complete Chap 6
- Chapter 7 Contemporary SOA part II
- Sections 7.1 through 7.
- Todays Presentation
- Todays 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
3Change 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
4Lecture
- 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
5Ch 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
66.1 Message Exchange Patterns (MEPs)
- How services can share and cooperate in
processing messages - Primitive MEPs
- Request response
- Fire and forget
- Single destination, multi-cast or broadcast
- Complex MEPs
- Based on Primitive MEPs
- Example Publish and subscribe
- WSDL MEPs
- Request-response, solicit-response, one-way,
notification
76.2 Service Activity
- Interaction of group of services to complete a
task - 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 MEPs or a large
complex MEP
86.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
retained
96.4 Atomic Transaction
- WAKE UP this section is complicated, boring and
important - ACID
- Atomic - All or nothing, you cant do part of a
transaction - Consistent system data models must remain so
- Isolated transactions cant interfere with each
other - Durable Changes made by a transaction can
survive subsequent system failures
106.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
11Ch 7 Web Services and Contemporary SOA Part II
- 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- extensions - 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 service
12SOA 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
13SOA Case Study System Engineering Asset
Management Systems
- Based on Document and Content Management (CM)
concepts - Reference
- www.aiim.org
- www.asist.org
- 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 experience
14System/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 organizations
15System Engineering Asset Management
- The management of the capture, organization,
preservation, access, and use of engineering
assets - Based on CM, KM, Software Reuse, Software
Framework techniques - 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
- www.iasahome.org
- Flashline (BEA ??)
- LogicLibrary
16CM, DM, KM Concepts
- Repository
- Either a very basic asset management system (AMS)
or the part of an AMS which actually stores
content and metadata - 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
17Basic Services of a SEAM System (SEAMS)
- 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
18Basic 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
19Class 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
20Basic SEAMS Services
- Ingest Service
- Ingest New Asset Operation
- Update Asset Operation
- Update Asset Metadata Operation
- Access Service
- Query Operation
- Retrieve Operation
21STL Architecture
SEAM Client Service Consumer
Ingest Ingest New Asset Update Asset Update
Asset Metadata
Access Query Retrieve
SEAM Repository
22Exercises 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