Скачать презентацию LYU 9901 Travel Net Final Presentation Supervisor Prof Скачать презентацию LYU 9901 Travel Net Final Presentation Supervisor Prof

6ebaba085c326ed4b6b678340e311dea.ppt

  • Количество слайдов: 46

LYU 9901 Travel. Net Final Presentation Supervisor: Prof. Michael R. Lyu Members: Ho Chi LYU 9901 Travel. Net Final Presentation Supervisor: Prof. Michael R. Lyu Members: Ho Chi Ho Malcolm Lau Chi Ho Arthur On 25 -04 -2000

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

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

Features (Membership) • Require users to register first before using the service provided • 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 4

Features (Online Shop) • Selling of Travel Accessories e. g Luggage, Maps, etc • 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 5

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

Features (Flight Search) • Allow users to search flights from some basic information • 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 7

Features (Itinerary) • Keep flight items that are going to be reserved • Allow 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 8

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

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

Implementation Improvements • Java Server Pages • CORBA components integration – Airline Services Components Implementation Improvements • Java Server Pages • CORBA components integration – Airline Services Components – Shop Stock management Components (will not be covered) • Payment Systems integration – Credit Card Payment – Mondex Payment 11

Introduction to JSP • Mixing the Introduction to JSP • 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) 12

JSP features • Combines the worlds of HTML and Java Servlet programming – Similar 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 1 st access) 13

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

Reason of Using JSP • Separate layout design from processing module design • Share 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 15

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

Introduction to CORBA • Standard of building distributed application • Allow bindings of different 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 17

URL Naming Service • Server objects need to provide a interoperable object reference (IOR) 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 18

CORBA in Travel. Net • Integration in two parts: Airline Service and Stock Management CORBA in Travel. Net • 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 19

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

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

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

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

Performance(4) • Experiment 1 requires calling 10 or more CORBA objects while Experiment 2 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 24

Payment Systems Integration • Unavoidable part of any E-Commerce System • Different Type of Payment Systems Integration • Unavoidable part of any E-Commerce System • Different Type of products/services favor different types of payment • Travel. Net Support two types of payment – Credit Card – Mondex Card 25

Credit Card Payment System • The Most Common way for internet shopping • Travel. Credit Card Payment System • The Most Common way for internet shopping • Travel. Net 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 26

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

Communication Architecture (2) II. Merchant Encrypt the Information with Payment Gateway’s Public Key and 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 28

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

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

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

Payment Performance(1) Fig 1. Performance on Multi-Threaded Model Fig 2. Performance on Single-Threaded Model Payment Performance(1) Fig 1. 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. 32

Payment Performance(2) • Over 80% of the processing time of a payment is spent 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 Travel. Net – First come first serve – Reduce over head 33

Micro-Payment: Mondex • Store value smart-card becomes more popular because they are more convenient 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 34

Mondex Equipments Fig 4. i. Reader Fig 4. Mondex Card 35 Mondex Equipments Fig 4. i. Reader Fig 4. Mondex Card 35

Communication Architecture(1) Payment Server 4 Travel. Net Web Server 1 2 3 5 6 Communication Architecture(1) Payment Server 4 Travel. Net Web Server 1 2 3 5 6 Consumer Web Browser 1. Client browse Travel. Net and select product/services 2. Client request a Mondex Payment 36

Communication Architecture(2) Payment Server 4 Travel. Net Web Server 1 2 3 5 6 Communication Architecture(2) Payment Server 4 Travel. Net Web Server 1 2 3 5 6 Consumer Web Browser 3. 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 37

Communication Architecture(3) Payment Server 4 Travel. Net Web Server 1 2 3 5 6 Communication Architecture(3) Payment Server 4 Travel. Net Web Server 1 2 3 5 6 Consumer Web Browser 4. 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. 38

Communication Architecture(4) Payment Server 4 Travel. Net Web Server 1 2 3 5 6 Communication Architecture(4) Payment Server 4 Travel. Net Web Server 1 2 3 5 6 Consumer Web Browser 5. 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. 39

Communication Architecture(5) Payment Server 4 Travel. Net Web Server 1 2 3 5 6 Communication Architecture(5) Payment Server 4 Travel. Net Web Server 1 2 3 5 6 Consumer Web Browser 6. Travel. Net will send the acknowledgement page to customer’s Web server together with a payment transaction ID. 40

Mondex Advantages • Convenient usage • More secure than Credit Card Payment • Suitable Mondex Advantages • Convenient usage • More secure than Credit Card Payment • Suitable for micro-payment • Limited the possible monetary loss 41

Program Listing(1) 42 Program Listing(1) 42

Program Listing(2) 43 Program Listing(2) 43

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

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

End of Presentation Thank You! 46 End of Presentation Thank You! 46