Foreword.
Preface.
Approach.
Intended Audience.
How to Use This Book.
Chapter Summaries.
Conventions.
Acknowledgements.
1. Introduction to Enterprise Software.
What is Enterprise Software?Challenges in Developing Enterprise
SoftwareEvolution of Enterprise SoftwareEnterprise Software and
Component Based Software.Summary.
2. Introduction to J2EE.
What is the Java 2 Platform, Enterprise Edition?A Brief History of
J2EE.Why J2EE?Brief Overview of J2EE.Technologies.API.Other J2EE
Technologies and API.Summary.
3. Introduction to the UML.
What is the Unified Modeling Language (UML)?Overview.Why use the
J2EE and the UML Together?Challenges in Modeling J2EE in the
UML.Extension Mechanisms in the UML.Stereotype.Tagged
Value.Constraint.The Approach to J2EE UML Modeling.Summary.
4. UML and Java.
Introduction.Representing
Structure.Class.Variable.Method.Object.Interface.Package.Representing
Relationships.Inheritance.Realization.Dependency.Association.Aggregation.Composition.Reflexive
Relationships.Summary.
5. Overview of Activities.
Introduction.What is a Software Development Process?Brief Overview
of Popular Approaches to Software Development.The Just-Develop-It
Approach.The Waterfall Process.The Iterative Process.The Rational
Unified Process.The ICONIX Process.OPEN Process.Extreme
Programming/Feature-Driven Development.Approach Used in This
Book.Overview of Major activities.Chapter 6: Architecture.Chapter
7: Analyzing the Customer Needs.Chapter 8: Creating the
Design.Chapters 10-15 Detailed Design.Chapters 16 Case
Study.Summary.
6. Architecture.
What is Software Architecture?Why Architecture?Key Concepts in
Enterprise Application
Architecture.Decomposition.Components.Frameworks.Patterns.Layering.Tiers.Approaches
to Software Architecture.The J2EE View of Architecture.The 4+1view
Model of Architecture.Hofmeister et al Four Views of
Architecture.Putting it All Together.Summary.
7. Analyzing the Customer Needs.
Introduction.Why software Analysis and Design?Problem Analysis.Use
Case Modeling.Actor.Use Case.Finding the Actors.Finding the Use
Cases.Use Case Diagrams.Use Case
Relationships.Include.Extend.Sequence Diagrams.Activity
Diagrams.Summary.
8. Creating the Design.
Use Case Analysis.Use Case Realizations.Refined Use Case
Description.Sequence Diagrams.Boundary Objects.Entity
Objects.Control Objects.Collaboration Diagrams.Class
Diagrams.Coalescing the Analysis Classes.Packaging.Summary.
9. Overview of J2EE Technologies.
Overview.The Big Picture.Servlets.JavaServer Pages.Enterprise
JavaBeans.Session Beans.Entity Beans.Message-Driven Beans.Assembly
and Deployment.Case Study.Summary.
10. Servlets.
Overview.Introduction to Servlets.Common Usage.Best Served
Small.J2EE Versions.Servlet Lifecycle.Lifecycle Methods.Convenience
Method.Required Methods and Tagged Values.Request Handling.Response
Generation.HTTP Request Handlers.Advanced Handler Methods.Quick
Guide to HTTP Requests.The RequestDispatcher Interface.Modeling
Servlets in UML.Modeling Other Servlet Aspects.Servlet
forward.Servlet include.ServletContext.Servlet Session
Management.Servlet Deployment and Web Archives.Identifying Servlets
in Enterprise Applications.Summary.
11. JavaServer Page.
Overview.Introduction to JavaServer Pages.Typical uses of JSP.Model
1 and Model 2 architectures.JSP versus Servlet.Anatomy of a
JSP.Template data.JSP Elements.Objects Accessible to a JSP
Implicitly.Tag Libraries.JSP and the UML.Modeling Client Side
Relationships.Modeling Server Side Relationships.JSP in Enterprise
Applications.Summary.
12. Session Beans.
Overview.Introduction to Enterprise JavaBeans.Enterprise JavaBean
Views and the UML.Basic Structure.Representing an Enterprise
JavaBean in UML.Client View.Internal View.Session Beans.Popular
BeansJ2EE Versions.Session Beans Types and Conversational
State.Modeling Session Bean Conversational State.Instance
Passivation.Cleanup and Removal.Transactions.Transaction
Demarcation.Bean-Managed Transactions.Container-Managed
Transactions.The SessionSynchronization Interface.Limitations for
stateless Session Beans.Transaction Attributes.Modeling
Transactions.Session Bean Technology.Home Interface.Remote
Interface.Implementation Class.Modeling Interface Behavior.Session
Bean Lifecycle.Session Bean Common Scenarios.Modeling Session Bean
Relationships.Session beans and plain Java classes.Session beans
and JavaBeans.Session beans and servlets.Session bean and
JSP.Session-session relationships.Session bean
inheritance.Identifying Session Beans in Enterprise
Applications.Summary.
13. Entity Beans.
Overview.Introduction to Entity Beans.Coarse-Grained Business
Objects.Increasing Popularity.J2EE Versions.Entity Bean Views and
the UML.Basic Structure.Client View.Internal
View.Persistence.Transactions and Concurrency.Abstract
Persistence.Abstract Persistence Schema.EJB Query Language (EJB
QL).Persistence Manager.Container-Managed
Relationships.Multiplicity.Directionality.Duplicating these
Relationships in J2EE 1.2.Local Relationships.Entity Bean
Technology.Home Interface.Remote Interface.Primary Key
Class.Implementation Class.Persistent Fields.Entity Bean
Lifecycle.Entity Bean Common Scenarios.Modeling Entity Bean
Relationships.Entity Bean and other Java classes.Entity Bean and
JavaBeans.Entity Bean, Servlets and JSPs.Entity Bean and Session
Beans.Entity Bean to Entity Bean relationships.Identifying Entity
Beans in Enterprise Applications.Layering.Summary.
14. Message-Driven Beans.
Overview.Introduction to Message Beans.The Java Message
Service.Role of JMS and Message Beans in EJB.Why use Messaging and
Message Beans.When to use Message Beans.J2EE Version.Message Bean
Views and the UML.Basic Structure.Client View.UML Benefits for
Message Beans.Modeling Messages.Modeling Destinations.Message Bean
Technology.Transactions.Implementation Class.Message Bean
Lifecycle.Message Bean Common Scenario.Modeling Message Bean
Relationships.Modeling relationships with other classes.Message
Bean and other J2EE technologies.Identifying Message Beans in
Enterprise Applications.Summary.
15. Assembly and Deployment.
Introduction.Component Modeling.Component modeling of J2EE
technologies.Representing Web Components.Representing Enterprise
JavaBeans.Component modeling of enterprise applications.Deployment
Modeling.Traceability revisited.Assembly and deployment of
Enterprise Java Applications.Deployment DescriptorsSummary.
16. Case Study.
Introduction.Case Study Background.Problem Statement.Rationale and
Assumptions.HomeDirect Requirements.Inquiry Services.Bill Payment
Services.Transaction Services.Administrative Services.Inception
Phase.Initial Iteration.Elaboration Phase.Elaboration
Iteration#1.Elaboration Iteration#2.Elaboration
Iteration#3.Remaining Phases.Summary.
Appendixes.
Index. 0201738295T07122001
J2EE is especially well suited for building large-scale, robust enterprise applications; UML has rapidly become the industry standard for expressing the design of enterprise software applications. Increasingly, enterprise developers wish to use J2EE and UML together. For the first time, there's an expert guide to doing so: Developing Enterprise Java Applications with J2EE and UML. This book focuses on the key success factors associated with successful J2EE enterprise development: effectively communicating requirements, making proper analysis and design decisions, and identifying optimal implementation choices. Two leading consultants on UML and enterprise Java development cover every stage of the process, and every key issue analysts, architects, and developers will face. Coverage includes: mapping the Java language to UML; understanding the fundamentals of software architecture; using UML use cases to clarify customer requirements; translating requirements into initial designs; and using J2EE technologies to translate designs into working systems. To illuminate key concepts, a detailed case study is presented throughout the book. For anyone building enterprise software with Java and J2EE, including application developers, systems analysts, programmers, and Project/IT managers.
Khawar Ahmed is a member of the Rational Rose team at Rational Software Corporation. He assists internal and external customers of Rational Rose with the use of UML and Rational Rose in the areas of Java, J2EE, XML, and Web modeling. He has over eleven years of software development experience and has been using visual modeling since the early 1990s.
Cary Umrysh has over twelve years of experience in object-oriented software development. Formerly a Rational Rose development manager and product manager at Rational Software Corporation, he is currently managing development teams for several key Enterprise Java software systems for use in the energy industry.
Ask a Question About this Product More... |