LYU9901 TravelNet Final Presentation Supervisor: Prof. Michael R. Lyu Members: Ho Chi Ho Malcolm Lau Chi Ho Arthur On 25-04-2000.

Slides:



Advertisements
Similar presentations
Chapters 14 & 15 Internet Databases. E-Commerce  Bringing new products, services, or ideas to market, supporting and enhancing business operations 
Advertisements

Copyright 2004 Monash University IMS5401 Web-based Systems Development Topic 2: Elements of the Web (g) Interactivity.
JSP: JavaServer Pages Juan Cruz Kevin Hessels Ian Moon.
Distributed Transaction on CORBA Presented by Leung Kin Wai, Andrew Student No.: Supervisor: Professor Michael R. Lyu.
Servlets and a little bit of Web Services Russell Beale.
15 Chapter 15 Web Database Development Database Systems: Design, Implementation, and Management, Fifth Edition, Rob and Coronel.
Introduction to ASP.NET. 2 © UW Business School, University of Washington 2004 Outline Static vs. Dynamic Web Pages.NET Framework Installing ASP.NET First.
Web Servers How do our requests for resources on the Internet get handled? Can they be located anywhere? Global?
Design, Implementation, and Experimentation on Mobile Agent Security for Electronic Commerce Applications Anthony H. W. Chan, Caris K. M. Wong, T. Y. Wong,
LYU9901 Travel-Net Supervisor: Prof. Michael R. Lyu Members: Ho Chi Ho Malcolm Lau Chi Ho Arthur.
LYU9901-Travel Net LYU9901-Travel Net Supervisor: Prof. Michael R. Lyu Students: Ho Chi Ho Malcolm Lau Chi Ho Arthur (Presentation on )
1 CS6320 – Why Servlets? L. Grewe 2 What is a Servlet? Servlets are Java programs that can be run dynamically from a Web Server Servlets are Java programs.
LYU9901 Travel-Net Supervisor: Prof. Michael R. Lyu Members: Ho Chi Ho Malcolm Lau Chi Ho Arthur.
J2EE Kenneth M. Anderson CSCI Web Technologies October 3, 2001.
Introduction to Web Applications Instructor: Enoch E. Damson.
Computer Science 101 Web Access to Databases Overview of Web Access to Databases.
1 Generic SMS Gateway for AtLink Enterprise Voice Integration Instructor: Dr. Kwok-Bun Yue, Ph.D Mentor: Mr. Dilhar De Silva Team #6: Dang Nguyen Huy Do.
SE-2840 Dr. Mark L. Hornick1 Java Servlet-based web apps Servlet Architecture.
Sys Prog & Scripting - HW Univ1 Systems Programming & Scripting Lecture 15: PHP Introduction.
Copyright © 2002 Pearson Education, Inc. Slide 4-1.
ELC 200 Day 9. Agenda Questions? Assignment 2 is Due Assignment 3 is posted  Due Feb. 25, 2014  assignment3.pdf assignment3.pdf Finish Building an E-commerce.
 2000 Deitel & Associates, Inc. All rights reserved. Chapter 24 – Web Servers (PWS, IIS, Apache, Jigsaw) Outline 24.1Introduction 24.2Microsoft Personal.
