You are on page 1of 21

Introduction to Web Services

Jane Hsu

Issues

„ What is a Web Service?


„ Why are Web Services interesting?
„ What e-commerce business models do Web
Services enable?
„ What security and privacy issues need to be
addressed for Web Services to be successful?
„ What are the platforms supporting web services?
‰ Microsoft’s .NET Platform
‰ Sun J2EE

Copyright (C) 2004 Jane Hsu 2


The basic business proposition of web
services…
I want to be able to do business across the Internet with
my customers, partners, and suppliers
without having to know the intimate details
of how they built their IT systems.

„ Applications, programming languages, operating


systems and hardware are still needed to build the
Web services and the software that invokes them.
„ Process Automation, Workflow, Data transformation,
and Systems management are required to deploy

Copyright (C) 2004 Jane Hsu 3

Web as Powerful Archive

Copyright (C) 2004 Jane Hsu 4


Example: Yahoo! Stock Ticker

„ Vast databases of historical


stock prices accessible at
http://finance.yahoo.com
„ Browser-oriented user-
friendly displays
„ Programs need to mimic
users to request the
information and then
“scrape the screens”
„ Inefficient and fragile
„ Need a better mechanism!

Copyright (C) 2004 Jane Hsu 5

Service Oriented Architecture

Bind
Service Internet Service
Requestors Find Publish Providers

Service Legacy
Brokers System

Copyright (C) 2004 Jane Hsu 6


Loosely-Coupled Web Applications

Web Services
T TP
XM
L/H L/H
TT XM
P

P
H TT
L/
XM

Copyright (C) 2004 Jane Hsu 7

Interoperability

Intra-business: Inter-business:
„ EAI „ B2Bi

„ Supply chain management

Copyright (C) 2004 Jane Hsu 8


Software Design Principles

„ Abstraction
‰ Abstract & reuse useful functions in programs
‰ Abstraction hides implementation details
„ Componentization
‰ Share code among programs by creating reusable
software components
‰ Save time coding, debugging & testing
‰ Reusable components have value
‰ Components are local (i.e. live on your machine)

Copyright (C) 2004 Jane Hsu 9

Componentizing

„ To help different software applications communicate


with one another
„ Earlier development efforts
‰ COM (Microsoft)
‰ CORBA (Sun/Java)
„ Web services are based on key standards
‰ Extensible Markup Language (XML)
‰ Simple Object Access Protocol (SOAP)
‰ Universal Description, Discovery and Integration (UDDI)
‰ Web Services Description Language (WSDL)

Copyright (C) 2004 Jane Hsu 10


Software Engineering
Coverage
Web Services

Java RMI
DCOM
Message Oriented Middleware

CORBA

RPC
DLL
Subroutine
Centralized Client-Server Distributed Objects Web Services
Black box Standard interface Network standards Open directory
1970 1980 1991 1996 1996 2000
Copyright (C) 2004 Jane Hsu 11

Distributed Component Technology

CORBA DCOM Java RMI SOAP


Communication IIOP RPC IIOR or JRMP HTTP
Message Format CDR NDR Java Ser. Format XML
Spec. Language OMG IDL IDL Java WSDL
Naming Windows
Search Mechanism RMI Registry UDDI
Service Registry

Copyright (C) 2004 Jane Hsu 12


Web Services

„ A web service is any software component that


„ Is available over the Internet
‰ “Programming the Web”
‰ “Remote procedure calls over the Web”
‰ Web sites with no user interface
„ Uses standard web messaging protocols
(XML/SOAP)
„ Is platform independent. i.e. Components are not
tied to any one operating system or programming
language.
„ Enables highly distributed information systems

Copyright (C) 2004 Jane Hsu 13

Web Services vs. Web Applications

Web Services Web Application

Interface program-program human-program

Language XML HTML


Search via search
Service Index Search vis UDDI
engine
Application domain B2B B2C
SOAP +
Protocols HTTP/HTTPS
HTTP/HTTPS/SMTP

Copyright (C) 2004 Jane Hsu 14


Features of Web Services

„ Services as Components
‰ reuse
„ Platform-Free
‰ Standards-based
„ Open Standards
‰ SOAP、UDDI、WSDL etc.
„ Dynamic Integration
‰ On-demand
‰ Out-sourced
„ Interoperability
„ Incremental Deployment
Copyright (C) 2004 Jane Hsu 15

Why will Web Services Succeed?


Real Business Value is Delivered!
„ Allows for Applications on demand & “Utility-based” Computing
‰ Faster deployments, Lower skill levels, Faster ROI

„ Based on real and open Standards with ubiquity


‰ TCP/IP, HTTP, XML, SOAP, WSDL ...
‰ Utilizes existing infrastructure

„ We made the right choices this time


‰ Loose coupling, simple, business driven

„ Early Industry Deployments


‰ Major Vendors totally committed (IBM, Microsoft, Sun, etc.)
‰ Customers already in production using web services

‰ Fastest Adoption rate of any technology in a long time

„ Can cut cost of integration by up to 20% (McKinsey) -- the single


biggest IT cost
„ New business models & types of applications are possible

