service oriented architectures presentation (veli bicer)

Post on 10-May-2015

904 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

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

top related