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 userfriendly displays Programs need to mimic users to request the information and then “scrape the screens” Inefficient and fragile Need a better mechanism!
5
Copyright (C) 2004 Jane Hsu
Service Oriented Architecture
Bind
Service Requestors
Internet Find
Publish
Service Brokers Copyright (C) 2004 Jane Hsu
Service Providers
Legacy System 6
Loosely-Coupled Web Applications Web Services XM L/H
XM
TT P
T L/H
TP
P TT H L/ XM
Copyright (C) 2004 Jane Hsu
7
Interoperability Intra-business: EAI
Inter-business: 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) 9
Copyright (C) 2004 Jane Hsu
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 Black box Standard interface Network standards 1970
1980
1991
1996
Web Services Open directory
1996
2000 11
Copyright (C) 2004 Jane Hsu
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
Search Mechanism
Naming Service
Windows Registry
RMI Registry
UDDI
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 13
Copyright (C) 2004 Jane Hsu
Web Services vs. Web Applications Web Services
Web Application
Interface
program-program
human-program
Language
XML
HTML
Service Index
Search vis UDDI
Search via search engine
Application domain
B2B
B2C
Protocols
SOAP + HTTP/HTTPS/SMTP
HTTP/HTTPS
Copyright (C) 2004 Jane Hsu
14
Features of Web Services
Services as Components
Platform-Free
SOAP、UDDI、WSDL etc.
Dynamic Integration
Standards-based
Open Standards
reuse
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)
WSDL (Web Service Description Language)
Yellow pages directory for services White/green pages Document describing the message exchange contract
SOAP (Simple Object Access Protocol)
XML-based protocol for messaging 17
Copyright (C) 2004 Jane Hsu
Web Services Technology Stack Service Flow (WFMS)
XML (XML Schema, Namespace)
Management
Service Invocation & Messaging (SOAP)
Quality of Service
Service Description (WSDL)
Security (WS-Sec)
Service Discovery & Publication (UDDI)
Network (HTTP, SMTP, FTP) Copyright (C) 2004 Jane Hsu
18
Evolution of UDDI
Goal: automated discovery and execution of ecommerce 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
Contact info
list of multi-language text strings 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. 29
Copyright (C) 2004 Jane Hsu
Web Services (In Practice) Find a Service
UDDI
http://www.uddi.org http://www.uddi.org Link to WSDL document
Web Service Consumer
How do we talk? (WSDL) http://yourservice.com /?WSDL http://yourservice.com/?WSDL XML with service descriptions
Web Service
Let me talk to you (SOAP) http://yourservice.com/svc1 XML/SOAP BODY Copyright (C) 2004 Jane Hsu Design-Time or Dynamic
Runtime
30
Web Services Platforms
Application Servers:
.NET J2EE
Provide tools for application development and Support efficient execution of applications
Microsoft
IBM Oracle Sun HP BEA Systems Sybase
WebSphere Oracle 9i Application Server Sun ONE (iPlanet) HP Web Service Platform, eSpeak WebLogic 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 ebusiness software products, including its applicationserver 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 Can compose services Distributed Platform-independent Heterogeneous Can be discovered via UDDI registry All potentially developed and deployed independently
Reality Yes Yes Yes Yes ?
?
Copyright (C) 2004 Jane Hsu
39
Web Services Online Resources
W3C Web Services Standards
SOAP document
http://ws.apache.org/axis/java/architecture-guide.html
WSDL document
http://www.w3.org/TR/2003/REC-soap12-part0-20030624/
AXIS document
http://www.w3c.org/2002/ws/
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
Extra bonus
Submit your slides Install and demonstrate how it works Comparison of competing technologies/platforms
Maximum team size: 2 students Copyright (C) 2004 Jane Hsu
42