Data Modeling Essentials and over 2 million other books are available for Amazon Kindle . Learn more
  • RRP: £49.99
  • You Save: £20.00 (40%)
FREE Delivery in the UK.
In stock.
Dispatched from and sold by Amazon.
Gift-wrap available.
Data Modeling Essentials ... has been added to your Basket
Trade in your item
Get a £5.33
Gift Card.
Have one to sell?
Flip to back Flip to front
Listen Playing... Paused   You're listening to a sample of the Audible audio edition.
Learn more
See this image

Data Modeling Essentials (The Morgan Kaufmann Series in Data Management Systems) Paperback – 4 Nov 2004

See all 5 formats and editions Hide other formats and editions
Amazon Price New from Used from
Kindle Edition
"Please retry"
"Please retry"
£23.67 £21.33
£29.99 FREE Delivery in the UK. In stock. Dispatched from and sold by Amazon. Gift-wrap available.

Special Offers and Product Promotions

  • When you trade in £15 or more you’ll receive an additional £5 Gift Card for the next time you spend £10 or more.

Frequently Bought Together

Data Modeling Essentials (The Morgan Kaufmann Series in Data Management Systems) + The Data Model Resource Book: Universal Patterns for Data Modeling v. 3 + Data Modeling Made Simple, 2nd Edition: A Practical Guide for Business and IT Professionals (Take It With You)
Price For All Three: £104.88

Buy the selected items together

Trade In this Item for up to £5.33
Trade in Data Modeling Essentials (The Morgan Kaufmann Series in Data Management Systems) for an Amazon Gift Card of up to £5.33, which you can then spend on millions of items across the site. Trade-in values may vary (terms apply). Learn more

Product details

  • Paperback: 562 pages
  • Publisher: Morgan Kaufmann Publishers Inc.; 3 edition (4 Nov. 2004)
  • Language: English
  • ISBN-10: 0126445516
  • ISBN-13: 978-0126445510
  • Product Dimensions: 19 x 3.2 x 23.5 cm
  • Average Customer Review: 5.0 out of 5 stars  See all reviews (3 customer reviews)
  • Amazon Bestsellers Rank: 439,550 in Books (See Top 100 in Books)
  • See Complete Table of Contents

More About the Author

Graeme Simsion is a former information technology and business consultant, who specialized in data modeling, information management and consulting practices.

He is now a full time writer of fiction. His first novel, The Rosie Project was published in Australia by Text and Michael Joseph (Penguin) in the UK. Thirty-three other countries have bought rights - see

Product Description


"The perfect balance of theory and practice, giving the reader both the foundation and the tools to deliver high-quality data models." -Karen Lopez, Principal, InfoAdvisors, Inc. "The complete guide to data modeling for the reflective practitioner. Students like this book and so do I -- it is clear and accessible without sacrificing rigor." -Professor Graeme Shanks, School of Business Systems, Monash University, Australia "A unique, practical and comprehensive guide, providing an invaluable resource to anyone involved in data modeling from the novice to the expert data modeler." -Len Silverston, author of The Data Model Resource Book, Volumes 1 and 2. "Includes an extraordinary amount of good, useful, and well articulated information about the field." -David Hay, President, Essential Strategies, Inc. and author of Data Model Patterns "Data Modeling Essentials is a fresh look at an old topic...much more accesible and refreshing in its tone and attitude. Simsion's explanations are very clear and his examples easy to follow...This book is useful for both beginners and experienced data modelers who want a new innovative approach to the important task of documenting data requirements." - The Bridge --Barbara A. Carkenord "The book is extremely well-written. It is humorous at times, full of useful anecdotes, and follows a very logical sequence...In summary, I found Data Modeling Essentials, Third Edition, very useful for data modelers at any level of experience." - DM Review

About the Author

Graeme C. Simsion has over 25 years experience in information systems as a DBA, data modeling consultant, business systems designer, manager, and researcher. He is a regular presenter at industry and academic forums, and is currently a Senior Fellow with the Department of Information Systems at the University of Melbourne.