Copyright (C) 2004 Jane Hsu 16


Three Standards Based on XML

„ UDDI (Universal Description Discovery and


Integration)
‰ Yellow pages directory for services
‰ White/green pages
„ WSDL (Web Service Description Language)
‰ Document describing the message exchange
contract
„ SOAP (Simple Object Access Protocol)
‰ XML-based protocol for messaging

Copyright (C) 2004 Jane Hsu 17

Web Services Technology Stack

Service Flow (WFMS)


Security (WS-Sec)

Quality of Service

Service Discovery & Publication (UDDI)


Management

Service Description (WSDL)

Service Invocation & Messaging (SOAP)

XML (XML Schema, Namespace)

Network (HTTP, SMTP, FTP)

Copyright (C) 2004 Jane Hsu 18


Evolution of UDDI

„ Goal: automated discovery and execution of e-


commerce transactions
„ Universal Business Registry (UBR)
‰ White pages: company contact information
‰ Yellow pages: categorization/standard taxonomies
‰ Green pages: technical information about services exposed
„ Web service infrastructure
„ UDDI.org is comprised of more than 200 major
software developers and e-business leaders

Copyright (C) 2004 Jane Hsu 19

White Pages

„ Business Name
„ Text Description
‰ list of multi-language text strings
„ Contact info
‰ names, phone numbers, fax numbers, web sites…
„ Known Identifiers
‰ list of identifiers that a business may be known
by – D-U-N-S (UDDI registry generated unique
number for each business)

Copyright (C) 2004 Jane Hsu 20


Yellow Pages

„ Business categories
‰ 5 standard taxonomies in Version 2.0
„ Industry: NAICS (Industry codes - US Govt.)
„ Product/Services: Standard Industrial Classification,
USPSC
„ Location: Geographical taxonomy (GGC, ISOGT)
‰ Implemented as name-value pairs to allow any
valid taxonomy identifier to be attached to the
business white page

Copyright (C) 2004 Jane Hsu 21

Green Pages

„ New set of information businesses use to


describe how to “do e-commerce” with them
‰ Nested model
„ Business processes
„ Service descriptions
„ Binding information
‰ Programming/platform/implementation
independent
‰ Services can also be categorized

Copyright (C) 2004 Jane Hsu 22


More Details

„ UDDI
„ SOAP
„ WSDL

Copyright (C) 2004 Jane Hsu 23

BPEL: An Emerging Standard

„ Goal: specification for automating complex business


processes.
„ BPEL (Business Process Execution Language for
Web services) will make it easier for businesses to
create Web services applications that automate
multi-step business processes, e.g. insurance
claims
„ The proposal was led by IBM, Microsoft, BEA
Systems, and SAP.
„ Submitted to the OASIS (Organization for the
Advancement of Structured Information Standards)
technical committee under royalty-free terms.

Copyright (C) 2004 Jane Hsu 24


Digital Trust Services Framework

„ By VeriSign
„ Authentication
„ Authorization
„ Transaction service, e.g. bill payment
„ Security standards:
‰ XKMS (XML Key Management Specification)
‰ SAML (Security Assertions Markup Language)

Copyright (C) 2004 Jane Hsu 25

The Web Programming Model

„ More loosely coupled that traditional distributed


programming models like RPC, DCOM, and CORBA.
„ Simple Web client-server interaction
‰ Exchange Messages that carry MIME-typed data
‰ Semantics of a message can be modified using headers
‰ The destination of a message is specified indirectly using a
URL, and this level of indirection can be leveraged to
implement load balancing, session tracking and other
features

Copyright (C) 2004 Jane Hsu 26


Architectural Characteristics of WS

„ Distributed
„ Loosely-coupled
„ Standards-based
„ Process-centric

Copyright (C) 2004 Jane Hsu 27

Promise of Web Service

„ CIOs surveyed by Basex Inc.


„ 60% expect their Web services initiatives to
be profitable within the next two years.
„ 90% see it happening within the next five
years.
„ Jupiter Media Metrix survey of IT managers
„ 50% see web services technology as a way
to cut software integration costs.

Copyright (C) 2004 Jane Hsu 28


Web Services: The Trend

„ A September survey of
IT execs by Forrester
Research reported that
‰ 85% of respondents
planned to deploy Web
services by 2004.
‰ Up from 71% a year ago.
„ IT managers see web
services technology as
a way to cut software
integration costs.

Copyright (C) 2004 Jane Hsu 29

Web Services (In Practice)


Find a Service
http://www.uddi.org
http://www.uddi.org UDDI
Link to WSDL document

How do we talk? (WSDL)


Web http://yourservice.com
http://yourservice.com/?WSDL
/?WSDL
Service
XML with service descriptions
Consumer
Web
Let me talk to you (SOAP) Service
http://yourservice.com/svc1
XML/SOAP BODY

Design-Time or Dynamic
Copyright (C) 2004 Jane Hsu
Runtime 30
Web Services Platforms

