Appendix B. Modeling Conventions

This appendix provides a summary of the modeling conventions used in this book. In particular, we focus on the use of the UML, and on the model structures that have been recommended and described in Chapters 69.

UML Representation of J2EE Developer Roadmap Elements

In this section, we provide a summary of the UML representation of the elements in the J2EE Developer Roadmap. The content of this section is derived from a number of sources. In particular, the conventions for modeling EJBs have been derived from Java Specification Request 26 (JSR 26), which has been defined by the Java Community Process. The conventions for modeling other J2EE elements, such as JSPs and servlets, have been derived from the work of Jim Conallen (Conallen 2000) and internal initiatives within Rational Software.

Requirements Artifacts

ArtifactUML RepresentationExamplesStereotype(s)
ActorActor None
GlossaryNoneN/AN/A
Software Architecture DocumentNoneN/AN/A
Supplementary SpecificationNoneN/AN/A
Use-Case Model[1]Model «use-case model»
Requirements ArtifactsUse CaseUse Case None
Requirements ArtifactsUse-Case PackagePackage None
Use-Case Priority ListNoneN/AN/A

[1] The tables containing artifacts show subartifacts (artifacts contained within another artifact) after the parent artifact with their name preceded by a “Requirements Artifacts”.

Analysis Artifacts

ArtifactUML RepresentationExamplesStereotype(s)
Deployment ModelModel «deployment model»
Design ModelModel «design model»
Analysis ArtifactsAnalysis ClassClassBoundary Class«boundary»
  Control Class«control»
  Entity Class«entity»
Analysis ArtifactsDesign PackagePackage None
  Layer«layer»
Analysis ArtifactsUse-Case RealizationCollaboration Instance «use-case realization»
Software Architecture DocumentNoneN/AN/A
User-Experience ModelModel «user-experience model»
Analysis ArtifactsNavigation MapClass Diagram(s) None
Analysis ArtifactsScreenClass «screen»
Analysis ArtifactsUse-Case StoryboardCollaboration Instance «use-case storyboard»

Design Artifacts

ArtifactUML RepresentationExamplesStereotype(s)
Data ModelModel «data model»
Deployment ModelModel «deployment model»
Design ModelModel «design model»
Design ArtifactsDesign ClassClass None
  EJB Implementation Class«EJBImplementation»
  EJB Primary Key ClassNone
  HTML Form«HTMLForm»
  HTML Page«ClientPage»
  JSP«ServerPage»
  Servlet«HttpServlet» «GenericServlet»
Design ArtifactsDesign PackagePackage None
  Layer«Layer»
Design ArtifactsDesign SubsystemSubsystem None
  Enterprise Component«EnterpriseComponent»
Design ArtifactsFrameworkComponent None
Component EJB

«EJBSessionBean»

«EJBEntityBean»

«EJBMessageDrivenBean»

Design ArtifactsInterfaceInterface None
 Class[2]EJB Interface

«EJBRemoteInterface»

«EJBSessionHomeInterface»

«EJBEntityHomeInterface»

«EJBLocalInterface»

«EJBSessionLocalHomeInterface»

«EJBEntityLocalHomeInterface»

  Java Interface«JavaInterface»
Design ArtifactsUse-Case RealizationCollaboration Instance «use-case realization»
Software Architecture DocumentNoneN/AN/A

[2] A UML Class is used to represent a Java Interface since a Java interface is not the same as a UML interface (for example, a Java interface may have attributes).

Implementation Artifacts

ArtifactUML RepresentationExamplesStereotype(s)
Implementation ModelModel «implementation model»
Implementation ArtifactsImplementation FileArtifact None
  Deployment Descriptor

«ApplicationDescriptor»

«ApplicationClientDescriptor»

«EJBDescriptor»

«WebDescriptor»

  HTML fileNone
  Java Bytecode File«JavaClassFile»
  Java Source FileNone
  J2EE Module

«EAR»

«EJB-JAR»

«JAR»

«WAR»

  JSP File«JSPFile»
Implementation ArtifactsImplementation DirectoryPackage None
  Java PackageNone
  Virtual Directory«VirtualDirectory»
Software Architecture DocumentNoneN/AN/A

Design Relationships

The following table summarizes the J2EE-specific relationships that may occur between Design Model elements.