Inside This Book (Learn More)
First Sentence
This book is about one of the most critical stages in the development of a computerized information system-the design of the data structures and the documentation of that design in a set of data models. Read the first page
Explore More
Browse Sample Pages
Front Cover | Copyright | Table of Contents | Excerpt | Index
Search inside this book:

Customer Reviews

5.0 out of 5 stars
5 star
4 star
3 star
2 star
1 star
See all 3 customer reviews
Share your thoughts with other customers

Most Helpful Customer Reviews

5 of 5 people found the following review helpful By A Customer on 8 Oct. 2001
Format: Paperback
This book gives an excellent introduction to the practical and theoretical aspects of data modelling.
It is written in a style which is suitable for beginners - but also is excellent revision and reference for "old pros".
I keep this book always to hand, and also have recommended it as a text book for a school which is teaching basic data modelling to 12th Grade students.
The whole text is well supported with practical examples. It also doesn't shrink from difficult areas, or discussing contentious issues.
Highly recommended.
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
3 of 3 people found the following review helpful By Dagna Gaythorpe on 31 Jan. 2005
Format: Paperback
Even if you already own the second edition, you should buy the third (or get your employers to buy it for you). (Putting this first for those people who don't want to read the whole review).
I already owned the second edition - it is the most frequently borrowed book from the set that I keep on my desk. So why did I buy the new edition as soon as I could? Because it is new, and covers new stuff - like sixth normal form (which turned out to be very familiar), and the Object Class Hierarchy, which is the answer to a Corporate/Enterprise Data/Information Architect/Administrator's prayer (job title generator - for each pair, pick one - the titles may vary, but the job seems to stay the same!) After years of developing web pages, spreadsheets and documents, and trying to get people to use them, this structure finally brings it all together.
It is tempting to dip into a book like this to look things up, or to explain something to someone else (it is very handy if someone wants to know what, exactly, you mean by 'fifth normal form' - just hand them the book open at the relevent section). But if you don't read the whole thing, then you risk missing all sorts of useful stuff that gets mentioned in passing (sometimes a passing remark, sometimes getting as much as a whole paragraph). For example, there is a very useful question to elicit important information from senior management, in chapter 10. (Go and read the book to find it!)
I think that the chapter on Enterprise Data Management needs expanding. Preferably into a companion volume ('Enterprise Data Management Essentials' - any chance, gentlemen?) But that is just about my only caveat.
The second edition is still the most frequently borrowed book on my desk - but only because I don't let this one out of my sight, and I have been making people buy their own copies.
If you buy the book and disagree with me - feel free to come and tell me why at any DAMA conference!
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
2 of 3 people found the following review helpful By Daragh O Brien on 12 July 2005
Format: Paperback
I am a proud owner the second edition, have leafed through the third edition (before being asked politely if I could be helped the the shop-assistant) and have had the pleasure of seeing both authors present on this topic (and others) at a variety of conferences.
If you want a book on data (that's dahhh-ta) modelling that hasn't crawled completely up its own (or a modelling tool vendor's) rear-end, this is a good purchase. Complex issues are presented clearly and REAL-WORLD issues are actually considered, as opposed to being dismissed simply as not being the way to do things.
I've applied the approaches to model design that are in the 2nd edition 'in the wild' and have found them to be extremely successful. As soon as I can prise the funding from my boss's miserly hand I will be getting my copy of the 3rd edition
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again

Most Helpful Customer Reviews on (beta) 29 reviews
56 of 58 people found the following review helpful
Excellent practical introduction 30 May 2002
By Vince Kenyon - Published on
Format: Paperback
Excellent practical introduction to data modeling in the relational paradigm using entity-relationship techniques. Detailed and instructive discussions weighing the relative merits of alternative models for scenarios. Positions data modeling within the context of developing information systems for business. Real-world, messy examples of the kinds of problems and errors that can arise-some of them a bit contrived, but usually to make a good point. A number of respectable sources footnoted, but unfortunately no bibliography.
Proposes evaluation criteria for measuring model quality. Admits conflict among these criteria-all desirable attributes of a model cannot be optimized simultaneously. Trade-offs must be made. Recognizes the limits of data modeling: "Don't try to solve every problem by developing a conventional data model (p. 265)."
Emphasizes that data modeling, although often confused with analysis, is not analysis. It is design. There is no one correct model for every scenario. Advocates using creativity to propose multiple alternative models before selecting a solution. Establishes the role of the data modeler by analogy with that of a residential architect.
Interestingly, goes on to say that the distinction between analysis and design is important-without ever drawing it. Does not describe data "analysis," if such a thing even exists.
Differentiates between data model and database design. Mainly because the paradigm used to represent the data while modeling it with the database customer (relational tables & columns, in this case) might differ from the paradigm that the database uses to represent it (network or hierarchy, perhaps). More recently, it has become common to model a solution with customers using the object paradigm and to implement it with database software using the relational paradigm. The paradigms need not always differ, but when they do, a translation is required before building the database.
Addresses not just how a data model works, but also how to build one, including the people to involve, the inputs to consult, and the sequence of tasks. Suggests various approaches, including top-down (entity-relationship modeling from scratch), bottom-up (using existing documents), and the customization of existing models and model fragments.
Covers the five normal forms of relational data, not omitting the limits of normalization and the assumptions on which it is based. Contrasts normalization with entity-relationship modeling as "bottom-up" versus "top-down," the former emphasizing technical soundness and the latter emphasizing business suitability. Admits that normalization is usually performed explicitly only as a final check after entity-relationship modeling-if at all. Examples show importance of normalization.
Numerous interesting observations on type hierarchies and generalization.
Notes compromise between representing business rules with specific data structures and accommodating business change with generic data structures: the more rules are represented in data structure, the more susceptible is that structure to future change. Unstable rules are better represented in program code or in data values-both easier to change than the structure of a production database. Cites frequency of both over-generic and over-specific models.
Makes the important point that data models represent not the real world, but rather WHAT WE KNOW about it. Some data models quite properly assert that a person might be neither man nor woman-because a business might not know the gender of every person in which it has an interest. Personally, I would go a little further by adding that a model represents only what we CARE to know.
Marring the otherwise valuable discussion of type hierarchies is their misapplication to modeling the various roles in which persons and organizations might act. A role may by nature be assumed and abandoned without changing identity. Using a subtype to represent it forces the subtype's instances to become and then to "unbecome" instances of the subtype as they change their roles-an obvious absurdity. We would indeed venture too far into the spirit world to claim that one might cancel membership in Homo Sapiens while retaining membership in Mammalia for the purpose of exercising at some later date the option to reincarnate as a chimpanzee!
Points out necessity of asymmetry in implementation of recursive many-to-many relationship. Debunks some previously asserted "rules" regarding relationships. Discusses transferability of relationships and uses this concept in discussing one-to-one relationships, foreign keys in primary keys (weak entities), and time-dependent relationships.
Interesting details on attributes that many similar books skip-particularly in the section on attribute generalization.
Sadly accepts the notion that all of a model's codes might be implemented very nicely in one big table. This idea is an abomination. It impedes the evolution of "code entities" into non-trivial entities. It complicates enforcement of referential integrity. The suggestion of views for isolating cohesive subsets of the big code table defeats the very data-driving that code tables are built to enable.
Also errs in proposing Code as a proper supertype for a "code entity." Code is a meta-entity. It represents nothing in the domain of the data model. In that domain it is not a supertype of anything. It would make as much sense to say that each thing is a type of Word because it has a word to describe it. It is valuable to recognize the common processing shared by many codes, but that commonality does not by itself imply a supertype.
Good exposition of the option to use data structure, program code, or data value to enforce a business rule.
Advises representing rules in the entity-relationship diagram using features for which there is "little intention of actually implementing (p. 269)." Type hierarchies are particularly recommended in this regard-even if they are not valid partitionings. Certainly, there are rules dependent on the values of attributes, but let's not make each attribute the basis of a subtype partitioning just to permit their graphic depiction! Advocates graphic depiction for communication with business customers even though diagrams are notoriously difficult for business customers. Diagrams are best suited to DBAs and programmers, but they are the very ones who wish not to see them cluttered with unimplemented constructs!
Quibbles and quips notwithstanding, a good book on one of my favorite subjects.
40 of 42 people found the following review helpful
A classic for all data professionals 16 Sept. 2010
By Karen Lopez - Published on
Format: Paperback
Simsion and Witt's _Data Modeling Essentials_ has been a classic on my data management bookshelf since the first edition. Now in the 3rd Edition, this work has become even more valuable and useful on data management projects. The fact that the authors continue to enhance and expand their work is a real asset.

This work is targeted at both students and experienced information technology professionals.

...and, of course, any data modeling book that manages to quote from Led Zeppelin's "Stairway to Heaven", Stephen Covey's _7 Habits of Highly Effective People_, Bob Dylan's "Brownsville Girl", and even Jack Kerouac must be a good read, right?

Let's start with what I really like about this book:

1) _Essentials_ starts at the beginning "What is a Data Model" and works its way through entities, attributes, subtypes, ERDs, normalization and all the basics through to fairly advanced topics such as the use of surrogate keys, transformations, designing for performance, time dependence and advanced normalization. Simsion and Witt make this trek in a balanced and clearly-explained manner. This is no _...For Dummies_ type work - it is a true professional level book that consistently targets the whys, why-nots, how-much and when-to-stops of data modeling.

2) Along the way, the authors refer to multiple methods, notations, and tools, while sticking with a single notation throughout. I much prefer data modeling books like _Essentials_ that use the most common notation in modeling, as these books are more useful in a variety of contexts over those that use more obscure notations. I can see how this edition has updated references to tool features and modeling support.

3) _Essentials_ includes discussions that are, more often than not, left out of technical works in the data management field. For instance, most of the topics include references to myths, trade-offs, and real world issues. The authors' willingness to explore these topics is, in my opinion, a sign of maturity of this book. So many technical texts in database design completely ignore the trade-offs in tuning, simplifying design, and working with external constraints, etc., but the authors jump right in and give their opinions on what is best.