1 CS 3870/CS 5870 Static and Dynamic Web Pages ASP.NET and IIS.
1 CS 3870/CS 5870 Static and Dynamic Web Pages ASP.NET and IIS.
MIS 301 Information Systems in Organizations Dave Salisbury ( )
Server-side Scripting Powering the webs favourite services.
Basics of Web Databases With the advent of Web database technology, Web pages are no longer static, but dynamic with connection to a back-end database.
Copyright © 2006 by The McGraw-Hill Companies, Inc. All rights reserved. McGraw-Hill Technology Education Chapter 10B Doing Business in the Online World.
SSL and https for Secure Web Communication CSCI 5857: Encoding and Encryption.
About Dynamic Sites (Front End / Back End Implementations) by Janssen & Associates Affordable Website Solutions for Individuals and Small Businesses.
MSS*: Chapter 3 Shopping carts & Payment gateways * McClure, Stuart, Saumil Shah, and Shreeraj Shah. Web Hacking: attacks and defense. Addison Wesley.
Java Omar Rana University of South Asia. Course Overview JAVA  C/C++ and JAVA Comparison  OOP in JAVA  Exception Handling  Streams  Graphics User.
ITIS 1210 Introduction to Web-Based Information Systems Chapter 43 Shopping on the Internet.
Jaeki Song ISQS6337 JAVA Lecture 16 Other Issues in Java.
Chemical Toxicity and Safety Information System Shuanghui Luo Ying Li Jin Xu.
Introduction to Internet Programming (Web Based Application)
11/16/2012ISC329 Isabelle Bichindaritz1 Web Database Application Development.
M1G Introduction to Database Development 6. Building Applications.
J2EE Structure & Definitions Catie Welsh CSE 432
Web Server Administration Chapter 7 Installing and Testing a Programming Environment.
Project Overview Graduate Selection Process Project Goal Automate the Selection Process.
FYP: LYU0001 Wireless-based Mobile E-Commerce on the Web Supervisor: Prof. Michael R. Lyu By: Tony, Wat Hong Fai Harris, Yan Wai Keung.
_______________________________________________________________________________________________________________ E-Commerce: Fundamentals and Applications1.
Chapter 6 Server-side Programming: Java Servlets
Project Overview Graduate Selection Process Project Goal Automate the Selection Process.
_______________________________________________________________________________________________________________ E-Commerce: Fundamentals and Applications1.
Database Systems: Design, Implementation, and Management Eighth Edition Chapter 14 Database Connectivity and Web Technologies.
1 MSCS 237 Overview of web technologies (A specific type of distributed systems)
NCR Confidential NCR RETAIL ONLINE Ecommerce Made Simple 1.
Server-side Programming The combination of –HTML –JavaScript –DOM is sometimes referred to as Dynamic HTML (DHTML) Web pages that include scripting are.
Java for networking Module Introduction Data Communications Communication architecture Application.
JS (Java Servlets). Internet evolution [1] The internet Internet started of as a static content dispersal and delivery mechanism, where files residing.
1 G52IWS: Web Services Chris Greenhalgh. 2 Contents The World Wide Web Web Services example scenario Motivations Basic Operational Model Supporting standards.
Introduction and Principles Web Server Scripting.
WEB SERVER SOFTWARE FEATURE SETS
Web Services Using Visual.NET By Kevin Tse. Agenda What are Web Services and Why are they Useful ? SOAP vs CORBA Goals of the Web Service Project Proposed.
SMARTSHOP By: EVN BHARGAV NAGARAJU NAIDU – SASHI TERLI Belligerents.
An Architectural Evaluation of Java TPC-W Harold “Trey” Cain, Ravi Rajwar, Morris Marden, Mikko Lipasti University of Wisconsin-Madison
Fall 2000C.Watters1 World Wide Web and E-Commerce Servers & Server Side Processing.
E-commerce Architecture Ayşe Başar Bener. Client Server Architecture E-commerce is based on client/ server architecture –Client processes requesting service.
From Coulouris, Dollimore, Kindberg and Blair Distributed Systems: Concepts and Design Edition 5, © Addison-Wesley 2012 Slides for Chapter 9 Web Services.
A Presentation Presentation On JSP On JSP & Online Shopping Cart Online Shopping Cart.
Online Airline Reservation System
Chapter 8 E-Commerce Technologies Introduction to Business Information Systems by Mark Huber, Craig Piercy, Patrick McKeown, and James Norrie.
1 Chapter 1 INTRODUCTION TO WEB. 2 Objectives In this chapter, you will: Become familiar with the architecture of the World Wide Web Learn about communication.
PHP / MySQL Introduction
LYU9901 TravelNet Final Presentation Supervisor: Prof. Michael R. Lyu
ECT455 Website Engineering
Struts BY: Tejashri Udavant..
Presentation transcript:

LYU9901 TravelNet Final Presentation Supervisor: Prof. Michael R. Lyu Members: Ho Chi Ho Malcolm Lau Chi Ho Arthur On

2 Outline Project Objectives Features Improvement in Design –The use of Java Sever Pages(JSP) –Distributed Components in CORBA –Sophisticated Payment Methods Conclusion

3 Project Objectives Exploring elements of e-commerce applications Building of an online travel agency: TravelNet The use of distributed components by CORBA The integration of sophisticated payment methods

4 Features (Membership) Require users to register first before using the service provided Login the system with a username and password Allow the change of personal profile

5 Features (Online Shop) Selling of Travel Accessories e.g Luggage, Maps, etc A shop basket to store the items to purchase Checkout of the shop basket

6 Features (Travel Guide) Basic description on different cities Help users to plan for their trips

7 Features (Flight Search) Allow users to search flights from some basic information Search mode: one-way and round-trip Search result is sorted by time Allow users to add suitable item in their itinerary

8 Features (Itinerary) Keep flight items that are going to be reserved Allow users to add items from search result or manually Allow users to remove unwanted items Booking of flights by itinerary

9 Features (Hotel Information) Basic information on selected hotels Help users to choose hotels in their trips

10 Features (Payment) Support of credit card payment and smart card (Mondex) payment For Mondex, users should equipped with a reader Details are discussed in the later part

11 Implementation Improvements Java Server Pages CORBA components integration –Airline Services Components –Shop Stock management Components Payment Systems integration –Credit Card Payment –Mondex Payment

12 Mixing the "static" content of HTML files with "directives" for accessing or generating dynamic content. Java Server Pages (JSP) provide server-side scripting support for generating web pages with combined static and dynamic content. Making use of JSP for separating : –Layout design (in HTML) –Processes (in Java) Introduction to JSP

