web services / e-services

55
Web services / e- Web services / e- Services Services Alessio Mura Alessio Mura

Upload: rinky25

Post on 10-May-2015

954 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Web services / E-services

Web services / e-Web services / e-ServicesServices

Alessio MuraAlessio Mura

Page 2: Web services / E-services

SummarySummary

What is a Web serviceWhat is a Web service Web services architecturesWeb services architectures Web services developmentWeb services development Web services in the futureWeb services in the future Web services engineeringWeb services engineering e-Servicese-Services

Page 3: Web services / E-services

SummarySummary

What is a Web serviceWhat is a Web service Web services architecturesWeb services architectures Web services developmentWeb services development Web services in the futureWeb services in the future Web services engineeringWeb services engineering e-Servicese-Services

Page 4: Web services / E-services

Web service definitionsWeb service definitions

W3C definitionW3C definitionA web service is a software system designed to support A web service is a software system designed to support

interoperable machine-to-machine interaction over a interoperable machine-to-machine interaction over a network. It has an interface described in a machine-network. It has an interface described in a machine-processable format (specifically WSDL). Other systems processable format (specifically WSDL). Other systems interact with the Web service in a manner prescribed by interact with the Web service in a manner prescribed by its description using SOAP messages, tipically conveyed its description using SOAP messages, tipically conveyed using HTTP with an XML serialization in conjunction with using HTTP with an XML serialization in conjunction with other Web-related standardsother Web-related standards

““Computer” - IEEE Computer Society JournalComputer” - IEEE Computer Society JournalWeb services are Web-based applications composed of Web services are Web-based applications composed of

coarse-grained business functions accessed through the coarse-grained business functions accessed through the InternetInternet

IBMIBMWeb services are self-contained, modular applications that Web services are self-contained, modular applications that

can be described, published, located and invoked over a can be described, published, located and invoked over a network, generally, the Webnetwork, generally, the Web

Page 5: Web services / E-services

What is a web serviceWhat is a web service

FunctionsFunctions– A collection of operationsA collection of operations– Machine-to-machine interactionMachine-to-machine interaction

Invoked / AccessedInvoked / Accessed– Well defined interfaceWell defined interface

Over a network (needs HTTP protocol)Over a network (needs HTTP protocol)– IntranetIntranet– WebWeb

Loosely coupledLoosely coupled– The service requester has no knowledge of the The service requester has no knowledge of the

technical details of the provider’s implementationtechnical details of the provider’s implementation

Page 6: Web services / E-services

Why Web servicesWhy Web services

Logical evolution of object-oriented Logical evolution of object-oriented techniques to e-businesstechniques to e-business

Promoting interoperability by minimizing the Promoting interoperability by minimizing the requirements for shared understandingrequirements for shared understanding– Common program-to-program communications modelCommon program-to-program communications model– Web services are platform and language independentWeb services are platform and language independent

Enabling just-in-time integrationEnabling just-in-time integration– Services are bound dinamically at runtimeServices are bound dinamically at runtime– Systems are self-configuring, adaptive and robustSystems are self-configuring, adaptive and robust

Reducing complexity by encapsulationReducing complexity by encapsulation– All components of an application are servicesAll components of an application are services

Enabling interoperability of legacy Enabling interoperability of legacy applicationsapplications

Page 7: Web services / E-services

Evolutionary or Evolutionary or revolutionary?revolutionary?Web services are to be viewed as an Web services are to be viewed as an

evolutionary step towards software evolutionary step towards software interoperabilityinteroperability

Before Web services:Before Web services:– Common Object Request Broker Architecture Common Object Request Broker Architecture

(CORBA)(CORBA)

– Distributed Component Object Model (DCOM)Distributed Component Object Model (DCOM)

Reasonable protocols for server-to-server Reasonable protocols for server-to-server communications; weaknesses in client-server communications; weaknesses in client-server communications on the Internetcommunications on the Internet

Use of non-standard protocolsUse of non-standard protocols

Page 8: Web services / E-services

SummarySummary

