celebrating the 18 th anniversary of electronic pizza july 9, 2002

45
Copyright 2002 Global Optima, Inc. All rights reserved. Celebrating the 18 th Anniversary of Electronic Pizza July 9, 2002 Gail Honda, Global Optima, Inc. and Kipp Martin, University of Chicago Important Trends in Internet Software Technology

Upload: winter-zamora

Post on 30-Dec-2015

105 views

Category:

Documents


1 download

DESCRIPTION

Important Trends in Internet Software Technology. Celebrating the 18 th Anniversary of Electronic Pizza July 9, 2002. Gail Honda, Global Optima, Inc. and Kipp Martin, University of Chicago Graduate School of Business. www.globaloptima.com. Slides can be downloaded at:. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Celebrating the 18 th  Anniversary of  Electronic Pizza July 9, 2002

Copyright 2002 Global Optima, Inc. All rights reserved.

Celebrating the 18th Anniversary of Electronic Pizza

July 9, 2002

Gail Honda, Global Optima, Inc.

and

Kipp Martin, University of Chicago

Graduate School of Business

Important Trends in Internet Software Technology

Page 2: Celebrating the 18 th  Anniversary of  Electronic Pizza July 9, 2002

Copyright 2002 Global Optima, Inc. All rights reserved.

www.globaloptima.com

Slides can be downloaded at:

Page 3: Celebrating the 18 th  Anniversary of  Electronic Pizza July 9, 2002

Copyright 2002 Global Optima, Inc. All rights reserved.

The Essential Guide to InternetBusiness Technology

(Prentice Hall, February 2002)

More detailed information in:

www.amazon.comwww.barnesandnoble.com

Book Signings this Saturday, July 13, at:Borders Ward Centre 12 Noon – 1:00 p.m.Borders Waikele 3:00 p.m. – 4:00 p.m.

Page 4: Celebrating the 18 th  Anniversary of  Electronic Pizza July 9, 2002

Copyright 2002 Global Optima, Inc. All rights reserved.

Topics to be covered:

3. Unix/Java vs. Microsoft?

1. Why did Bill Gates say he’s “embracing XML in everything we do?”

2. How are Web services changing the way software is purchased and used?

Page 5: Celebrating the 18 th  Anniversary of  Electronic Pizza July 9, 2002

Copyright 2002 Global Optima, Inc. All rights reserved.

1. Why did Bill Gates say he’s “embracing XML in everything we do?”

• What is XML?

• How is XML used?

• Why is XML important?

Page 6: Celebrating the 18 th  Anniversary of  Electronic Pizza July 9, 2002

Copyright 2002 Global Optima, Inc. All rights reserved.

Why is XML Important?

Consider the following scenarios:

4. Problem with recipe data

1. Problem with online clothing retailer

2. Problem with company using reorder Web service

3. Problem with Web search engine

Page 7: Celebrating the 18 th  Anniversary of  Electronic Pizza July 9, 2002

Copyright 2002 Global Optima, Inc. All rights reserved.

Why is XML Important?

There are three key problems illustrated:

1. We want data in an open format that is easily exchanged.

2. We want to give meaning to the data.

3. All parties must agree to the meaning of the data.

Page 8: Celebrating the 18 th  Anniversary of  Electronic Pizza July 9, 2002

Copyright 2002 Global Optima, Inc. All rights reserved.

It is changing the way data are exchanged between businesses

• Enormous amounts of data are exchanged daily between businesses

Why is XML important?

• Electronic data exchange used to be the purview of only the largest companies

• With XML, small and medium-sized businesses can engage in electronic data exchange

• EDI (Electronic Data Interchange) required a mainframe, private networks, and expensive transactions

Page 9: Celebrating the 18 th  Anniversary of  Electronic Pizza July 9, 2002

Copyright 2002 Global Optima, Inc. All rights reserved.

GUI – Human Based Interaction

Monitor

Data

Page 10: Celebrating the 18 th  Anniversary of  Electronic Pizza July 9, 2002

Copyright 2002 Global Optima, Inc. All rights reserved.

Component Software Based Interaction

Data

Page 11: Celebrating the 18 th  Anniversary of  Electronic Pizza July 9, 2002

Copyright 2002 Global Optima, Inc. All rights reserved.

Middleware – Without XML

6 Translations (N (N - 1)/ 2 in General)

Data

Data Data

Data

Page 12: Celebrating the 18 th  Anniversary of  Electronic Pizza July 9, 2002