„ Application Servers:
‰ Provide tools for application development and
‰ Support efficient execution of applications
„ .NET Microsoft
„ J2EE
‰ IBM WebSphere
‰ Oracle Oracle 9i Application Server
‰ Sun Sun ONE (iPlanet)
‰ HP HP Web Service Platform, eSpeak
‰ BEA Systems WebLogic
‰ Sybase EAServer
„ Open Source: JBoss, JOnAS

Copyright (C) 2004 Jane Hsu 31

Web Services Supporters

„ Microsoft .NET My Services


„ IBM
„ Sun
„ HP
„ BEA Systems
„ Oracle

Copyright (C) 2004 Jane Hsu 32


Microsoft

„ Next year the software giant will release .Net My


Services, an initiative formerly known as HailStorm
that will deliver content, shopping, banking and
other services over a variety of devices ranging from
cell phones to PCs and handhelds.
„ The massive operation will employ a global network
of Web servers to house all manner of personal
information, including e-mail accounts, address
books, credit card numbers and photographs.
„ On the infrastructure end, Microsoft is selling a
family of e-business software for companies to
create and run Web services, which include its
forthcoming Visual Studio.Net development tools.

Copyright (C) 2004 Jane Hsu 33

IBM

„ Big Blue has built support for Web services into its
WebSphere application-server software and offers
Visual Age tools for building applications.
„ WebSphere includes technology that runs
transactions for Web sites and links to IBM's DB2
database software, which stores vast amounts of
corporate and Web information, and its Tivoli Web
services manager, which monitors performance of
such products.
„ IBM's Global Services arm is also said to be
planning a move into the hosting end of Web
services.

Copyright (C) 2004 Jane Hsu 34


Sun

„ The company is building support for Web services


standards SOAP, UDDI and WSDL into its iPlanet e-
business software products, including its application-
server software.
„ By the end of 2002, Sun will add the existing Web
services standards into Java 2 Enterprise Edition
(J2EE), the Java standard for writing business
software.
„ The company says it will also release a tool for
building Web services next year and is working on
technology that will allow Java-based Web services
to be compatible with Microsoft's .Net operations.

Copyright (C) 2004 Jane Hsu 35

HP

„ The computing giant has the potential to be a


major player, but it remains to be seen
whether the hardware maker can make
inroads into the software market.
„ "HP and BEA are likely to have a significant
play, and Sun's iPlanet is making some
headway and will eventually catch up. HP
has an edge because they had the idea
before with E-speak," said analyst Mike
Gilpin of Giga Information Group.

Copyright (C) 2004 Jane Hsu 36


BEA Systems

„ BEA was not as focused on Web services as IBM a


few years ago.
„ As the market leader in application-server
infrastructure software, BEA is typically one of the
quickest to get products out, and is expected to be
highly competitive.
„ BEA WebLogic Server won the 2002 Web Services
Journal Editor's Choice Awards.
‰ Best Web Services Application Server
‰ Best Middleware - BEA WebLogic
„ BEA's integrated development environment
simplifies the creation of Web services for a broad
range of developers.
Copyright (C) 2004 Jane Hsu 37

Oracle

„ The database leader is moving in two


directions on Web services.
‰ First it is adding support for XML, SOAP, UDDI
and WSDL to its 9i database-management
software, application-server software and
development tools so that its customers can use
Web services in new systems.
‰ Second, it is developing Web-outfitted versions of
its sales and customer relationship management
software.
„ Oracle 9i Application Server Web Services
Copyright (C) 2004 Jane Hsu 38
Web Services: Promises vs. Reality

Promises Reality
„ Can compose services „ Yes

„ Distributed „ Yes

„ Platform-independent „ Yes

„ Heterogeneous „ Yes

„ Can be discovered via „ ?


UDDI registry
„ All potentially „ ?
developed and
deployed independently

Copyright (C) 2004 Jane Hsu 39

Web Services Online Resources

„ W3C Web Services Standards


‰ http://www.w3c.org/2002/ws/
„ SOAP document
‰ http://www.w3.org/TR/2003/REC-soap12-part0-20030624/
„ AXIS document
‰ http://ws.apache.org/axis/java/architecture-guide.html
„ WSDL document
‰ http://www.w3.org/TR/2003/WD-wsdl20-20031110
„ UDDI document
‰ http://uddi.org/pubs/uddi-v3.0.1-20031014.htm

Copyright (C) 2004 Jane Hsu 40


The Alphabet Soup of Web Services

„ SOAP, UDDI, WSDL, XML


„ GXA (Global XML Web Services Architecture)
‰ WS-Security
‰ WS-Routing
‰ WS-Referral
„ WS-Policy
„ WS-Addressing
„ SDIG
„ DIME (Direct Internet Message Encapsulation)
„ SOA (Service Oriented Architecture)

Copyright (C) 2004 Jane Hsu 41

Midterm Report

„ Pick a specific topic from the list


‰ Sign up at
http://www.csie.ntu.edu.tw/~r92109/pmwiki/pmwiki.php/Main/PresentList

„ Present it in class on March 14th, 2004


‰ Submit your slides
„ Extra bonus
‰ Install and demonstrate how it works
‰ Comparison of competing technologies/platforms
„ Maximum team size: 2 students
Copyright (C) 2004 Jane Hsu 42