Mastering Data Modeling

Available only for on-site training

Why This Course?

A data-driven approach is the key to developing successful client/server applications that meet business requirements more effectively. Capturing business rules and requirements into an accurate data model and systematically converting the data model to a database schema is the only way to build a reliable and maintainable system. Mastering Data Modeling is a must for software developers, data administrators, database designers, systems analysts and designers, GUI developers, and programmers. Attendees will utilize this approach as teams in a workshop setting.

What will you learn?

  • A systematic data-driven process for building successful client/server applications
  • How to build very accurate and complete data models
  • How to effectively capture business rules
  • How to distinguish between logical and physical data modeling
  • Acquire the knowledge and skills that allow you to work with any modeling technique or tool
  • Understand the different notations of data modeling
  • What to look for in automated data modeling tools
  • How object modeling differs from data modeling
  • How to make the transition from DM to O-O modeling

Course Outline

1. Introduction

  • What is data modeling
  • Application-driven vs. model-driven software development
  • Data-driven and process-driven software development
  • Desirable characteristics of a data modeling technique
  • Data modeling techniques (ER, IDEFIX, Object-Role)

2. Logical Data Modeling Concepts

  • Entities/Attributes/Primary keys
  • Relationships and Cardinality
  • One-to-many relationships and foreign key migration
  • Binary vs. N-ary relationships
  • Associative entities
  • Recursive relationship
  • Subtype/Supertype relationship and different notations

3. The Process of Data Modeling

  • Principles of data modeling
  • General activities of data modeling
  • Gathering information for data modeling
  • Informal interviews: what to look for
  • Facilitated joint sessions

4. Rules and Guidelines of Data Modeling

  • Naming, unique names, and abbreviations
  • Derived data
  • Empty and unnecessary subtypes
  • Embedded attributes
  • Normalization
  • Explicit relationships rather than foreign keys

5. In-Class Team Exercise

6. Tools for Data Modeling

  • Data modeling using ERwin
  • Data Modeling using System Architect
  • Desirable characteristics of a data modeling tool
  • Repository-based tools
  • Tool Integration

Object-Oriented Modeling

  • Why do we need object-oriented modeling
  • Components of the O-O model
  • Object/Classes
  • Operation/methods/messages
  • Encapsulation
  • Composite objects

8. Data-Driven Object Modeling

  • Bridging the gap from data modeling
  • Comparison between data modeling and object modeling
  • DOM: A Data-Driven Object Modeling approach