430 likes | 587 Views
Chapter 9. View Design and Integration. Outline. Motivation for view design and integration View design with forms View integration. Why View Design and Integration ?. Database complexity reflects organizational complexity Time-consuming and labor-intensive process
E N D
Chapter 9 View Design and Integration
Outline • Motivation for view design and integration • View design with forms • View integration McGraw-Hill/Irwin
Why View Design and Integration? • Database complexity reflects organizational complexity • Time-consuming and labor-intensive process • Collect requirements from different user groups • Involves coordination among designer team McGraw-Hill/Irwin
Motivation for View Design and Integration As the “divide and conquer” strategy is used to manage complexity, View Design and Integration is an approach to managing complexity of the database design effort. McGraw-Hill/Irwin
Overview of View Design and Integration McGraw-Hill/Irwin
View Design with Forms • Important source of database requirements • Reverse the process described in the first part of the book • Derive an ERD that is consistent with the form • Five step procedure McGraw-Hill/Irwin
Sample Customer Order Form McGraw-Hill/Irwin
Form Analysis • Create an ERD to represent a form • ERD supports form and other anticipated processing • ERD should be consistent with the form • ERD is a view of the database McGraw-Hill/Irwin
Form Analysis Steps McGraw-Hill/Irwin
Step 1: Define Form Structure • Construct a hierarchy that depicts the form structure. • Most forms consist of a simple hierarchy where the main form is the parent and the subform is the child. • Complex forms can have parallel subforms and more levels in the hierarchy. McGraw-Hill/Irwin
Hierarchical Form Structure McGraw-Hill/Irwin
Step 2: Identify Entity Types • Split each node in the hierarchical structure into one or more entity types. • Make an entity type if the form field is a potential primary key and there are other associated fields in the form. McGraw-Hill/Irwin
Entity Types for the Customer Order Form McGraw-Hill/Irwin
Step 3: Attach Attributes • Attach attributes to the entity types identified in the previous step • Group together fields that are associated with the primary keys found in Step 2 • Form fields close together may belong in the same entity type McGraw-Hill/Irwin
Attributes Added to the Entity Types McGraw-Hill/Irwin
Step 4: Add Relationships • Relationships involving the form entity type • Form entity type contains the form's primary key • Relationships between the form entity type and other entity types derived from the parent node: usually 1-M. • Add a relationship to connect the form entity type to an entity type in the child node • Add relationships to connect entity types derived from the child node if not already connected McGraw-Hill/Irwin
Entity Relationship Diagram McGraw-Hill/Irwin
Step 5: Check Completeness and Consistency • Check the ERD for consistency and completeness with the form structure. • The ERD should contain minimum and maximum cardinalities for all relationships, a primary key for all entity types, and a name for all relationships. McGraw-Hill/Irwin
Consistency Rules for Relationship Cardinalities • In at least one direction, the maximum cardinality should be one for relationships connecting entity types derived from the same node (parent or child). • In at least one direction, the maximum cardinality should be greater than one for relationships connecting entity types derived from nodes on different levels of the form hierarchy. McGraw-Hill/Irwin
Analysis of M-Way Relationships using Forms • Choice between M-way and binary relationships can be difficult. • Data entry forms provide a context to understand M-way relationships. • An M-way relationship may be needed if a form shows a data entry pattern involving three entity types. McGraw-Hill/Irwin
Sample Project Purchasing Form McGraw-Hill/Irwin
ERD for the Project Purchase Form McGraw-Hill/Irwin
Sample Purchasing Form McGraw-Hill/Irwin
ERD for the Purchasing Form McGraw-Hill/Irwin
View Integration • Combine individual views into a complete database design • Incremental and parallel integration approaches McGraw-Hill/Irwin
Incremental Approach McGraw-Hill/Irwin
Parallel Approach McGraw-Hill/Irwin
Integration Strategy McGraw-Hill/Irwin
Precedence Relationships • Form A precedes form B if form A must be complete before form B • Preceding forms typically provide data for subsequent forms • Place forms with precedence relationships in the same view subset McGraw-Hill/Irwin
Precedence Example McGraw-Hill/Irwin
Resolving Synonyms and Homonyms • Synonym: spelled differently but have the same meaning • Homonym: same sound and often the same spelling but different meaning • Forms provide a context to resolve • Major part of standardizing a vocabulary McGraw-Hill/Irwin
Sample Invoice Form McGraw-Hill/Irwin
Incremental Integration Example • The following 5 slides demonstrate the Incremental Integration process by integrating the Invoice Form with the ERD for Customer Order Form. McGraw-Hill/Irwin
Form Hierarchy McGraw-Hill/Irwin
Identify entity types and attach attributes McGraw-Hill/Irwin
List the form fields that match existing entity types • Order No matches the Order entity type. • Customer No, Customer Name, Address, City, State, and Zip match the Customer entity type. • Product No, Description, and Unit Price match the Product entity type. McGraw-Hill/Irwin
Analyze homonyms • Revise the Customer entity type with two sets of address fields: billing address fields and shipping address fields. • Add shipping address fields to the Invoice entity type. • Create a new entity type (ShipAddress) with the shipping address fields. McGraw-Hill/Irwin
Integrated ERD (incremental) McGraw-Hill/Irwin
Parallel Integration Example • The difference between the parallel and incremental approaches is that integration occurs later in the parallel approach. • For the parallel approach, ERDs for forms must be constructed before merging. McGraw-Hill/Irwin
ERD for the Invoice Form McGraw-Hill/Irwin
Integrated ERD (Parallel) McGraw-Hill/Irwin
Summary • View design and integration is an important skill for designing large databases. • Manage complexity of large development efforts. • The result of form analysis is an ERD that is a view of the database. • Two approaches for View Integration, incremental and parallel. McGraw-Hill/Irwin