1 / 46

LYU9901 TravelNet

Explore the features and improvements in design of TravelNet, an online travel agency. Discover the use of Java Server Pages (JSP) and distributed components in CORBA, as well as sophisticated payment methods.

lyndam
Download Presentation

LYU9901 TravelNet

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. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


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

  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 equip 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 (will not be covered) • Payment Systems integration • Credit Card Payment • Mondex Payment

  12. 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)

  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 products/services 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(1) Fig 2.Performance on Single-Threaded Model Fig1. Performance on Multi-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. Fig4. Mondex Card Fig4. iReader Mondex Equipments

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

  37. Communication Architecture(2) Payment Server 4 TravelNet 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

  38. Communication Architecture(3) Payment Server 4 TravelNet 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.

  39. Communication Architecture(4) Payment Server 4 TravelNet 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.

  40. Communication Architecture(5) Payment Server 4 TravelNet Web Server 1 2 3 5 6 Consumer Web Browser 6. 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 • Limited the possible monetary loss

  42. Program Listing(1)

  43. Program Listing(2)

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

  45. 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

  46. End of Presentation Thank You!

More Related