Copyright 2002 Global Optima, Inc. All rights reserved.

Middleware – XML Based Integration

Only 4 Translations (N in General)

Data

Data Data

Data

Page 13: Celebrating the 18 th  Anniversary of  Electronic Pizza July 9, 2002

Copyright 2002 Global Optima, Inc. All rights reserved.

What is HTML?

<html> <head> </head> <body> <center> See <b> Spot </b> Run </center> </body></html>

HTML tags

The document

The actual document.

Page 14: Celebrating the 18 th  Anniversary of  Electronic Pizza July 9, 2002

Copyright 2002 Global Optima, Inc. All rights reserved.

What is XML?

<purchaseorder><sku>

<id>674a

</id><price>

$55.27</price><salesrep>

[email protected]</salesrep>

</sku></purchaseorder>

XML tags

Data

The actual document.

Page 15: Celebrating the 18 th  Anniversary of  Electronic Pizza July 9, 2002

Copyright 2002 Global Optima, Inc. All rights reserved.

What is XML?

XML stands for extensible markup language.How does it differ from HTML (hypertext markup language)?

1. HTML is for formatting data – syntax.

2. XML gives meaning to data – semantics.

3. With XML you can separate data from the document.

4. XML is object-oriented.

5. XML is meta-language—you can create your own tags.

6. XML breaks a Web page into three parts: the data, the document description, and the formatting.

Page 16: Celebrating the 18 th  Anniversary of  Electronic Pizza July 9, 2002

Copyright 2002 Global Optima, Inc. All rights reserved.

Why are companies switching to XML?

How is XML Used?

• Ideally, this information should be in an “open” easily understood format

• Nearly all major software firms are developing software that is XML-enabled

• This saves time, labor, money, and eliminates human error

• Software components need to exchange information, e.g.

purchase orders, invoices, etc.

Page 17: Celebrating the 18 th  Anniversary of  Electronic Pizza July 9, 2002

Copyright 2002 Global Optima, Inc. All rights reserved.

2. How are Web services changing the way software is purchased and used?

• What exactly are Web services? The general definition and the technical definition.

• Why are HP, IBM, Microsoft, Oracle, and Sun emphasizing development tools for Web services?

• What are the great promises of Web services?

Page 18: Celebrating the 18 th  Anniversary of  Electronic Pizza July 9, 2002

Copyright 2002 Global Optima, Inc. All rights reserved.

What are the great promises of Web services?

In a word: Interoperability

1. Software languages and operating systems become irrelevant.

2. Location of software becomes irrelevant.

3. Whether software is new or on a legacy system becomes irrelevant.

Page 19: Celebrating the 18 th  Anniversary of  Electronic Pizza July 9, 2002

Copyright 2002 Global Optima, Inc. All rights reserved.

What are the great promises of Web services?

Web services may lower costs

1. Reduces the cost and headaches of multiple platforms running on everything from mainframes to servers to desktops to PC

2. Lowers the cost of collaborating with external partners, vendors, or clients

3. Offers a way to maintain and integrate legacy systems at a lower cost than adopting entirely new enterprise application software

Page 20: Celebrating the 18 th  Anniversary of  Electronic Pizza July 9, 2002

Copyright 2002 Global Optima, Inc. All rights reserved.

What are the great promises of Web services?

Who’s actually using Web services?

1. In software development: Adobe Systems

2. In computer manufacturing: Compaq

3. In travel: Dollar Rent-A-Car

Page 21: Celebrating the 18 th  Anniversary of  Electronic Pizza July 9, 2002

Copyright 2002 Global Optima, Inc. All rights reserved.

What exactly are Web services?

The general definition:

The technical definition:

Software or data storage available over the Web.

A software component accessible to client using:

1. HTTP2. XML

Page 22: Celebrating the 18 th  Anniversary of  Electronic Pizza July 9, 2002

Copyright 2002 Global Optima, Inc. All rights reserved.

Why are they so great?

1. Uses open standards – XML, HTTP, TCP/IP

3. Client software not restricted to browser interface

2. Can be used by components – people not necessary

4. Only need to worry about HTTP port in the firewall – close the other ports

What exactly are Web services?

Page 23: Celebrating the 18 th  Anniversary of  Electronic Pizza July 9, 2002

Copyright 2002 Global Optima, Inc. All rights reserved.

Middleware – Web Service

