You are previewing Developing Applications with Java™ and UML.
O'Reilly logo
Developing Applications with Java™ and UML

Book Description

Developing Applications with Java™ and UML focuses on the craft of creating quality Java software. The book introduces the fundamentals of the Unified Modeling Language (UML) and demonstrates how to use this standard object-oriented notation to build more robust Java applications that fulfill users' requirements and stand the test of time.

The book features the Rational Unified Process, using a large-scale application to illustrate the development process: how to establish a sound project plan, gather application requirements using use cases, create a successful Java design with UML, and implement Java code from the UML class and sequence diagrams. This sample application showcases the latest Java technology frameworks, including Java Server Pages™ (JSP), servlets, and the Enterprise Java Beans™ (EJB) 2.0 server-side technology.

You will learn how to:

  • Estimate with accuracy and confidence projects built using the use case approach

  • Map UML to Java-based deliverables

  • Understand and describe application requirements using UML use cases

  • Create a design based on UML class and sequence diagrams

  • Use Rational Rose to create and track UML artifacts and generate skeletons for component code

  • Build server-side Java functionality using JSP, servlets, and EJB 2.0 beans

  • Produce code using several options, including JavaBeans, EJB Session Beans, and EJB Entity Beans (using both Bean-Managed Persistence and Container-Managed Persistence)

  • Explore the benefits of deploying Java applications on both open-source and commercial application server products

Based on the author's extensive professional experience and the most advanced software development methods, Developing Applications with Java™ and UML teaches you how to use UML and the latest developments in technology to create truly successful, professional-quality Java applications.



0201702525B09042001

Table of Contents

  1. Copyright
  2. Preface
  3. Acknowledgments
  4. The Project Dilemma
    1. IN THIS CHAPTER
    2. GOALS
    3. The Sad Truth
    4. The Project Dilemma
    5. The Synergy Process
    6. The Unified Process
    7. Other Processes: XP
    8. The Unified Modeling Language
    9. Checkpoint
  5. Java, Object-Oriented Analysis and Design, and UML
    1. IN THIS CHAPTER
    2. GOALS
    3. Java as an Industrial-Strength Development Language
    4. Java and Object-Oriented Programming
    5. Why UML and Java
    6. Checkpoint
  6. Starting the Project
    1. IN THIS CHAPTER
    2. GOALS
    3. Establishing the Project Vision
    4. Checkpoint
  7. Use-Cases
    1. IN THIS CHAPTER
    2. GOALS
    3. The Sample Project
    4. The Process Model
    5. Finding the Pathways through Use-Cases
    6. Shadow Use-Cases
    7. Describing Details of the Happy Path
    8. The Completed Process Orders Use-Case Template
    9. Preparing the Preliminary Architecture
    10. Project Charter: Increments and Estimates
    11. Checkpoint
  8. Classes
    1. IN THIS CHAPTER
    2. GOALS
    3. The Elaboration Phase
    4. Describing Details of Pathways
    5. Identifying Classes
    6. Relationships
    7. Creating the Class Diagram
    8. Identifying Attributes and Operations
    9. Interfaces
    10. Object Diagrams
    11. Finishing Up: The Analysis Model
    12. Checkpoint
  9. Building a User Interface Prototype
    1. IN THIS CHAPTER
    2. GOALS
    3. Building an Early Prototype
    4. Gathering Requirements
    5. The First Pass
    6. Checkpoint
  10. Dynamic Elements of the Application
    1. IN THIS CHAPTER
    2. GOALS
    3. Next Steps of the Elaboration Phase
    4. Dynamic Modeling
    5. The Sequence Diagram
    6. The Collaboration Diagram
    7. The State Diagram
    8. The Activity Diagram
    9. Selecting the Right Diagram
    10. Non-UML Extensions in the Design: Usage Matrices
    11. Checkpoint
  11. The Technology Landscape
    1. IN THIS CHAPTER
    2. GOALS
    3. Next Steps of the Elaboration Phase
    4. Separating Services
    5. Logical versus Physical Tiers
    6. Tier Strategy
    7. Managing Transaction Scope
    8. Incorporating the Internet into the Solution
    9. More about the Web Interface
    10. Remulak Productions' Execution Architecture
    11. Checkpoint
  12. Data Persistence: Storing the Objects
    1. IN THIS CHAPTER
    2. GOALS
    3. Next Steps of the Elaboration Phase
    4. Object-Oriented Concepts and Translating to the Physical Design
    5. Mapping Classes to Tables
    6. Key Structures and Normalization
    7. Using a Visual Modeling Tool to Generate the DDL
    8. Stored Procedures and Triggers and the Object-Oriented Project
    9. The Data Translation Services and Data Access Services Layers
    10. Commercial Persistence Layers
    11. Checkpoint
  13. Infrastructure and Architecture Review
    1. IN THIS CHAPTER
    2. GOALS
    3. Next Steps of the Elaboration Phase
    4. Infrastructure Issues and Communicating with All Layers
    5. Deployment Architecture View
    6. Checkpoint
  14. Constructing a Solution: Servlets, JSP, and JavaBeans
    1. IN THIS CHAPTER
    2. GOALS
    3. Next Steps of the Elaboration Phase
    4. Building the Architectural Prototype: Part 1
    5. Building the Architectural Prototype: Part 2
    6. Building the Architectural Prototype: Part 3
    7. Checkpoint
  15. Constructing a Solution: Servlets, JSP, and Enterprise JavaBeans
    1. IN THIS CHAPTER
    2. GOALS
    3. Next Steps of the Elaboration Phase
    4. Building the Architectural Prototype: Part 1
    5. Generating Code
    6. Building the Architectural Prototype: Part 2
    7. Building the Architectural Prototype: Part 3
    8. Enhancing the CMP Implementation
    9. Creating a BMP Implementation
    10. A Road Most Traveled
    11. Checkpoint
  16. The Unified Process Project Plans
    1. IN THIS APPENDIX
    2. The Plans
  17. The Synergy Process Project Plan
    1. IN THIS APPENDIX
    2. The Plan
  18. Estimating Projects on the Basis of Use-Cases
    1. IN THIS APPENDIX
    2. Weighting Actors
    3. Weighting Use-Cases
    4. Weighting Technical Factors
    5. Weighting Project Participants
    6. Use-Case Points
    7. The Project Estimate
  19. Sample Project Output
    1. IN THIS APPENDIX
    2. Use-Case Definitions
    3. Happy Path Task Steps
    4. Database Support
  20. BEA WebLogic Application Server
    1. IN THIS APPENDIX
  21. Bibliography
    1. Chapter 1
    2. Chapter 4
    3. Chapter 5
    4. Chapter 6
    5. Chapter 8
    6. Chapter 9
    7. Chapter 11
    8. Chapter 12