View
224
Download
0
Tags:
Embed Size (px)
Citation preview
Web services / e-Web services / e-ServicesServices
Alessio MuraAlessio Mura
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
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
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
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
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
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
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
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
Web services Web services interactionsinteractions
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
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
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
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
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
SOAP messageSOAP message
Envelope
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
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
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
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
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)
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
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
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
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
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
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
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
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
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
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
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
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
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
– ……
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
Web services in Web services in Microsoft Visual Studio Microsoft Visual Studio .NET.NET
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
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
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
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)
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,…)…)
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
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
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
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
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
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
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
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
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)
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
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/
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
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>
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