An EER model can be designed by following these steps:
- Identify the entity types
- Identify the relationship types and assert their degree
- Assert cardinality ratios and participation constraints
- Identify the attributes and assert whether they simple/composite; single/multiple valued;
- Link each attribute type with an entity type or a relationship type
- Denote the key attribute type(s) of each entity type
- Identify weak entity types and their partial keys
- Apply abstractions such as generalization/specialization, categorization and aggregation
- Assert the characteristics of each abstraction: disjoint/overlapping, total/partial
- Document semantics that cannot be represented in the (E)ER schema as separate "business rules"
Although the EER model offers some new interesting modeling concepts (specialization, generalization, aggregation, and categorization), the limitation of the EER model still applies.
- Temporal aspects can still not be modeled.
- Consistency among multiple relationship types cannot be enforced.
- Integrity rules or behaviors cannot be specified.