• No results found

Introduction1.ppt

N/A
N/A
Protected

Academic year: 2020

Share "Introduction1.ppt"

Copied!
26
0
0

Loading.... (view fulltext now)

Full text

(1)

Service-Oriented Computing

(2)

Introduction

“The Service-Oriented Computing (SOC) paradigm

utilizes services as fundamental elements to support the

development of rapid, low-cost and easy composition of

distributed

applications

even

in

heterogeneous

environments.”

- Mike P. Papazoglou

Services

are

autonomous,

platform-independent

computational elements that can be described,

published, discovered, orchestrated and programmed

using XML artifacts.

(3)

What is Service ?

An entity that provides some capability to its

clients by exchanging messages (request - response).

3

(4)

How services relate?

4

Because service A has access to service B’s service

description, service A has all the information it needs to

communicate with service B.

(5)

How services communicate?

5

(6)

How services encapsulate logic?

6

(7)

services perform encapsulated business functions such

as:

1.

a self-contained business task

– a funds withdrawal or

funds deposit service;

2.

a full-fledged business process

– the automated

purchasing of office supplies;

3.

an application

– a life insurance application or demand

forecasts and stock replenishment; or

4.

a service-enabled resource

– access to a particular

back-end database containing patient medical records.

(8)
(9)

Service Interface and Implementation

The service interface

defines service functionality visible

to the external world and provides the means to access

this functionality.

– The service describes its own interface characteristics, i.e., the operations available, the parameters, data-typing and the access protocols.

The service implementation

realizes a specific service

interface whose implementation details are hidden from

its users.

(10)

Within an enterprise (enterprise application integration)

Accelerate and reduce the cost of integration

 Save on infrastructure deployment and management costs  Reduce skill requirements

 Improve reuse

Between enterprises (e-Business integration)

Providing service to a company’s customers

– e.g., an Insurance company wishes to link its systems to the systems of a new institutional customer

Accessing services from a company’s partners and suppliers

– e.g., dynamically link to new partners and suppliers to offer their services to complement the value the company provides

(11)

What is Service Oriented Computing(SOC)?

Promotes the idea of assembling application components into

a network of services to create applications.

Uses “services-oriented” programming to develop application

by using network-available services.

Web services are currently the most promising SOC-based

technology. Uses internet-based standards:

– Simple Object Access Protocol (SOAP)

– Web Services Description Language (WSDL)

– Business Process Execution Language for Web Services (BPEL4WS)

(12)

SOC and SOA

SOC vision

:

it will be possible to easily assemble application components into a loosely coupled network of services.

 These services is used to create dynamic business process and agile applications across organizations and computing platforms.

Key to achieve this vision

:

Service-oriented Architecture

(SOA):

A service?

– A repeatable business task, for example:  Open an account

 Perform a credit check

A service-oriented architecture?

– An IT architectural style that supports integrating your business as linked services

– Open, standard communication protocols for integrating applications and information sources

(13)

What is loose coupling?

 SOA is an architectural style with characteristics such as loose coupling, reuse, and simple and composite implementations

 Loosely coupled services, even if they use incompatible system technologies, can be joined together dynamically to create composite services or disassembled just as easily into their functional components

Service requesters depend on the interface and not on the

service provider’s implementation

Various aspects of service interactions such as time

(14)

Definition

Service Oriented Computing

SOC is an emerging cross-disciplinary paradigm for

distributed computing that is changing the way software

applications are designed, architected, delivered and

consumed

Service Oriented Architecture

An architectural style of building software applications

that promotes loose coupling between components so

that you can reuse them and work within a distributed

systems architecture

(15)

Service-Oriented Architecture

(16)

object-oriented and service-oriented computing paradigms

SOC is evolved from the Object-oriented computing paradigm;

however there are significant differences between them.

Features Object-Oriented Computing Service-Oriented Computing

Methodology Application development by

Identifying tightly coupled classes.

Application architecture is hierarchical based on the inheritance relationships.

Application development by identifying loosely coupled services and composing them into executable applications.