What is a Web serviceWhat is a Web service Web services architecturesWeb services architectures Web services developmentWeb services development Web services in the futureWeb services in the future Web services engineeringWeb services engineering e-Servicese-Services

Page 9: Web services / E-services

Web services lifecycleWeb services lifecycle

A Web service needs to be created and its A Web service needs to be created and its interface must be definedinterface must be defined

A Web service needs to be published to A Web service needs to be published to one or more intranet or Internet one or more intranet or Internet repositories for potential users to locaterepositories for potential users to locate

A Web service needs to be located to be A Web service needs to be located to be invoked by potential usersinvoked by potential users

A Web service needs to be invoked to be of A Web service needs to be invoked to be of any benefitany benefit

A Web service may need to be unpublished A Web service may need to be unpublished when it is no longer available or neededwhen it is no longer available or needed

Page 10: Web services / E-services

Web services Web services interactionsinteractions

Page 11: Web services / E-services

Web services Web services architecturesarchitectures Web servicesWeb services

– W3C standardW3C standard– A universal client/server architecture A universal client/server architecture – Allows disparate systems to communicate with Allows disparate systems to communicate with

each other without using proprietary client librarieseach other without using proprietary client libraries Each vendor or standards organization Each vendor or standards organization

defines Web services in a sligthly different defines Web services in a sligthly different wayway– Architectural stackArchitectural stack

Not all architectures of Web services are full Not all architectures of Web services are full interoperableinteroperable

Page 12: Web services / E-services

W3C Conceptual Web W3C Conceptual Web services stackservices stack

S E

C U

R I T

Y

M A

N A

G E

M E

N T

Communications

HTTP, SMTP, FTP, …B

ase T

ech

nolo

gie

s: X

ML, D

TD

, Sch

em

a

Base T

ech

nolo

gie

s: XM

L, D

TD

, S

ch

em

a

Processes

Discovery, Aggregation, Choreography, …

Descriptions

Web services Description (WSDL)

Messages

SOAP Extension

Reliability, Correlation, Transaction, …

SOAP

Page 13: Web services / E-services

IBM Conceptual Web services IBM Conceptual Web services stackstack

Service Flow

Service Discovery

Service Publication

Service Description

XML–Based Messaging

Network

WSFL

Static -> UDDI

Static -> UDDI

WSDL

SOAP

HTTP, FTP, email, etc.

Secu

rity

Managem

en

t

Quality

of S

erv

ice

Page 14: Web services / E-services

IBM Conceptual Web services IBM Conceptual Web services stackstack

Service Flow

Service Discovery

Service Publication

Service Description

XML–Based Messaging

Network

WSFL

Static -> UDDI

Static -> UDDI

WSDL

SOAP

HTTP, FTP, email, etc.

Secu

rity

Managem

en

t

Quality

of S

erv

ice

Page 15: Web services / E-services

XML–Based messagingXML–Based messaging

Exchange structured data between network applicationsExchange structured data between network applications Allows software running on disparate operating systems, Allows software running on disparate operating systems,

and environments to make RPCsand environments to make RPCs Simple Object Access Protocol (SOAP)Simple Object Access Protocol (SOAP)

– W3C standardW3C standard– Built over XMLBuilt over XML

Service Requestor

Service Provider

Application

Web service

SOAP

Network Protocol

SOAP

Network Protocol

Page 16: Web services / E-services

SOAP messageSOAP message

Envelope

Page 17: Web services / E-services

IBM Conceptual Web services IBM Conceptual Web services stackstack

Service Flow

Service Discovery

Service Publication

Service Description

XML–Based Messaging

Network

WSFL

Static -> UDDI

Static -> UDDI

WSDL

SOAP

HTTP, FTP, email, etc.

Secu

rity

Managem

en

t

Quality

of S

erv

ice

Page 18: Web services / E-services

Service descriptionService description

The service provider defines all the The service provider defines all the specifications to invoke the Web servicespecifications to invoke the Web service– InterfaceInterface– Operations and messagesOperations and messages

The requestor and the provider don’t have to The requestor and the provider don’t have to be aware of each other’s underlying platformbe aware of each other’s underlying platform