Page 24: Celebrating the 18 th  Anniversary of  Electronic Pizza July 9, 2002

Copyright 2002 Global Optima, Inc. All rights reserved.

Middleware – Web Service

Client Server

Request:POST /asmx/mortgage.asmx

HTTP/1.1

Header:SOAPAction: "http://gsbkxm/

MonthlyPayment"

Body:SOAP Envelope

Response:HTTP1.1/20HTTP/1.1 200 OK

Header:Content-Type: text/xml;

charset=utf-8

Body:<?xml version="1.0"encoding="utf-8" ?>

<double xmlns="http://gsbkxm">

341.08814002809504</double>

Page 25: Celebrating the 18 th  Anniversary of  Electronic Pizza July 9, 2002

Copyright 2002 Global Optima, Inc. All rights reserved.

The Holy Trinity

1. SOAP (Simple Object Access Protocol) - A middleware APIprotocol based on XML

2. WSDL (Web Service Description Language) - Description(using XML) of how a Web service is used; this document “exposes” the Web service API, an IDL for SOAP

3. UDDI (Universal Description and Discovery) – A “yellow pages” for Web services

What exactly are Web services?

Page 26: Celebrating the 18 th  Anniversary of  Electronic Pizza July 9, 2002

Copyright 2002 Global Optima, Inc. All rights reserved.

Wow, this is complicated!!!!!

• API – this is a concept, not software or a physical thing

• WSDL – a language (XML based) to describe the API, we create an actual WSDL document

• SOAP envelope – contains an actual instance of the data that conforms to the API

What exactly are Web services?

Page 27: Celebrating the 18 th  Anniversary of  Electronic Pizza July 9, 2002

Copyright 2002 Global Optima, Inc. All rights reserved.

SOAP

• The HTTP POST Request

• The Request SOAP Envelope

• The HTTP Response

• The Return XML

What exactly are Web services?

Page 28: Celebrating the 18 th  Anniversary of  Electronic Pizza July 9, 2002

Copyright 2002 Global Optima, Inc. All rights reserved.

Web Service

Page 29: Celebrating the 18 th  Anniversary of  Electronic Pizza July 9, 2002

Copyright 2002 Global Optima, Inc. All rights reserved.

SOAP

• Here is the file mortgage.asmx

<%@ WebService Codebehind="mortgage.cs“ Class="Mortgage" %>

• Here is the Codebehind – the C# program

What exactly are Web services?

Page 30: Celebrating the 18 th  Anniversary of  Electronic Pizza July 9, 2002

Copyright 2002 Global Optima, Inc. All rights reserved.

WSDL

• We need to know the details of a Web service APIin order to use it.

• Here is the Mortgage WSDL.

• You write a program that uses the WSDL to makethe necessary calls. This is trivial to do withthe new Visual Studio .NET

What exactly are Web services?

Page 31: Celebrating the 18 th  Anniversary of  Electronic Pizza July 9, 2002

Copyright 2002 Global Optima, Inc. All rights reserved.

UDDI

• Use UDDI to find your Web Services

• Go to uddi.org

• See the IBM Web site for some examples of Web Services.

What exactly are Web services?

Page 32: Celebrating the 18 th  Anniversary of  Electronic Pizza July 9, 2002

Copyright 2002 Global Optima, Inc. All rights reserved.

Why are HP, IBM, Microsoft, Oracle, and Sun emphasizing development tools for Web services?Emergence of Web services due to:

• The weak client-strong server paradigm

• The popularity of Internet devices

• Microsoft – Office.NET and Passport

• Sun – SunRay and StarPortal

Page 33: Celebrating the 18 th  Anniversary of  Electronic Pizza July 9, 2002

Copyright 2002 Global Optima, Inc. All rights reserved.

3. Unix/Java vs. Microsoft?

• What is the open source movement?

• What are the strengths and weaknesses of Unix/Java and Microsoft?

• How does the battle affect your business?

Page 34: Celebrating the 18 th  Anniversary of  Electronic Pizza July 9, 2002

Copyright 2002 Global Optima, Inc. All rights reserved.

You are going to have to decide

• Strong or weak client on the desktop

• Which operating system on the desktop

• Which operating system on the servers

• Which development languages to use

How does the battle affect your business?

Page 35: Celebrating the 18 th  Anniversary of  Electronic Pizza July 9, 2002

Copyright 2002 Global Optima, Inc. All rights reserved.

What is the open source movement?

What does open mean?

• Can the source code be seen?

