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