Use of Web Service Description Language (Use of Web Service Description Language (WSDLWSDL))– W3C standard (it was proposed by Microsoft and W3C standard (it was proposed by Microsoft and

IBM)IBM)– Based on XML documentsBased on XML documents

Page 19: Web services / E-services

IBM Conceptual Web services IBM Conceptual Web services stackstack

Service Flow

Service Discovery

Service Publication

Service Description

XML–Based Messaging

Network

WSFL

Static -> UDDI

Static -> UDDI

WSDL

SOAP

HTTP, FTP, email, etc.

Secu

rity

Managem

en

t

Quality

of S

erv

ice

Page 20: Web services / E-services

Service publicationService publication

Makes a Web service description available to a Makes a Web service description available to a service requestor service requestor

Direct publishingDirect publishing– The service provider sends the service description directly The service provider sends the service description directly

to the service requestorto the service requestor– E-mail attachment, FTP site, CD-ROM distribution,…E-mail attachment, FTP site, CD-ROM distribution,…

Service description repositoryService description repository– Local cache of service descriptionsLocal cache of service descriptions

Universal Description Discovery and Integration Universal Description Discovery and Integration specification (UDDI)specification (UDDI)– Copyrigth by Accenture, Fujitsu-Siemens, HP, Intel, IBM, Copyrigth by Accenture, Fujitsu-Siemens, HP, Intel, IBM,

Microsoft, Oracle, SAP, Sun Microsystems,…Microsoft, Oracle, SAP, Sun Microsystems,…– Organization for the Advanced of Structured Information Organization for the Advanced of Structured Information

Standards (OASIS) standardStandards (OASIS) standard– A UDDI registry can be thought as a DNS for business A UDDI registry can be thought as a DNS for business

applicationapplication

Page 21: Web services / E-services

UDDI (1)UDDI (1)

Defines a way to publish and discover information Defines a way to publish and discover information about servicesabout services

White pages : provide listings of providers (name, text description, contact info and identifiers)

Yellow pages : contains classification information about the business entity and types of the services the entity offers. E.g. Amazon can be a book seller and a bibliographic information broker

Green pages : info to interact with companies’ Web Services (service description and binding information)

Page 22: Web services / E-services

UDDI (2)UDDI (2)

Use of UDDI browsersUse of UDDI browsers– http://www.soapclient.com/UDDISearch.htmlhttp://www.soapclient.com/UDDISearch.html

– http://uddi.microsoft.com/search/search.aspxhttp://uddi.microsoft.com/search/search.aspx

Every Web service has an URI (Uniform Every Web service has an URI (Uniform Resource Identifier)Resource Identifier)

Microsoft Web servicesMicrosoft Web services– The list of the Web service methods is The list of the Web service methods is

displayed when a browser loads the displayed when a browser loads the corresponding URIcorresponding URI

– These methods are invocable from such listThese methods are invocable from such list

Page 23: Web services / E-services

IBM Conceptual Web services IBM Conceptual Web services stackstack

Service Flow

Service Discovery

Service Publication

Service Description

XML–Based Messaging

Network

WSFL

Static -> UDDI

Static -> UDDI

WSDL

SOAP

HTTP, FTP, email, etc.

Secu

rity

Managem

en

t

Quality

of S

erv

ice

Page 24: Web services / E-services

Service discoveryService discovery

Acquires the service description and consumes Acquires the service description and consumes itit

AcquiringAcquiring– With the direct publishing approach, the service With the direct publishing approach, the service

requestor caches the service description at design requestor caches the service description at design timetime

– The service requestor retrieves a service The service requestor retrieves a service description at design time or runtime from a description at design time or runtime from a service description repository (UDDI)service description repository (UDDI)

ConsumingConsuming– The service requestor processes the description to The service requestor processes the description to

invoke the serviceinvoke the service At design time or runtimeAt design time or runtime

Page 25: Web services / E-services

IBM Conceptual Web services IBM Conceptual Web services stackstack

Service Flow

Service Discovery

Service Publication

Service Description

XML–Based Messaging

Network

WSFL

Static -> UDDI

Static -> UDDI

