Introduction to Web Services

Download Report

Transcript Introduction to Web Services

Introduction
CSIE, Da-Yeh University
1
History of Software Development

Traditional Programming Paradigm


Structured Programming (1970’s)



Behind schedule, costly, and unreliable.
Systematical analysis of the problems.
Does not mirror the real world entities.
Object Oriented Programming (1980’s – 1990’s)



Object technique is a packaging scheme to create
software units.
Use classes to represent the real world entities.
Web service take advantages of the OO technology.
2
Component-based Development

A component is a piece of software that satisfies


It must be deployable on its own
It must publish and adhere to a programming interface.
3
Component-based Development

The limitation of using components



It takes a lot more effort to develop components that is
reusable.
It is difficult to find the right components.
It is hard to coordinate the releases of new components.
4
Client Server Design
5
Internet Design
6
Application Server Architecture
7
Distributed Computing


The computing tasks are distributed over networks.
Components extended at different computers must be
able to communicate with each other.


Interface and response
Security
Client
Proxy
Client
Proxy
Infrastructure
Application
internet
8
Distributed Computing

Different technology





Object Management Group (OMG) – Common Object
Request Broker Architecture (CORBA)
Microsoft – Distributive Component Object Model
(DCOM)
IBM – Distributive System Object Model (DSOM)
Sun Micro – Remote Method Invocation (RMI)
Components from different technology communicate
with each other through a bridge.


COM/CORBA bridge
Poor interoperability
9
Distributed Computing Infrastructure

Microsoft’s DCOM


Shipped with versions of Windows NT beginning with
version 4.0 and including Windows 2000.
Provide both local and remote COM capabilities. It is
now an inherent part of Win32-based platforms.
10
N-tier Web-based Application



The client-tier uses browsers as the user interface.
The middle-tier provides all the business logic and
processes.
The information-tier is the information tier.
Client-tier
Middle-tier
data
Information-tier
data
11
Alternative to Web Service


Screen Scraping: retrieving data from other HTML
documents.
What are the disadvantages of using screen scraping?
Middle Tier
Application
Database
Web page
HTML
12
Web Service Technology



Address the issue of poor interoperability.
Use open standard.
Easy to debug.


Web services use text-based protocols.
Use XML as the standard for exchanging information.
13
Definition of Web Service


Web services are software programs that use XML to
exchange information with other software via internet
protocol.
Characteristics of web service




Web services are programmable.
Web services are based on XML.
Web services are self-describing (WSDL).
Web services are discoverable (UDDI).
14
Web Service Architecture Protocols

The core principles drive the design and
implementation of WS architecture protocols





Message orientation
Protocol composability
Autonomous services
Managed transparency
Protocol-based integration
15
Benefits over Distributed Computing



Companies can expose and access web services using
technology already in place.
Web service is more interoperable.
Nearly all major software vendors have agreed to use
the same core standards.
16
Challenge of the Web Service




SOAP, WSDL, UDDI are still in draft.
Royalty fees may required for some standards.
Lack of standard security procedure.
Defining and guaranteeing QoS.



Slow response time
Infrequent update
Inability to handle large number of requests
17
Web Service Architecture
UDDI
Registry
2
WSDL
Document
3
1
4
client
5




Query Registry to locate service
Refer to WSDL documents
Access WSDL documents
Provide data to interact with web
service
 Send SOAP message request
 Send SOAP message response
Web
Service
6
18
Web Service Terminology - SOAP

SOAP (Simple Object Access Protocol)



A common way to package messages that are
exchanged between two processes.
A common set of serialization techniques for the data
that is exchanged.
A mechanism that allows Remote Procedure Calls
(RPC) to be made across a heterogeneous set of
platforms.
19
Web Service Terminology – XSDL

XSDL (XML Schema Definition Language)


XSDL defines the layout of and the constraints on an
XML document.
XSDL supplants a previous standard known as Data
Type Definition (DTD).
20
Web Service Terminology - UDDI

UDDI (Universal Description, Discovery, and
Integration) registry


The most commonly known method of discovering
Web services.
UDDI registry’s structure is similar to the phone book



White page: list contact information and descriptions of
companies.
Yellow page: provide classification information about
companies and details on companies’ electronic capability.
Green page: list technical data regarding services.
21
Web Service Terminology - WSDL

WSDL (Web Service Description Language)



It provides details about the functionality that is
implemented, which messages are used to request the
service, and the sequence in which the messages are
exchanged.
It is XML-based format.
Similar to the documentation to the ActiveX
components.
22
Web Service Terminology - others

XML ( eXtended Markup Language)


GXA (Global XML Architecture)



The main language used in Web service.
A set of protocols defined by Microsoft and others.
It provides an infrastructure that supports the most
commonly requested demands for commercial Web
service: security and routing.
WS-Security

It allows authentication established by one system to be
accepted by others (federated identity).
23
Web Service Terminology - others

WS-Routing


The typical mode for WS-Routing is to create a oneway path that the SOAP message must take.
WS-Referral


A protocol directly related to WS-Routing.
It allows for changes to the routing of a SOAP message
to be made dynamically.
24
Delivering Web Service

Service-oriented Architecture


Created by IBM.
Service provider



A server or system makes a Web service available over
network.
Provides a service interface, that enables other applications to
access the service.
Service broker


Service provider publishes its service to service broker.
Service broker communicates with requesters and directs them
to the appropriate provider.
25
Delivering Web Service

Service requester

A networked server or system that access or employed a Web
service.
Service
provider
bind
publish
Service
broker
find
Service
requester
26
Web Service Life-cycle Stages
Creation
Design, development, documentation, testing
and distribution.
Publication
Web service hosting and maintenance.
Promotion
Directory services, value-added services and
accreditation.
Sale
Auditing and accounts management.
27
ASP .Net Web Service Architecture
VB
Application
Browser
Office
Documents
Other Web
Service
SOAP Messages
Classic ASP
ASP .Net
XML Web
Services
.ASP
.ASPX
.ASMX
RPC-Style
Listener
WSDL
Document-Style
Listener
WSDL
Wrapper Classes
Business
Objects
Database
Server
28