SlideShare a Scribd company logo
1 of 38
Introduction
to
SOA Composition
UC San Diego
CSE 294
January 23, 2009
Barry Demchak
Agenda
 What is SOA Composition?
 … and what are the issues?
 Existing solutions
 UDDI/WSDL (Web Services)
 BPEL
 What’s missing?
 OWL-S
 What is OWL?
 How does OWL apply?
 Comparison of existing solutions and OWL-S
 Emerging technology choices
Source Material
 SOA Design Patterns: Capability Composition Patterns [in progress].
http://www.informit.com/articles/article.aspx?p=1271262
 Web Services Composition. Nikola Milanovic.
http://user.cs.tu-berlin.de/~mwerner/discourse/BlockLVS04/slides/service-composition.pdf
 SOA Source Book. The Open Group.
http://www.opengroup.org/projects/soa-book/page.tpl?CALLER=faq.tpl&ggid=1335
 Blackboard-style Service Composition with Onto<->SOA. Korotkiy & Top.
http://www.cs.vu.nl/~maksym/pap/MKorotkiy-Onto-SOA-BB.pdf
 BPEL: Service Composition for SOA. Jurac.
http://www.javaworld.com/javaworld/jw-07-2006/jw-0710-bpel.html?page=1
 SCA: Flexible and Agile Composition of Distributed SOA Applications. Edwards.
http://developers.sun.com/learning/javaoneonline/2008/pdf/TS-5850.pdf?cid=925589
 The Service Revolution - software engineering without programming languages. Alonso.
http://www.ifi.uzh.ch/ecows06/fileadmin/papers/GA-ECOWS-Nov-06.pdf
 Tools and Technologies for Semantic Web Services: An OWL-S Perspective. Sycara and
Martin. http://www.ai.sri.com/daml/services/ISWC06-OWL-S-tutorial.pdf
 Web Service Composition - Current Solutions and Open Problems. Srivastava and Koehler.
http://www.zurich.ibm.com/pdf/ebizz/icaps-ws.pdf
 Web Service Composition Standards. METEOR-S Project.
http://lsdis.cs.uga.edu/proj/meteor/mwscf/standards.html
 Tutorial on OWL. Bechhofer, Horrocks, Patel-Schneider.
http://www.cs.man.ac.uk/~horrocks/ISWC2003/Tutorial/examples.pdf
 Semantic Web Processes: Semantics Enabled Annotation, Discovery, Composition and
Orchestration of Web Scale Processes. Cardoso & Sheth.
http://lsdis.cs.uga.edu/lib/presentations/WISE2003-Tutorial.pdf
 Current Solutions for Web Service Composition. Milanovic & Malek. IEEE Internet
Computing. p51. Nov/Dec 2004.
The Capability Composition Pattern
A capability may not be able to
fulfill its processing requirements
without adding logic that resides
outside of its service's functional
context, thereby compromising
the integrity of its context and
risking service denormalization.
[SOA Design Patterns]
The Capability Composition Pattern
[SOA Design Patterns]
Basic Composition
 Orchestration – engine controls service via single script,
and service invokes other services in single swim lane
 Choreography – engine controls all services via scripts
associated with services; they execute in multiple swim lanes
[SOA Source Book]
Main Composition Approaches
 “Industry”
 UDDI / WSDL / BPEL or SCA Infrastructure
 Plumbing created by programmer (limited
scalability to large and diverse service spaces)
 Semantic Web Services
 OWL-S
 Focuses on semantic compatibility and
automatic service discovery
 Other
 Blackboard Systems
“Industry Solutions” – UDDI/WSDL
 UDDI: service registry
 WSDL: registry
document
 Defines location and
parameters/messages
for available services in
searchable way
[WSPS]
WSDL (Web Services Description Language)
 XML-based description of characteristics of a
web service [INFIT]
 Function signatures (in, out, in/out, return)
 Service binding (URL and protocol)
 Stored in repositories such as UDDI
 Used to create client-side proxies
 Enables dynamic binding for clients capable
of binding dynamically
WSDL Content
UDDI/WSDL Open Questions
 What do its parameters mean?
 In what units are its parameters expressed?
 Given meaningful inputs, what is the meaning
of the product of a service?
 What are its restrictions?
 What non-functional characteristics
distinguish one service from another?
 How can I compose 10 different services so
that they fit together and produce a
meaningful result?
“Industry Solutions” – BPEL4WS
 Process (BPEL composition)
 Partners (participating services)
 Activities (message exchange)
[SOA Design Patterns]
“Industry Solutions” – BPEL4WS
Basic Flow Elements
 <process>
 <invoke>, <invoke>…<receive>
 Send, event, request/response
 <variable>, <assign>, <copy>
 State maintenance
 <scope>, <faultHandlers>
 Fault handling
 <flow>, <sequence>
 Parallel & sequential execution
 <switch>, <while>
 Conditional evaluation
