W8: Fact Modeling Fundamentals
Share this Session:
  Gordon Everest   Gordon Everest
Professor Emeritus & Adjunct
University of Minnesota


Sunday, April 17, 2016
02:30 PM - 05:45 PM

Level:  Introductory

Today's data modeling tools, DBMSs, textbooks, and even DAMA's DMBOK focus almost exclusively on relational data modeling. Many consider relational the best, if not the only approach. The practice of data modeling needs to recognize the limitations of ER and Relational modeling, even if we must ultimately implement using Relational-based tools (or even NoSQL tools). We need a "new" approach to data modeling.

In fact modeling (and variants such as ORM), we start with fact statements in the dialogue with business users. The nouns represent objects and the verb phrases or predicates represent relationships. It does not begin with tables to contain information about the major entities. Both entities and attributes are considered objects first (No, this is not object modeling!). Objects become attributes only after there is a relationship with an entity. Furthermore, we only know how to put them into tables after we know the multiplicity characteristics of the relationships. Each entity/object type is represented only once in the model, and all types of relationships are represented the same way (whether within or between tables).

Following the step-by-step process presented in this workshop, you can produce a data model with all the information needed to correctly put attributes into entity tables. It also enables the definition of much richer integrity constraints leading to higher quality data. Learn how to generate tables by applying two simple transformation rules. But wait, you are not left with a paper and pencil solution - data modeling tools exist to support this modeling process and generate the relational tables automatically, guaranteed to be fully normalized.

In this tutorial, attendees will:

Learn the basics of fact modeling and how it contrasts with the traditional ER/Relational approach to data modeling.

Apply it in some small design problems and discover how much easier it is to arrive at a better final data model.

See a demonstration of this process using an open source data modeling tool.

Dr. Everest is Professor Emeritus of MIS and DBMS in the Carlson School of Management at the University of Minnesota. With early "retirement," he continues to teach as an adjunct. His Ph.D. dissertation at the Univ of Pennsylvania Wharton School entitled "Managing Corporate Data Resources" became the text from McGraw-Hill, "Database Management: Objectives, System Functions, and Administration," 1986 and remained in print until 2002! Gordon has been teaching all about databases, database management systems, database administration, and data warehousing since he joined the University in 1970. Students learn the theory of databases and gain practical experience with real data modeling projects and with the hands-on use of data modeling tools and DBMSs. Besides teaching about databases, he has helped many organizations and government agencies design their databases. His approach transfers expertise to professional data architects within those organizations by having them participate in and observe the conduct of database design project meetings with the subject matter experts. He is a frequent speaker at professional organizations such as DAMA.

Close Window