4) This book contains a substantial amount of material on the development of physical models and databases. Many data modeling books treat this area lightly and I find the authors' thoroughness in this area a really strength. Many logical data modelers struggle with turning beautiful designs into working databases and _Essentials_ does a great job of explaining the trade offs in a non-DBMS-specific manner.

This 3rd edition expands in these areas to become a true professional's guide to data modeling.

What I didn't like about Essentials:

1) While the majority of the work uses contemporary terminology and notation, there are still some terms with currency issues. For instance, when describing process models, the examples use Data Flow Diagramming notation, something that is not quite a common as it used to be and can be perceived as dated. On the other hand, what did the authors choose to call the boxes on a data model? "Entity Classes", in deference to what object modelers chose to call these boxes. The authors believe that this deference will improve communications between modelers. I don't agree. Having borrowed a term from the object crowd, how does the book refer to modelers? "E-R modelers", a term that is rare and dated. And in many places, instead of referring to data models, they are called "E-R models". Data modeling tools are referred to as "documentation tools" or "CASE tools" - these are also dated terms. Perhaps in the 4th edition we will see a complete updating of terminologies and notations.

2) As a textbook, this work recommends approaches that are not suitable for novice modelers. For instance, the authors recommend the use of dummy rows and special dummy words in databases to avoid Nulls, the use of multi-valued attributes (not columns, attributes), etc. Of course these things happen in the real world, but to recommend them in a text without sufficiently covering the down sides of these approaches is going to get a few newbie modelers in hot water.

