Module 5: Map class diagrams to entity relation diagrams
Map a UML class diagram to an Entity Relation (ER) diagram to give you greater modeling capabilities.
So far you have created a class diagram to represent business classes you discovered while doing Use Case and Interaction modeling. You have modeled each of these business classes as a persistent class. (A persistent class is one that has a persistent store–it exists after an application has run, and generally stores data. It is opposite of a transitory class, which is created, used, and destroyed during the course of an application running.)
You can use System Architect's automatic mapping capability to map the class diagram you created to a logical Entity Relation (ER) diagram. The ER diagram gives you more capability to model relational concepts, including:
•specifying primary and foreign keys
•migrating keys based on relationship types
•migrating keys based on access paths
Later, you can map a logical ER diagram to a physical model representing the specific properties of the DBMS you target for implementation, and then you can generate working schema (either to DDL or to the database directly through ODBC).
During the OO to ER translation, persistent classes and their attributes are mapped to entities. Many-to-many associations between classes are mapped to separate entities in the ER diagram–the name of the entity will be the value defined in the implemented with member variable property of the association, or, if there is no member variable defined, the name of the association itself. Class inheritance structures are mapped directly to entity super/sub relationships in the ER diagram. These super/sub relationships can later be 'flattened' when transforming the logical ER diagram to a physical data model.
Learning objectives
After completing the lessons in this module you will know how to:
•map class diagrams to entity relation diagrams
Time required
This module should take approximately 5 minutes to complete.
Prerequisites
If users need to download data or prepare their environments before beginning the module, provide instructions for how to do this. If module prerequisites deviate from tutorial prerequisites, acknowledge this.