Copyright © 2012 Accenture All Rights Reserved.Copyright © 2012 Accenture All Rights Reserved. Accenture, its logo, and High Performance Delivered are.

Slides:



Advertisements
Similar presentations
3 Copyright © 2005, Oracle. All rights reserved. Designing J2EE Applications.
Advertisements

1 Copyright © 2005, Oracle. All rights reserved. Introducing the Java and Oracle Platforms.
Welcome to Middleware Joseph Amrithraj
Apache Struts Technology
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 9 Distributed Systems Architectures Slide 1 1 Chapter 9 Distributed Systems Architectures.
Objectives In this session, you will learn to:
Copyright © 2008 Accenture All Rights Reserved. Accenture, its logo, and High Performance Delivered are trademarks of Accenture. Andrew Stone Common Security.
Technical Architectures
Model-View-Controller ("MVC") This is a architectural design pattern for interactive applications. This design pattern organizes an interactive application.
Distributed Systems Architectures
Layers & Tiers Umair Javed Lec - 41.
Satzinger, Jackson, and Burd Object-Orieneted Analysis & Design
J2EE Java2 Enterprise Edition by Damian Borth. Contents Introduction Architectures styles Components Scenarios Roles Processing a HTTP request.
J2EE Java 2 Enterprise Edition. Relevant Topics in The Java Tutorial Topic Web Page JDBC orial/jdbc
Enterprise Programming By J Pearce. Enterprise Software Sales HR Inventory Customer Support Shipping.
Application Architectures Vijayan Sugumaran Department of DIS Oakland University.
Logical Architecture and UML Package Diagrams
CS6320 – J2EE L. Grewe MOTIVATION: E-commerce and Enterprise Computing Models Four models for e-commerce and enterprise computing: Four models for e-commerce.
Client/Server Architecture
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 1 Distributed Systems Design 1.
Emmanuel Cecchet et al.  Performance Scalability of J2EE application servers.  Test effect of: ◦ Application Implementation Methods ◦ Container Design.
Web Application Architecture: multi-tier (2-tier, 3-tier) & mvc
Java Pet Store Application. Outline Introduction Introduction Information Layer Information Layer Application Layer Application Layer Infrastructure Layer.
Web application architecture
N-Tier Architecture.
UNIT-V The MVC architecture and Struts Framework.
Objectives Design Class Diagrams Issues in system design Generalization Review UML papers.
Chapter 10 EJB Concepts of EJB Three Components in Creating an EJB Starting/Stopping J2EE Server and Deployment Tool Installation and Configuration of.
Copyright © 2012 Accenture All Rights Reserved. Copyright © 2012 Accenture All Rights Reserved. Accenture, its logo, and High Performance Delivered are.
The Design Discipline.
Logical Architecture and UML Package Diagrams 徐迎晓 复旦大学软件学院.
Copyright © cs-tutorial.com. Introduction to Web Development In 1990 and 1991,Tim Berners-Lee created the World Wide Web at the European Laboratory for.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 12 Slide 1 Distributed Systems Architectures.
Introduction to distributed systems Dr. S. Indran 23 January 2004.
Copyright © 2012 Accenture All Rights Reserved.Copyright © 2012 Accenture All Rights Reserved. Accenture, its logo, and High Performance Delivered are.
1 Copyright © 2004, Oracle. All rights reserved. Introduction to Oracle Forms Developer and Oracle Forms Services.
Copyright © 2012 Accenture All Rights Reserved.Copyright © 2012 Accenture All Rights Reserved. Accenture, its logo, and High Performance Delivered are.
Copyright © 2012 Accenture All Rights Reserved.Copyright © 2012 Accenture All Rights Reserved. Accenture, its logo, and High Performance Delivered are.
Copyright © 2011 EMC Corporation. All Rights Reserved. MODULE – 6 VIRTUALIZED DATA CENTER – DESKTOP AND APPLICATION 1.
Introduction to J2EE Architecture Portions by Kunal Mehta.
M1G Introduction to Database Development 6. Building Applications.
第十四章 J2EE 入门 Introduction What is J2EE ?
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 07. Review Architectural Representation – Using UML – Using ADL.
® IBM Software Group © 2007 IBM Corporation J2EE Web Component Introduction
Requirements To Design--Iteratively Chapter 12 Applying UML and Patterns Craig Larman.
MACIASZEK, L.A. (2001): Requirements Analysis and System Design. Developing Information Systems with UML, Addison Wesley Chapter 6 - Tutorial Guided Tutorial.
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.
Copyright © 2002 ProsoftTraining. All rights reserved. JavaServer Pages.
UML Package Diagrams. Package Diagrams UML Package Diagrams are often used to show the contents of components, which are often packages in the Java sense.
© FPT SOFTWARE – TRAINING MATERIAL – Internal use 04e-BM/NS/HDCV/FSOFT v2/3 JSP Application Models.
Seminar on Service Oriented Architecture Distributed Systems Architectural Models From Coulouris, 5 th Ed. SOA Seminar Coulouris 5Ed.1.
1 Copyright © 2004, Oracle. All rights reserved. Oracle Application Development Framework.
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.
1 Distributed System using J2EE. 2 What is J2EE?  J2EE (Java2 Enterprise Edition) offers a suite of software specification to design, develop, assemble.
Copyright © 2012 Accenture All Rights Reserved.Copyright © 2012 Accenture All Rights Reserved. Accenture, its logo, and High Performance Delivered are.
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.
Java Programming: Advanced Topics 1 Enterprise JavaBeans Chapter 14.
Creating competitive advantage Copyright © 2003 Enterprise Java Beans Presenter: Wickramanayake HMKSK Version:0.1 Last Updated:
2 Copyright © Oracle Corporation, All rights reserved. Basic Oracle Net Architecture.
J2EE Platform Overview (Application Architecture)
Chapter 12: Architecture
CIIT-Human Computer Interaction-CSC456-Fall-2015-Mr
N-Tier Architecture.
Introduction to J2EE Architecture
Distributed System Using Java 2 Enterprise Edition (J2EE)
Lecture 1: Multi-tier Architecture Overview
Chapter 12: Physical Architecture Layer Design
Presentation transcript:

Copyright © 2012 Accenture All Rights Reserved.Copyright © 2012 Accenture All Rights Reserved. Accenture, its logo, and High Performance Delivered are trademarks of Accenture. Application Delivery Fundamentals 2.0: Java Module 21: Introduction to Elements of Enterprise Architecture

Copyright © 2012 Accenture All Rights Reserved. Module Objectives (1 of 2) At the end of this module, you will be able to: Explain the purpose of Enterprise Application Tiers. Describe the differences between a tier and a layer. Describe the differences between multi-tier architecture and multi-layer architecture. Describe the dependency principle of multi-layer architecture. Identify various multi-tier architecture models. 2

Copyright © 2012 Accenture All Rights Reserved. Module Objectives (2 of 2) At the end of this module, you will be able to: Describe the role of each tier within the Java EE application. Distinguish between logical and physical separation of tiers. Describe the rationale behind multi-tier and multi-layer applications. 3

Copyright © 2012 Accenture All Rights Reserved. Agenda This module will cover the following topics: Introduction to the Elements of EA Tiers and Layers Multi-tier/Multi-layer Architecture Multi-layer Architecture Dependency Principle Multi-tier Architecture Models Core Java EE Application Tier Roles Logical/Physical Separation of Tiers Multi-tier Vs. Multi-layer Applications Summary 4

Copyright © 2012 Accenture All Rights Reserved. [Half-page image. Size: 9.53cm x 25.4cm, Position: 0,0] “Enterprise Architecture (EA) is about understanding all of the different elements that go to make up the enterprise and how the elements inter-relate.” – Institute for Enterprise Architecture Developments Introduction to the Elements of EA (1 of 2) 5

Copyright © 2012 Accenture All Rights Reserved. Introduction to the Elements of EA (2 of 2) Application Client JSP Pages Dynamic HTML Pages Java Beans Database Client Tier Web Tier Business Tier EIS Tier Client Machine J2EE Server Machine Database Server Machine J2EE Application 2 J2EE Application 1 6

Copyright © 2012 Accenture All Rights Reserved. [Half-page image. Size: 9.53cm x 25.4cm, Position: 0,0] Layers refer to the logical organization of code. Tiers refer to the physical organization of the code. Tiers are places where layers reside. Tiers and Layers 7

Copyright © 2012 Accenture All Rights Reserved. Tiers and Layers TiersLayers Refer to physical separation.Refer to logical separation. Live in distinct processes or machines.Live typically within the same process and machine. May communicate remotely or locally.Remoting technology is not necessary. Client TierStorage Tier Business Layer Presentation Layer Storage Layer 8

Copyright © 2012 Accenture All Rights Reserved. Multi-tier/Multi-layer Architecture Multi-tier architectureMulti-layer architecture Tiers are physical separation and units of deployment. Examples are exe, archives, etc. Layers are the logical separation and units of design. One tier can be deployed to many machines.Layers are elements of design and help to obtain modularity and separation of concern. Multiple tiers can be deployed on one machine. Elements of layers are grouped as package and classes. Tier 1 Tier 2 Tier n Layer 1 Layer 2 Layer 3 Layer n 9

Copyright © 2012 Accenture All Rights Reserved. [Half-page image. Size: 9.53cm x 25.4cm, Position: 0,0] Definition of the Dependency Principle: Each layer depends on the layer below and not on the one above. Platform changes affect only the layer that runs on it. Multi-layer Architecture Dependency Principle 10

