Java Petstore : A Case Study Rohit Nambiar July 2005.

Slides:



Advertisements
Similar presentations
RP Designs Semi-Custom e-Commerce Package. Overview RP Designs semi- custom e-commerce package is a complete website solution. Visitors can browse a catalog.
Advertisements

1 Copyright © 2005, Oracle. All rights reserved. Introduction.
3 Copyright © 2005, Oracle. All rights reserved. Designing J2EE Applications.
J2EE Architecture Overview
09/04/2015Unit 2 (b) Back-Office processes Unit 2 Assessment Criteria (b) 10 marks.
Apache Struts Technology
Virtual Ticketing Agents using Web Services and J2EE Advisor: Dr. Chung-E-Wang Date: 05/06/03 Naveen Repala.
J2EE PET STORE &.NET PET SHOP Yong-Han Lee & Charles Harsch.
Internet Sellouts Final Presentation Enterprise Architecture Group.
Integrating SOA and the Application Development Framework Shaun O’Brien Principal Product Manager – Oracle JDeveloper / ADF.
Model-View-Controller ("MVC") This is a architectural design pattern for interactive applications. This design pattern organizes an interactive application.
Some of these slides were excerpted from: Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich, Jeffrey A. Hoffer.
Layers & Tiers Umair Javed Lec - 41.
Copyright © 2002 Pearson Education, Inc.
Chapter 9: Electronic Commerce Software
Enterprise Programming By J Pearce. Enterprise Software Sales HR Inventory Customer Support Shipping.
Nikolaos Korfiatis The Java 2 Enterprise Edition Platform Dept. of Management & Technology-Athens University of Economics and Business Java 2 Platform.
Application Architectures Vijayan Sugumaran Department of DIS Oakland University.
J2EE Kenneth M. Anderson CSCI Web Technologies October 3, 2001.
12-1 © Prentice Hall, 2004 Chapter 12: Design Elements Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich, Jeffrey.
Apache Struts Technology A MVC Framework for Java Web Applications.
Overview of Design Patterns & The MVC Design Pattern Sapana Mehta.
ONLINE ORDERING Advantages: Your school’s Net-Discounted price is displayed (You can budget more accurately. Accounts payable has fewer adjustments to.
Java Pet Store Application. Outline Introduction Introduction Information Layer Information Layer Application Layer Application Layer Infrastructure Layer.
Efficiently Distributing Component-Based Applications Across Wide-Area Environments D. Llambiri, A. Totok, V. Karamcheti New York University.
UNIT-V The MVC architecture and Struts Framework.
Chapter 10 EJB Concepts of EJB Three Components in Creating an EJB Starting/Stopping J2EE Server and Deployment Tool Installation and Configuration of.
CSCI 6962: Server-side Design and Programming Course Introduction and Overview.
A Cross-Platform Component Based Ecommerce Framework in.NET Vishwak Rajgopalan Under the guidance of Dr. Daniel Andresen (Major Professor) Dr. Mitchell.
ITIS 1210 Introduction to Web-Based Information Systems Chapter 43 Shopping on the Internet.
Online Music Store MSE Project Presentation I Presented by: Reshma Sawant Major Professor: Dr. Daniel Andresen.
Compuware Corporation Business Driven SOA Edwin Schumacher Director of Product Management
Enterprise JavaBeans. What is EJB? l An EJB is a specialized, non-visual JavaBean that runs on a server. l EJB technology supports application development.
SUN J2EE Architecture (Introduction, J2EE Patterns, Samples)
第十四章 J2EE 入门 Introduction What is J2EE ?
® IBM Software Group © 2007 IBM Corporation J2EE Web Component Introduction
Slide 1 Physical Architecture Layer Design Chapter 13.
Case Study + MVC Lec Error Pages By means of the page directive, a JSP can be given the responsibility of an Error page An Error JSP will be called.
Source: Peter Eeles, Kelli Houston, and Wojtek Kozaczynsky, Building J2EE Applicationa with the Rational Unified Process, Addison Wesley, 2003 Prepared.
Architectural Patterns Support Lecture. Software Architecture l Architecture is OVERLOADED System architecture Application architecture l Architecture.
Databases JDBC (Java Database Connectivity) –Thin clients – servlet,JavaServer Pages (JSP) –Thick clients – RMI to remote databases –most recommended way.
Model View Controller Architecture of Java Web Applications Dr. M V S Peri Sastry, Ph.D.[BITS-Pilani]
Enterprise Java Beans. Model 1 J2EE – Web View Model/View/Controller Model View Control Data base Web Server Model One Architecture HTTP Request HTTP.
Model View Controller MVC Web Software Architecture.
Introduction to Enterprise JavaBeans Topics In Systems Architecture Barry Herbold
Java EE Patterns Dan Bugariu.  What is Java EE ?  What is a Pattern ?
© FPT SOFTWARE – TRAINING MATERIAL – Internal use 04e-BM/NS/HDCV/FSOFT v2/3 JSP Application Models.
Preface IIntroduction Objectives I-2 Course Overview I-3 1Oracle Application Development Framework Objectives 1-2 J2EE Platform 1-3 Benefits of the J2EE.
1 Copyright © 2004, Oracle. All rights reserved. Oracle Application Development Framework.
CSE300 EAIusing EJB & XML CSE Enterprise Application Integration Using EJB and XML by Prithwis Sett Mumtaz Lohawala Nayana Paranjape.
Introduction to EJB. What is an EJB ?  An enterprise java bean is a server-side component that encapsulates the business logic of an application. By.
Introduction to EJB. What is an EJB ?  An enterprise java bean is a server-side component that encapsulates the business logic of an application. By.
Chapter 9 Web Application Design. Objectives Describe the MVC design pattern as used with Web applications Explain the role and responsibilities of each.
Java Programming: Advanced Topics 1 Enterprise JavaBeans Chapter 14.
©NIIT Introducing Enterprise JavaBeans (EJB) Lesson 1A / Slide 1 of 43J2EE Server Components Objectives In this lesson, you will learn about: The features.
Expense Tracking System Developed by: Ardhita Maharindra Muskan Regmi Nir Gurung Sudeep Karki Tikaprem Gurung Date: December 05 th, 2008.
Apache Struts Technology A MVC Framework for Java Web Applications.
Building J2EE Applications Based on Design Patterns with Business Components for Java Olivier LE DIOURIS Principal Product Manager Oracle Corporation.
A Project Report On Online Shopping By: Ruchi Kumari (08ERWCS089)
By Jeremy Burdette & Daniel Gottlieb. It is an architecture It is not a technology May not fit all businesses “Service” doesn’t mean Web Service It is.
A Presentation Presentation On JSP On JSP & Online Shopping Cart Online Shopping Cart.
Business Applications– Using Java _____ Presented by Priya Saha.
J2EE Platform Overview (Application Architecture)
Introduction to J2EE Architecture
Design and Maintenance of Web Applications in J2EE
Java Messaging Service (JMS)
Distributed System Using Java 2 Enterprise Edition (J2EE)
Comparing J2EE and .NET Frameworks
Java Messaging Service (JMS)
Enterprise Java Beans.
Presentation transcript:

Java Petstore : A Case Study Rohit Nambiar July 2005

OBJECTIVE :  Demonstrate, Java BluePrints help in building flexible, scalable, cross-platform Web-based applications.  Show the recommended Architectural design pattern approaches to designing J2ee application.  Discuss the Architecture of the Petstore Application.  Discuss the consistent Petstore design conforming to the J2ee Design Patterns.  Give an Overview as to how the application benefits from such Architecture and Design.  Build and run the petstore application.  Unit testing, Profiling and Load testing the Petstore application to get some performance statistics.

Background :  Basic J2ee Architecture

Background continued……  J2EE application is hosted within a container  Consists of Client Tier, Web Service container and Back end Database  Web Service container – Web Container and EJB container  Business logic is built using Enterprise JavaBeans (EJB) components. and connects to databases using JDBC or SQL/J  Business partners can connect with J2EE applications through web services technologies (SOAP, UDDI, WSDL, ebXML)

Introduction Continued…… Use Case Diagram

ACTORACTION DESCRIPTION CustomerHomepageThe main page that loads when the user first starts the application. CustomerBrowse catalogEach category has several products associated to it CustomerBrowse DetailEach product variant has detailed view that displays the product description, a product image, price, and the quantity in stock. CustomerBrowse ItemEach Item is viewed. CustomerBrowse ProductsIf we now select a product the application will display all variants of the product. CustomerUpdate CartThis allows the user to manipulate the shopping cart (add, remove, and update line items). CustomerUpdate Personal InfoThis allows user to update and manage his personal information CustomerUpdate AccountThis allows user to view his Account. CustomerSign OffThe checkout page displays the shopping cart. CustomerSubmit OrderThe billing and the shipping addresses are displayed. CustomerPurchase OrderThe final step wherein the order is committed to the database.

Petstore Model View Controller Architecture:  The MVC architecture provides flexibility, reusability, testability and clear design roles for application components.

Structural View Architecture:

Petstore Modules & Functionalities: MODULESFUNCTIONALITY SignOnIt helps a user to sign on before accessing certain screens, and manages the sign on process ControlSends request to the business logic, controls screen flow, also coordinates component interactions. Product CatalogUser can search for products and also shows the descriptions of the selected items CustomerThis module helps in representing customer information like address, credit card info and contact info. MailUsed for sending confirmation messages to the user. Shopping CartIt tracks the items a user has selected for purchase.  Web Application Framework

Class Diagram – SignOn Module

Product Catalog Module

Shopping Cart Module

Mail Module:

Customer Module:

Control Module:  Filter Request: Encoding Filter, which ensures that request and response encoding match and SignOnFilter, which enforces security and performs user signon.  Front Controller - MainServlet processes all requests and handles request dispatch, screen flow, and view generation.  Map request to HTML action and execute HTML action  Map event to EJB action and execute EJB action  View selection

Control Module Continued……..

PAGE FLOW DIAGRAM:

Evaluations:  Web Application Framework - WAF provides a number of services including request filtering and dispatching, templated view generation, a set of reusable custom tags, and screen flow control.  EJB centric design – For Petstore, the buisness logic is shifted to the EJB tier. This provides scalability, reliability, persistence, asynchronous communication and security control.  Local enterprise beans – It provides high-performance access to fine- grained business logic, while maintaining the high-level services of an enterprise beans container.  Code Complexity – Approximately lines of code. 100 Packages appx and 300 Classes appx.

Enhancement:  Sun claims blueprints described are not for performance but is a kind of benchmark for building j2ee applications.  No real performance measure were done to compare with other web applications.  To have a comparative case study of the architectural and design differences of a java Petstore and an equivalent.Net Petshop and run some perfomance tests to get some statistics.

Refrences: [1] Sun Microsystems, ; [2] Java Blueprints, [3] Java Petstore Source code, [4] D. Alur, J. Crupi, D. Malks. Core J2EE Patterns., Prentice Hall PTR. [5] Model–View–Controller, er/ [6] Core j2ee Patterns, [7] Designing Enterprise Applications with the J2EETM Platform, Second Edition s_2e/ [8] Java Pet Store Sample Application Implements Core J2EE Patterns, [9] AppPerfect DevSuite 5.0 Testing Tool, er/ s_2e/