WSDL

SOAP

HTTP, FTP, email, etc.

Secu

rity

Managem

en

t

Quality

of S

erv

ice

Page 26: Web services / E-services

Service flowService flow

Choreography / Aggregation for Choreography / Aggregation for W3CW3C

Web services are composableWeb services are composable– The workflow will provide The workflow will provide

choreography for automatic interaction choreography for automatic interaction between Web servicesbetween Web services

W3C / IBM and Microsoft / Sun and W3C / IBM and Microsoft / Sun and Oracle are competing for the Oracle are competing for the standard definitions of this layerstandard definitions of this layer

Work in progressWork in progress

Page 27: Web services / E-services

IBM Conceptual Web services IBM Conceptual Web services stackstack

Service Flow

Service Discovery

Service Publication

Service Description

XML–Based Messaging

Network

WSFL

Static -> UDDI

Static -> UDDI

WSDL

SOAP

HTTP, FTP, email, etc.

Secu

rity

Managem

en

t

Quality

of S

erv

ice

Page 28: Web services / E-services

SecuritySecurity

There are four basic security requirements: Confidentiality is the property that information is not made

available or disclosed to unauthorized individuals, entities, or processes, and guarantees that the contents of the message are not disclosed to unauthorized individuals

Authorization is the granting of authority, which includes the granting of access based on access rights and guarantees that the sender is authorized to send a message

Data integrity is the property that data has not been undetectably altered or destroyed in an unauthorized manner or by unauthorized users thereby insuring that the message was not modified accidentally or deliberately in transit

Proof of origin is evidence identifying the originator of a message or data. It asserts that the message was transmitted by a properly identified sender and is not a replay of a previously transmitted message. This requirement implies data integrity

Page 29: Web services / E-services

IBM Conceptual Web services IBM Conceptual Web services stackstack

Service Flow

Service Discovery

Service Publication

Service Description

XML–Based Messaging

Network

WSFL

Static -> UDDI

Static -> UDDI

WSDL

SOAP

HTTP, FTP, email, etc.

Secu

rity

Managem

en

t

Quality

of S

erv

ice

Page 30: Web services / E-services

ManagementManagement

Management in this case means that a Management in this case means that a management applicationmanagement application can discover the can discover the existence, availability and health of the Web existence, availability and health of the Web service infrastructure, Web services and service service infrastructure, Web services and service registriesregistries

It must be possible to manage Web services at It must be possible to manage Web services at all levels of the conceptual Web services stackall levels of the conceptual Web services stack

The management interfaces should operate at The management interfaces should operate at the service level, and not at the relatively low the service level, and not at the relatively low level of the infrastructurelevel of the infrastructure– Basic reporting of Web services infrastructure Basic reporting of Web services infrastructure

availabilityavailability

– Information about performance, availability, events of Information about performance, availability, events of Web servicesWeb services

Page 31: Web services / E-services

IBM Conceptual Web services IBM Conceptual Web services stackstack

Service Flow

Service Discovery

Service Publication

Service Description

XML–Based Messaging

Network

WSFL

Static -> UDDI

Static -> UDDI

WSDL

SOAP

HTTP, FTP, email, etc.

Secu

rity

Managem

en

t

Quality

of S

erv

ice

Page 32: Web services / E-services

Quality of ServiceQuality of Service

In XML-Based Messaging level– Reliable messagingReliable messaging : Ability of an infrastructure to : Ability of an infrastructure to

deliver a message once, and only once, to its deliver a message once, and only once, to its intended target or to provide a definite event, intended target or to provide a definite event, possibly to the source, if the delivery cannot be possibly to the source, if the delivery cannot be accomplishedaccomplished

In service description levelIn service description level– Maximun duration after the requestor expects the Maximun duration after the requestor expects the

provider to respondprovider to respond

In service composition or service flow levelIn service composition or service flow level– Expected execution time, timeout values,…Expected execution time, timeout values,…

The Quality of Service issues and solutions for The Quality of Service issues and solutions for Web Services are still emergingWeb Services are still emerging

Page 33: Web services / E-services

SummarySummary

