BA 572 - J. Galván1 THE INFRASTRUCTURE FOR E-COMMERCE Web technologies.
-
Upload
erin-mcbride -
Category
Documents
-
view
221 -
download
5
Transcript of BA 572 - J. Galván1 THE INFRASTRUCTURE FOR E-COMMERCE Web technologies.
BA 572 - J. Galván 1
THE INFRASTRUCTURE FOR E-COMMERCE
Web technologies
BA 572 - J. Galván 2
WWW- THE TRIUMPH OF ANARCHY
Perhaps the most important human technological artifact that evolved more or less ad-hoc
Limited original vision of the WWW has very little to do with today’s impressive reality
Web Users have consistently innovated in figuring out new ways of leveraging this powerful medium
Web architects then try to catch up by extending (read “patching”) the Web infrastructure to support these new uses
BA 572 - J. Galván 3
HOW IT ALL STARTED
The web as a static document repository PROBLEM:
“You have documents in your computer that I would like to see” How can I reach you? OR “I would like to send you a text message”
Tim Berners-Lee’s original vision for the WWW (circa 1989) An easy way to access cross-linked static documents stored in a
variety of servers around the world Initial specification defined:
A language for formatting such documents (HTML) A simple protocol for communicating between browsers
and servers (HTTP)
BA 572 - J. Galván 4
THE TURNING POINT
1993 -Marc Andreesen (student at UIUC) writes Mosaic – first graphical WWW browser (precursor of Netscape)
BA 572 - J. Galván 5
WWW IS A CLIENT SERVER SYSTEM
Web Clients Use HTTP protocol to connect to servers Request and display Web pages stored in
servers Typical clients: Web browsers
Web Servers Listen for incoming connections from clients Use HTTP protocol to converse with clients Store and transmit Web pages to clients
BA 572 - J. Galván 6
WWW THE ORIGINAL CONCEPT (1989-1995)
Human Readers INTERACT with Interconnected Static Documents
Main advantage: Universality
Main disadvantage Lack of interactivity Yet another mass broadcast medium
Main business use Awareness building
BA 572 - J. Galván 7
HTML
Hypertext Markup Language Used to place texts and images in web
pages Understood by all web browsers However, there are different versions
of HTML and different browsers may display different pages
BA 572 - J. Galván 8
HTML EXAMPLE
BA 572 - J. Galván 9
HTML EXAMPLE CODE <html> <head> <meta http-equiv=Content-Type content="text/html; charset=windows-1252"> <link rel=Edit-Time-Data href="webpage_archivos/editdata.mso"> <title>HEADING</title> <style><!-- .SpellE {} .Section1 {page:Section1;} --> </style> </head> <body bgcolor="#FFFFFF" link=blue vlink=purple class="Normal" lang=ES> <div class=Section1> <p>HEADING</p> <p><span class=SpellE>Subheading</span></p> <table class=MsoTableGrid border=1 cellspacing=0 cellpadding=0> <tr> <td width=192 valign=top class="Normal"> <p><span class=SpellE>Text</span></p></td> <td width=192 valign=top class="Normal"> </td> <td width=192 valign=top class="Normal"> </td> </tr> <tr> <td width=192 valign=top class="Normal"> </td> <td width=192 valign=top class="Normal"> <p> <img width=192 height=164 src="webpage_archivos/image002.gif" v:shapes="_x0000_i1025"> </p></td> <td width=192 valign=top class="Normal"> </td> </tr> <tr> <td width=192 valign=top class="Normal"> </td> <td width=192 valign=top class="Normal"> </td> <td width=192 valign=top class="Normal"> <p><a href="http://www.google.es/">link</a></p></td> </tr> </table> </div> </body> </html>
BA 572 - J. Galván 10
LAYERS IN THE WEB
Web serverBrowser
World Wide Web
Internet
Data communication network
Web application
BA 572 - J. Galván 11
The World Wide Web
Client/server application Layered on top of Internet Web page – basic information unit Web site – set of related pages Hyperlink – logical page-to-page link Home page – Web site’s starting point
BA 572 - J. Galván 12
Web Software
Browser Client-side application program
Internet Explorer, Netscape/AOL, Mozilla, Opera,...
Requests and displays (views of) Web pages Web server
Server-side application program Where a Web site resides Manages access to Web site contents Fills page requests – “serves” pages
BA 572 - J. Galván 13
STRUCTURE OF A WEBSITE
Home page
Content page 1 Content page 2 Content page 3
HyperlinkHyperlink Hyperlink
BA 572 - J. Galván 14
CONNECTIONS TO A WEBSITE
Browser Browser Browser
Web server
Client workstation Client workstation Client workstation
Host computer
Databaseof
web pages
BA 572 - J. Galván 15
HOW THE ORIGINAL WEB WORKS
BA 572 - J. Galván 16
ANATOMY OF AN URL
URL = Uniform Resource Locator
http://web.mit.edu/sloan/www/index.html
Name of protocolfor communicating with server Domain name of
Web server wherepage is stored
Pathname of pagewithin server localFile system
Name ofwebpage
Domain levels
BA 572 - J. Galván 17
HOW THE WEB WORKS (I)
BA 572 - J. Galván 18
HOW THE WEB WORKS (II)
BA 572 - J. Galván 19
HOW THE WEB WORKS (III)
BA 572 - J. Galván 20
Web Servers
Server hardware The host computer
Server software Application program
Web server (Apache, IIS) Database server E-mail server
Runs on server hardware or host
BA 572 - J. Galván 21
MULTIPLE SERVERS CAN RUN ON THE SAME HOST.
Server is software
Public webserver
Subscriberweb server
Employeeweb server
File server E-mail server
Host computer
BA 572 - J. Galván 22
MULTIPLE SERVERS CAN RUN ON
MULTIPLE INTERCONNECTED HOSTS.
A Web or Application Server is software!!
File server
Host computer
Public webserver
Host computer
Subscriberweb server
Host computer
Employeeweb server
Host computer
E-mail server
Host computer
Router
Internet
BA 572 - J. Galván 23
SEPARATE FIREWALLS AT EACH LAYER
Firewall protects Internal network from public network
Runs on Router (via Network
Address Translation)
Host Server Workstation
Public webserver
Host computer
File server
Host computer Host computer
E-mail server
Router
Internet
BA 572 - J. Galván 24
Interactivity
Early browsers limited to static pages Business need for
Animation, sound, flashing logo Access to global markets Client side data input
Need for client side interactivity
BA 572 - J. Galván 25
Client-side Interactivity
Scripts Macro-like instructions JavaScript, Jscript, VBScript Embedded in HTML text
Applet Small program executed within browser Java, VisualBasic
Plug-ins and helper applications
BA 572 - J. Galván 26
SOME POPULAR PLUG-INS.
Plug-in is “integrated” software application Processes registered file types (e.g., proprietary file formats) Often available as free download
Plug-in Supplied by Function
Acrobat Reader Adobe Display PDF filesRealAudio/RealPlayer RealAudio Play real-time audioShockwave Macromedia Display animationQuicktime Apple Animations, audio
BA 572 - J. Galván 27
Web Information Systems
Client-side interactivity Server-side interactivity
Personalized marketing JIT inventory Inter- and intra-corporate communication
BA 572 - J. Galván 28
Web Applications
Applications that support a Web information system Client/server Browser on client side Server software on server side
Middleware translates between HTML Non-Web server format
BA 572 - J. Galván 29
Middleware connects two applications/servers.
Server-side middleware links Web server Database server Other applications
HTMLrequest
HTMLdata
Browser
Client host(manufacturer)
Supplier's Database
Database server
Middleware
Web server
Server host(supplier)
Internet
Data
Data
HTMLdata
HTMLrequest
Databasequery
Databasequery
HTMLdata
HTMLrequest
BA 572 - J. Galván 30
Maintaining State
The Web is stateless Each transaction is independent No problem for Web surfing
Web information system is stateful Series of related transactions Must “remember” previous steps
Cookies provide one solution; another is registration, login, and tracking via DB
BA 572 - J. Galván 31
EVOLUTION OF THE WWW
Business Drivers Enable transactions Allow interactivity between
browser and server Facilitate personalization Support multiple browsing
devices Better organize and retrieve
Web content Support Business-to-Business
applications
BA 572 - J. Galván 32
THE WEB AS A TRANSACTION FACILITATOR
Business Motivation: Low-cost front-end for allowing customers to connect to
corporate computers Customer registration/Address changes Order tracking/Customer support Online Transactions: eCommerce
Problems of original Web concept Static web pages No interactivity Stateless protocol: no support for multi-step transactions Insecure communications
BA 572 - J. Galván 33
WEB FORMS - PRIMITIVE INTERACTIVITY
Pages which contain fields to be filled by user Usually contain a “Submit” button When user presses “Submit”, server responds by
sending a page containing information specific to the user-supplied parameters
• Examples: Web search tools Order forms in commercial web sites See e.g. http://www.google.com
BA 572 - J. Galván 34
WEB FORMS
BA 572 - J. Galván 35
BUSINESS USES OF WEB FORMS
Server sends original html page containing input fields User types info into fields and presses submit button Client establishes connection with handler script at server side
(script filename contained in web page) Client collects user input into a long string and sends it along
with an HTTP command back to server POST customer=John+Doe&cardno=1234567890&expires=6/98&product=123&quantity=5
Handler script at server reads parameter string and processes it, usually producing a new page as a result
BA 572 - J. Galván 36
CGI
Common Gateway Interface Set of standards for writing handler scripts How it works
All URLs that refer to a special directory (e.g. /cgi) cause the execution of a corresponding script at the server (for example http://web.mit.edu/cgi/test)
Scripts typically translate parameters into SQL statements for a database and translate the query results into an HTML page
BA 572 - J. Galván 37
HOW IT WORKS - FEDEX
BA 572 - J. Galván 38
MICROSOFT ACTIVE SERVER PAGES (ASP)
Competing technology to CGI Scripting Language is similar to Visual
Basic MS Access can automatically convert
database tables, queries and forms into ASP pages
Requires Microsoft web server
BA 572 - J. Galván 39
EVOLUTION OF THE WWW
Business Drivers Enable transactions Allow interactivity
between browser and server
Facilitate personalization Support multiple browsing
devices Better organize and retrieve
Web content Support Business-to-Business
applications
BA 572 - J. Galván 40
THE INTERACTIVE WEB
Business Motivation: Allow complex interaction between user browser and
corporate server Web becomes an extension of the user’s PC Browser becomes a window to a variety of corporate
applications Problems with Web Forms/CGI/ASP
All processing done at server side Rapid user interaction with Web page not possible Need local processing to create highly interactive Web
pages
BA 572 - J. Galván 41
ENTER JAVA APPLETS
Programming language to enable interactive Web pages
Developed by Sun Microsystems originally for programming intelligent microwave
ovens!!! Java programs are called applets Applets are platform-independent
They can run equally well on Windows, Macs, Unix, etc.
Require special browsers that can support Java though
BA 572 - J. Galván 42
HOW DOES JAVA WORK?
BA 572 - J. Galván 43
EVOLUTION OF THE WWW
Business Drivers Enable transactions Allow interactivity between
browser and server Facilitate personalization Support multiple browsing
devices Better organize and retrieve
Web content Support Business-to-Business
applications
BA 572 - J. Galván 44
PERSONALIZED INTERACTION
Business motivation: Low cost medium for gathering
information from customers to allow Personalized service Targeted advertising
Problems with current model Does not allow easy identification of
distinct customers
BA 572 - J. Galván 45
COOKIES
A method for identifying web users and delivering customized web sites First time user connects to a web site, s/he is asked to fill
in personal information form Server packages information into a “cookie” file and sends
cookie to browser Browser stores cookie in local file system Each subsequent time browser visits site, it sends cookie
back to server Server uses information stored in cookie to identify user
and possibly customize the supplied web pages Privacy implications?
BA 572 - J. Galván 46
COOKIE APPLICATIONS
BA 572 - J. Galván 47
SUMMARY: WWW THE CURRENT CONCEPT (1995-TODAY)
Human Users INTERACT with Documents and Applications
Main business use B2C Transactions Customer Support
BA 572 - J. Galván 48
EVOLUTION OF THE WWW
Business Drivers Enable transactions Allow interactivity between
browser and server Facilitate personalization Support multiple
browsing devices Better organize and retrieve
Web content Support Business-to-Business
applications
BA 572 - J. Galván 49
MULTIPLE DELIVERY DEVICES
Business motivation: Allow users to access web content from a variety
of devices PC Browsers PDAs (e.g. Palm Pilots) Mobile Phones Telephones (via voice interface) …
Problems of current Web model Each access device has different look-and-feel
requirements HTML specifies formatting for PC browsers only
BA 572 - J. Galván 50
EVOLUTION OF THE WWW
Business Drivers Enable transactions Allow interactivity between
browser and server Facilitate personalization Support multiple browsing
devices Better organize and
retrieve Web content Support Business-to-Business
applications
BA 572 - J. Galván 51
ORGANIZE AND INDEX WEB CONTENT
Web is useless unless we can easily locate relevant resources
Current solution: Search Engines Index the Web by automatically
“discovering” web pages and organizing them around keywords found in their text
BA 572 - J. Galván 52
HOW DOES GOOGLE WORK?
Before you ever enter a query: Programs (called “web crawlers” or “spiders”)follow links
from one page to another all over the web. The programs construct indexes of which words appear
on which pages and save the indexes (and often copies of the pages) on massive “server farms” maintained by Google.
Each page is also assigned a “page rank” based on the number of other pages that link to it. Links from pages that, in turn, have lots of other pages linking to them are weighted more heavily.
BA 572 - J. Galván 53
GOOGLE’S PAGE RANK FORMULA
PR(A) = (1-d) + d(PR(t1)/C(t1) + ... + PR(tn)/C(tn)) Where
t1 -tn are pages linking to page A, C is the number of outbound links that a page has d is a damping factor, usually set to 0.85.
In words: a page's PageRank = 0.15 + 0.85 * (a "share" of the
PageRank of every page that links to it) "share" = the linking page's PageRank divided by the
number of outbound links on the page.
BA 572 - J. Galván 54
HOW DOES GOOGLE WORK? (CONT.)
After you enter a query: Programs check the indexes to determine
which pages contain the combination of words you entered.
Google provides a list of these pages in order of page rank (order is probably affected by other factors, too)
BA 572 - J. Galván 55
GOOGLE NUMBERS AS OF DECEMBER 2004
Over four billion Web pages, each an average of 10KB, all fully indexed.
Up to 2,000 PCs in a cluster. Over 30 clusters. One petabyte of data in a cluster --so much that hard disk
error rates of 10-15 begin to be a real issue. Sustained transfer rates of 2Gbps in a cluster. An expectation that two machines will fail every day in each
of the larger clusters. No complete system failure since February 2000.
Source: ZDNet – UK <http://www.zdnet.com.au/insight/software/0,39023769,39168647,00.htm>
BA 572 - J. Galván 56
PROBLEMS WITH TODAY’S SEARCHES…
Text keywords are misleading… HTML does not give any clues as to
the true meaning of the data Example:
Desperately seeking Wendy Cook
BA 572 - J. Galván 57
EVOLUTION OF THE WWW
Business Drivers Enable transactions Allow interactivity between
browser and server Facilitate personalization Support multiple browsing
devices Better organize and retrieve
Web content Support Business-to-
Business applications
BA 572 - J. Galván 58
SUPPORT FOR B2B APPLICATIONS
Original Web was conceived as a communication medium between computers and humans
Amazing new applications will become possible if computers can automatically read and understand Web pages Electronic purchasing Intelligence gathering ….
Problem: HTML pages are unstructured HTML only provides information about presentation, not
meaning
BA 572 - J. Galván 59
WHAT IS THE UNDERLYING ISSUE?
When storing documents on the web, specify not only their appearance, but also their semantics (i.e. their meaning!)
BA 572 - J. Galván 60
WHAT IS THE MEANING OF WEBSITE ADDRESSES? BEST RADIO IN TOWN
http://www.wwoz.org/ SEARCH OF THE WORD RETREIVE IN GOOGLE
http://www.google.es/search?hl=es&q=RETREIVE&btnG=B%C3%BAsqueda+en+Google&meta=
CORRECTION GOOGLEhttp://www.google.es/search?
hl=es&sa=X&oi=spell&resnum=0&ct=result&cd=1&q=RETRIEVE&spell=1 ACCESS TO WELCOME PAGE OF A BANK
https://www.sabadellatlantico.com/es/HERRAMIENTAS/INDEX/?url=/es/PAGINA_INICIAL/BANCO_ATLANTICO/BIENVENIDOS/
INTRANEThttp://portal/default.aspx
INTRANEThttp://10.5.162.254/
LOGIN PAGE IN A BANK (Access to the Intranet)https://oi.cajamadrid.es/CajaMadrid/oi/pt_oi/Login/login
ARTICLE SELECTED IN A WEBSITEhttp://www.baquia.com/noticias.php?id=11667
BA 572 - J. Galván 61
BEST RADIO IN TOWNAn ordinary address
http://www.wwoz.org/
Hypertext protocol
Addressing the whole web
2nd level domain, owned by the organization
1st level domain. Identifies activity
BA 572 - J. Galván 62
SEARCHES
Placing “RETREIVE” in Google http://www.google.es/search?hl=es&q=RETREIVE&btnG=B%C3%BAsqueda+en+Google&meta=
After the address comes “search?” and all the data of the query
CORRECTION GOOGLE (RETRIEVE)http://www.google.es/search?hl=es&sa=X&oi=spell&resnum=0&ct=result&cd=1&q=RETRIEVE&spell=1
Includes changes in the original query after answering that the word seeked was really RETRiEVE
This type of query changes with time. It cannot be assured to recover the same document executing the same query at different times
BA 572 - J. Galván 63
ACCESS TO WELCOME PAGE OF A BANK
https://www.sabadellatlantico.com/es/HERRAMIENTAS/INDEX/?url=/es/PAGINA_INICIAL/BANCO_ATLANTICO/BIENVENIDOS/
Protocol – web – secondary + primary domains – Folders +
?url – Spanish + welcome page There are language options in previous pages
BA 572 - J. Galván 64
INTRANETS
Portal supplying asp dynamic pageshttp://portal/default.aspx
INTRANET through IP addresses within the local networkhttp://10.5.162.254/
LOGIN PAGE IN A BANK (Within the Intranet)https://oi.cajamadrid.es/CajaMadrid/oi/
pt_oi/Login/login
BA 572 - J. Galván 65
RECOVERABLE DOCUMENTS
Adobe document from National Science Foundation
http://www.nsf.gov/pubs/2007/nsf07534/nsf07534.pdf Article selected in a website
http://www.baquia.com/noticias.php?id=11667 Dynamic webpage selecting articles from a
database. The server is programmed in PHP and articles are indexed (?id=11667)
BA 572 - J. Galván 66
THE SEMANTIC WEB
The “Next Generation Web” with well-established infrastructure for expressing information in a Precise, Human-readable, and Machine-interpretable form.
Enable syntactic and semantic interoperability among independently-developed Web applications, allowing them to efficiently perform sophisticated tasks for humans.
Enable Web resources to be accessible by their semantics rather than by keywords and syntactic forms.
Enable inferencing: Chris is an associate professor at MIT. Associate professors are permanent employees. Chris is a permanent employee of MIT.
BA 572 - J. Galván 67
EVOLUTION
BA 572 - J. Galván 68
BA 572 - J. Galván 69
Please, beware of technical problems
BA 572 - J. Galván 70
NEW BUSINESS MODELS
BA 572 - J. Galván 71
HUMAN INFRASTRUCTURE