Web Services - New York University
Download
Report
Transcript Web Services - New York University
Web Services
Web Services
• New set of XML – based protocols that allow
internet services to be:
– Self Describing
• I.e. there is a method to query them about the parameters that
are needed to invoke them
– Automatically discovered
• I.e. there is a way to determine the existence and location of a
new service
– Able to run over any type of connection to any type of
device
• Use SOAP to hide network layer, can run over HTTP
Example of a Car Web Service
• You drive a car from NYC to Boston and want to get a
cup of coffee
• Coffee sellers: publish/post their services at certain
registries using a service description language
• You: tell the car to discover the best coffee offering
• Car starts purchasing transaction with the seller
– invoke the discovered service, put order, pay (credit card)
• Get driving instructions and pick up the coffee
Purchase Order Example
• Old Purchase order (PO) submission process
– POs submitted by e-mails
– E-mails are manually processed and PO entered into firm’s PO
system (format conversion)
– Invoices are generated and manually pasted into an e-mail
message
– Problem: speed, cost, conversion/spelling errors
• Web service will automate submission process
–
–
–
–
PO automatically processed
Invoice automatically generated
No human in the loop
Faster, cheaper, more reliable method
What is a Web Service?
• Definition: A Web service is a software system designed to
support interoperable machine-to-machine interaction
over a network. It has an interface described in a machineprocessable format (specifically WSDL). Other systems
interact with the Web service in a manner prescribed by its
description using SOAP-messages, typically conveyed
using HTTP with an XML serialization in conjunction with
other Web-related standards. (taken from
http://www.w3.org/TR/2003/WD-ws-arch20030808/#whatis)
• A new breed of web application. They are self describing,
self-contained, modular applications that can be published,
located and invoked across the web
Key Features of Web Services
• Applications published on the Web that perform
certain functions, e.g.
weather reports, stock quotes, travel package
• Other applications discover and invoke them
• Are self-contained, self-described and modular:
represent black-box functionality
– defined by messages service accepts & generates
– is independent of underlying implementation
• Invoked using standard Internet protocols
– E.g., HTTP protocol and XML data format
Web Service Models
• Partner: serve known customers, partners and
remote business units
– E.g., Continental lets its customers check flight info
and do upgrades remotely.
• Private: Integrate software apps within a
company developed on different platforms
– Build bridges between different apps with Web
services front ends; EAI
• Public: Offer Web services to the world
– Register a service with a broker for consumers to find
them, negotiate terms and use them
– E.g., get a weather information, buy a product.
What is a Web Service?
Open
Internet
Protocols
Web
Service
A programmable application
component accessible via standard
Internet protocols
You can ask a site or device for a
description of its Web Services, or use
a directory service such as UDDI
UDDI
Web Services
Web Services are defined in terms of the
Description Language
formats and ordering of messages
Web Service consumers can send and
receive messages using SOAP
All these capabilities are built using
open Internet protocols
SOAP
XML, HTTP
Components and Operations
Service Broker
Publish/ Un-publish
Find
Service
Requestors
Bind
Web Services Components and Operations
Service
Providers
Building On An XML Foundation
Benefits Of XML Foundation
User: Beyond browsing
– Access and act on information
– Greater control, better decision-making, easier
collaboration
– Optimal support for different devices
Business: Integration by design
– Best-of-breed internally and externally
– Business processes and partners
– Agility to run, adapt business better
Industry: New opportunities
– Don’t have to do it all yourself
– Make your value easier to consume
– “Plug and play” business relationships
SOAP
• Simple Object Access Protocol
– Allows movement of data defined by XML
– Describes a message and how it should be treated
– Has rules for relating data in an application to data in a
database
– Has a framework for developing processes and
procedures that can run on one system while calling
data from another
• http://www.w3c.org/TR/soap
UDDI
• Use SOAP and XML to define ways for
applications to find out about the existence
and capabilities of other applications
• Should speed up interactions that use SOAP
and XML
• http://www.uddi.org
WSDL
• Does for web services what XML does for
data
– Defines services and describes ways of
invoking them
– Provides a complete description of a service,its
location (i.e., address, port), and a list of
operations available.
• http://www.w3c.org/TR/wsdl
Benefits of Web Services
• Business Process Automation
• Enterprise Application Integration
• Freedom to choose the best technology platform in
each situation
• Promotes Interoperability
• Reduce Complexity through encapsulation
• Increases access points
• Enable Just in Time integration
Web Services Promise…
• Ability to distribute applications anywhere
on the Web
• Services can be changed / updated without
touching the calling application
• Should dramatically increase ease of
implementing B2B applications
Issues and Concerns
• New and untested technology
• XML agreements
– Firms have to agree on document descriptions
• Transaction management
• Security
• Quality of Service (QoS)
–
–
–
–
Reliability
Scalability
Performance
Availability and Accessibility
Summary
• The Web services framework is being defined,
standardized and supported by the industry at a
record pace.
• Broad industry acceptance and standard
compliance will make it ubiquitous.
• Will bring an unprecedented level of
interoperability to Web applications.
• The benefits of Web services, however, are not
limited to the Web!
Applications
•
•
•
•
•
Real Time Data – News Stock Quotes
Internet Telephony Services
Instant Messaging
CRM
Straight Through Processing
– Automated end-to-end processing of
transactions from trade inception to settlement
Creating Web Services
• ASP.NET
– Easiest way to create web services
• SOAP Toolkit V2 (VS6) – MSDN
– http://msdn.microsoft.com/webservices/
• SOAP Toolkits for
– Apache - http://xml.apache.org/soap/
– XMethods http://www.xmethods.net
– …more on google
Examples of Web Services today
•
•
•
•
http://www.amazon.com/webservices
http://www.weather.com
http://www.google.com
http://www.flamenconetworks.com is a firm that
creates software for development of web services
• MSN network and Verizon Wireless in a joint
venture to provide wireless data services
http://www.webservices.org/index.php/article/artic
leview/408/1/29/
For more information…
• http://www.ibm.com/software/webservices
• http://java.sun.com/webservices
• http://msdn.microsoft.com/webservices/unde
rstanding