What is a Web serviceWhat is a Web service Web services architecturesWeb services architectures Web services developmentWeb services development Web services in the futureWeb services in the future Web services engineeringWeb services engineering e-Servicese-Services

Page 34: Web services / E-services

Web Services Web Services developmentdevelopmentThe development and deployment of Web The development and deployment of Web

services do not require a particular services do not require a particular technology in the underlying platformtechnology in the underlying platform

A common text editor can be used to develop A common text editor can be used to develop Web servicesWeb services

There are several development tools that There are several development tools that allow to easily develop Web servicesallow to easily develop Web services– Microsoft Visual Studio .NETMicrosoft Visual Studio .NET

– Sun ONE StudioSun ONE Studio

– IBM WebSphere Studio or Eclipse IDE with WSDKIBM WebSphere Studio or Eclipse IDE with WSDK

– ……

Page 35: Web services / E-services

Web services with Web services with Microsoft .NETMicrosoft .NET You have toYou have to

– Access to Internet Information Services (IIS)Access to Internet Information Services (IIS) In a local or remote machineIn a local or remote machine A server for web applications/servicesA server for web applications/services The service repository of one or more service The service repository of one or more service

providersproviders

– Create a Web service project in Microsoft Create a Web service project in Microsoft Visual Studio .NETVisual Studio .NET

A Web service is composed by classesA Web service is composed by classes Usage of keyword Usage of keyword WebMethod WebMethod for the public for the public

methods invocable from the Internetmethods invocable from the Internet

Page 36: Web services / E-services

Web services in Web services in Microsoft Visual Studio Microsoft Visual Studio .NET.NET

Page 37: Web services / E-services

SummarySummary

What is a Web serviceWhat is a Web service Web services architecturesWeb services architectures Web services developmentWeb services development Web services in the futureWeb services in the future Web services engineeringWeb services engineering e-Servicese-Services

Page 38: Web services / E-services

ConsiderationsConsiderations

Web services standard today permits Web services standard today permits application-to-application application-to-application interoperabilityinteroperability– Server-to-server communicationsServer-to-server communications

– Client-server communicationsClient-server communications

The coordination of a set of Web The coordination of a set of Web services working towards a common services working towards a common end is an open issueend is an open issue– Transaction-based applicationsTransaction-based applications

Page 39: Web services / E-services

Service Oriented Service Oriented Architecture (SOA)Architecture (SOA)

From an IBM document on SOAFrom an IBM document on SOA

“…“…SOA presents the big picture of what you can do with SOA presents the big picture of what you can do with Web services…”Web services…”

“…“…It can be based on Web services, but it may use other It can be based on Web services, but it may use other technologies instead…”technologies instead…”

“…“…A service in SOA is an application function packaged as A service in SOA is an application function packaged as a reusable component for use in a business process…”a reusable component for use in a business process…”

Software as a ServiceSoftware as a Service (SaaS) (SaaS)– The key know-how involved is not The key know-how involved is not whowho provides provides

services but services but whatwhat service a transaction requires at service a transaction requires at any particular pointany particular point

– Separate the Separate the possessionpossession and and ownershipownership of of software from its software from its useuse

– Ultra-late bindingUltra-late binding

Page 40: Web services / E-services

Service modelsService models

Current supply-led service model Current supply-led service model (it provides only a (it provides only a predetermined range of predetermined range of services from a remote server)services from a remote server)

Supplier’s software

application service

Service transport layer

Service layer (application created

on demand from smaller services)

Service transport layer

Service integration layer

Proposed demand-led service Proposed demand-led service model (it has a service model (it has a service integration layer inserted integration layer inserted above the transport layer)above the transport layer)

Page 41: Web services / E-services

Service integration Service integration layerlayer Service description, Service discoveryService description, Service discovery

– A machine readable semantic description of the A machine readable semantic description of the functionality provided by the servicefunctionality provided by the service

Service composition (Service flow)Service composition (Service flow)– Automatic composition of Web servicesAutomatic composition of Web services

Service negotiationService negotiation– The client and the provider must negotiate the service’s The client and the provider must negotiate the service’s