[SOA Design Patterns] [Jurac]
“Industry Solutions” – BPEL4WS
[SOA Design Patterns]
BPEL4WS Open Questions
 Focus on connections and orchestration, but
not on correctness
 Proper function “guaranteed” by diligence of
author
 Almost same set of open questions as for
UDDI/WSDL
Web Service Composition Standards
 BPML -Business Process Markup Language
 Abstract model and grammer
 WSCI -Web Services Choreography Interface
 XML-based WSDL augmentation
 BPEL4WS -Business Process Execution Language/ Web Services
 Specifies business processes and interaction protocols
 WSCL -Web Services Conversation Language
 Business-level conversations w/document exchange
 BPSS -Business Process Specification Schema
 Business-level conversations w/document exchange
 DAML-S
 Ontology markup language representing process and capability
semantics
[METEOR-S]
The Semantic Challenge
How to compose services that we know will do what we intend??
[Sycara]
Framing the Problem
[Cardoso]
Framing the Problem
 Provide the capability to assemble (“compose”) on
short notice an improvisational confederation
 Improvisational: Constituent systems not deliberately
engineered to work together in support of the objectives of the
confederation
 Short notice: Not deliberately planned months/years ahead of
the need
Interoperability: “The ability of systems, units, or forces to provide
services to and accept services from other systems, units, or
forces and to use the services so exchanged to enable them to
operate effectively together.” (definition from Joint Pub 1-02)
[Sycara]
The Semantic Web and OWL
 Semantic web adds machine-readable
information to each element, giving each
element a well-defined meaning useful for
discovery, automation, integration, and reuse.
[after W3C Semantic Web Activity Statement]
[W3C]
The Semantic Web and OWL
 W3C Standard
 Description Logic-based language that
describes ontologies
 Defines concepts and relations between them
 Defines subset generalization
 Well understood computational properties,
including decidability
 Enables semantic reasoning (Pellet and FaCT++)
 OWL-Lite, OWL-DL, and OWL
 Three objects: concepts, individuals, properties
OWL Sample
 Individuals with properties
 Classes that facilitate reasoning
[Tutorial on OWL]
Semantic Service Challenges
 Data/Information Semantics
 Basic discovery and interoperability
 Functional/Operational Semantics
 Discovery and composition
 Execution Semantics
 For verification, validation, exception handling
 QOS Semantics
 Suitability
[Cardoso]
OWL-S
 Ontology Web Language for Services (W3C)
 Relies on WSDL for invocation (grounding)
 Expands UDDI for discovery (mapping)
 Suited for use with SAWSDL (Semantic Annotations
for WSDL)
 Complimentary to BPEL (local choreography)
OWL-S Ontology of Services
[Sycara/Payne]
OWL-S Components
 Service Profile
 Inputs, outputs, preconditions, results
 Provenance, QOS, Security, Policy …
 Inheritance
 Service Grounding
 Builds on WSDL
 Service Model
 Initial state, inputs, and preconditions
 Result states, outputs, effects on process
 Chaining processes to create workflow
The Roles
 Providers
 Specify and advertise services
 Consumers
 Specify and advertise needs
 Facilitators
 Match subscriptions to advertised services
 Deal with complex semantic requirements
 Deal with multiple sources, schemas, queries
Composition
 Static (author-time) and Dynamic (runtime)
 Creation of mediators between services
 Design of flows to accomplish results, much
less optimal results
[Cardoso]
Comparison of Industry vs Semantic
Web Approaches
 BPEL relates closely to ServiceModel
 OWL-S defines preconditions and effects,
leading to better reasoning about composition
 OWL-S classes extend reasoning to
subclasses and other relationships
 BPEL describes sequencing of activities
 BPEL describes mechanisms for catching,
handling, and compensating for faults
 BPEL leverages WS-Coordination and WS-
Transaction for defining transactional
semantics
[Cardoso]
Research Issues (for QOS)
 Specification
 Computation
 Monitoring
 Control
[Cardoso]
Computing Service Compositions
[Milanovic]
Other Technology Choices
 Abstract Machines [SOA Design Patterns]
 π-Calculus [SOA Design Patterns]
 Blackboard-style Service Composition
[Korotkiy]
 SCA Infrastructure [SCA]
Modeling Services as Abstract Machines
 Extends WSDL via contracts covering
 Non-functional properties
 Preconditions, postconditions, invariants
 Expressed via Contract Definition Language
 Formal composition operators enable
predictability and determination of correctness
 Separates “how” from “what”
 Issues:
SCA Infrastructure
 Objectives
 Well-defined interfaces with business-level semantics
 Standardized communication protocols
 Flexible recombination of services
 Mechanisms
 Declarative component networks (using XML) injected
at runtime
 Standard communication bindings and policy
