15
Web Services Overview MIS3502: Application Integration and Evaluation Paul Weinberg [email protected] Presentation by David Schuff

Web Services Overview MIS3502: Application Integration and Evaluation Paul Weinberg [email protected] Presentation by David Schuff

Embed Size (px)

Citation preview

Page 1: Web Services Overview MIS3502: Application Integration and Evaluation Paul Weinberg weinberg@temple.edu Presentation by David Schuff

Web Services Overview

MIS3502: Application Integration and Evaluation

Paul Weinberg

[email protected]

Presentation by David Schuff

Page 2: Web Services Overview MIS3502: Application Integration and Evaluation Paul Weinberg weinberg@temple.edu Presentation by David Schuff

Standard messaging

Scenario: The supply chainA large retailer (Wal-Mart) wants to

• Maintain optimal inventory levels• Order from multiple vendors• Dynamically adjust product mix

A vendor (Proctor and Gamble) wants to• Service multiple suppliers• Maintain service level

Page 3: Web Services Overview MIS3502: Application Integration and Evaluation Paul Weinberg weinberg@temple.edu Presentation by David Schuff

Why we like standard messages (web services or not)…

Old n’ busted...(nonstandard)

New hotness...(standard)

“I have know four different languages!”

“Now I only have to know two languages – my own and the common language”

Consider a situation where we want to communicate across languages…

English

French

German

Italian

Spanish

English

French

German

Italian

Spanish

Esperanto

Page 4: Web Services Overview MIS3502: Application Integration and Evaluation Paul Weinberg weinberg@temple.edu Presentation by David Schuff

Why we like standard messages (web services or not)…

Old n’ busted...(nonstandard)

New hotness...(standard)

“I have to know the message formats of six banks!”

“I only need to know the common format for all banks!”

Consider a point of sale system that debits directly from a particular bank account…

Standardmessage

format

Page 5: Web Services Overview MIS3502: Application Integration and Evaluation Paul Weinberg weinberg@temple.edu Presentation by David Schuff

What if all don’t use the standard message?

Then they don’t! Adhering to the standard is a business

issue, not a technology issueBusinesses can still choose to send and

receive nonstandard messages But if no one follows it, the standard is

pointless!

Page 6: Web Services Overview MIS3502: Application Integration and Evaluation Paul Weinberg weinberg@temple.edu Presentation by David Schuff

Web Services – An Emerging Standard

o Promises a new level of interoperability

o A Web service is a software application identified by a URL, whose interfaces and bindings are capable of being defined, described, and discovered as XML artifacts. A Web service supports direct interactions with other software agents using XML based messages exchanged via internet-based protocols.

Source: World Wide Web Consortiumhttp://www.w3.org/TR/wsa-reqs

Page 7: Web Services Overview MIS3502: Application Integration and Evaluation Paul Weinberg weinberg@temple.edu Presentation by David Schuff

What’s a Web Service?

“Wrapping up” application functionality (as an object) and running it on a server

Allowing people to access that object by Sending information (inputs) Receiving information (outputs)

Big Idea: Anyone can write an application to communicate directly with a web service No intermediate application (i.e., web page) is

necessary

Page 8: Web Services Overview MIS3502: Application Integration and Evaluation Paul Weinberg weinberg@temple.edu Presentation by David Schuff

What’s different about Web Services?

Everything is based on open standards

Instead of sending proprietary messages between clients and servers, it sends messages in a standard format for example, HTTP is an agreed-upon standard for

the transportation of data different EDI systems may transport data differently

Messages sent in plain (but encrypted) text, making them easy to send and receive

Page 9: Web Services Overview MIS3502: Application Integration and Evaluation Paul Weinberg weinberg@temple.edu Presentation by David Schuff

Review: A Web Service is not a Web Site

UserGoogle.com

(the site)

Google Search Engine

(the service)

ApplicationGoogle Search

(the service)

Using a web site

Using a web service

inter

acts

with

inter

acts

with

interacts directly with

without human intervention

Page 10: Web Services Overview MIS3502: Application Integration and Evaluation Paul Weinberg weinberg@temple.edu Presentation by David Schuff

