[accordions id="207"]

Data Modeling

Data Modeling

  • Introduction to Logical Data Modeling
  • Definitions
  • Benefits of logical data modeling
  • Data modeling vs. physical database design
  • Roles involved in data modeling
  • Steps in the data modeling process
  • Example data model
  • Entities
    • Identifying entities
    • Validating entities
    • Documenting "instances" of entities
    • Distinguishing entities from attributes
    • Naming entities
    • Starting an Entity/Relationship (E/R) diagram
  • Relationships
    • Identifying significant relationships
    • Determining the "cardinality" or "degree" of a relationship
    • One-to-One
    • One-to-Many
    • Many-to-Many
    • Determining whether a relationship is optional or mandatory
    • Giving a relationship a name
    • Documenting the relationships in the E/R diagram
    • Walking people through an E/R diagram
    • Resolving Many-to-Many Relationships
    • Real-world examples of many-to-many relationships
    • Why many-to-many relationships are broken down into simpler relationships
    • Identifying "association" or "intersection" entities
    • Documenting the new relationships in the E/R diagram
  • Attributes and Normalization
    • Defining and categorizing attributes
    • Domains and integrity rules
    • Unique identifiers/primary keys
    • Foreign keys
    • Occurrence population
    • Normalization: validating the placement of each attribute
    • Attribute does not repeat (first normal form)
    • Attribute is dependent on its entire UID (second normal form)
    • Attribute is dependent only on its UID (third normal form)
  • Subtypes and Supertypes
    • Identifying subtypes: real-world examples of subtypes and supertypes
    • Determining when entities are similar
    • UIDs
    • Attributes
    • One-to-one relationships
    • Creating subtypes and supertypes
    • "Type" entities
    • Using subtypes to apply fourth normal form
    • Establishing the relationships of the sub- and super-entities to other entities
    • Mutually exclusive vs. non-mutually exclusive subtypes
    • "Role" entities to handle complex subtypes
  • Recursive Relationships
    • Real-world examples of recursive relationships
    • Discovering recursive relationships
    • Determining whether the relationships are optional or mandatory
    • Documenting the new relationships in the E/R diagram
    • Hierarchical vs. Network recursive relationships
    • "Structure" or "Bill of Materials" entities: fifth normal form
  • Implementing a Relational Database
    • Relational database objects: tables, views, indexes, etc.
    • Mapping logical objects to physical objects
    • Denormalization
    • Why
    • How
    • Pros/Cons
  • Distributing databases
  • Referential integrity