Database Design: The Semantic Modeling Approach.
Preface
This book is intended for present and future designers of database
applications, software engineers, systems analysts, and programmers.
It focuses on the fundamental knowledge needed by designers of
database applications and on methodologies of structured design. With
the exception of an optional chapter on implementational aspects, the
book does not go into the system's internals, which are irrelevant to
the application designers. The current database technology isolates
its users from its internals. Therefore, in-depth understanding of
internals will be important only to that small category of system
designers who develop new database management systems. In contrast,
most software engineers will develop or maintain database applications
at one time or another.
The semantic approach
This book presents the field of database design from the perspective
of semantic modeling. The focus on semantic modeling serves three
purposes:
- The semantic and object-oriented data models are now occupying a
significant part of the frontier of the database technology and
are expected to become predominant in tomorrow's databases,
replacing the current relational database technology. (Although
somewhat different in their approach to database modeling, the
semantic and object-oriented models are quite similar. Their
differences are described in Chapter 10.)
- The semantic modeling approach is used in this book to unify the
ideas and terminology of the various database models. Instead of
separately introducing the relational database model with its
concepts, terminology, and languages, then the network database
model with its concepts and terminology, and so on, this book
unifies all of the database models into one framework. Most of
the concepts and languages are presented in terms of a unifying
semantic model. The other models are technically treated as
subsets of the semantic model; therefore, the concepts and
languages automatically apply to them.
- Most importantly, semantic modeling is presented as a tool of
database design in the relational and other database models.
Thus, the top-down relational database methodology presented in
this book proceeds as follows. First, the user's application is
analyzed and specified semantically. This produces a concise,
flexible, user-oriented specification of the application's
database, unconstrained by computer-oriented concerns. In the
second stage, this specification is converted into a relational
database schema, with its integrity constraints, data
manipulation programs, etc. The semantic description remains a
high-level documentation of the database.