Web Services Technologies

HTTP (Hypertext Transfer Protocol)

Handle the transportation of data XML (Extensible Markup Language)

Formatting of messages SOAP (Simple Object Access Protocol)

Handle the sending and receiving of messages between objects

UDDI (Universal Description, Discovery, and Integration)

Registration of services for discovery by other components

http://www.internetworld.com/dotnet.php?inc=in_focus/031501/03.15.01dotnetintro1.html

Page 11: Web Services Overview MIS3502: Application Integration and Evaluation Paul Weinberg weinberg@temple.edu Presentation by David Schuff

Web services example:PriceGrabber.com

What they do Aggregates prices

from vendors Presents them in one

place for comparison Provides customer

ratings of vendors

The problem How do you easily

interact with multiple vendors?

Page 12: Web Services Overview MIS3502: Application Integration and Evaluation Paul Weinberg weinberg@temple.edu Presentation by David Schuff

Without web services

Custom software to communicate

with J&R

PriceGrabber’s computer system

J&R’s computer system w/ price information

Best Buy’s computer system w/ price information

MacMall’s computer system w/ price information

TigerDirect’s computer system w/ price information

Custom software to communicate

with Best Buy

Custom software to communicate

with MacMall

Custom software to communicate with TigerDirect

“computer-to-computer”(no human intervention)

“browser-to-computer”

(human intervention)

Page 13: Web Services Overview MIS3502: Application Integration and Evaluation Paul Weinberg weinberg@temple.edu Presentation by David Schuff

Without standard messages

PriceGrabber’s computer system

J&R’s computer system w/ price information

Best Buy’s computer system w/ price information

MacMall’s computer system w/ price information

TigerDirect’s computer system w/ price information

Price: $120Quantity: 100Shipping: $4.00

Price: $120Quantity: 100Shipping: $4.00

Price: 150In-stock: YesShipping: 12

Price: 150In-stock: YesShipping: 12

Shipping: 5% Cost: $143Qty: 200

Shipping: 5% Cost: $143Qty: 200

$125, 200, $5$125, 200, $5

PriceGrabber’s required information from vendors:

Price: Quantity: Shipping cost:

PriceGrabber’s required information from vendors:

Price: Quantity: Shipping cost:

Software to translate data

from J&R

Software to translate data from Best Buy

Software to translate data from MacMall

Software to translate data

from TigerDirect

“computer-to-computer”(no human intervention)

“browser-to-computer”

(human intervention)

Page 14: Web Services Overview MIS3502: Application Integration and Evaluation Paul Weinberg weinberg@temple.edu Presentation by David Schuff

With standard messages

PriceGrabber’s computer system

J&R’s computer system w/ price information

Best Buy’s computer system w/ price information

MacMall’s computer system w/ price information

TigerDirect’s computer system w/ price information

<Price>120</Price><Qty>100</Qty><Ship>4</Ship>

<Price>120</Price><Qty>100</Qty><Ship>4</Ship>

PriceGrabber’s required information from vendors:

PriceQuantityShipping cost

PriceGrabber’s required information from vendors:

PriceQuantityShipping cost

<Price>150</Price><Qty>75</Qty><Ship>12</Ship>

<Price>150</Price><Qty>75</Qty><Ship>12</Ship>

<Qty>200</Qty><Price>143</Price><Ship>7.15</Ship>

<Qty>200</Qty><Price>143</Price><Ship>7.15</Ship>

<Ship>5</Ship> <Qty>200</Qty><Price>125</Price>

<Ship>5</Ship> <Qty>200</Qty><Price>125</Price>

Software which can “decode” XML and interacts with ANY web service

“computer-to-computer”(no human intervention)

“browser-to-computer”

(human intervention)

Web service

Web service

Web service

Web service

Page 15: Web Services Overview MIS3502: Application Integration and Evaluation Paul Weinberg weinberg@temple.edu Presentation by David Schuff

Summary of Web Services

Web services use web-based standards (XML, HTTP)

These standards make it easier to develop standard formats for business messagesXML is an easy, standard way to define dataHTTP is an easy, standard way to exchange

data