3) As a professional guide, the definition of "Logical Model" as a model that is DBMS-specific is not a well-accepted definition and will cause confusion when professionals work with others who define a Logical Model as a model that is DBMS-independent.

4) I believe that the introduction of Normalization in Chapter 2 is premature. Many normal forms can be `met' by following good modeling practices. If these practices were introduced in an appropriate manner, the authors could then show how these practices support normalization.

5) As I have said in reviews of other data modeling works, I hold text book examples to a higher standard. _Essentials_ uses an entity and relationship naming standard that is overly prone to errors and misunderstandings: infinitive-based verb phrases with a "be" form in the reverse relationship. This leads unfortunately weak relationship names, such as those in figure 10.3 Insurance Model:

a. Policy Type may classify Policy / Policy must be classified by Policy Type (using may and must based on optionality)

b. Policy must involve Person Role in Policy / Person Role in Policy must be for Policy

I'm not sure how to interpret these. Why is "involve" the reverse of "be for"? What does the term "be for" really mean, anyway? What does "be of" mean?

What if I don't want to introduce cardinality in my business sentences? I'd get sentences such as "Person Role in Policy be for Policy". What business user wants to work with a model that has assertions such as that? What does the relationship that is named "nominate" on one side and "be party to" on the other really mean? This sounds like I may just be nitpicking, but I continue to find this be-form and infinitive verb style prone to errors and I wish authors would give up on it in textbooks. If the authors can't make it work, how will the students?


While I've mentioned a handful of things I didn't like in this work, I still highly recommend it. I especially appreciate the approach to topics that most authors shy away from. This is a substantial work - it has goodies for new modelers, intermediate modelers, and advanced modelers. _Data Modeling Essentials_ is my number one recommended how-to data modeling book. It is the perfect balance of theory and practice, giving the reader both the foundation and the tools to deliver high-quality data models.

Disclaimer: I was a pre-publication reviewer for this work and received compensation, including copy of the book, for providing a review based on my data modeling experience. I receive no compensation from the publisher related to sales or promotion of this book.
13 of 13 people found the following review helpful
Essentially the best reference for data modelling 13 Jan. 2005
By David F. Wiebe - Published on
Format: Paperback
The most valuable book I own about data modelling.

Covers all the basics one needs to know if they are going to talk about data modelling and what it really means and what is involved. And if you are expected to actually do the data modelling, even better, it provides coverage on all the things you should include, or at least consider, as well as some insights on how you are going to show the value and importance of being able to model your data.

Even a seasoned modeller like myself wants to refer to a solid piece of reference material to ensure I'm doing the right thing and that I'm not forgetting anything.

I was very happy to see a section on Conceptual Data Modelling as I find myself spending more time in this space getting the business to recognise that 'they' own this model, and they should identify and define all their business attributes here. That way when the database, or data interface, needs to be built the logical model can be created using these conceptual models as a reference point... should be less argument on what that column in the database really means!

So many more highlights... but maybe I'm just a fanatic about data... it's my coffee table book.

Thanks Graeme and Graham.
17 of 19 people found the following review helpful
Pick the mind of a real database designer 30 Aug. 1998
By A Customer - Published on
Format: Paperback
I read this book casually at first, thinking that it would merely confirm what I knew, since I was finishing up a database certification program. So when it pushed me to think harder, I put it away. HOWEVER, I recently returned to the book after some experience with Paradox for DOS, and I now see the light. It took real work to get through the first two chapters--about three hours for me--but I am glad that I have revisited this book and can tell everyone to (1) get it if they are serious about database design and (2) finish the lessons, even if they seem difficult or if they don't serve up simple rules right away. Simsion makes you really think about data organization, something usually left by the side of the road in the rush to put up a system. At least with this book your database will have the best possible foundation.
9 of 9 people found the following review helpful
Good coverage of the topic in an easy to read style. 24 Aug. 2004
By Daniel Lamb - Published on
Format: Paperback
I must have read at least a dozen books on data modeling and database design in the past few years, and this one sits right near the top for ease of understanding and presentation. The author goes through the material in a logical manner, and writes in a clear way that many other authors on this topic can't even come close to. I'd recommend this book especially to those new to the field, but there is still useful material for those who have been working/dabbling here for some time.
Were these reviews helpful? Let us know