frameworks
 Language-embedded features (e.g., policy intents &
stateful interactions via WSDL and pragma extensions)
[SCA]
SCA Infrastructure
Conferences for Service Composition
 ICWS
 WISE
 WSCA
 SCC
Other Sources
 [WSBP] Basic Profile Version 1.1. Web Services Interoperability
Organization (WS-I). Apr 2006. http://www.ws-
i.org/Profiles/BasicProfile-1.1.html
 [INFIT] IT Web Services: A Roadmap for the Enterprise. A.
Nghiem. Prentice Hall. Oct 2002.
http://www.informit.com/articles/article.aspx?p=31076
Time to take a walk!
Me
Web Services

More Related Content

What's hot

Service Oriented Architecture (SOA)
Service Oriented Architecture (SOA)Service Oriented Architecture (SOA)
Service Oriented Architecture (SOA)Biniam Asnake
 
Introduction to Service Oriented Architecture
Introduction to Service Oriented ArchitectureIntroduction to Service Oriented Architecture
Introduction to Service Oriented ArchitectureDATA Inc.
 
Service Oriented Architecture
Service Oriented ArchitectureService Oriented Architecture
Service Oriented ArchitectureMohamed Zaytoun
 
SOA Fundamentals
SOA  FundamentalsSOA  Fundamentals
SOA Fundamentalsabhi1112
 
Lecture 2 - SOA
Lecture 2 - SOALecture 2 - SOA
Lecture 2 - SOAphanleson
 
CBSE VS SOA SJSU Presentation
CBSE VS SOA SJSU PresentationCBSE VS SOA SJSU Presentation
CBSE VS SOA SJSU Presentationmgp1560
 
SOA Service Oriented Architecture
SOA Service Oriented ArchitectureSOA Service Oriented Architecture
SOA Service Oriented ArchitectureVinay Rajadhyaksha
 
Soa Primer
Soa PrimerSoa Primer
Soa Primervavasthi
 
service orentation documentation
service orentation documentationservice orentation documentation
service orentation documentationpavan nani
 
Arquitectura orientada a servicios
Arquitectura orientada a serviciosArquitectura orientada a servicios
Arquitectura orientada a serviciosbrizna39
 
Service Oriented Architecture
Service Oriented Architecture Service Oriented Architecture
Service Oriented Architecture Prabhat gangwar
 
Service Oriented Architecture
Service Oriented ArchitectureService Oriented Architecture
Service Oriented ArchitectureSyed Mustafa
 
SOA Service-oriented Architecture Fundamentals IBM Certification
SOA Service-oriented Architecture Fundamentals IBM CertificationSOA Service-oriented Architecture Fundamentals IBM Certification
SOA Service-oriented Architecture Fundamentals IBM CertificationJaguaraci Silva
 
03 Service Oriented Architecture Series - Basic SOA Architecture
03 Service Oriented Architecture Series - Basic SOA Architecture03 Service Oriented Architecture Series - Basic SOA Architecture
03 Service Oriented Architecture Series - Basic SOA ArchitecturePouria Ghatrenabi
 
SOA - Service Oriented Architecture ( Basic Concept & Principle )
SOA - Service Oriented Architecture ( Basic Concept & Principle )SOA - Service Oriented Architecture ( Basic Concept & Principle )
SOA - Service Oriented Architecture ( Basic Concept & Principle )DevTalk
 
Lecture 01 - Motivation
Lecture 01 - MotivationLecture 01 - Motivation
Lecture 01 - Motivationphanleson
 
IT6801-Service Oriented Architecture
IT6801-Service Oriented ArchitectureIT6801-Service Oriented Architecture
IT6801-Service Oriented ArchitectureMadhu Amarnath
 
Service Oriented Architecture & Beyond
Service Oriented Architecture & BeyondService Oriented Architecture & Beyond
Service Oriented Architecture & BeyondImesh Gunaratne
 

What's hot (20)

Service Oriented Architecture (SOA)
Service Oriented Architecture (SOA)Service Oriented Architecture (SOA)
Service Oriented Architecture (SOA)
 
Introduction to Service Oriented Architecture
Introduction to Service Oriented ArchitectureIntroduction to Service Oriented Architecture
Introduction to Service Oriented Architecture
 
Service Oriented Architecture
Service Oriented ArchitectureService Oriented Architecture
Service Oriented Architecture
 
SOA Fundamentals
SOA  FundamentalsSOA  Fundamentals
SOA Fundamentals
 
Lecture 2 - SOA
Lecture 2 - SOALecture 2 - SOA
Lecture 2 - SOA
 
CBSE VS SOA SJSU Presentation
CBSE VS SOA SJSU PresentationCBSE VS SOA SJSU Presentation
CBSE VS SOA SJSU Presentation
 
SOA Service Oriented Architecture
SOA Service Oriented ArchitectureSOA Service Oriented Architecture
SOA Service Oriented Architecture
 
Soa Primer
Soa PrimerSoa Primer
Soa Primer
 
service orentation documentation
service orentation documentationservice orentation documentation
service orentation documentation
 
Arquitectura orientada a servicios
Arquitectura orientada a serviciosArquitectura orientada a servicios
Arquitectura orientada a servicios
 
Service Oriented Architecture
Service Oriented Architecture Service Oriented Architecture
Service Oriented Architecture
 
Service Oriented Architecture
Service Oriented ArchitectureService Oriented Architecture
Service Oriented Architecture
 
SOA Service-oriented Architecture Fundamentals IBM Certification
SOA Service-oriented Architecture Fundamentals IBM CertificationSOA Service-oriented Architecture Fundamentals IBM Certification
SOA Service-oriented Architecture Fundamentals IBM Certification
 
SOA Journal by Traitet Th.
SOA Journal by Traitet Th.SOA Journal by Traitet Th.
SOA Journal by Traitet Th.
 
03 Service Oriented Architecture Series - Basic SOA Architecture
03 Service Oriented Architecture Series - Basic SOA Architecture03 Service Oriented Architecture Series - Basic SOA Architecture
03 Service Oriented Architecture Series - Basic SOA Architecture
 
SOA - Service Oriented Architecture ( Basic Concept & Principle )
SOA - Service Oriented Architecture ( Basic Concept & Principle )SOA - Service Oriented Architecture ( Basic Concept & Principle )
SOA - Service Oriented Architecture ( Basic Concept & Principle )
 
Lecture 01 - Motivation
Lecture 01 - MotivationLecture 01 - Motivation
Lecture 01 - Motivation
 
IT6801-Service Oriented Architecture
IT6801-Service Oriented ArchitectureIT6801-Service Oriented Architecture
IT6801-Service Oriented Architecture
 
Service Oriented Architecture & Beyond
Service Oriented Architecture & BeyondService Oriented Architecture & Beyond
Service Oriented Architecture & Beyond
 
Soa & Bpel With Web Sphere
Soa & Bpel With Web SphereSoa & Bpel With Web Sphere
Soa & Bpel With Web Sphere
 

Similar to Introduction to soa composition

Similar to Introduction to soa composition (20)

Soa Grundlagen
Soa GrundlagenSoa Grundlagen
Soa Grundlagen
 
Soa Grundlagen
Soa GrundlagenSoa Grundlagen
Soa Grundlagen
 
Soa Grundlagen
Soa GrundlagenSoa Grundlagen
Soa Grundlagen
 
Soa Grundlagen
Soa GrundlagenSoa Grundlagen
Soa Grundlagen
 
CBSE VS SOA Presentation
CBSE VS SOA PresentationCBSE VS SOA Presentation
CBSE VS SOA Presentation
 
Architecting Your Enterprise
Architecting Your EnterpriseArchitecting Your Enterprise
Architecting Your Enterprise
 
Soa web pres new
Soa web pres newSoa web pres new
Soa web pres new
 
Oracle SOA Suite 12c 1z0-434 Day 1/3
Oracle SOA Suite 12c 1z0-434 Day 1/3Oracle SOA Suite 12c 1z0-434 Day 1/3
Oracle SOA Suite 12c 1z0-434 Day 1/3
 
Web services, the ws stack, and research prospects a survey
Web services, the ws stack, and research prospects   a surveyWeb services, the ws stack, and research prospects   a survey
Web services, the ws stack, and research prospects a survey
 
Topic5 Web Services
Topic5 Web ServicesTopic5 Web Services
Topic5 Web Services
 
As044285288
As044285288As044285288
As044285288
 
Soa bpel-123
Soa bpel-123Soa bpel-123
Soa bpel-123
 
Migrating SOA
Migrating SOAMigrating SOA
Migrating SOA
 
Soa & Bpel With Web Sphere
Soa & Bpel With Web SphereSoa & Bpel With Web Sphere
Soa & Bpel With Web Sphere
 
EA and SOA
EA and SOAEA and SOA
EA and SOA
 
soa ppt v7.ppt
soa ppt v7.pptsoa ppt v7.ppt
soa ppt v7.ppt
 
C09
C09C09
C09
 
MULTIVIEW SOA : EXTENDING SOA USING A PRIVATE CLOUD COMPUTING AS SAAS AND DAAS
MULTIVIEW SOA : EXTENDING SOA USING A PRIVATE CLOUD COMPUTING AS SAAS AND DAASMULTIVIEW SOA : EXTENDING SOA USING A PRIVATE CLOUD COMPUTING AS SAAS AND DAAS
MULTIVIEW SOA : EXTENDING SOA USING A PRIVATE CLOUD COMPUTING AS SAAS AND DAAS
 
