O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Developing Enterprise Java Applications with J2EE™ and UML

Book Description

The Java 2 Platform Enterprise Edition (J2EE TM) offers great promise for dramatically improving the way that enterprise applications are built, and organizations that have adopted the J2EE are gaining a competitive advantage. The industry-standard Unified Modeling Language (UML) has helped countless organizations achieve software success through visual modeling. Together, the UML and J2EE form a powerful set of tools, but the intricacies involved with using them in tandem are considerable.

While UML is highly effective for specifying, designing, constructing, visualizing, and documenting software systems, J2EE offers enterprise developers a simplified, component-based approach to application development. However, when using the two technologies together, developers must first consider--and attempt to reconcile--the different characteristics of each.

Developing Enterprise Java Applications with J2EE TM and UML examines the best ways to jointly leverage these technologies. Exploring concrete methods for completing a successful development project, the authors cover the use of UML and J2EE in detail. Using practical examples and a case study, they illustrate the pros and cons of specific design approaches, show how personal experience can affect design decisions, and demonstrate proven approaches for building better, software faster.

With this book as a guide, developers will be able to overcome the challenges in using UML and J2EE together, and be on their way to building robust, scalable, and complex applications.


Table of Contents

  1. Copyright
  2. Foreword
  3. Preface
  4. Acknowledgments
  5. Introduction to Enterprise Software
    1. What Is Enterprise Software?
    2. Evolution of Enterprise Software
    3. Enterprise Software and Component-Based Software
    4. Summary
  6. Introduction to the J2EE
    1. What Is the Java 2 Platform, Enterprise Edition?
    2. A Brief History of J2EE
    3. Why J2EE?
    4. A Brief Overview of J2EE
    5. Summary
  7. Introduction to the UML
    1. UML Overview
    2. Why Use the J2EE and the UML Together?
    3. Challenges in Modeling J2EE in the UML
    4. Extension Mechanisms in the UML
    5. The Approach to J2EE UML Modeling
    6. Summary
  8. UML and Java
    1. Representing Structure
    2. Representing Relationships
    3. Summary
  9. Overview of Activities
    1. What Is a Software Development Process?
    2. Overview of Popular Approaches to Software Development
    3. Approach Used in This Book
    4. Overview of Major Activities
    5. Summary
  10. Architecture
    1. What Is Software Architecture?
    2. Why Architecture?
    3. Key Concepts in Enterprise Application Architecture
    4. Approaches to Software Architecture
    5. Putting It All Together
    6. Summary
  11. Analyzing Customer Needs
    1. Why Software Analysis and Design?
    2. Problem Analysis
    3. Use Case Modeling
    4. Identifying the Actors
    5. Finding the Use Cases
    6. Use Case Diagrams
    7. Use Case Relationships
    8. Sequence Diagrams
    9. Activity Diagrams
    10. Summary
  12. Creating the Design
    1. Use Case Analysis
    2. Use Case Realizations
    3. Refined Use Case Description
    4. Sequence Diagrams
    5. Collaboration Diagrams
    6. Class Diagrams
    7. Coalescing the Analysis Classes
    8. Packaging
    9. Summary
  13. Overview of J2EE Technologies
    1. The Big Picture
    2. Servlets
    3. JavaServer Pages (JSP)
    4. Enterprise JavaBeans (EJB)
    5. Session Beans
    6. Entity Beans
    7. Message-Driven Beans
    8. Assembly and Deployment
    9. Case Study
    10. Summary
  14. Servlets
    1. Introduction to Servlets
    2. Servlet Life Cycle
    3. Request Handling
    4. Response Generation
    5. HTTP Request Handlers
    6. The RequestDispatcher Interface
    7. Modeling Servlets in UML
    8. Modeling Other Servlet Aspects
    9. Servlet Deployment and Web Archives
    10. Identifying Servlets in Enterprise Applications
    11. Summary
  15. JavaServer Pages
    1. Introduction to JSP
    2. Anatomy of a JSP
    3. Tag Libraries
    4. JSP and the UML
    5. JSP in Enterprise Applications
    6. Summary
  16. Session Beans
    1. Introduction to Enterprise JavaBeans
    2. EJB Views and the UML
    3. Session Beans
    4. Types of Session Beans and Conversational State
    5. Instance Passivation
    6. Transactions
    7. Session Bean Technology
    8. Modeling Interface Behavior
    9. Session Bean Life Cycle
    10. Session Bean Common Scenarios
    11. Modeling Session Bean Relationships
    12. Managing Performance
    13. The Local Client
    14. Identifying Session Beans in Enterprise Applications
    15. Summary
  17. Entity Beans
    1. Introduction to Entity Beans
    2. Entity Bean Views and the UML
    3. Persistence
    4. Abstract Persistence
    5. Container-Managed Relationships
    6. Entity Bean Technology
    7. Entity Bean Life Cycle
    8. Entity Bean Common Scenarios
    9. Modeling Entity Bean Relationships
    10. Identifying Entity Beans in Enterprise Applications
    11. Summary
  18. Message-Driven Beans
    1. Introduction to Message-Driven Beans
    2. Message-Driven Bean Views and the UML
    3. Message-Driven Bean Technology
    4. Message-Driven Bean Life Cycle
    5. Message-Driven Bean Common Scenario
    6. Modeling Message-Driven Bean Relationships
    7. Identifying Message-Driven Beans in Enterprise Applications
    8. Summary
  19. Assembly and Deployment
    1. Component Modeling
    2. Component Modeling of J2EE Technologies
    3. Deployment Modeling
    4. Traceability Revisited
    5. Assembly and Deployment of Enterprise Java Applications
    6. Summary
  20. Case Study
    1. Case Study Background
    2. Problem Statement
    3. Rationale and Assumptions
    4. HomeDirect Requirements
    5. Inception Phase
    6. Elaboration Phase
    7. Remaining Phases
    8. Summary
  21. Glossary
    1. A
    2. B
    3. C
    4. D
    5. E
    6. F
    7. H
    8. I
    9. J
    10. L
    11. M
    12. N
    13. P
    14. Q
    15. R
    16. S
    17. T
    18. U
    19. V
    20. W
    21. X
  22. References
    1. Books
    2. Articles and Online Sources