• What are the restrictions on its use?- can you modify it- can you redistribute it

• Who controls the standard?

• Is it multi-platform?

Page 36: Celebrating the 18 th  Anniversary of  Electronic Pizza July 9, 2002

Copyright 2002 Global Optima, Inc. All rights reserved.

• Freedom Zero: the user may run the program for any purpose

• Freedom One: the owner may alter the source code

• Freedom Two: the owner may distribute copies of the software

• Freedom Three: the owner may modify and distribute modified source code

• GPL: general public license – designed to protect these freedoms

As Richard Stallman says – think freedom of speech not freebeer!

What is the difference between open sourcesoftware and “free” software?

What is the open source movement?

Page 37: Celebrating the 18 th  Anniversary of  Electronic Pizza July 9, 2002

Copyright 2002 Global Optima, Inc. All rights reserved.

• Other open source examples: MySQL, Apache, and Gnome

• IBM is making a huge commitment to Linux

• Linux a threat to Microsoft?

Open Source Examples

Linux – Unix based operating system

• Linux a threat to Sun?

Page 38: Celebrating the 18 th  Anniversary of  Electronic Pizza July 9, 2002

Copyright 2002 Global Optima, Inc. All rights reserved.

• Perhaps the greatest open source/free software example

• Still has a small penetration in the desktop market.

• Key trend – lots of small servers running Linux

Open Source Examples

The importance of Linux

• Unix based operating system – actually GNU/Linux

• Expected to have about 30% of server market in 2002 (at the expense of other versions of Unix)

Page 39: Celebrating the 18 th  Anniversary of  Electronic Pizza July 9, 2002

Copyright 2002 Global Optima, Inc. All rights reserved.

Java/Unix Strengths

1. The big one – write once, run anywhere

2. Proven reliability and scalability

3. Rapid development: object-oriented with lots of classes available

What are the strengths and weaknesses ofUnix/Java and Microsoft?

Page 40: Celebrating the 18 th  Anniversary of  Electronic Pizza July 9, 2002

Copyright 2002 Global Optima, Inc. All rights reserved.

MacintoshCompiler

MacintoshApplication

Macintosh

Macintosh SourceCode

WindowsCompiler

WindowsApplication

Windows SourceCode

UnixCompiler

UnixApplication

Unix Source Code

Workstation

IBM Compatible

The Software Process for Different Operating Systems

Page 41: Celebrating the 18 th  Anniversary of  Electronic Pizza July 9, 2002

Copyright 2002 Global Optima, Inc. All rights reserved.

Key Concept: ONLY ONE operating system dependent piece of software is required!

Macintosh

JavaCompiler

ApplicationBytecode

Java Source Code

UnixWorkstation

IBM Compatible

Mac JRE

IBM JRE

Unix JRE

Java

Page 42: Celebrating the 18 th  Anniversary of  Electronic Pizza July 9, 2002

Copyright 2002 Global Optima, Inc. All rights reserved.

Java/Unix Weaknesses

1. May be very expensive if you go the Sun/Oracleroute.

2. May have to deal with multiple vendors.

What are the strengths and weaknesses of Unix/Java and Microsoft?

Page 43: Celebrating the 18 th  Anniversary of  Electronic Pizza July 9, 2002

Copyright 2002 Global Optima, Inc. All rights reserved.

Microsoft Strengths

1. Gives the same vendor/OS on front and back end

2. Usually a low cost solution

3. Technology easy to implement and getting easier

4. Can use multiple languages

What are the strengths and weaknesses of Unix/Java and Microsoft?

Page 44: Celebrating the 18 th  Anniversary of  Electronic Pizza July 9, 2002

Copyright 2002 Global Optima, Inc. All rights reserved.

Key Concept: Similar to Java -- .NET compiler compilesinto platform independent language. The Microsoft equivalentof the JRE is the CLR (Common Language Runtime)

Macintosh

.NETCompiler

ApplicationMSIL

C#, VB, C++Source Code

UnixWorkstation

IBM CompatibleMS CLR

?

?

Microsoft .NET

Page 45: Celebrating the 18 th  Anniversary of  Electronic Pizza July 9, 2002

Copyright 2002 Global Optima, Inc. All rights reserved.

Microsoft Weaknesses

1. Commitment to one platform - Wintel

2. Until recently, not proven for reliability and scalability

What are the strengths and weaknesses of Unix/Java and Microsoft?

3. Security!