Data modeling

One of the most costly errors for an engineering organization is to incorrectly model their domain, thereby impeding the business itself or incurring the cost of redesigning large portions of the system.

Data modeling tends not to be taught at an undergraduate level, which is unfortunate given its importance. Our modeling course derives from the working knowledge of its instructors; it is focused on providing students with techniques and heuristics for better interrogating their business requirements, anticipating future needs, and fitting their models correctly to the problem.

This course involves a large amount of student participation. The theory of data modeling is limited and difficult to internalize without practice. As such the course centers on a series of data modeling exercises.

Topics covered

  • Entities, identities and naming things
  • Relationships
  • Types and other invariants
  • Common modeling errors
  • Techniques for interrogating a business or domain
  • Event sourcing
  • Databases and filesystems and the models they accomodate


This course presumes 1-2 years of work experience with exposure to the data modeling efforts of their organizations. Some experience with relational databases and SQL is also advised.

Schedule and fees

This course is next scheduled to run in March 2017. Apply now to be considered; exact dates and times will be finalized based on participant availability. Classes will be approximately nine hours per week for three weeks, for a total price of $1,800

San Francisco, California
© 2016 Bradfield School of Computer Science