JSRs: Java Specification Requests
JSR 26: UML/EJB Mapping Specification
This JSR has been Withdrawn
The following section has been updated since the original pecification:
Original Java Specification Request (JSR)
Section 1. Identification
This JSR is submitted jointly by Sun Microsystems, Inc. (Sun) and Inline Software Corporation (Inline).
NOTE that this information has been updated since the original.
Other Companies who endorse this JSR:
Donald Ferguson, Ph.D.
The expert group will include experts from:
Interest in a UML profile for EJB has been widely expressed within the Java community.
Section 2: Request
This JSR is for a mapping between the Unified Modeling LanguageTM (UML) and Enterprise JavaBeansTM (EJBTM) expressed as a UML profile, a format defined by the OMG Object Analysis and Design Task Force (OA&DTF).
2.1? Description of the UML Profile for EJB
UML is a formal language for describing software requirements, design and implementation. It is widely used in the development of enterprise applications suitable for implementation with EJB.
The UML profile for EJB defines a set of extensions to UML that can be used to model software implemented with EJB in UML. These extensions will let enterprise tool and framework vendors provide EJB modeling capabilities using UML, as well as forward and reverse engineering between UML models and EJB implementations.
In addition, the specification defines a mechanism for using UML models stored in an EJB-JAR to describe the contents of the EJB-JAR. This will let enterprise tool and framework vendors use UML models stored in EJB-JARs for automation and reflection.
The profile is based on the EJB 1.1 specification, as defined by Sun Microsystems, Inc. (Sun), and on UML version 1.3, as defined by the Object Management Group (OMG).
2.3 Need of the Java community addressed by the proposed specification
In order to describe software implemented with EJB, UML models must represent EJBs, capturing their structure and semantics. Since UML predates the EJB architecture, it does not contain model elements that express the structure and semantics of EJBs. UML was designed to be extensible, however, and provides standard extension mechanisms for defining new model elements. These mechanisms can be used to define new model elements to represent EJBs.
Unless the extensions are standardized, tools and frameworks from different vendors will not interoperate. Some vendors will use non-standard proprietary mappings between UML and EJB, some will use non-standard proprietary meta-models rather than UML, and others will not support modeling or model based reflection and automation for EJB.
In addition, enterprise tool and framework vendors need to associate UML models describing EJBs with the EJB implementations in an EJB-JAR in order to use the models for automation and reflection. Without a standard way to perform this association, tools and frameworks will not be able to use the UML models in EJB-JARs from different vendors.
2.4? Why this need is not met by existing specifications
Currently, no existing JavaTM platform specification addresses the problem of providing a standard mapping between UML and EJB.
2.5 Specification to be developed and how it addresses the need
This specification defines a set of standard UML extensions defining new model elements to represent EJBs. This definition is expressed by the following items:
In addition, this specification defines a mechanism for associating UML models stored in an EJB-JAR with the implementations of the EJBs they describe. This definition is expressed by the following items:
2.6? Description of the underlying? technologies
The profile can be used in a wide variety of implementations, including modeling tools, model based development environments, database mappings, and business component frameworks. This specification does not prescribe an implementation.
The profile will support the Extensible Meta-Data Interchange Format (XMI) defined by the OMG Stream Based Model Interchange Format (SMIF) specification. XMI is a widely used meta-data representation based on the Extensible Markup Language (XML).
2.7? Proposed package name for API Specification
There is no API associated with this JSR.
2.8?Dependencies on specific operating systems, CPUs, or I/O devices
2.9 Security implications
The profile defines the representation of EJB security roles in UML as a semantic grouping of a set of methods, as required by the security architecture defined by the EJB 1.1 specification.
2.10? Internationalization implications
2.11 Localization implications
2.12 Risk assessment
No risks to any existing Java platform APIs, RIs or CTSs arising from this JSR have been identified.
Should a JSR be promulgated in the future to standardize the mapping between UML and Java in more general sense, that document will be constrained by the relationship between UML and Java defined by this specification.
2.13 Existing specifications that might be rendered obsolete or deprecated by this work
2.14 Existing specifications that might need revisions as a result of this work
Section 3: Contributions
List of relevant existing documents: