comp2513 e commerce infrastructure 2 n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Comp2513 E-Commerce Infrastructure 2 PowerPoint Presentation
Download Presentation
Comp2513 E-Commerce Infrastructure 2

Loading in 2 Seconds...

play fullscreen
1 / 28

Comp2513 E-Commerce Infrastructure 2 - PowerPoint PPT Presentation


  • 143 Views
  • Uploaded on

Comp2513 E-Commerce Infrastructure 2. Daniel L. Silver, Ph.D. Objectives. To complete an overview of the major architectural components of the Internet that form the infrastructure for E-Commerce References: portions of Sharma Ch.1 and 2, and DDEA Ch.7. Outline. Review of Architectural Map

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Comp2513 E-Commerce Infrastructure 2' - sidonia


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
objectives
Objectives
  • To complete an overview of the major architectural components of the Internet that form the infrastructure for E-Commerce
  • References: portions of Sharma Ch.1 and 2, and DDEA Ch.7

Daniel L. Silver

outline
Outline
  • Review of Architectural Map
  • Dynamic Interactive Webpages
    • Forms and CGI
    • Java and Applets, JavaScript
    • Cookies
  • Servlets and Application Servers
  • Database and Database Servers
  • Beyond HTML: XML
  • Security and Authentication
  • Electronic Payment

Daniel L. Silver

major architectural components of the web
Major Architectural Components of the Web

Bank

Server

Client 1

Dedicated

Browser

HTTP

TCP/IP

Server A

HTTP

Server

App.

Server

Database

Server

Internet

Client 2

Browser

prog.cgi

URL

index.html

Server B

Bank

Server

Daniel L. Silver

dynamic internet pages
Dynamic Internet Pages!
  • HTTP allows client to request a webpage (URL) and server to respond
  • HTML and browser allows display of data sent from server
  • How do we move data to the server?
  • How do we provide program logic at the client?
    • e.g. Check the postal code: B0P 1XO

Daniel L. Silver

forms and cgi
Forms and CGI
  • The HTML <FORM> tag specifies that:
    • Input data will be received from the keyboard
    • Data should be processed by a server application if SUBMIT button is pressed
  • CGI – Common Gateway Interface
    • Standard for HTTP client-server application communications. It defines how:
    • A client can request to run an application on a server and use specified input data
    • A server application can pass the response back to the client
    • It is NOT a programming language

Daniel L. Silver

forms and cgi1
Forms and CGI
  • An Example: greeting.html

Daniel L. Silver

java and applets
Java and Applets
  • Java is an OOP language developed by Sun Microsystems
  • Platform independent – code is interpreted by a Java Virtual Machine (JVM)
  • A Java applet is a Java program that is launched by a browser:
    • HTML page contains reference to an applet
    • Applet is downloaded from server
    • Java is executed by JVM assoc. with browser

Daniel L. Silver

java applet
Java Applet
  • Advantages:
    • Client side logic for dynamic content and format of pages
    • Client side logic for complex algorithms and local data manipulation
  • An Example: HelloApplet.html

Daniel L. Silver

javascript
Javascript
  • Introduced by NetScape
  • A client-side language
  • Provides program logic embedded in HTML for generation of dynamic webpages and minor computation
  • Manipulation of objects in HTML page including the creation and movement of browser windows
  • Most importantly allows validation of entered FORM data

Daniel L. Silver

web sessions
Web Sessions?
  • Recall the problem of web sessions being connectionless
  • TCP/IP is connection oriented but each HTTP request/response uses one such connection and then terminates
  • State is not maintained from page to page
  • Each item you order is a separate request
  • So how does a E-Comm site know how to accumulate orders for you?

Daniel L. Silver

cookies
Cookies
  • A Cookie is a small piece of data placed on a client system that is used by the server to identify the client
    • Client, about to make a request to a server, checks to see if it has an associated cookie
      • If cookie, then send it with the request
    • Server checks for cookie in request
      • If cookie, then pass it to any applications called
    • Server may create a new cookie and return it with the response to the client
    • Client receives response and checks for new cookie
      • If cookie, then it saves it for this server URL

Daniel L. Silver

servlets and application servers
Servlets and Application Servers
  • Java Applets have three major drawbacks:
    • Take time to load unto client
    • May not work as planned (depends on JVM)
    • Potential security risk for client
  • Server-side code is preferred for business logic
  • CGI allows an application to run on server but creates server performance problems:
    • Each time a separate process must be spawned

Daniel L. Silver

