Upload
zubin67
View
897
Download
1
Tags:
Embed Size (px)
Citation preview
Service-Oriented Architecture and Web Service Technologies
Veli Biçer
Outline
What is a service?
Application Architectures
Service-Oriented Architecture
Web Service Technologies
Semantic Web Services
Service
What is a service?A service is a contractually defined behavior that can be implemented and provided by a component for use by another component.The mechanism by which needs and capabilities are brought togetherWell-defined, self-contained modules that provide standard business functionality and independent of the state or context of other services
Service
-Inspection-Treatment
-Patient-care-Drugs
-Manage files
Doctor Nurse Receptionist Technician
-X-ray films
Patient
Hospital
ExternalClinic
Cure
Process
BusinessObjective
SLAsPolicy
Clinical Document
HIS ECP Clinical Systems
RIS
PIS
Service
Department
Radiology LaboratoryPathology
ExternalHospital
Accounting
Drug Company
Insurance
Hospital Administration
Radiology Order[RIS]
Pathology Order[PIS]
Laboratory Order[LIS]
Billing[ERP]
Payment Claim Processing
[ECP]
Drug Info[Drug DB]
External EHR[EHR System]
Patient Demographics
[HIS]
Service
Services are :a way of enabling business automation
collection of capabilitiesDoctor service: inspect illnesses, treat patients, perform surgeries etc.
implemented based on design principlesSelf-descriptive, loosely-coupled, autonomous, composable, discoverable
Application Architectures
Monolithic Application
Object-Oriented Application
Client-Server
3-tier, n-tier
Distributed Objects
Component Orientation
Service Orientation
Service-Oriented Architecture
What is SOA?
A new generation distributed computing platform including:
its own design paradigm,
design principles,
design patterns,
architectural model,
and related concepts, technologies, and frameworks.
Service-Oriented Architecture
Service-Oriented Architecture
Service-Oriented Architecture
Services
Security Trans. & Reliabil. Discovery Description
Orchestration Communication
Choreography Business Rules
Client Applications
Service-Oriented Architecture
Reference ArchitectureDefine the essence of service oriented architecture
To create a vocabulary and a common understanding of SOA
Based on concepts present in all SOA’s
A Reference Model defines SOA in an abstract sense. Example:
Abstract = Service Description
Concrete = WSDL
Service-Oriented Architecture
Service-Oriented Architecture
Service-Oriented Architecture
Web Services
Transport (HTTP,HTTPS,SMTP,FTP)
Messaging (XML,XSD,SOAP,SOAPAttachment)
Description (WSDL,WS-Policy)
Secu
rity
(W
S-S
ecu
rity
)Orchestration (WS-BPEL)
Enterprise Service Bus
WS-Choreography (WS-CDL,ebBP)
Discovery (UDDI,ebXML)
Service-Components (SCA,SDO)
Semantic Web Services (WSMO,OWL-S)
Managem
ent
(WSM
F,W
SD
M)
Tra
nsa
ctio
n (
WS-T
ransa
ctio
n)
Current State-of-the-art in Web Service Technologies
Service-Composition
Quality of Service
Internet Protocols
Foundations
WSDL Web Service Description Language
W3C effort, WSDL 2 final construction phase
describes interface for consuming a Web Service:
Interface: operations (input & output)
Endpoint (location of service, URL)
Access (protocol binding)
UDDI
Universal Description, Discovery, and Integration Protocol
OASIS driven standardization effort
Registry for Web Services:provider
service information
technical access
WS-BPEL
Web Services Business Process Execution Language
a notation for specifying business process behavior based on web services
Owned by OASIS, originally created by IBM and Microsoft
WS-BPEL
BPEL Constructs:sequence: executes one or more activities sequentially. flow: executes one or more activities in parallel. switch: executes one of several paths based on the value of a condition. while: executes a specified activity as long as a condition is true. invoke: calls a web service. receive: receives an incoming web services call. reply: sends a response to a received web services call. variables: defines any global variables the process uses. assign: allows copying and manipulating data using XPath partnerLink: specifying the roles and message exchanges between communication partners
WS-BPEL
Popular BPEL Architectures:Oracle SOA Suite
IBM WebSphere Process Server
ActiveBPEL
Software AG webMethods Business Process Management Suite
Microsoft BizTalk
Apache ODE
Choreography
Describe collaborations of parties by defining from a global viewpoint their common and complementary observable behavior
Information exchanges, the jointly agreed ordering rules…
Unlike processes, more than one party is includedMore like a global contract which can be realized by more than one partiesW3C’s Web Services Choreography Description Language (WS-CDL)ebXML Business Processes (ebBP)
Choreography
Cardiology Hospital X
Laboratory Hospital Y
Insurance Company
Place Lab Order
Check Insurance
Confirmed
Order Result
Enterprise Service Bus
Gartner“An ESB is an architecture that exploits Web services, messaging
middleware, intelligent routing, and transformation. It must support
request/response communication between loosely coupled SOA
business components and one-way message delivery for sending
notifications to event-driven business components. It must also
allow more-complex message exchange patterns (MEPs).”
Enterprise Service Bus
Enterprise Service Bus
What if we have more than one client:We need something to simplify this
Enterprise Service Bus
Enterprise Service Bus route messages between WSs:
SOAP/HTTP/ Reliable SOAPOEMS, JMS, MQ, TIBCO
Local, In Memory, Fastpath
Enterprise Service Bus
JCA
fx
BPEL BAM
SAP.NET
SOAP JMS
Mainframe
In Memory
Java
Portlets Web UI Human Task
MDS
UDDI
ESBViewer
Composite Applications, Portals, BI and BAM
EDI
TradingPartner
ConnectConnectAdaptersAdaptersMetadataMetadataWS ManagerWS ManagerSecuritySecurityApps EventsApps Events
ConnectConnectAdaptersAdaptersMetadataMetadataWS ManagerWS ManagerSecuritySecurityApps EventsApps Events
EnrichEnrichTransformationTransformationValue MappingsValue MappingsBusiness RulesBusiness RulesWorkflowWorkflowSystem XrefSystem Xref
EnrichEnrichTransformationTransformationValue MappingsValue MappingsBusiness RulesBusiness RulesWorkflowWorkflowSystem XrefSystem Xref
DistributeDistributeProtocol BusProtocol BusMessagingMessagingRoutingRoutingInteroperabilityInteroperabilityHA, ScalabilityHA, Scalability
DistributeDistributeProtocol BusProtocol BusMessagingMessagingRoutingRoutingInteroperabilityInteroperabilityHA, ScalabilityHA, Scalability
Enterprise Service Bus
Popular ESB Architectures:Oracle SOA Suite
IBM WebSphere ESB
Sun’s openESB
Mule ESB
Apache ServiceMix
Software AG webMethods ESB Platform
Semantic Web Services
Web 1.0URL, HTML, HTTP, XML
Web 2.0Web Services, AJAX,
Wikis, Blog, RSS
Semantic WebOntology, OWL, RDF
Logic, Rule, Query
Web 3.0Semantic Web Services,
Semantic Wiki, Semantic BPs
Semantic Web Services
Theseus:Research program for a new internet-based knowledge infrastructureFunded by German Federal Ministry of Economy and Technology(180M€)http://theseus-programm.deResearch Topics:
Automatic generation of metadata for multimedia filesSemantic processing of multimedia documents Integrated methods and tools for ontology managementMachine learningSituation-sensitive dialogue processing Innovative user interfaces
Semantic Web Services
Annotate the WSs with machine interpretable descriptionsAllow the automatic publication, discovery, selection, composition, mediation and execution of inter-organization business logicInternet becomes a global common platform to support SWS applicationsOntologies - basic building block
Semantic Web Services
Usage Process:Publication: Make available the description of the capability of a service Discovery: Locate different services suitable for a given task Selection: Choose the most appropriate services among the available ones Composition: Combine services to achieve a goalMediation: Solve mismatches (data, protocol, process) among the combined Execution: Invoke services following programmatic conventions
Thank you for your attention