Mapping Between the Conceptual and Object-Oriented Submodel
Innovator resolves the tension between the application view and data management by means of a mapping and transfer mechanism which converts the structures of these data and object submodels into each other.
Motivation for Mapping Between ER and UML Models
You can use mapping between an ER and a UML model (and vice versa) if the necessary requirements have been configured. Changes to the model configuration may require maintenance of this mapping configuration.
The applicable submodels of the same Innovator model are referred to when talking about ER and UML models below.
Object-oriented modeling is a basic technique in application development. However, corporate data is usually not managed in object-oriented database systems, but in relational database management systems (RDBMS).
The structure of the data does not focus on application-specific requirements, but represents an organization-wide data model that contains all the data relevant to the organization and the relationships between this data. Applications must be based on this data model and extend it in a way compliant with the model.
The connections between elements of data and object models are stored in references; these can be traversed between the submodels in both directions at any time.
The configurations are made available as XML files (\$INODIR\java\M2M_OOER\configuration\Innovator.Model.Configuration\Mapping\Mapping.ER2OO or ...\MappingOO2ER).
You can customize the OO2ER.FORWARD and OO2ER.REVERSE configuration descriptions to suit your needs. You must already have experience with meta model elements and model configuration in Innovator (stereotypes, templates and content configuration in particular) to be able to do this.
Import via the configuration loader evaluates configuration descriptions and creates the corresponding, model-compliant configuration and model elements required in the model.
Note
Reload the configuration descriptions once you have changed the model configuration (new stereotypes) in order to maintain configuration prerequisites for references.
Once the configuration is completed, the mapping can be found under Extras>Map Model>Mapping.
ER-OO Mapping
Mapping Options
Mapping supports the following mapping options from the conceptual model to the UML model:
- Entities to classes
- Entity attributes to attributes of classes
- Semantic data types to type classes
- Relationships to associations, aggregations or compositions
- Categories to generalizations
- Duplication of ER diagrams to class diagrams
Prerequisites
A requirement for setup is that the configuration loader is configured as an engineering action; this is included in later Innovator profiles but needs to be done retrospectively for older profiles.
You should always call the configuration loader as a user in the temporarily activated model administrator mode, otherwise role right processing cannot be carried out properly. This, in turn, can lead to incomplete privileges of create templates, which means that it may not be possible to successfully carry out the configured mapping.
Context
The configuration must be reloaded in all ER models which mapping to the UML models should be carried out in.
Both the ER-OO mapping itself is configured so that it can be run in the mapping dialog and the model configuration of the existing model must be extended in such a way that the mapping can be used with both reference connections and with the dependency connection.
Both a system model for an ER model submodel and a system model for a UML submodel can exist in an Innovator model.
The system model that contains the ER model is subsequently called an ER model.
The system model that contains the UML model is subsequently called a UML model.
Select the model root in the Model Structure and open Model Element List so that you can select multiple system models.
How to proceed
-
Log-in to the ER model as a user with model administrator rights.
-
Select the ER model part's system model into which you want to import a configuration. This is the system model which contains the ER elements that should be mapped as UML elements in a UML model using ER-OO mapping.
Also select the UML model part's system model.
-
From the Extras>Engineering Actions>Commands submenu, run the engineering action Configuration Loader.
A dialog with the "'Configuration Loader' engineering action can be aborted here." message appears. The Select Configurations Java dialog then appears. The available configurations are shown.
-
Select the EROO.Mapping:Menu Item in Mapping Dialog and EROO.Mapping:Model Configuration for DATA Model Part model configuration in the dialog.
-
Confirm the selection with OK.
The Java dialog closes and the configuration is carried out. The message dialog is then closed.
-
Once the engineering action is complete, update the model contents for the selected model root using View>Synchronize>Reload Content (F5).
Additional model elements appear in the model structure for the relevant system model if they were not already present: the systemModelManagement system model and subordinate packages for the reference information.
You can find another command under Extras>Map Model>Mapping.
OO-ER Mapping
Mapping Options
Mapping supports the following mapping options from the object-oriented UML model to the conceptual model:
- Classes to entities
- Attributes of classes to entity attributes
- Associations, aggregations or compositions to relationships
- Generalizations to categories
- Attribute types to semantic data types
- Duplication of class diagrams to entity diagrams
Prerequisites
A requirement for setup is that the configuration loader is configured as an engineering action; this is included in later Innovator profiles but needs to be done retrospectively for older profiles.
You should always call the configuration loader as a user in the temporarily activated model administrator mode, otherwise role right processing cannot be carried out properly. This, in turn, can lead to incomplete privileges of create templates, which means that it may not be possible to successfully carry out the configured mapping.
Context
The configuration must be reloaded in all UML models which mapping to the ER models should be carried out in.
Both the OO-ER mapping itself is configured so that it can be run in the mapping dialog and the model configuration of the existing model must be extended in such a way that the mapping can be used with both reference connections and with the dependency connection.
Both a system model for a UML submodel and a system model for an ER submodel can exist in an Innovator model.
The system model that contains the UML model is subsequently called a UML model.
The system model that contains the ER model is subsequently called an ER model.
Select the model root in the Model Structure and open Model Element List so that you can select multiple system models.
How to proceed
-
Log-in to the UML model as a user with model administrator rights.
-
Select the UML model part's system model into which you want to import a configuration. This is the system model which contains the UML elements that should be mapped as ER elements into an ER model using OO-ER mapping.
Also select the ER model part's system model.
-
From the Extras>Engineering Actions>Commands submenu, run the engineering action Configuration Loader.
A dialog with the "'Configuration Loader' engineering action can be aborted here." message appears. The Select Configurations Java dialog then appears. The available configurations are shown.
-
Select the OOER.Mapping:Menu Item in Mapping Dialog and OOER.Mapping:Model Configuration for UML Model Part model configuration in the dialog.
-
Confirm the selection with OK.
The Java dialog closes and the configuration is carried out. The message dialog is then closed.
-
Once the engineering action is complete, refresh the model contents for the selected model root using View>Synchronize>Reload Content (F5).
Additional model elements appear in the model structure for the relevant system model, if they were not already present: the systemModelManagement with packages for the reference information. You can find another command under Extras>Map Model>Mapping.
Mapping Elements in the Mapping Editor
Proceed in the same way as mapping between the database schema and the conceptual model when mapping elements.
