You are previewing OCM Java EE 6 Enterprise Architect Exam Guide (Exams 1Z0-807, 1Z0-865 & 1Z0-866), 3rd Edition.
O'Reilly logo
OCM Java EE 6 Enterprise Architect Exam Guide (Exams 1Z0-807, 1Z0-865 & 1Z0-866), 3rd Edition

Book Description

A Complete Study System for OCM Exams 1Z0-807, 1Z0-865, and 1Z0-866

Prepare for the Oracle Certified Master Java EE 6 Enterprise Architect exams with this exclusive Oracle Press guide. The multiple-choice exam, the assignment, and the essay exam are covered. Chapters feature challenging exercises, a certification summary, a two-minute drill, and a self-test to reinforce the topics presented. This authoritative resource helps you pass these exams and also serves as an essential, on-the-job reference. Get complete coverage of all exam objectives, including:

  • Application design concepts and principles
  • Common architectures
  • Integration and messaging
  • Business-tier technologies
  • Web-tier technologies
  • Design patterns
  • Security

Electronic content includes:

  • 120 multiple-choice practice exam questions
  • Test engine that provides practice exams and customized quizzes by chapter
  • PDF copy of the book

Table of Contents

  1. Cover 
  2. Title Page
  3. Copyright Page
  4. About the Authors
    1. About the Technical Editor
  5. Contents 
  6. Acknowledgments
  7. Preface
  8. Introduction
  9. 1. The Oracle Certified Master, Java EE 6 Enterprise Architect Exam and Certification
    1. Widespread Capabilities for Application Development
    2. Java Is the Glue That Binds the Application Development Process
    3. Companies Increasingly Need the Internet to Compete
    4. Challenges of Application Development for the Enterprise
      1. Increasing Programmer Productivity
      2. JEE Architecture Must Respond to Consumer Demand
      3. The Architect Must Be Able to Integrate JEE and Legacy Systems
      4. The JEE Standard Promotes Competition and Choices
    5. Design Goals of JEE Architecture
      1. JEE Architects Should Strive for Service Availability
      2. JEE Architecture and Connectivity to Existing Data
      3. Expanded User Definition: Customers, Employees, and Partners
      4. Flexible User Interaction
      5. Flexible Business Component Model
    6. The New Architect Role: Comprehensive Skill Set Required
    7. Large-scale, Distributed Enterprise Systems and Integration Risk
      1. Quality of Service
      2. Nonfunctional Requirements
      3. Risk Evaluation and Control
      4. Technology Responsibilities
      5. Management Responsibilities
      6. Difference between Architecture and Design
    8. Architectural Principles
    9. Registering for Oracle Certified Master, Java EE 6 Enterprise Architect Distinguishes the Java Professional
      1. Objectives of the Exam
      2. Starting Point
    10. General OCMJEA Test Preparation Tips
      1. Essay Test Preparation Tips
  10. 2. Application Design Concepts and Principles
    1. Identify Nonfunctional and Quality of Service Requirements That Influence Application Design
      1. Nonfunctional Requirements
      2. Quality of Service and Architecture
    2. Identify How the Separation of Concerns Principle Applies to the Component Model of a Java EE Application
      1. Decomposition and the Separation of Concerns
      2. Tiers
    3. Identify the Correct Interpretation of Separation of Concerns as It Applies to the Java EE Service Layers
      1. Layers
    4. Identify the Effects of an Object-Oriented Approach to System Design
      1. Fundamental Object-Oriented Concepts
      2. Analysis and Design of Object-Oriented Architecture
      3. Modeling and the Software Development Process
      4. Exercise 2-1: Design Activities
      5. Unified Modeling Language
      6. UML Diagrams
      7. UML Tools
      8. Elements Used in UML
      9. Relationships Used in UML
      10. Diagrams Used in UML
      11. Stereotypes
      12. Practical Use of UML Diagrams
    5. Two-Minute Drill
    6. Q&A Self Test
    7. Self Test Answers
  11. 3. Common Architectures
    1. Identify the Appropriate Strategy for Deploying Client Applications to Desktop and Mobile Platforms, the Principles for Designing a User Interface, and the Benefits of Applying Client Tier Patterns
      1. Client Tier Design Principles
    2. Identify Best Practices for Exception Handling, Logging, and Business Tier Patterns
      1. Exceptions in General
      2. Exception Handling Overview
      3. Exercise 3-1: Issue Resolution
      4. Logging for All Applications
    3. Identify Design Patterns That Address Specific Challenges in the Web Tier, Including Authentication, Authorization, and Scaling and Clustering to Meet Demand
      1. Security Patterns by Tier
      2. Scaling and Clustering Patterns
      3. JEE Clustering
    4. Identify Java EE Technologies, Including JMS, JCA, and Web Services, and Design Patterns That Address Specific Challenges in Enterprise Integration
      1. Java EE Technologies: JMS and Design Patterns in Enterprise Integration
      2. Exercise 3-2: Publish/Subscribe Messaging
      3. Java EE Technologies: JCA and Design Patterns in Enterprise Integration
      4. Java EE Technologies: Web Services and Design Patterns in Enterprise Integration
    5. Identify the Challenges in Integrating Enterprise Resources, the Java EE Technologies That Address Them (Including JPA and JDBC), and the Communication Protocols That Support Tier-to-Tier Communication (Including RMI, IIOP, and CORBA)
      1. Integration of Enterprise Resources
      2. The Evolution of Enterprise Integration
    6. Two-Minute Drill
    7. Q&A Self Test
    8. Self Test Answers
  12. 4. Integration and Messaging
    1. Identify the APIs Available for a Java EE Technology-Based System to Communicate with External Resources. Outline the Benefits and Drawbacks of Each Approach
      1. Java Message Service (JMS)
      2. Java EE Connector Architecture (JCA)
      3. Java API for XML-based Web Services (JAX-WS)
      4. Java API for RESTful Web Services (JAX-RS)
      5. Java Database Connectivity (JDBC)
      6. Java Persistence API (JPA)
      7. Common Object Request Broker Architecture (CORBA)
      8. Remote Method Invocation (Java/RMI)
    2. Identify and Detail the Technologies Used to Integrate Business Components with External Resources, Including JMS and JCA
      1. Messaging Basics
      2. Java Message Service
      3. Message-Driven Bean (MDB)
      4. Java EE Connector Architecture (JCA)
    3. Describe the Technologies Used to Integrate Business Components with Web Services, Including XML over HTTP, JSON, SOAP, and REST.
      1. What Are Web Services?
      2. Extensible Markup Language (XML)
      3. JavaScript Object Notation (JSON)
      4. SOAP
      5. Representational State Transfer (REST)
    4. Identify How a Service-Oriented Architecture (SOA) Facilitates System Integration and Best Practices
      1. Architecture and Design for SOA
      2. Business Process Execution Language (BPEL)
      3. Service Component Architecture (SCA) and Service Data Objects (SDO)
      4. Enterprise Service Bus (ESB)
      5. Best Practices for SOA
      6. SOA Governance
      7. Comparing Integration Technologies
    5. Two-Minute Drill
    6. Q&A Self Test
    7. Self Test Answers
  13. 5. Business Tier Technologies
    1. Background on New Features in Java EE 6
    2. Identify the Correct EJB Technology to Apply for a Given Scenario, Including Entity Classes, Session Beans, Message-Driven Beans, Timers, Interceptors, and POJOs
      1. Enterprise Bean Overview
      2. Entity Class
      3. Entity Bean
      4. Session Bean
      5. Message-Driven Bean (MDB)
      6. Timer Service
      7. Interceptors (AOP)
    3. Identify Benefits and Drawbacks of Different Persistence Technologies such as BMP, CMP, and JPA, Including Ease of Development, Performance, Scalability, Extensibility, and Security
      1. Gauging Benefits and Drawbacks
      2. Bean-Managed Persistence (BMP)
      3. Container-Managed Persistence (CMP)
      4. Java Data Objects (JDO)
      5. Java Database Connectivity (JDBC)
      6. Java Persistence API (JPA)
      7. Comparing Persistence Types
    4. Identify the Benefits and Drawbacks of Implementing Web Services in the EJB Component Container
      1. Web Services
      2. Enterprise Beans and Web Services
    5. Select the Appropriate Use of JPA and JPQL in a Given Scenario
      1. Java Persistence API (JPA)
      2. Java Persistence Query Language (JPQL)
    6. Two-Minute Drill
    7. Q&A Self Test
    8. Self Test Answers
  14. 6. Web Tier Technologies
    1. Web Tier Development Roles
    2. Identify the Benefits and Drawbacks of Using URL Rewriting and Cookies to Manage HTTP Session State
      1. HttpSession Object
      2. Session State Tracking: Should We Use Cookies or URL Rewrite?
      3. Maintaining State Using JEE Session Beans
      4. Exercise 6-1: Session State
      5. Servlets
    3. Identify Appropriate Uses for JSP and Servlet Technology, and JavaServer Faces in a Given Java EE Application
      1. Servlets
      2. JavaServer Page
      3. JavaServer Faces
      4. Scripting Languages
      5. Web Tier Input Data Validation
      6. Control and Logic Concerns
      7. Web Flow
    4. Identify the Benefits of Using an EJB Container with a Web Container Instead of a Web Container Alone
      1. Benefits of Enterprise Beans
      2. Session Beans
      3. Message-Driven Bean (MDB)
    5. Identify the Differences between Client Pull and Server Push Architectures
    6. Identify the Benefits and Drawbacks of Using a Browser to Access Asynchronous, Lightweight Processes on the Server
      1. Browser Asynchronous APIs
    7. Two-Minute Drill
    8. Q&A Self Test
    9. Self Test Answers
  15. 7. Design Patterns
    1. Benefits of Using Design Patterns
    2. Design Patterns by Gamma et al., AKA the “Gang of Four” (GoF)
    3. Benefits of a Specified GoF Design Pattern
    4. Select an Appropriate Gang of Four (GoF) Pattern for a Given Application Challenge
      1. GoF Creational Design Patterns
      2. GoF Structural Design Patterns
      3. GoF Behavioral Design Patterns
    5. Identify a Gang of Four (GoF) Design Pattern, Using a Description of Its Features
      1. Java EE Patterns
    6. Demonstrate Knowledge of Java EE Design Patterns
    7. Identify the Use of the Law of Leaky Abstractions or a Specific Anti-Pattern in a Given Scenario
    8. Two-Minute Drill
    9. Q&A Self Test
    10. Self Test Answers
  16. 8. Security
    1. Identify Elements of the Security Model in the Java SE Environments for Remote Clients, Including Web Start, Applets, and the Role of the SecurityManager Class
      1. Java Web Start
      2. Java Applet
      3. The Security Manager
      4. More Java SE Security Features/Mechanisms
    2. Select Appropriate Locations to Implement Java EE Security Technologies or Features in a UML Component and Deployment Diagram
      1. Java EE Security Depicted within UML Component Diagram
      2. Java EE Security Depicted within UML Deployment Diagram
    3. Classify Security Threats to an Enterprise Application and Select the Measures an Architect Can Propose to Mitigation Them
      1. Security Architectures
      2. Security Threats
    4. Identify Techniques Associated with Declarative and Programmatic Security, Including the Use of Annotations, Deployment Descriptors, and JAAS Technology
      1. Security Model
      2. Securing Web Components
      3. Securing Enterprise Bean Components
      4. Java Authentication and Authorization Service (JAAS)
    5. Identify the Security Technologies That Apply to an Application’s Code, Messaging, and Transport Layers
      1. Application-Layer Security
      2. Message-Layer Security
      3. Transport-Layer Security
    6. Two-Minute Drill
    7. Q&A Self Test
    8. Self Test Answers
  17. A. Java (EE) Enterprise Architect Certified Master Assignment
    1. Scenario
      1. WebSphere Application Server
      2. Continuous Trade Processing System
      3. SQLBIS Database Server
    2. Model and Develop the Case Study
      1. Actor Definition
      2. Business Process Model
      3. Sequence Diagrams
      4. Class Descriptions
      5. Class Diagrams
      6. State Transition (Life Cycle) Diagrams
    3. Trade System Design and Implementation
      1. Stock Order Entry Screen
      2. Trade Application Packages
      3. Trade Application Implementation Infrastructure
      4. Deployment Diagrams
      5. Final Tips
  18. B. Java (EE) Enterprise Architect Certified Master Essay Exam
    1. The Case Study Infrastructure
      1. Application Servers
      2. Continuous Trade Processing
      3. SQLBIS Database Server
    2. Essay Questions and Sample Answers
      1. How Does Your Design Handle Availability?
      2. How Does Your Design Handle Reliability?
      3. How Does Your Design Handle Scalability?
      4. How Does Your Design Handle Performance?
      5. How Does Your Design Handle Security?
      6. How Does Your Design Handle Extensibility?
      7. How Does Your Design Handle Maintainability?
      8. How Does Your Design Handle Manageability?
      9. How Does Your Design Handle Persistence?
      10. How Does Your Design Handle the Presentation Tier?
    3. Before the Exam: Prepare and Practice
      1. How to Proceed at the Exam
  19. C. About the Download
    1. System Requirements
    2. Installing and Running Total Tester
      1. About Total Tester
    3. Technical Support
  20. Glossary
  21. Index