Soa & Bpel
Soa & BpelSoa & Bpel
Soa & Bpel
 
Soa & Bpel
Soa & BpelSoa & Bpel
Soa & Bpel
 

More from bdemchak

Cytoscape Network Visualization and Analysis
Cytoscape Network Visualization and AnalysisCytoscape Network Visualization and Analysis
Cytoscape Network Visualization and Analysisbdemchak
 
The New CyREST: Economical Delivery of Complex, Reproducible Network Biology ...
The New CyREST: Economical Delivery of Complex, Reproducible Network Biology ...The New CyREST: Economical Delivery of Complex, Reproducible Network Biology ...
The New CyREST: Economical Delivery of Complex, Reproducible Network Biology ...bdemchak
 
Cytoscape Cyberinfrastructure
Cytoscape CyberinfrastructureCytoscape Cyberinfrastructure
Cytoscape Cyberinfrastructurebdemchak
 
No More Silos! Cytoscape CI Enables Interoperability
No More Silos! Cytoscape CI Enables InteroperabilityNo More Silos! Cytoscape CI Enables Interoperability
No More Silos! Cytoscape CI Enables Interoperabilitybdemchak
 
Cytoscape CI Chapter 2
Cytoscape CI Chapter 2Cytoscape CI Chapter 2
Cytoscape CI Chapter 2bdemchak
 
Composable Chat Introduction
Composable Chat IntroductionComposable Chat Introduction
Composable Chat Introductionbdemchak
 
Rich Services: Composable chat
Rich Services: Composable chatRich Services: Composable chat
Rich Services: Composable chatbdemchak
 
Ucsd tum workshop bd
Ucsd tum workshop bdUcsd tum workshop bd
Ucsd tum workshop bdbdemchak
 
Rich Feeds for RESCUE and PALMS
Rich Feeds for RESCUE and PALMSRich Feeds for RESCUE and PALMS
Rich Feeds for RESCUE and PALMSbdemchak
 
Iscram 2008 presentation
Iscram 2008 presentationIscram 2008 presentation
Iscram 2008 presentationbdemchak
 
Rich feeds policy, the cloud, and CAP
Rich feeds   policy, the cloud, and CAPRich feeds   policy, the cloud, and CAP
Rich feeds policy, the cloud, and CAPbdemchak
 
Rich services to the Rescue
Rich services to the RescueRich services to the Rescue
Rich services to the Rescuebdemchak
 
Hicss 2012 presentation
Hicss 2012 presentationHicss 2012 presentation
Hicss 2012 presentationbdemchak
 
Policy 2012 presentation
Policy 2012 presentationPolicy 2012 presentation
Policy 2012 presentationbdemchak
 
Rich feeds for rescue an integration story
Rich feeds for rescue   an integration storyRich feeds for rescue   an integration story
Rich feeds for rescue an integration storybdemchak
 
Background scenario drivers and critical issues with a focus on technology ...
Background   scenario drivers and critical issues with a focus on technology ...Background   scenario drivers and critical issues with a focus on technology ...
Background scenario drivers and critical issues with a focus on technology ...bdemchak
 
Rich feeds for rescue, palms cyberinfrastructure integration stories
Rich feeds for rescue, palms cyberinfrastructure   integration storiesRich feeds for rescue, palms cyberinfrastructure   integration stories
Rich feeds for rescue, palms cyberinfrastructure integration storiesbdemchak
 
Data quality and uncertainty visualization
Data quality and uncertainty visualizationData quality and uncertainty visualization
Data quality and uncertainty visualizationbdemchak
 
Web programming in clojure
Web programming in clojureWeb programming in clojure
Web programming in clojurebdemchak
 
Structure and interpretation of computer programs modularity, objects, and ...
Structure and interpretation of computer programs   modularity, objects, and ...Structure and interpretation of computer programs   modularity, objects, and ...
Structure and interpretation of computer programs modularity, objects, and ...bdemchak
 

More from bdemchak (20)

Cytoscape Network Visualization and Analysis
Cytoscape Network Visualization and AnalysisCytoscape Network Visualization and Analysis
Cytoscape Network Visualization and Analysis
 
The New CyREST: Economical Delivery of Complex, Reproducible Network Biology ...
The New CyREST: Economical Delivery of Complex, Reproducible Network Biology ...The New CyREST: Economical Delivery of Complex, Reproducible Network Biology ...
The New CyREST: Economical Delivery of Complex, Reproducible Network Biology ...
 
Cytoscape Cyberinfrastructure
Cytoscape CyberinfrastructureCytoscape Cyberinfrastructure
Cytoscape Cyberinfrastructure
 
No More Silos! Cytoscape CI Enables Interoperability
No More Silos! Cytoscape CI Enables InteroperabilityNo More Silos! Cytoscape CI Enables Interoperability
No More Silos! Cytoscape CI Enables Interoperability
 
Cytoscape CI Chapter 2
Cytoscape CI Chapter 2Cytoscape CI Chapter 2
Cytoscape CI Chapter 2
 
Composable Chat Introduction
Composable Chat IntroductionComposable Chat Introduction
Composable Chat Introduction
 
Rich Services: Composable chat
Rich Services: Composable chatRich Services: Composable chat
Rich Services: Composable chat
 
Ucsd tum workshop bd
Ucsd tum workshop bdUcsd tum workshop bd
Ucsd tum workshop bd
 
Rich Feeds for RESCUE and PALMS
Rich Feeds for RESCUE and PALMSRich Feeds for RESCUE and PALMS
Rich Feeds for RESCUE and PALMS
 
Iscram 2008 presentation
Iscram 2008 presentationIscram 2008 presentation
Iscram 2008 presentation
 
Rich feeds policy, the cloud, and CAP
Rich feeds   policy, the cloud, and CAPRich feeds   policy, the cloud, and CAP
Rich feeds policy, the cloud, and CAP
 
Rich services to the Rescue
Rich services to the RescueRich services to the Rescue
Rich services to the Rescue
 
Hicss 2012 presentation
Hicss 2012 presentationHicss 2012 presentation
Hicss 2012 presentation
 
Policy 2012 presentation
Policy 2012 presentationPolicy 2012 presentation
Policy 2012 presentation
 
Rich feeds for rescue an integration story
Rich feeds for rescue   an integration storyRich feeds for rescue   an integration story
Rich feeds for rescue an integration story
 
Background scenario drivers and critical issues with a focus on technology ...
Background   scenario drivers and critical issues with a focus on technology ...Background   scenario drivers and critical issues with a focus on technology ...
Background scenario drivers and critical issues with a focus on technology ...
 
Rich feeds for rescue, palms cyberinfrastructure integration stories
Rich feeds for rescue, palms cyberinfrastructure   integration storiesRich feeds for rescue, palms cyberinfrastructure   integration stories
Rich feeds for rescue, palms cyberinfrastructure integration stories
 
Data quality and uncertainty visualization
Data quality and uncertainty visualizationData quality and uncertainty visualization
Data quality and uncertainty visualization
 
Web programming in clojure
Web programming in clojureWeb programming in clojure
Web programming in clojure
 
Structure and interpretation of computer programs modularity, objects, and ...
Structure and interpretation of computer programs   modularity, objects, and ...Structure and interpretation of computer programs   modularity, objects, and ...
Structure and interpretation of computer programs modularity, objects, and ...
 

Recently uploaded

Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...MyIntelliSource, Inc.
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideChristina Lin
 
Engage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyEngage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyFrank van der Linden
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfkalichargn70th171
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio, Inc.
 
Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - InfographicHr365.us smith
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityNeo4j
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfjoe51371421
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantAxelRicardoTrocheRiq
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataBradBedford3
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...gurkirankumar98700
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providermohitmore19
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)Intelisync
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)OPEN KNOWLEDGE GmbH
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about usDynamic Netsoft
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEOrtus Solutions, Corp
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...kellynguyen01
 

Recently uploaded (20)

Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
 
Engage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyEngage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The Ugly
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
 
Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - Infographic
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered Sustainability
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdf
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service Consultant
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about us
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
 