servlets and application servers1
Servlets and Application Servers
  • Servlets overcome this problem
  • Servlets rely on a Servlet Engine (Application Server) to manage multiple requests for the same application
  • Tomcat is one of the most common Servlet Engines

Daniel L. Silver

jsps java server pages
JSPs – Java Server Pages
  • A relatively new Java programming model from SUN that follows IBM’s older net.data and MS’s Active Server Pages
  • Objective is to separate the application processing code from the HTML presentation code
  • Easier to build dynamic E-commerce applications without loss of servlet power

Daniel L. Silver

skeleton of a jsp
Skeleton of a JSP

<HTML>

<HEAD>

<TITLE> HelloJSP1</TITLE>

</HEAD>

<BODY>

<H1>Hello JSP - Example 1 </H1>

<BEAN

name="textProvider"

type="example.Bean.HelloJSP1"

scope="request">

</BEAN>

<B><%= textProvider.getTextMessage() %></B>

</BODY>

</HTML>

Basic Html Code

Java Object Created as a Java Bean

Calling a method of the Java Object

Daniel L. Silver

major architectural components of the web1
Major Architectural Components of the Web

Bank

Server

Client 1

Dedicated

Browser

HTTP

TCP/IP

Server A

HTTP

Server

App.

Server

Database

Server

Internet

Client 2

Browser

prog.class

URL

index.html

page.jsp

Server B

Bank

Server

Daniel L. Silver

database and database servers
Database and Database Servers
  • Database - A collection of data, structured in a well defined format, accessed by multiple applications using standard commands, ensures integrity of access
  • DBMS – Database Management System – facilitates and optimizes database I/O
  • Database Server – A server that runs a DBMS and can field requests for data I/O

Daniel L. Silver

database and database servers1
Database and Database Servers
  • raven.acadiau.ca will be our database server
  • Our DBMS will be PostgreSQL (Postgres)
  • Postgres is a relational database – like a set of spreadsheet tables
  • Used to store all data for products, categories and stores
  • ODBC – Open Database Connectivity
  • JDBC – Java Database Connectivity

Daniel L. Silver

slide20
XML
  • eXtensible Markup Language
  • HTML tags such as <B>Silver<\B> tell how to display the word “Silver” (syntax)
  • But its does not define what it means
  • XML defines meaning (semantics): <last_name>Silver<\last_name>
  • And to create structure …

<mail_adrs>

<fname>Homer<\fname>

<lname>Simpson<\lname>

<strnum>1234<\strnum>

<str>Hickup Lane<\str>

<\mail_adrs>

Daniel L. Silver

security and authentication
Security and Authentication
  • HTTP connections can be “sniffed” for their data – just plain ASCII text
  • Encryption methods encode text to make it unreadable
  • Public and private keys are used for coding and decoding encrypted messages
  • Authentication concerns ensuring that a sender is who she says she is

Daniel L. Silver

security and authentication1
Security and Authentication
  • Certificate is an entity’s public key plus other identification (name., location)
  • SSL – Secure Socket Layer
    • Lies between TCP/IP and HTTP and performs encryption
  • HTTPS is the HTTP protocol that employs SSL – it will use a separate server port (default = 443)

Daniel L. Silver

security through https
Security through HTTPS

Bank

Server

Client 1

Dedicated

HTTP

TCP/IP

Browser

Server A

port = 80

HTTP

Server

App.

Server

Database

Server

HTTPS

port = 443

prog.cgi

URL

index.html

Daniel L. Silver

e payment
E-Payment
  • Credit card
  • Debit card
  • Micro-payments
  • Smart card

Daniel L. Silver

major architectural components of the web2
Major Architectural Components of the Web

Bank

Server

Client 1

Dedicated

Browser

HTTP

TCP/IP

Server A

HTTP

Server

App.

Server

Database

Server

Internet

Client 2

Browser

prog.cgi

URL

index.html

Server B

Bank

Server

Daniel L. Silver

successful e commerce applications
Successful E-Commerce Applications
  • Flexible – ever changing products, technology, business process
  • Multi-channel interfaces - diversity of user and external application access
  • Security – a primary concern
  • Integration – no application is an Island

Daniel L. Silver

summary of technical requirements for e comm
Summary of Technical Requirements for E-Comm.
  • Dynamic, personalized web user interfaces
  • Multi-channel user interface support
  • Adheres to standard application interfaces
  • Distributed programming/acrhitectural model
  • Deployment on distributed components
  • Distributed transaction support
  • Asynchronous message communications
  • Strong security

Daniel L. Silver