200 likes | 346 Views
Data Modeling. Professor Chen School of Business Administration Gonzaga University Spokane, WA 99258. Data Modeling. The data model is a cornerstone for every information system, because it describes the entities that the system will create and maintain during its lifetime.
E N D
Data Modeling Professor Chen School of Business Administration Gonzaga University Spokane, WA 99258
Data Modeling • The data model is a cornerstone for every information system, because it describes the entities that the system will create and maintain during its lifetime.
MODELING ENTERPERISE DATA Enterprise View Coporate strategies/ goals etc. Congruent Conceptual Data Models Business Needs Logical Models Maintenance Satisfy Physical Models ProductionSystem Implement
Data Modeling (Cont.) • Building the data model is probably the most important activity during requirements definition, because in the process of understanding how the data is organizaed and identifying the relationships that exist between entities, you can discover most of the functionality that the system will satisfy.
Business area of Data Model • The data model of a business area tends to be relatively stable, compared, for example, to the set of operational procedures or organizational structure, which changes frequently. • Therefore, basing the implementation of the future system upon a well-defined data model is a good first step towards developing a system that meets the real requirements of the users.
Techniques and Approaches • Two techniques are used interchangeably to model the data of a system: • Entity relationship model (E-R/M) • Data normalization
E-R/M and Normalization • E-R/M (and EE-R/M) aims at identifying the entities that are part of the system, the attributes that make up these entities, and the dependencies between entities. • Normalization makes the data model created using the E-R more robust and extends the life of systems based on the model.
E-R and Normalization (Cont.) • These two techniques go hand in hand and should be applied conscientiously during data modeling activities.
Approaches to Data Modeling • Two approaches to data modeling: • Top-down • Bottom-up
Top-Down vs. Bottom-Up Approach Bottom-Up TOP-DOWN Identify Entities Identify Entities Discover Relationship Discover Relationship Define Attributes Analyze/synthesize Data Define Attributes Collect Data
Top-Down vs. Bottom-Up Approach Bottom-Up TOP-DOWN Identify Entities Identify Entities Discover Relationship Discover Relationship Define Attributes Analyze/synthesize Data Define Attributes Collect Data
Why Normalization? • Remove the anomalies due to • lack of flexibility • ineffectiveness of data storage • inefficiency of data manipulation operations • inserts (additions) • deletes (deletion) • updates (modification)
Denormalization and Why? • Denormalization is the process of transforming normalized relations into unnormalized physical record specifications. • A normalized form (e.g., 3NF) presents many important features, however, it may required that queries join terms from different entities more often than in a less normalized data model.
CUSTOMER CustID ... CITY STATE ZIP Normalization ZIP CITY ZIP STATE ZIP CITY STATE Another example of denormalization ? NO!
Denormalization : CUSTOMER • In a denormalized version of the CUSTOMER entity, ZIP, CITY, and STATE may be defined as attributes of the entity whose value is derived from entity ZIP and stored redundantly with the other address properties of each CUSTOMER.
New Business Rules • To maintain the data consistency, new business rules should be implemented: • the values of attributes CITY and STATE will be updated only in the entity ZIP. In all other entities where these attributes are denormalized, applications may insert and select but not modify these attributes.
New Business Rules (cont.) • when the attributes CITY and STATE of entity ZIP are modified, the changes will be propagated in all the denormalized CITY and STATE attributes of other entities.
Un-normalization vs. De-normalization • Unnormalized data model is little or no analysis is performed. • Denormalized data model is derived from a model in the 3NF, after the reasons and impact of denormalizing some entities are identified and weighed.
Conclusion • When parts of the data model are denormalized, the rules for maintaining the redundant data must be defined clearly and implemented programmatically, in order to avoid the anomalies discussed before.