delivery terms and conditions automaticallydelivery terms and conditions automatically Contract’s durationContract’s duration Transaction’s agreed security featuresTransaction’s agreed security features

Service deliveryService delivery– Monitors whether the service is supplied within agreed Monitors whether the service is supplied within agreed

terms and conditions and suspends its provision if terms and conditions and suspends its provision if necessarynecessary

– Determines legal or nonfunctional parameters (cost, QoS,Determines legal or nonfunctional parameters (cost, QoS,…)…)

Page 42: Web services / E-services

Service-based software Service-based software goalsgoals PersonalisedPersonalised

– Software capable of personalisationSoftware capable of personalisation

Self-adaptingSelf-adapting– Monitor and understand how software is being Monitor and understand how software is being

usedused

Fine-grainedFine-grained– Small simple unitsSmall simple units

– High cooperationHigh cooperation

TransparentTransparent– Software has to be seen as a single abstract objectSoftware has to be seen as a single abstract object

Page 43: Web services / E-services

SummarySummary

What is a Web serviceWhat is a Web service Web services architecturesWeb services architectures Web services developmentWeb services development Web services in the futureWeb services in the future Web services engineeringWeb services engineering e-Servicese-Services

Page 44: Web services / E-services

Software engineering Software engineering (considerations)(considerations) Internet age has ushered in a new era of highly Internet age has ushered in a new era of highly

dynamic and agile dynamic and agile organisationsorganisations which must be in a which must be in a constant state of evolution if they are to compete and constant state of evolution if they are to compete and survive in an increasingly global marketplacesurvive in an increasingly global marketplace

There is still criticism of software systems and the There is still criticism of software systems and the methods employed in their development, such asmethods employed in their development, such as– High costHigh cost– Long time to marketLong time to market– Poor flexibilityPoor flexibility

Many of these issues have been accentuated through the Many of these issues have been accentuated through the widespread use of Internet and the acceleration of widespread use of Internet and the acceleration of business cyclesbusiness cycles

Page 45: Web services / E-services

Web service Web service engineering (1)engineering (1)Web services are used for client-server Web services are used for client-server

interactions (Now Web service = set of interactions (Now Web service = set of classes)classes)

A Web service can be used in an A Web service can be used in an application like a local classapplication like a local class

A Web service is similar to a A Web service is similar to a component, the only difference is that component, the only difference is that it is accessible by the Webit is accessible by the Web

Component-based techniquesComponent-based techniques– Reuse of servicesReuse of services

Page 46: Web services / E-services

Web service Web service engineering (2)engineering (2) Highly flexible and agile software, that should Highly flexible and agile software, that should

be able to meet changing business needsbe able to meet changing business needs– Classical software engineering methods are not Classical software engineering methods are not

adaptedadapted

Interdisciplinary view of softwareInterdisciplinary view of software– Trust and confidence Trust and confidence : users need appropriate : users need appropriate

mental models of software behaviour in order to mental models of software behaviour in order to have trust and confidence in its performancehave trust and confidence in its performance

– Risk, responsibility, recovery Risk, responsibility, recovery : what happens when : what happens when software fails and, with the emergence of software fails and, with the emergence of component-based approaches, how to ensure component-based approaches, how to ensure accountability in system development and evolutionaccountability in system development and evolution

– Software personalisationSoftware personalisation and and adaptationadaptation

Page 47: Web services / E-services

Web service Web service engineering engineering (conclusions)(conclusions) There is few material regarding this There is few material regarding this

subject which is still a matter of studysubject which is still a matter of study ““Service-Oriented Software System Service-Oriented Software System

Engineering: Challenges and Engineering: Challenges and PracticesPractices” - Zoran Stojanovic and ” - Zoran Stojanovic and Ajantha Dahanayake, Delft University of Ajantha Dahanayake, Delft University of TechnologyTechnology– Relevant theoretical backgroundRelevant theoretical background– Modeling notationModeling notation– ToolsTools– Development processesDevelopment processes– Practical realisationsPractical realisations

Page 48: Web services / E-services

SummarySummary

