According to Wikipedia, data modeling in software engineering is the process of creating a data model by applying formal data model descriptions using data modeling techniques. Well, this is all honky dory, but what does it actually mean? Data modeling is the first step where software abstraction touches the real world. The time has come to translate your idea into the relational system: rows, columns, and relations.

images Relations, which make your database relational, will be discussed in the next chapter.

There are three main levels of data modeling: conceptual, logical, and physical. Each layer refers to a degree of elaboration culminating with a model that can be translated into SQL statements and implemented in RDBMS of your choice. Each of the levels deals with certain steps to be taken when defining your database objects. Table 2-1 presents a matrix of the steps for each modeling level.

TABLE 2-1: Developing Data Model Stages


Conceptual Modeling

Conceptual modeling deals with the highest level of abstractions: entities and relationships. Entities refer to the actual physical objects or abstract concepts in your requirements. If you are modeling data for a library, you might think of books, authors, borrowers, and librarians; if you ...

Get Discovering SQL: A Hands-On Guide for Beginners now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.