Data modeling is one of the most critical phases in the database application development process, but also the phase most likely to fail. A master data modeler must come into any organization, understand its data requirements, and skillfully model the data for applications that most effectively serve organizational needs.
Mastering Data Modeling is a complete guide to becoming a successful data modeler. Featuring a requirements-driven approach, this book clearly explains fundamental concepts, introduces a user-oriented data modeling notation, and describes a rigorous, step-by-step process for collecting, modeling, and documenting the kinds of data that users need.
Assuming no prior knowledge, Mastering Data Modeling sets forth several fundamental problems of data modeling, such as reconciling the software developer's demand for rigor with the users' equally valid need to speak their own (sometimes vague) natural language. In addition, it describes the good habits that help you respond to these fundamental problems. With these good habits in mind, the book describes the Logical Data Structure (LDS) notation and the process of controlled evolution by which you can create low-cost, user-approved data models that resist premature obsolescence. Also included is an encyclopedic analysis of all data shapes that you will encounter. Most notably, the book describes The Flow, a loosely scripted process by which you and the users gradually but continuously improve an LDS until it faithfully represents the information needs. Essential implementation and technology issues are also covered.
You will learn about such vital topics as:
- The fundamental problems of data modeling
- The good habits that help a data modeler be effective and economical
- LDS notation, which encourages these good habits
- How to read an LDS aloud--in declarative English sentences
- How to write a well-formed (syntactically correct) LDS
- How to get users to name the parts of an LDS with words from their own business vocabulary
- How to visualize data for an LDS
- A catalog of LDS shapes that recur throughout all data models
- The Flow--the template for your conversations with users
- How to document an LDS for users, data modelers, and technologists
- How to map an LDS to a relational schema
- How LDS differs from other notations and why
"Story interludes" appear throughout the book, illustrating real-world successes of the LDS notation and controlled evolution process. Numerous exercises help you master critical skills. In addition, two detailed, annotated sample conversations with users show you the process of controlled evolution in action.
Table of Contents
2. Good Habits.
3. Reading an LDS with Sentences.
4. Vocabulary of LDS.
5. Visualizing Allowed and Disallowed Instances.
6. A Conversation with Users about Creatures and Skills.
7. Introduction to Mastering Shapes.
8. One-Entity, No-Relationship Shapes.
9. One-Attribute Shapes.
10. Two-Entity Shapes.
11. Shapes with More Than Two Entities.
12. Shapes with Reflexive Relationships.
13. LDS Syntax Rules.
14. Getting the Names Right.
15. Official Name.
16. Labeling Links.
17. Documenting an LDS.
18. Script for Controlled Evolution.
19. Local, Anytime Steps of Controlled Evolution.
20. Global, Anytime Steps of Controlled Evolution.
21. Conversations about Dairy Farming.
23. LDS for LDS.
24: Decisions: Designing a Data-Modeling Notation.
25. LDS and the Relational Model.
26: Cookbook: Recipes for Data Modelers.
Appendix: Exercises for Mastery.