What is a Web serviceWhat is a Web service Web services architecturesWeb services architectures Web services developmentWeb services development Web services in the futureWeb services in the future Web services engineeringWeb services engineering e-Servicese-Services

Page 49: Web services / E-services

e-Services (1)e-Services (1)

From Wikipedia, the free encyclopediaFrom Wikipedia, the free encyclopedia e-Service is a term usually referring to the provision of e-Service is a term usually referring to the provision of

services provided via the Internet (the prefix 'e' services provided via the Internet (the prefix 'e' standing for "electronic", as it does in many other standing for "electronic", as it does in many other uses)uses)

e-Service includes "e-Service includes "e-commercee-commerce", although it may also ", although it may also include non-commercial servicesinclude non-commercial services

Non-ecommerce e-Services include (at least some) Non-ecommerce e-Services include (at least some) ""eGovernmenteGovernment" services" services

From an article written by C.Peraire and D.ColemanFrom an article written by C.Peraire and D.Coleman An e-Service is some interaction offered to a user, An e-Service is some interaction offered to a user,

across the Internet, that has meaning and economic across the Internet, that has meaning and economic valuevalue

An e-Component is a software module that provides An e-Component is a software module that provides one or more e-Services. Thus, the e-Services provided one or more e-Services. Thus, the e-Services provided by an e-Component constitute its interfaceby an e-Component constitute its interface

Page 50: Web services / E-services

e-Services (2)e-Services (2)

E-services is a business concept developed by Hewlett E-services is a business concept developed by Hewlett Packard (HP)Packard (HP)

HP e-Services integration platformHP e-Services integration platform– “… “… There are essentially no constraints on what the There are essentially no constraints on what the

platform can aggregate into the portal – Web-enabled platform can aggregate into the portal – Web-enabled applications and informations stores, legacy applications and informations stores, legacy applications, and applications on open client/server applications, and applications on open client/server systems …”systems …”

– Using HP's e-services concept, any application program Using HP's e-services concept, any application program or information resource is a potential e-service; Internet or information resource is a potential e-service; Internet Service Providers (ISPs) and other companies are logical Service Providers (ISPs) and other companies are logical distributors or access points for such servicesdistributors or access points for such services

Cisco e-ServicesCisco e-Services– “…“…Cisco eServices provides a variety of voice Cisco eServices provides a variety of voice

processing for your Cisco IP Telephony processing for your Cisco IP Telephony implementation…”implementation…”

Cisco IP Integrated Voice Response (Cisco IP IVR)Cisco IP Integrated Voice Response (Cisco IP IVR) Cisco IP Integrated Contact Distributor (Cisco IP ICD)Cisco IP Integrated Contact Distributor (Cisco IP ICD)

Page 51: Web services / E-services

e-Services e-Services (conclusions)(conclusions) The word e-Service:The word e-Service:

– has a very general meaninghas a very general meaning

– is used to represent all web-based is used to represent all web-based applicationsapplications

In some environments Web In some environments Web services can be considered as e-services can be considered as e-ServicesServices

Page 52: Web services / E-services

References (1)References (1)

““Web Services Computing: Advancing Software Web Services Computing: Advancing Software Interoperability” “Computer” IEEE Computer Society Journal Interoperability” “Computer” IEEE Computer Society Journal October 2003 (Jen-Jao Chung, Kwei-Jay Lin, Richard G. October 2003 (Jen-Jao Chung, Kwei-Jay Lin, Richard G. Mathieu)Mathieu)

““Turning Software into a Service” “Computer” IEEE Computer Turning Software into a Service” “Computer” IEEE Computer Society Journal October 2003 (Mark Turner, David Budgen, Society Journal October 2003 (Mark Turner, David Budgen, Pearl Brereton)Pearl Brereton)

““Web Services architecture overview” IBM Web Services Web Services architecture overview” IBM Web Services Architecture Team - September 2000 - http://www-Architecture Team - September 2000 - http://www-106.ibm.com/developerworks/web/library/w-ovr/106.ibm.com/developerworks/web/library/w-ovr/