Copyright © 2012 Accenture All Rights Reserved. Multi-layer Architecture Dependency Principle An Example. This diagram is an example of the Dependency Principle in layers. Dependency Dependencies Client layer Presentation layer Model layer Persistence layer 11

Copyright © 2012 Accenture All Rights Reserved. Multi-layer Architecture Dependency Principle Dependency Principle – Violation Dependency The following code is an example depicting a violation of the Dependency Principle. 12

Copyright © 2012 Accenture All Rights Reserved. Multi-layer Architecture Dependency Principle Direct Dependency Business Delegate pattern: Weakens dependency of the Presentation layer on the Model layer. Encapsulates all Model Layer information required by presentation layer. Clients Lookup Service Business Delegate Business Service Uses Lookup/Create 13

Copyright © 2012 Accenture All Rights Reserved. Multi-tier Architecture Models: One tier 14

Copyright © 2012 Accenture All Rights Reserved. Multi-tier Architecture Models: Two tier Presentation Layer Model Layer Persistence Layer Drivers and Adapters 15

Copyright © 2012 Accenture All Rights Reserved. Multi-tier Architecture Models: Three tier Presentation layer Business layer Persistence layer and 16

Copyright © 2012 Accenture All Rights Reserved. Multi-tier Architecture Models: Multi-tier Java EE 17

Copyright © 2012 Accenture All Rights Reserved. [Half-page image. Size: 9.53cm x 25.4cm, Position: 0,0] Many applications can be described in terms of their tiers. The application functionality is built across such tiers. Core Java EE Application Tier Roles (1 of 2) 18

Copyright © 2012 Accenture All Rights Reserved. Core Java EE Application Tier Roles (2 of 2) The five different physical tiers and their responsibilities are displayed below. Represents the system and/or devices. Responsible for encapsulating UI displays, presentation logic, and invoking application business services. Responsible for providing business services. Responsible for communicating with the external resources. Responsible for storing business data. Presentation Tier Client Tier Business Tier Integration Tier Resource Tier 19

Copyright © 2012 Accenture All Rights Reserved. [Half-page image. Size: 9.53cm x 25.4cm, Position: 0,0] The ability to separate the logical and physical tiers is a crucial factor to the long-term viability of a system. Logical/Physical Separation of Tiers 20

Copyright © 2012 Accenture All Rights Reserved. Logical/Physical Separation of Tiers Logical Separation This diagram displays tiers distributed in terms of software infrastructure. 21

Copyright © 2012 Accenture All Rights Reserved. Logical/Physical Separation of Tiers Physical Separation This diagram displays tiers distributed across different types of hardware. 22

Copyright © 2012 Accenture All Rights Reserved. Multi-tier Vs. Multi-layer Applications Physical Independence: Can be deployed to different servers. Can run distributed application components on the computers best suited to their individual computing requirements. Logical Independence: Layers can be changed without impacting other modules. Physically Independent Logically Independent Use Common Services Rationale TierYes Use common services Supports Component distribution LayerNot necessarilyYesNo Modularity Separation of Concerns 23

Copyright © 2012 Accenture All Rights Reserved. Exercise - NewCodington Application Mapping to EA Tiers (1 of 2) Fill in the blanks in the following sentences: A. ______ are the logical separation and unit of design. B. The ___________ is responsible for storing business data. Definition: “Each layer (Presentation, Model, and Persistence) can depend on the layer below and not on the one above.” C. The definition above is known as Multi-layer ___________ Principle. D. The ________ Tier is responsible for providing business services. 24 Layers Resource Tier Dependency Business

Copyright © 2012 Accenture All Rights Reserved. Exercise - NewCodington Application Mapping to EA Tiers (2 of 2) In the image below find the suitable terms for A, B, C, D and E from the following list of terms: Presentation Tier Browser Business Tier Integration Tier MySQL 25 Presentation Tier Integration Tier Business Tier MySQL Browser

Copyright © 2012 Accenture All Rights Reserved. Questions and Comments 26

Copyright © 2012 Accenture All Rights Reserved. Module Summary (1 of 2) Different tiers work together within an Enterprise Architecture model. Dependency Principle means that the layer above depends on the layer below. Business Delegate pattern weakens the dependency between layers using decoupling. Different configurations and interactions within one-, two-, three- and n-tier architectures. 27 The key points from this module are:

Copyright © 2012 Accenture All Rights Reserved. Module Summary (2 of 2) Each of the five physical tiers have their own separate responsibilities. Physical and Logical independence can occur between multi-tier and multi-layer applications. Each layer and tier has a different role within the Java EE application and each has its own distinct attributes. 28