Level of abstraction and

cooperation

Application development is often delegated to a single team

responsible for the entire life cycle of the application. Developers must have knowledge of application domain and programming.

(17)

object-oriented and service-oriented computing paradigms

Features Object-Oriented Computing Service-Oriented Computing

Code sharing and reuse

Code reuse through inheritance of class members and through library functions. library functions have to be imported at compilation time and are platform dependent.

Code reuse at the service level. Services have standard interfaces and are published on Internet repository. They are platform-independent and can be searched and remotely accessed.

Dynamic binding and recomposition

Associating a name to a method at runtime. The method must have been linked to the executable code before the application is deployed.

Binding a service request to a service at runtime.

The services can be discovered after the application has been deployed. This feature allows an application to be recomposed at runtime.

System maintenance

Users need to upgrade their

software regularly. The application has to be stopped to perform the upgrading.

(18)

Service design principles

Services are loosely coupled

– A service is defined solely by an implementation-independent interface – Services should be able to change their implementation without impacting

service consumers

Services are location transparent

– Services should not expose any of the deployment details at their interface – Location transparency is achieved by the use of services brokers, service

registries, or other intermediaries to connect the service consumer to the service provider

Services are interoperable

– Service interoperability highlights the need for standardized interfaces and the adoption of open standards

Services are composable

(19)

Foundation (service-oriented middleware and basic functions) Composition Management and monitoring Basic services Composite services Managed services Service characteristic: • Semantics

Nonfunctional characteristics Quality of Service (QoS) Service characteristic: • Semantics

• Nonfunctional characteristics • Quality of Service (QoS)

Service client Service client Service provider Service provider Metrics State management Load balancing Change management Discovery Selection Binding Discovery Selection Binding Publication Publication Capability Interface Behavior Capability Interface Behavior Service aggregator Service aggregator Service operator Service operator Coordination Conformance Transaction Coordination Conformance Transaction Role actions Performs Publishes Uses Become Role actions Performs Publishes Uses Become 19

(20)

Consists of service-oriented middleware backbone that realizes

the runtime SOA infrastructure that connects heterogeneous

components and systems.

Basic service funcionality definition: description, publishing,

finding and binding of services.

The concept of

Enterprise Services Bus(ESB)

– a capable

and manageable integration infrastructure for web services and

SOA.

Two objectives of ESB:

– Loosely couple the systems taking part in the integration, and – Break up the integration logic into distinct, easily manageable

pieces.

20

(21)

Loose coupling is enabled by an ESB

An ESB (enterprise service bus) is an intermediary-oriented

approach

 Instead of thinking about consuming services across a network, think of a service bus as a network of collaborating services

 a set of applications exposed as services, plus a separate set of intermediary services that perform security, monitoring, and so forth

 You can add new intermediaries without disrupting existing applications

(22)

22

Service Composition

It is the process of combining existing services, available

on the web, to provide value-added services as a

composite service[1].

(23)

23

Benefits of Services Composition

(i) (ii)

(24)

Benefits of Services Composition

Reduces customer’s transaction cost

(i.e. the costs incurred when acquiring a product or service, such as the cost of locating the websites of the different service providers, the cost of specifying the service requests, etc)

Customer does not need to provide the same information

(e.g. personal information, credit card details, and date of travel)

at

several locations

Total number of websites that needs to be visited

reduces to just one

(25)

Service management and Monitoring

Service management: A range of activities, from installation

and configuration to collecting metrics and tuning, to ensure

responsive service execution.

Service monitoring:

Monitoring events or information

produced by the services and processes; viewing

process-instance statistics; viewing the status of selected process

instances; and suspending, resuming or terminating selected

process instances.

(26)

References

1. Michael P. Papazoglou, Paolo Traverso, Schahram Dustdar, Frank Leymann, Service-Oriented Computing :Research Roadmap, International Journal of Cooperative Information Systems Vol. 17, No. 2 (2008) 223–255

2. Thomas Erl, Service-Oriented Architecture: Concepts, Technology, and Design, PH PTR

References

Related documents