UML RepresentationExamplesStereotype(s)
 BetweenAnd 
AssociationHTML pageHTML page or JSP«HTMLLink»
 JSPHTML page«Build»
 HTML formJSP«Submit»
 JSPJSP

«JSPInclude»

«JSPForward»

AggregationHTML pageHTML form«Build»
DependencyEJBEJB element«reside»
 EJB implementation classEJB home interface«EJBRealizeHome»
 EJB implementation classEJB remote interface«EJBRealizeRemote»
 EJB implementation classEJB local interface«EJBRealizeLocal»
 EJB implementation classEJB local home interface«EJBRealizeLocalHome»

Design Class Attributes and Operations

The following table summarizes the J2EE-specific stereotypes that can be applied to the attributes and operations of a Design Class.

UML RepresentationElementStereotype
AttributeEJB CMP field«EJBCmpField»
 EJB primary key field«EJBPrimaryKeyField»
 HTML input field«HTMLInput»
 HTML select field«HTMLSelect»
 HTML submit button«HTMLSubmit»
 HTML text area«HTMLTextArea»
OperationEJB business method«EJBBusinessMethod»
 EJB create method«EJBCreateMethod»
 EJB finder method«EJBFinderMethod»
 EJB home method«EJBHomeMethod»
 EJB select method«EJBSelectMethod»

J2EE Developer Roadmap Model Structure Guidelines

In this section, we describe some recommendations for structuring the content of the J2EE Developer Roadmap models. For more information on how to define the content of these models, and the rationale for this structure, see the process chapters (Chapters 69).

The model structures described in this section have been used throughout the book and in the sample application. They can be replaced by any number of equally valid structures without affecting the process.

Use-Case Model

The recommended structure of the Use-Case Model is shown in Figure B.1. This structure is described in Chapter 6, Requirements.

Use-Case Model Structure

Figure B.1. Use-Case Model Structure

User-Experience Model

The recommended structure for the User-Experience Model is shown in Figure B.2. This structure is described in Chapter 7, Analysis.

User-Experience Model Structure

Figure B.2. User-Experience Model Structure

Design Model

The recommended structure of the Design Model is shown in Figure B.3. This structure is initially described in Chapter 7, and is then refined in Chapter 8, Design.

Design Model Structure

Figure B.3. Design Model Structure

The analysis activities result in the population of the “Analysis Elements” and “Key Abstractions” packages. The structure of these packages is shown in Figure B.4. This structure is described in Chapter 7.

Structure of the Analysis Aspects of the Design Model

Figure B.4. Structure of the Analysis Aspects of the Design Model

The structure of the “Presentation” layer is shown in Figure B.5. This structure is described in Chapter 8.

Structure of the Presentation Layer in the Design Model

Figure B.5. Structure of the Presentation Layer in the Design Model

The structure of the “Business” layer is shown Figure B.6. This structure is described in Chapter 8.

Structure of the Business Layer in the Design Model

Figure B.6. Structure of the Business Layer in the Design Model

The structure of the “Use-Case Realizations” package is shown in Figure B.7. This structure is described in Chapter 8.

Structure of the Use-Case Realizations Package in the Design Model

Figure B.7. Structure of the Use-Case Realizations Package in the Design Model

Implementation Model

The Implementation Model comprises a number of structures that are discussed in Chapter 9, Implementation, namely:

  • A structure to describe elements that are organized by Java package (see Figure B.8)

    Java Packaging Structure in the Implementation Model

    Figure B.8. Java Packaging Structure in the Implementation Model

  • A structure to describe elements that are organized within a virtual directory (see Figure B.9)

    Virtual Directory Structure in the Implementation Model

    Figure B.9. Virtual Directory Structure in the Implementation Model

  • A structure to describe deployment elements (see Figure B.10)

    Deployment Elements Structure in the Implementation Model

    Figure B.10. Deployment Elements Structure in the Implementation Model

Java Packaging Structure The Java packaging structure is shown in Figure B.8. This structure is described in Chapter 9.

Virtual Directory Structure The virtual directory structure is shown in Figure B.9. This structure is described in Chapter 9.

Deployment Elements Structure The structure to support deployment elements is shown in Figure B.10. This structure is described in Chapter 9.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset