800 likes | 1.05k Views
Something Big Is Happening. ?..there is no doubt that something big is happening in the computer industry?as big as the rise of the PC in the 1980s that turned hardware into a commodity and put software squarely at the center of the industry. Now it looks as thought software will have to cede to ser
E N D
1. Web Services: The Next WaveCian QuinlanSolution Architect / Web Services EvangelistIntegrated Information Systemscianq@iis.com
2. Something Big Is Happening “..there is no doubt that something big is happening in the computer industry—as big as the rise of the PC in the 1980s that turned hardware into a commodity and put software squarely at the center of the industry. Now it looks as thought software will have to cede to services delivered online.”
The Economist, April 14th, 2001
3. Something Big Is Happening “The changes now under way are likely to reshuffle the industry completely.”
The Economist, April 14th, 2001
4. Let’s take a trip
5. Browser Centric
6. Application Centric
7. What is a Web Service? A Component
Lives on the Internet
“Remote Procedure Call”
Advertises its services
Known interface
Standards based: SOAP, UDDI, WSDL..
8. Application Centric Need:
API
Standard transport
Way to find an appropriate service
Way to locate the service
Service name
Service parameters
9. What is SOAP? SOAP (Simple Object Access Protocol)
Remote Procedure Call
Input parameters
Return values
XML over HTTP / SMTP / MQ ..
Language / Platform independent
Industry support
Microsoft & IBM, etc
10. SOAP Message
11. UDDI Registry
12. UDDI Registry
13. UDDI Registries - Scope Internet, intranet, extranet
Public, private
Communities
14. Web Services Description Language WSDL
describes how to invoke a service
provides information on the data being exchanged
location of the service
15. SOAP Example:
Get stock price
16. SOAP Request POST /StockQuote HTTP/1.1
Host: www.stockquoteserver.com
Content-Type: text/xml; charset="utf-8"
Content-Length: nnnn
SOAPAction: "http://example.com/stockquote.xsd"
<SOAP-ENV:Envelope
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<SOAP-ENV:Body>
<m:GetLastTradePrice xmlns:m="http://example.com/stockquote.xsd">
<symbol>DIS</symbol>
</m:GetLastTradePrice>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
17. SOAP Response HTTP/1.1 200 OK
Content-Type: text/xml; charset="utf-8"
Content-Length: nnnn
<SOAP-ENV:Envelope
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
<SOAP-ENV:Body>
<m:GetLastTradePriceResponse xmlns:m="http://example.com/stockquote.xsd">
<Price>34.5</Price>
</m:GetLastTradePriceResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
18. WSDL <?xml version="1.0"?>
<definitions name="StockQuote"
<message name="GetLastTradePriceInput">
<part name="body" element="xsd1:GetLastTradePrice"/>
</message>
<message name="GetLastTradePriceOutput">
<part name="body" element="xsd1:GetLastTradePriceResponse"/>
</message>
<service name="StockQuoteService">
<documentation>My first service</documentation>
<port name="StockQuotePort" binding="tns:StockQuoteBinding">
<soap:address location="http://www.stockquoteserver.com/StockQuote"/>
</port>
</service>
</definitions>
19. UDDI White pages:
address, contact details and known identifiers
Yellow pages:
industrial categorizations based on standard taxonomies
Green pages:
technical information about services
20. UDDI Core taxonomies
North American Industry Classification System
Universal Standard Products and Services Codes
IS0 3166 Geographic Taxonomy
Additional taxonomies
Standard Industrial Classification
GeoWeb geographic classification
21. UDDI: Query The following query, when placed inside the body of a SOAP envelope, returns details on IBM.
<find_business generic="1.0" xmlns="urn:uddi-org:api">
<name>IBM</name>
</find_business>
22. UDDI <businessList generic="1.0"
operator=“International Business Machines Corporation"
truncated="false"
xmlns="urn:uddi-org:api">
<businessInfos>
<businessInfo
businessKey="0076B468-EB27-42E5-AC09-9955CFF462A3">
<name>IBM Corporation</name>
<description xml:lang="en">
IBM is cool…
</description>
<serviceInfos>
<serviceInfo
businessKey="0076B468-EB27-42E5-AC09-9955CFF462A3"
serviceKey="1FFE1F71-2AF3-45FB-B788-09AF7FF151A4">
<name>Web services for smart searching</name>
</serviceInfo>
<serviceInfo
businessKey="0076B468-EB27-42E5-AC09-9955CFF462A3"
serviceKey="8BF2F51F-8ED4-43FE-B665-38D8205D1333">
<name>Electronic Business Integration Services</name>
</serviceInfo>
</serviceInfos>
</businessInfo>
</businessInfos>
</businessList>
23. Travel Application 1
24. Travel Application 2
25. Travel Application 3
26. Java: Web Services Related APIs Five core APIs:
JAXP XML Parsing with DOM, SAX and XSLT
JAXB XML data Binding to Java
JAXM API for Message Layer Protcols
JAX/RPC API for Remote Procedure Call conventions
JAXR Java API to the XML Registries
JAX Pack
27. Using JAX APIs To Build Web Services
28. Web Services and J2EE J2EE 1.4 – a major theme is web services
Key pieces will ship before 1.4
JAX Pack – soon (July?)
JSR 109 – Web Services 3Q01
Support for web services now or soon in most major app servers
Tool vendors rushing to support
WSDL and the gory details will be hidden
29. .NET What is .NET?
New language and runtime environment
Web Services
30. .NET Hailstorm is a set of consistent web services which provide:
Common identity
Messaging
Naming
Navigation
Security
Role mapping
Data modeling
Metering
Error handling
31. .NET Web Services
32. .Net Web Services
33. Hailstorm Revenue Model
34. Net OS? Is Hailstorm is the beginning of Microsoft’s Net OS?
Issues
Do you trust Microsoft?
Authentication is the key – ticket used to bind services
Private authentication system makes .NET closed and propriety
Need for standards based authentication – SAML, XKMS..
Security, liability and legal concerns
35. Some Quotes..
36. Honeywell Aircraft Landing Systems “In the past two or three years, we’ve invested heavily in building a component-based architecture. With Web services, we can now leverage this investment by giving our trading partners direct access to selected business components through the Internet.”
Dave Kulakowski, Development and Technology Manager
37. The Bekins Company “It’s possible that in the long run, all our business will be conducted through Web services applications. We’re certainly moving in that direction. Web services will be the glue that will connect our whole business together.”
Randall Mowen
Director of Data Management & e-business Architecture
38. Entrust Technologies “We are transforming PKI (Public-Key Infrastructure) technology to support a services oriented architecture to enable applications to invoke PKI functionality through remote XML-based Web services."
Brian O’Higgins, Executive VP and CTO, Entrust Technologies
39. Hewitt’s Total Benefit Administration System “Currently, employees and clients access participant benefits data via Hewitt’s direct presentation channels. Increasingly, however, Hewitt has been receiving requests for direct access to participant data from 3rd-party service providers as well as clients developing HR self-service portals.
In the past, Hewitt would have built custom proprietary connectivity solutions to address these requests. Now, with Web services, Hewitt Associates can build open non-proprietary solutions instead.”
Tim Hilgenberg, Chief Technology Strategist at Hewitt Associates
40. Charles Schwab
“We believe Web services will be a big step forward in what we can offer our customers."
Chalon Mullins, technical director of infrastructure strategy and architecture
41. Some Examples..
42. Dollar Rent-A-Car Create standard interfaces so business partners could tap into the company's car reservation system.
Used SOAP to create an interface that lets Southwest Airlines' Unix system easily tap into Dollar's reservation system.
"We designed the SOAP interface for Southwest, but we will use it for our Web site. Our Palm application already uses it, and we're building a Pocket PC application.”
“It took us three days to build the prototype for the reservation system. It was amazingly simple, almost too good to be true."
43. Bekins Need to optimize the loading of a truck
Tradition method is to call / fax business partner to share capacity
Working with IBM to expose services of partners as set of web services
Result will be better truck utilization negotiated in a fraction of the time without manual intervention
44. News
45. BowStreet LYNNFIELD, MA, April 23, 2001 …
Bowstreet delivers the next breakthrough in web services: packaged e-business solutions.
The Business Web Factory represents business processes – including legacy applications – as web services and stores them in a directory as reusable components.
IT people then design models of e-business solutions – for example, a customer portal – by specifying and combining links to these services.
46. Application Builder? Palette of web services
Drop and Drag
Connect
Apply xforms
Generate
47. eCommerce Stack.. So Far
48. Going Up the Food Chain ???
UDDI
SOAP
HTTP
TCP/IP
49. e-procurement at Dell A customer pulls product information from Dell's server into the customer's purchasing system, which creates an electronic requisition.
After requisition is approved online, a computer-generated purchase order is sent back to Dell.
The entire process can take 60 seconds and has cut errors from about 200 to tens (per million transactions).
Dell has been able to shave $40 to $50 off the cost of processing each order.
Dell hopes to get inventory down to 2 days – Compaq, Gateway IBM average 50 – 90 days
50. e-procurement at Dell Before: Litton, one month to get a PC
Hooked into Dell’s e-procurement system
After: 2 days after order is placed
However, high costs associated which changing systems
Major problem for Dell is getting customers to sign up
Need a standard way for systems to interoperate
51. ebXML Joint initiative of the United Nations (UN/CEFACT) and OASIS
Specs that enable a electronic business framework
Enterprises of any size can meet and conduct business using XML based messages
Building on existing EDI knowledge
SOAP is the transport
Over 30 companies participated in POC in May
52. ebXML: Technical Architecture
53. Trading Partner Agreement (TPA) A TPA is an electronic contract that uses XML to stipulate:
general contract terms and conditions
participant roles (such as buyers and sellers)
communication and security protocols
business processes (such as valid actions and sequencing rules)
A TPA defines how trading partners will interact at the transport, document exchange, and business protocol layers.
54. Transactions Transaction Authority Markup Language (XTMA)
initiative backed by Bowstreet, IBM, HP, Oracle and Sun Microsystems
Business Transaction Protocol (BTP)
BEA -> OASIS Collaborate B2B integration platform
55. ebXML & UDDI
Work underway to enable UDDI & ebXML registries to interoperate
56. Web Services Flow Language (WSFL) WSFL is an XML language for the description of Web Services compositions
Developed by IBM – submitted to W3C
57. eCommerce Stack
58. xMethods A directory of publicly-available web services
Hosting and deployment facilities for service developers
Forums for discussion about available web services
UDDI interfaces to repository
SOAP Interoperability Testbed
59. xMethods
61. Some Impacts / Trends Reuse
EDI
Legacy Integration
Application Construction
Application Outsourcing
Service Brokers
WSUI
62. Reuse Holy Grail is component reuse
Web services provides reuse infrastructure and standards
Language, platform independent
Standard interface, registry and repository
Accessibility: internet, intranet, extranet
63. Reuse Web Services provide execution environment
What about source or class reuse?
ComponentSource 6500
Many companies offering business components
Oracle – BC4J (JDeveloper)
IBM – BC ex SanFrancisco
IBM - CommerceSuite
BEA
ATG
Web service to Deliver JARs..
64. EDI Current model
Restricted: point to point
Expensive
Inflexible
Confined to Fortune 1000
Migrating towards
Publish and Subscribe, flexible, cheap, extensible, any size user, “EDI for the masses”
65. Legacy Integration
66. Application Construction Division of labor:
Those who build components (web services)
Those who assemble components (applications)
Applications =
Aggregation of web services
+ core competencies
67. Application Outsourcing The use of external Web services, in effect, outsources all or part of an application
68. Service Broker Web Services + B2B products = Services Broker
eBusiness companies must consolidate their legacy and new applications together into a single eApplication.
Services broker must be able to scale to handle complex applications.
Companies such as IBM, BEA, SilverStream, WebMethods, Sybase, Iona, and Invertica are developing Service Brokers to provide a 'complete' eBusiness.
69. Service Broker Frst implementations of Service Brokers:
Extricity
Web Methods
SilverStream Extend
IBM B2Bi
BEA Process Integrator/Collaborator
70. Service Broker Components A Business Process Manager (BPM) Component
Workflow component that allows business processes to be defined.
Acts as a coordinator for interactions between multiple applications.
Applications and humans can be interfaced to this component.
WSFL is candidate for defining business process definitions
Middleware connectors
Support a variety of input and output connectors.
Connectors to include: RMI/IIOP, SOAP, JMS, CICS, IMS, any JCA supported EIS, or IIOP.
Interfaces and middleware implementation of an interface exposed by a connector can be described using WSDL.
Content-based Routing and Transformations for messages
Message-based connector's will also support simple flows that allow content based routing and message translation/transformation/enrichment.
71. Service Broker Components Security Mapping
Multiple applications and external applications will use different security schemes.
Service broker needs to provide credential/role mapping and authorization across all involved components.
Process State Management
Aggregate applications may need to store the state about the process.
Connector Discovery Mechanisms
UDDI
Transaction Monitor
Required if transactions span multiple applications
72. WSUI Web services aggregation
Controlled by xml config file
Layout complex portals
73. Issues Authentication
Encryption
Management
Transactions
Quality of service
Payment
Performance
Event Notification
Versioning
SOAP up to the job?
74. Adoption Initially within companies and between partners
Trust
Payment
Moving to UDDI when trust and payment models are developed and gain acceptance
75. Opportunities
76. Gartner “Will Web Services deliver? Yes.
Web Services are relatively low risk technology that can be used to implement high risk business strategies”
David Smith, VP, Gartner
77. Resources xml.apache.org
open source XML tools from Apache Software Foundation
www.w3.org
World Wide Web Consortium site
uddi.org
Universal, Description, Distribution Integration consortium
xmethods.com & xmltoday.com
news on SOAP service
78. Resources ibm.com.alphaworks
site for free emerging tools and technologies from IBM
ibm.com.developerworks
"the" place to go for resources, communities and updates on Web Services and XML for developers
IBM Dynamic e_business
http://www4.ibm.com/software/solutions/
webservices/resources.html
79. Resources Microsoft/net
Toolkits and documentation
OASIS
http://www.oasis-open.org/
80. Catch the next wave…..
jump on board!
81. Q & A