|
|
1 | (4) |
|
|
1 | (1) |
|
1.2 Models and Data Models |
|
|
2 | (1) |
|
1.3 The Unified Modeling Language (UML) |
|
|
2 | (1) |
|
1.4 Information Engineering (IE) |
|
|
3 | (1) |
|
1.5 Using UML and IE Together |
|
|
3 | (1) |
|
|
4 | (1) |
|
|
4 | (1) |
|
|
4 | (1) |
|
Chapter 2 A Data Modeling Example |
|
|
5 | (4) |
|
|
5 | (1) |
|
|
6 | (2) |
|
|
8 | (1) |
|
|
8 | (1) |
|
|
8 | (1) |
|
Part 1 Basic Modeling Concepts |
|
|
9 | (42) |
|
Chapter 3 Basic Class Concepts |
|
|
11 | (11) |
|
|
11 | (1) |
|
|
12 | (1) |
|
|
13 | (1) |
|
|
14 | (1) |
|
|
15 | (1) |
|
|
16 | (1) |
|
|
17 | (5) |
|
|
18 | (1) |
|
|
18 | (1) |
|
|
18 | (4) |
|
Chapter 4 Basic Association Concepts |
|
|
22 | (15) |
|
|
22 | (2) |
|
|
22 | (1) |
|
|
22 | (2) |
|
|
24 | (1) |
|
|
25 | (2) |
|
|
27 | (3) |
|
|
30 | (1) |
|
|
30 | (1) |
|
|
30 | (7) |
|
|
30 | (2) |
|
|
32 | (1) |
|
|
32 | (5) |
|
Chapter 5 Basic Generalization Concepts |
|
|
37 | (14) |
|
|
37 | (1) |
|
5.2 Abstract vs. Concrete Class |
|
|
38 | (1) |
|
|
39 | (1) |
|
5.4 Multiple Generalization Levels |
|
|
40 | (1) |
|
|
40 | (1) |
|
|
41 | (10) |
|
|
42 | (5) |
|
|
47 | (4) |
|
Part 2 Advanced Modeling Concepts |
|
|
51 | (52) |
|
Chapter 6 Advanced Class Concepts |
|
|
53 | (10) |
|
6.1 Candidate, Primary, and Alternate Keys |
|
|
53 | (1) |
|
6.2 Surrogate Key vs. Natural Key |
|
|
54 | (1) |
|
|
55 | (1) |
|
6.4 Current vs. Historical Data |
|
|
56 | (1) |
|
|
57 | (2) |
|
|
59 | (1) |
|
|
59 | (4) |
|
|
60 | (1) |
|
|
60 | (1) |
|
|
60 | (3) |
|
Chapter 7 Advanced Association Concepts |
|
|
63 | (10) |
|
|
63 | (1) |
|
|
64 | (1) |
|
7.3 Qualified Association |
|
|
65 | (2) |
|
|
67 | (1) |
|
|
68 | (1) |
|
|
69 | (1) |
|
|
70 | (3) |
|
|
70 | (1) |
|
|
70 | (3) |
|
Chapter 8 Advanced Generalization Concepts |
|
|
73 | (10) |
|
|
73 | (1) |
|
8.2 Multiple Generalization |
|
|
73 | (2) |
|
8.3 Overlapping Generalization |
|
|
75 | (3) |
|
|
78 | (1) |
|
|
79 | (1) |
|
8.5.1 Generalization vs. Association |
|
|
79 | (1) |
|
8.5.2 Generalization vs. Instantiation |
|
|
80 | (1) |
|
8.5.3 Generealization vs. Association End |
|
|
80 | (1) |
|
8.5.4 Generalization vs. Enumeration |
|
|
80 | (1) |
|
|
80 | (1) |
|
|
80 | (3) |
|
|
81 | (2) |
|
|
83 | (5) |
|
|
83 | (1) |
|
|
84 | (1) |
|
|
85 | (1) |
|
|
86 | (1) |
|
|
86 | (2) |
|
|
86 | (1) |
|
|
86 | (1) |
|
|
86 | (2) |
|
|
88 | (15) |
|
|
88 | (2) |
|
10.2 Database Constraints |
|
|
90 | (1) |
|
10.3 Hillard's Graph Complexity |
|
|
90 | (2) |
|
10.4 Hoberman's Data Model Scorecard® |
|
|
92 | (1) |
|
10.5 Additional Quality Items |
|
|
93 | (1) |
|
|
94 | (9) |
|
|
95 | (1) |
|
|
95 | (1) |
|
|
95 | (2) |
|
|
97 | (6) |
|
|
103 | (28) |
|
Chapter 11 Operational Data Modeling |
|
|
105 | (3) |
|
11.1 What is an Operational Data Model? |
|
|
105 | (1) |
|
11.2 Sample Operational Data Model |
|
|
105 | (1) |
|
11.3 Why Operational Data Models Are Important |
|
|
106 | (1) |
|
11.4 Constructing an Operational Data Model |
|
|
106 | (1) |
|
|
107 | (1) |
|
|
107 | (1) |
|
|
107 | (1) |
|
Chapter 12 Enterprise Data Modeling |
|
|
108 | (6) |
|
12.1 What is an Enterprise Data Model? |
|
|
108 | (1) |
|
12.2 Sample Enterprise Data Model |
|
|
109 | (1) |
|
12.3 Why Enterprise Data Models Are Important |
|
|
110 | (1) |
|
12.4 Constructing an Enterprise Data Model |
|
|
110 | (1) |
|
|
111 | (1) |
|
|
111 | (3) |
|
|
112 | (1) |
|
|
112 | (1) |
|
|
112 | (2) |
|
Chapter 13 Data Warehouses |
|
|
114 | (9) |
|
13.1 What is a Data Warehouse? |
|
|
114 | (2) |
|
13.2 Sample Data Warehouse Model |
|
|
116 | (1) |
|
13.3 Why Data Warehouses Are Important |
|
|
117 | (1) |
|
13.4 Constructing a Data Warehouse |
|
|
117 | (1) |
|
|
118 | (1) |
|
|
119 | (1) |
|
|
120 | (3) |
|
|
120 | (1) |
|
|
120 | (1) |
|
|
121 | (2) |
|
Chapter 14 Master Data Modeling |
|
|
123 | (8) |
|
14.1 What is a Master Data Model? |
|
|
123 | (1) |
|
14.2 Sample Master Data Model |
|
|
123 | (1) |
|
14.3 Why Master Data Models Are Important |
|
|
124 | (1) |
|
14.4 Constructing a Master Data Model |
|
|
125 | (1) |
|
14.5 Operational Data Modeling and MDM |
|
|
126 | (1) |
|
14.6 Enterprise Data Modeling and MDM |
|
|
126 | (1) |
|
14.7 Data Warehouses and MDM |
|
|
126 | (1) |
|
|
127 | (4) |
|
|
127 | (1) |
|
|
127 | (1) |
|
|
127 | (2) |
|
|
129 | (2) |
|
|
131 | (22) |
|
Chapter 15 Database Structure |
|
|
133 | (9) |
|
15.1 Fine Tuning of Physical Tables |
|
|
133 | (1) |
|
15.2 Domains and Data Types |
|
|
134 | (1) |
|
15.3 Primary and Alternate Keys |
|
|
134 | (1) |
|
|
135 | (1) |
|
15.5 Referential Integrity |
|
|
135 | (1) |
|
|
136 | (1) |
|
|
136 | (1) |
|
15.8 Script to Create the Online Retail Database |
|
|
136 | (1) |
|
|
136 | (6) |
|
|
141 | (1) |
|
|
141 | (1) |
|
|
141 | (1) |
|
Chapter 16 Database Queries |
|
|
142 | (11) |
|
16.1 The Object Constraint Language (OCL) |
|
|
142 | (1) |
|
16.2 Using the OCL for Class Model Traversal |
|
|
142 | (1) |
|
16.3 Basic OCL Traversal Expressions |
|
|
143 | (2) |
|
16.4 Composite OCL Traversal Expressions |
|
|
145 | (2) |
|
16.4.1 Objects and Object Collections |
|
|
146 | (1) |
|
16.4.2 Dealing with Nulls |
|
|
147 | (1) |
|
16.5 Traversing Database Tables |
|
|
147 | (1) |
|
|
148 | (1) |
|
|
149 | (4) |
|
|
149 | (1) |
|
|
149 | (1) |
|
|
149 | (2) |
|
|
151 | (2) |
|
Appendix: Answers to Exercises and Tests |
|
|
153 | (50) |
|
|
153 | (4) |
|
|
157 | (7) |
|
|
164 | (5) |
|
|
168 | (1) |
|
|
169 | (4) |
|
|
173 | (4) |
|
|
177 | (3) |
|
|
180 | (3) |
|
|
183 | (5) |
|
|
187 | (1) |
|
|
188 | (1) |
|
|
189 | (2) |
|
|
191 | (2) |
|
|
192 | (1) |
|
|
193 | (6) |
|
|
199 | (4) |
|
|
201 | (2) |
Index |
|
203 | |