13 JSP features Combines the worlds of HTML and Java Servlet programming –Similar to HTML pages with new tags to control the generation of dynamic content Client access from an HTTP server Pre-compilation of JSP to Servlet which is responsible for generating dynamic pages Reside in application server memory (pre-load OR 1st access)

14 Request from browser to JSP of HTTP server Servlet request the Bean Bean request information from back-ends JSP response requested information to browser

15 Reason of Using JSP Separate layout design from processing module design Share the same advantages as Java Servlets have No need for installing new software component for using JSP

16 Distributed Components Anticipate the need of distributed components for better system management By CORBA technology

17 Introduction to CORBA Standard of building distributed application Allow bindings of different languages through IDL Interaction between client and server objects by ORB Facilitate location transparency, access transparency and better server-side scaling abilities

18 URL Naming Service Server objects need to provide a interoperable object reference (IOR) for client objects to locate its existence Using URL Naming Service, server object associate its reference through URL A file contains the stringified server object Client get the file through this URL

19 CORBA in TravelNet Integration in two parts: Airline Service and Stock Management Airline Service: mainly for flight query and reservation Airline Manager as client to connect to the remote Airline Server each Airline Manager binds with one specific Airline Server

20 CORBA in TravelNet(2) The interface makes everything abstract No difference in invoking methods from the view of TravelNet’s component which calls for the airline service Stock Management: Access and update remote shop stock inventory

21 Performance Comparison between distributed version in CORBA and non-distributed one Two experiments are carried out for evaluation

22 Performance(2) Experiment 1: One-way flight search

23 Performance(3) Experiment 2: Round-Trip flight reservation

24 Performance(4) Experiment 1 requires calling 10 or more CORBA objects while Experiment 2 only need one. Each CORBA object pose a 0.5 sec overhead Overhead is accumulative Conclusion: CORBA is negative to performance If using parallel processing, can reduce the effect of the overhead Still beneficial to design for the availability

25 Payment Systems Integration Unavoidable part of any E-Commerce System Different Type of product/service favor different types of payment TravelNet Support two types of payment –Credit Card –Mondex Card

26 Credit Card Payment System The Most Common way for internet shopping TravelNet is not possible to connect to real banking system. A system developed by a post-grad student (Steve K.L. Chong) in CSE department. The System simulated the major steps in a secured Credit Payment

27 Communication Architecture (1) I. Customer Card information is sent on SSL to TravelNet. Information also contain products customers bought and amount to pay.

28 Communication Architecture (2) II. Merchant Encrypt the Information with Payment Gateway’s Public Key and request a debit on the specific card from Payment Gateway

29 Communication Architecture (3) Internal communication behind the Payment gateway. Payment request will be sent and a payment result will sent back for this payment

30 Communication Architecture (4) III. The Payment result will be return back to TravelNet. Again it’s encrypted but by TravelNet’s Public Key.

31 Communication Architecture (5) IV. TravelNet verify the payment. And response to the client Web Browser. This traffic need not be encrypted.

32 Payment Performance Fig1. Performance on Multi-Threaded Model Fig 2.Performance on Single-Threaded Model The performance of multi-threaded model degrade More Rapidly than that of single-threaded model (to number of concurrent users) Mainly due to: Tasking switching & Database conflict locking.

33 Payment Performance(2) Over 80% of the processing time of a payment is spent on Payment Gateway side Single-Threaded model is the default mode for Credit Card payment for TravelNet –First come first serve –Reduce over head

34 Micro-Payment: Mondex Store value smart-card becomes more popular because they are more convenient and secure. Mondex is one of the most common one in the market There is a Mondex project in CSE so we have a chance to make use of this technology

35 Mondex Equipments Fig4. Mondex Card Fig4. iReader

36 Communication Architetcure(1) Payment Server TravelNet Web Server Consumer Web Browser Client browse TravelNet and select product/services 2. Client request a Mondex Payment

37 Communication Architetcure(2) Payment Server TravelNet Web Server Consumer Web Browser Server will sign a Payment request for the customer. The payment requests and other merchant information will be sent to customer as a client plugin program’s parameters

38 Communication Architetcure(3) Payment Server TravelNet Web Server Consumer Web Browser Customer call the plugin-program and connect to Mondex payment server to start a payment. Payment result will be returned to plugin-program after the Payment process.

39 Communication Architetcure(4) Payment Server TravelNet Web Server Consumer Web Browser The payment result will be passed from client plugin-program back to merchant Server. The merchant will verify the payment result. If it can be verify successfully, post-payment process will be done.

40 Communication Architetcure(5) Payment Server TravelNet Web Server Consumer Web Browser TravelNet will send the acknowledgement page to customer’s Web server together with a payment transaction ID.

41 Mondex Advantages Convenient usage More secure than Credit Card Payment Suitable for micro-payment

42 Program Listing(1)

43 Program Listing(2)

44 Program Listing(3) Total Number of lines = 5310 Total Number of Characters =

45 Conclusion A complete system of online e-commerce application New features provided to the basic system Integrated with Distributed Components Support different types of payment methods

46 End of Presentation