Introduction to soa composition

  • 1. Introduction to SOA Composition UC San Diego CSE 294 January 23, 2009 Barry Demchak
  • 2. Agenda  What is SOA Composition?  … and what are the issues?  Existing solutions  UDDI/WSDL (Web Services)  BPEL  What’s missing?  OWL-S  What is OWL?  How does OWL apply?  Comparison of existing solutions and OWL-S  Emerging technology choices
  • 3. Source Material  SOA Design Patterns: Capability Composition Patterns [in progress]. http://www.informit.com/articles/article.aspx?p=1271262  Web Services Composition. Nikola Milanovic. http://user.cs.tu-berlin.de/~mwerner/discourse/BlockLVS04/slides/service-composition.pdf  SOA Source Book. The Open Group. http://www.opengroup.org/projects/soa-book/page.tpl?CALLER=faq.tpl&ggid=1335  Blackboard-style Service Composition with Onto<->SOA. Korotkiy & Top. http://www.cs.vu.nl/~maksym/pap/MKorotkiy-Onto-SOA-BB.pdf  BPEL: Service Composition for SOA. Jurac. http://www.javaworld.com/javaworld/jw-07-2006/jw-0710-bpel.html?page=1  SCA: Flexible and Agile Composition of Distributed SOA Applications. Edwards. http://developers.sun.com/learning/javaoneonline/2008/pdf/TS-5850.pdf?cid=925589  The Service Revolution - software engineering without programming languages. Alonso. http://www.ifi.uzh.ch/ecows06/fileadmin/papers/GA-ECOWS-Nov-06.pdf  Tools and Technologies for Semantic Web Services: An OWL-S Perspective. Sycara and Martin. http://www.ai.sri.com/daml/services/ISWC06-OWL-S-tutorial.pdf  Web Service Composition - Current Solutions and Open Problems. Srivastava and Koehler. http://www.zurich.ibm.com/pdf/ebizz/icaps-ws.pdf  Web Service Composition Standards. METEOR-S Project. http://lsdis.cs.uga.edu/proj/meteor/mwscf/standards.html  Tutorial on OWL. Bechhofer, Horrocks, Patel-Schneider. http://www.cs.man.ac.uk/~horrocks/ISWC2003/Tutorial/examples.pdf  Semantic Web Processes: Semantics Enabled Annotation, Discovery, Composition and Orchestration of Web Scale Processes. Cardoso & Sheth. http://lsdis.cs.uga.edu/lib/presentations/WISE2003-Tutorial.pdf  Current Solutions for Web Service Composition. Milanovic & Malek. IEEE Internet Computing. p51. Nov/Dec 2004.
  • 4. The Capability Composition Pattern A capability may not be able to fulfill its processing requirements without adding logic that resides outside of its service's functional context, thereby compromising the integrity of its context and risking service denormalization. [SOA Design Patterns]
  • 5. The Capability Composition Pattern [SOA Design Patterns]
  • 6. Basic Composition  Orchestration – engine controls service via single script, and service invokes other services in single swim lane  Choreography – engine controls all services via scripts associated with services; they execute in multiple swim lanes [SOA Source Book]
  • 7. Main Composition Approaches  “Industry”  UDDI / WSDL / BPEL or SCA Infrastructure  Plumbing created by programmer (limited scalability to large and diverse service spaces)  Semantic Web Services  OWL-S  Focuses on semantic compatibility and automatic service discovery  Other  Blackboard Systems
  • 8. “Industry Solutions” – UDDI/WSDL  UDDI: service registry  WSDL: registry document  Defines location and parameters/messages for available services in searchable way [WSPS]
  • 9. WSDL (Web Services Description Language)  XML-based description of characteristics of a web service [INFIT]  Function signatures (in, out, in/out, return)  Service binding (URL and protocol)  Stored in repositories such as UDDI  Used to create client-side proxies  Enables dynamic binding for clients capable of binding dynamically
  • 11. UDDI/WSDL Open Questions  What do its parameters mean?  In what units are its parameters expressed?  Given meaningful inputs, what is the meaning of the product of a service?  What are its restrictions?  What non-functional characteristics distinguish one service from another?  How can I compose 10 different services so that they fit together and produce a meaningful result?
  • 12. “Industry Solutions” – BPEL4WS  Process (BPEL composition)  Partners (participating services)  Activities (message exchange) [SOA Design Patterns]
  • 13. “Industry Solutions” – BPEL4WS Basic Flow Elements  <process>  <invoke>, <invoke>…<receive>  Send, event, request/response  <variable>, <assign>, <copy>  State maintenance  <scope>, <faultHandlers>  Fault handling  <flow>, <sequence>  Parallel & sequential execution  <switch>, <while>  Conditional evaluation [SOA Design Patterns] [Jurac]
  • 14. “Industry Solutions” – BPEL4WS [SOA Design Patterns]
  • 15. BPEL4WS Open Questions  Focus on connections and orchestration, but not on correctness  Proper function “guaranteed” by diligence of author  Almost same set of open questions as for UDDI/WSDL
  • 16. Web Service Composition Standards  BPML -Business Process Markup Language  Abstract model and grammer  WSCI -Web Services Choreography Interface  XML-based WSDL augmentation  BPEL4WS -Business Process Execution Language/ Web Services  Specifies business processes and interaction protocols  WSCL -Web Services Conversation Language  Business-level conversations w/document exchange  BPSS -Business Process Specification Schema  Business-level conversations w/document exchange  DAML-S  Ontology markup language representing process and capability semantics [METEOR-S]
  • 17. The Semantic Challenge How to compose services that we know will do what we intend?? [Sycara]
  • 19. Framing the Problem  Provide the capability to assemble (“compose”) on short notice an improvisational confederation  Improvisational: Constituent systems not deliberately engineered to work together in support of the objectives of the confederation  Short notice: Not deliberately planned months/years ahead of the need Interoperability: “The ability of systems, units, or forces to provide services to and accept services from other systems, units, or forces and to use the services so exchanged to enable them to operate effectively together.” (definition from Joint Pub 1-02) [Sycara]
  • 20. The Semantic Web and OWL  Semantic web adds machine-readable information to each element, giving each element a well-defined meaning useful for discovery, automation, integration, and reuse. [after W3C Semantic Web Activity Statement] [W3C]
  • 21. The Semantic Web and OWL  W3C Standard  Description Logic-based language that describes ontologies  Defines concepts and relations between them  Defines subset generalization  Well understood computational properties, including decidability  Enables semantic reasoning (Pellet and FaCT++)  OWL-Lite, OWL-DL, and OWL  Three objects: concepts, individuals, properties
  • 22. OWL Sample  Individuals with properties  Classes that facilitate reasoning [Tutorial on OWL]
  • 23. Semantic Service Challenges  Data/Information Semantics  Basic discovery and interoperability  Functional/Operational Semantics  Discovery and composition  Execution Semantics  For verification, validation, exception handling  QOS Semantics  Suitability [Cardoso]
  • 24. OWL-S  Ontology Web Language for Services (W3C)  Relies on WSDL for invocation (grounding)  Expands UDDI for discovery (mapping)  Suited for use with SAWSDL (Semantic Annotations for WSDL)  Complimentary to BPEL (local choreography)
  • 25. OWL-S Ontology of Services [Sycara/Payne]
  • 26. OWL-S Components  Service Profile  Inputs, outputs, preconditions, results  Provenance, QOS, Security, Policy …  Inheritance  Service Grounding  Builds on WSDL  Service Model  Initial state, inputs, and preconditions  Result states, outputs, effects on process  Chaining processes to create workflow
  • 27. The Roles  Providers  Specify and advertise services  Consumers  Specify and advertise needs  Facilitators  Match subscriptions to advertised services  Deal with complex semantic requirements  Deal with multiple sources, schemas, queries
  • 28. Composition  Static (author-time) and Dynamic (runtime)  Creation of mediators between services  Design of flows to accomplish results, much less optimal results [Cardoso]
  • 29. Comparison of Industry vs Semantic Web Approaches  BPEL relates closely to ServiceModel  OWL-S defines preconditions and effects, leading to better reasoning about composition  OWL-S classes extend reasoning to subclasses and other relationships  BPEL describes sequencing of activities  BPEL describes mechanisms for catching, handling, and compensating for faults  BPEL leverages WS-Coordination and WS- Transaction for defining transactional semantics [Cardoso]
  • 30. Research Issues (for QOS)  Specification  Computation  Monitoring  Control [Cardoso]
  • 32. Other Technology Choices  Abstract Machines [SOA Design Patterns]  π-Calculus [SOA Design Patterns]  Blackboard-style Service Composition [Korotkiy]  SCA Infrastructure [SCA]
  • 33. Modeling Services as Abstract Machines  Extends WSDL via contracts covering  Non-functional properties  Preconditions, postconditions, invariants  Expressed via Contract Definition Language  Formal composition operators enable predictability and determination of correctness  Separates “how” from “what”  Issues:
  • 34. SCA Infrastructure  Objectives  Well-defined interfaces with business-level semantics  Standardized communication protocols  Flexible recombination of services  Mechanisms  Declarative component networks (using XML) injected at runtime  Standard communication bindings and policy frameworks  Language-embedded features (e.g., policy intents & stateful interactions via WSDL and pragma extensions) [SCA]
  • 36. Conferences for Service Composition  ICWS  WISE  WSCA  SCC
  • 37. Other Sources  [WSBP] Basic Profile Version 1.1. Web Services Interoperability Organization (WS-I). Apr 2006. http://www.ws- i.org/Profiles/BasicProfile-1.1.html  [INFIT] IT Web Services: A Roadmap for the Enterprise. A. Nghiem. Prentice Hall. Oct 2002. http://www.informit.com/articles/article.aspx?p=31076
  • 38. Time to take a walk! Me Web Services

Editor's Notes

  1. This is a step toward another pattern: Capability Recomposition
  2. This is a step toward another pattern: Capability Recomposition
  3. 􀂄BPEL4WS = Business Process Execution Language for Web Services 􀂄XML based language for description of Web service choreographies according to the specified business rule –business workflows 􀂄BPEL offers: 􀂉Definition of business protocols 􀂉Fault handling and compensation
  4. BPML: provides an abstract model and grammar for expressing abstract and executable business processes -- 17 activity types, and three process types. WSCI: XML-based description of observable behavior, flow of messages, compliments WSDL as augmentation. BPEL4WS: language to specify business processes and business interaction protocols. WSCL: defines external visible service behavior by specifying business-level conversations and processes and the documents exchanged. BPSS: (coordinated with ebXML) models for collaborating e-business public processes based on exchange of well-defined documents. Libraries of process templates can be created and leveraged. DAML-S: an initiative to provide an ontology markup language expressive enough to semantically represent capabilities and properties of Web services. Categorized three types of processes: atomic, process templates, and composite processes.
  5. Heavily RDF Cardinalities, enumerations, set operations, equivalences
  6. “Complete, don’t compete”
  7. This is about modeling non-functional properties and then optimizing and monitoring them