6ebaba085c326ed4b6b678340e311dea.ppt
- Количество слайдов: 46
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 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 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 • 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 • 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 for their trips 6
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 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 hotels in their trips 9
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 – Shop Stock management Components (will not be covered) • Payment Systems integration – Credit Card Payment – Mondex Payment 11
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 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 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 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 • By CORBA technology 16
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) 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 • 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 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 are carried out for evaluation 21
Performance(2) • Experiment 1: One-way flight search 22
Performance(3) • Experiment 2: Round-Trip flight reservation 23
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 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. 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. 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 request a debit on the specific card from Payment Gateway 28
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. 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 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 • 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 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 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
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 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 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 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 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 for micro-payment • Limited the possible monetary loss 41
Program Listing(1) 42
Program Listing(2) 43
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 basic system • Integrated with Distributed Components • Support different types of payment methods 45
End of Presentation Thank You! 46