““Web Services Conceptual Architecture (WSCA 1.0)” Heather Web Services Conceptual Architecture (WSCA 1.0)” Heather Kreger – IBM Software Group – May 2001 - www-Kreger – IBM Software Group – May 2001 - www-306.ibm.com/software/solutions/webservices/pdf/WSCA.pdf306.ibm.com/software/solutions/webservices/pdf/WSCA.pdf

““Web Services Architecture” – W3C Working Group – February Web Services Architecture” – W3C Working Group – February 2004 – (David Booth, Hugo Haas, Francis McCabe, Eric 2004 – (David Booth, Hugo Haas, Francis McCabe, Eric Newcomer, Michael Champion, Chris Ferris, David Orchard) – Newcomer, Michael Champion, Chris Ferris, David Orchard) – http://www.w3.org/TR/2004/NOTE-ws-arch-200040211/http://www.w3.org/TR/2004/NOTE-ws-arch-200040211/

Page 53: Web services / E-services

References (2)References (2)

““Web Services Architectures” – Tect – Judith M. MyersonWeb Services Architectures” – Tect – Judith M. Myerson ““Service-Oriented Architecture expands the vision of Web Service-Oriented Architecture expands the vision of Web

services, Part 1” – IBM Corporation – Mark Colan – services, Part 1” – IBM Corporation – Mark Colan –

www-106.ibm.com/developerworks/ library/ws-soaintro.html www-106.ibm.com/developerworks/ library/ws-soaintro.html ““Service-Based Software: The Future for Flexible Software” – Service-Based Software: The Future for Flexible Software” –

Keith Bennett, Paul Layzell, David Budgen, Pearl Brereton, Keith Bennett, Paul Layzell, David Budgen, Pearl Brereton, Linda Macaulay, Malcolm MunroLinda Macaulay, Malcolm Munro

““Modeling for E-Service Creation” Cecile Peraire and Derek Modeling for E-Service Creation” Cecile Peraire and Derek ColemanColeman

““Semantic Web services and Web services standards” – Sinuhé Semantic Web services and Web services standards” – Sinuhé Arroyo, Christoph Bussler and Rubén Lara – EEE04 – Arroyo, Christoph Bussler and Rubén Lara – EEE04 – http://deri.semanticweb.org/http://deri.semanticweb.org/

““Component-Based Software Engineering” – Wilhelm Component-Based Software Engineering” – Wilhelm HasselbringHasselbring

““Cisco eServices Architecture – Cisco IPCC Express Edition” Cisco eServices Architecture – Cisco IPCC Express Edition” Cisco Systems – Cisco Systems – http://www.cisco.com/en/US/products/sw/custcosw/ps1846/prohttp://www.cisco.com/en/US/products/sw/custcosw/ps1846/products_administration_guide_chapter09186a00900eeac8.htmlducts_administration_guide_chapter09186a00900eeac8.html

Page 54: Web services / E-services

WSDL documentsWSDL documents

<definitions><definitions>

<types><types>Definition of a type (the datatypes used by the Web service)Definition of a type (the datatypes used by the Web service)

</types></types>

<message><message>Definition of a message (the messages used by the Web service)Definition of a message (the messages used by the Web service)

</message></message>

<portType><portType>Definition of a port (the operation performed by the Web service)Definition of a port (the operation performed by the Web service)

</portType></portType>

<binding><binding>Definition of a binding (the communication protocols used by the Web Definition of a binding (the communication protocols used by the Web

service)service)

</binding></binding>

</definitions></definitions>

Page 55: Web services / E-services

GlossaryGlossary

XML: eXtensible Markup LanguageXML: eXtensible Markup Language– ExampleExample

<person id=1><person id=1>

<name><name>AlessioAlessio

</name></name>

</person></person> DTD: Document Type DefinitionDTD: Document Type Definition

– Define the legal building blocks of an XML document, Define the legal building blocks of an XML document, they define the document structure with a list of legal they define the document structure with a list of legal elementselements

XML SchemaXML Schema– Provide a means for defining the structure, content and Provide a means for defining the structure, content and

semantics of XML documentssemantics of XML documents