Welcome to  Logical Data Modeling, What is it Really? An Overview of Logical Data Modeling Chris Crisci ESPN Data ModelerA...
Data Modeling Presentations What’s Coming Up? <ul><li>Today’s Presentation </li></ul><ul><ul><li>What is Logical Relationa...
Logical Data Analysis & Design: Ed Yourdon @ ESPN on July 22, 2010 08/19/10
Logical Analysis & Design Discussion Topics 08/19/10 Today’s Agenda What is Logical Data Modeling, in a nutshell? What is ...
Logical Analysis & Design I What is Logical Data Modeling, in a nutshell? 08/19/10 Part I
What is Logical Data Modeling, in a nutshell?   Normalizing the Land of Oz 08/19/10
<ul><li>CASE </li></ul><ul><li>IDEF1X is syntax and notations, guidelines and rules which may be used in the compilation o...
What is Logical Data Modeling, in a nutshell?  GeneralizationSpecification and The Wizard of OZ 08/19/10
What is Logical Data Modeling, in a nutshell?  GeneralizationSpecification and The Wizard of OZ 08/19/10 Looks similar to ...
What is Logical Data Modeling, in a nutshell? The Steps of Data Normalization 08/19/10
What is Logical Data Modeling, in a nutshell?   Normalization and The Wizard of OZ 08/19/10
What is Logical Data Modeling, in a nutshell? Application Work: Entity Relationship Analysis 08/19/10
What is Logical Data Modeling, in a nutshell?  Relationship Analysis: Data Analysis 08/19/10 Normalization and Application...
What is Logical Data Modeling, in a nutshell?   Modeling the Plot of the Wizard of Oz 08/19/10
What is Logical Data Modeling, in a nutshell?   Modeling the Plot of the Wizard of Oz 08/19/10
What is Logical Data Modeling, in a nutshell?   Modeling the Plot of the Wizard of Oz 08/19/10
Logical Analysis & Design II What is Semantic Analysis & Word Classification? 08/19/10 Part II
What is Semantic Analysis & Word Classing?   Conceptual Analysis: Semantic Modeling 08/19/10 “ The better I can describe t...
08/19/10 What is Semantic Analysis & Word Classing?   Conceptual Analysis: Context
What is Semantic Analysis & Word Classing?   Conceptual Analysis: Semantic Methodology 08/19/10 Semantic Analysis: How do ...
What is Semantic Analysis & Word Classing?   Conceptual Analysis: Semantic Sources 08/19/10 PAST  REQUIREMENTS REPORTS APP...
What is Semantic Analysis & Word Classing?   Conceptual Analysis: Semantic Sources 08/19/10 During Semantic Analysis,  we’...
What is Semantic Analysis & Word Classing?  The Episode Break Format in Context 08/19/10 Application configuration context...
What is Semantic Analysis & Word Classing?   Generalization: The Base Types – Conceptually Correct? 08/19/10 An entity is ...
What is Semantic Analysis & Word Classing?   Generalization: Base Types Grow by Conversation 08/19/10
What is Semantic Analysis & Word Classing? Generalization: Base Types Will Change 08/19/10 Now I know: A Format describes ...
What is Semantic Analysis & Word Classing? Generalization: Building on the Base Types 08/19/10 In its Program Scheduling  ...
08/19/10 Now I know:  Format versions may be created from an  existing Format, based on the following: Program Duration,  ...
What is Semantic Analysis & Word Classing?   The End Result: A Conceptual Data Model 08/19/10 CONCEPTUAL DATA MODEL INTEGR...
08/19/10 Take Away: In order to perform complete analysis, is it necessary to have an advanced understanding  of the busin...
Logical Analysis & Design III Where does LDM fit into the Enterprise? 08/19/10 Part III
Where does LDM fit into the Enterprise?   The Cycle 08/19/10 The highest level view of everything we will define, design, ...
Where does LDM fit into the Enterprise?   The Zachman Framework 08/19/10
Where does LDM fit into the Enterprise?   The Zachman Framework: Artifact Integration 08/19/10 THE ZACHMAN FRAMEWORK ‘ It ...
08/19/10 GENERATION LINKS  - are created during model or object generation.  Each generated object is linked with its orig...
Where does LDM fit into the Enterprise?   The Framework Simplified 08/19/10
Where does LDM fit into the Enterprise?   Take Away 08/19/10 Take Away: Which of the artifacts outlined in the Zachman Fra...
Logical Analysis & Design IV What is a Logical Functional approach? 08/19/10 Part IV
What is a Logical Functional approach? Conceptual Level: Business Process Model 08/19/10 A Business Process Model exists a...
What is a Logical Functional approach?   Conceptual Level: Business Process Model 08/19/10 A Conceptual Functional Model: ...
What is a Logical Functional approach? Logical Application Level: System Components <ul><li>A  Component  is a modular par...
08/19/10 What is a Logical Functional approach? Logical Application Level: ESPN Components
What is a Logical Functional approach? Logical Application Level: Domain Class Object 08/19/10 The Component is drawn at a...
08/19/10 What is a Logical Functional approach? Logical Application Level: Domain Class Objects
What is a Logical Functional approach?   How is a Logical Data Model Constructed? 08/19/10 DOMAIN CLASS INTEGRATION The Cl...
08/19/10 Categorization GeneralizationSpecification What is Data Normalization? Ensuring Stability Against Rapid Change No...
08/19/10 How can Application Architecture and Data Architecture integrate and work in parallel here at ESPN? Take Away: Wh...
Logical Analysis & Design V Are Logical Data Models Really Necessary? 08/19/10 Part V
Are Logical Data Models Really Necessary? Why design Logical Data Models? <ul><ul><li>‘ The process required to create the...
Are Logical Data Models Really Necessary? Do We Believe in Codd? 08/19/10
Are Logical Data Models Really Necessary? Codd: Who is this guy? <ul><li>Proper Englishman </li></ul><ul><li>Captain in th...
Are Logical Data Models Really Necessary? Why Codd believes we need Logical Data Models? <ul><li>Protects users from havin...
Logical Analysis & Design VI What is a Relational Database, Really? 08/19/10 Part VI
<ul><li>USE RDBMS TOOLS ONLY </li></ul><ul><li>“ For a system to qualify as a relational database, it must use its relatio...
<ul><li>LOGICAL DATA INDEPENDENCE </li></ul><ul><li>“ Changes to the logical level of the database must not require a chan...
<ul><li>INTEGRITY IDEPENDENCE </li></ul><ul><li>“ Integrity constraints must be specified separately from applications and...
<ul><li>NO SUBVERSION </li></ul><ul><li>“ If the system provides a record-at-a-time interface, then that interface cannot ...
<ul><li>NORMALIZATION </li></ul><ul><li>‘ All attributes within an table must be Fully Functional - depending upon the key...
<ul><li>THE INFORMATION RULE </li></ul><ul><li>“ All information in the database is to be represented in one and only one ...
08/19/10 “ No.” What is a Relational Database, Really? Codd’s Theories Are Still Relevant to ESPN
Logical Analysis & Design VII What is Data Normalization, really? 08/19/10 Part VII
What is Data Normalization? Identification and Reliability of Data Items <ul><li>The Data Item is the smallest component a...
What is Data Normalization? Avoiding Data Anomalies Down the Road 08/19/10 Functional Dependency Full Functional Dependenc...
What is Data Normalization? Reliable Transactions: Functional Dependency 08/19/10 Functional Dependency If Brand and Adver...
08/19/10 Full Functional Dependency (composite keys) To be Fully Functional, an attribute must be dependent upon a composi...
08/19/10 Transitive Functional Dependency Suppose we want to collect information for an ESPN Account Rep, relative  to his...
08/19/10 Logically, if all those Proposals existed within the same entity, that would indicate the existence of one kind o...
Logical Analysis & Design VIII An Example of a General Purpose Artifact 08/19/10 Part VIII
An Example of a General Purpose Artifact Logical Data Modeling: Reifying Chaos 08/19/10
An Example of a General Purpose Artifact Logical Data Modeling: The Data Model (ErD) 08/19/10 How do we get from all of th...
An Example of a General Purpose Artifact   A More in Depth Look at the Data Artifacts 08/19/10
An Example of a General Purpose Artifact What are the Primary Data Artifacts? 08/19/10 DOMAIN CLASS DIAGRAM LOGICAL DATA M...
An Example of a General Purpose Artifact What is a Data Flow Diagram? 08/19/10 DFD “ Different vendors, consultants, and a...
An Example of a General Purpose Artifact Conceptual Process with Data Sets: Data Flow Diagram 08/19/10 A Data Flow Diagram...
An Example of a General Purpose Artifact An Alternative Conceptual Approach to Semantics 08/19/10 DATA STORES As with the ...
An Example of a General Purpose Artifact The Transformation Process and the Data Store 08/19/10 A Process is defined as an...
An Example of a General Purpose Artifact The Context Diagram 08/19/10
An Example of a General Purpose Artifact Component Decomposition 08/19/10
An Example of a General Purpose Artifact Decomposition Continues… 08/19/10
An Example of a General Purpose Artifact The Objective: The Data Dictionary 08/19/10
An Example of a General Purpose Artifact How is a Logical Data Model Constructed? 08/19/10 DATA STORE INTEGRATION Data Sto...
08/19/10 An Example of a General Purpose Artifact Normalizing the Data Stores: The ESPN Method
What is Data Normalization?   The Normalized Logical Data Model 08/19/10 The End Result of the Normalization Process.
Logical Analysis & Design IX What might artifact integration look like? 08/19/10 Part IX
08/19/10 What might artifact integration look like? Model Integration: By Reference or by Generation
What might artifact integration look like? Model Integration: An Illustration 08/19/10 Generation links - are created duri...
What might artifact integration look like?   Take Away 08/19/10 Take Away: Will a common selection and integration of arti...
Logical Data Analysis & Design: Thank You for your Time! 08/19/10 Questions
Upcoming SlideShare
Loading in …5
×

Data Modeling Presentations I

9,742 views

Published on

  • Be the first to comment

Data Modeling Presentations I

  1. 1. Welcome to Logical Data Modeling, What is it Really? An Overview of Logical Data Modeling Chris Crisci ESPN Data ModelerArchitect - DAIS This is the first in a series of four presentations about Logical Data Modeling and its practice.
  2. 2. Data Modeling Presentations What’s Coming Up? <ul><li>Today’s Presentation </li></ul><ul><ul><li>What is Logical Relational Data Modeling? </li></ul></ul><ul><ul><ul><li>Chris Crisci - Data ModelerArchitect </li></ul></ul></ul><ul><li>More Data Modeling Presentations to Come </li></ul><ul><ul><li>Principles and Methods – July 22 </li></ul></ul><ul><ul><ul><li>ED YOURDON - A uthor, Practioner, Theorist, Lecturer </li></ul></ul></ul><ul><ul><li>A Deeper Dive into Methods and Techniques – August 9-11 </li></ul></ul><ul><ul><ul><li>STEVE HOBERMAN - Author, Practioner </li></ul></ul></ul><ul><ul><li>A Deeper Dive into Data Modeling – September 10 </li></ul></ul><ul><ul><ul><li>TDWI – The Data Warehouse Institute </li></ul></ul></ul>08/19/10
  3. 3. Logical Data Analysis & Design: Ed Yourdon @ ESPN on July 22, 2010 08/19/10
  4. 4. Logical Analysis & Design Discussion Topics 08/19/10 Today’s Agenda What is Logical Data Modeling, in a nutshell? What is Semantic Analysis and Word Classification? Where does Logical Data Modeling fit into the Enterprise Architecture? What is a Logical Functional Approach? Are Logical Data Models Really Necessary? What is a Relational Database, Really? What is Data Normalization, Really? An Example of a General Purpose Artifact What Might Artifact Integration Look Like?
  5. 5. Logical Analysis & Design I What is Logical Data Modeling, in a nutshell? 08/19/10 Part I
  6. 6. What is Logical Data Modeling, in a nutshell? Normalizing the Land of Oz 08/19/10
  7. 7. <ul><li>CASE </li></ul><ul><li>IDEF1X is syntax and notations, guidelines and rules which may be used in the compilation of a Conceptual or Logical Data Model – and it builds on the principles of Normalization. </li></ul>08/19/10 What is Logical Data Modeling, in a nutshell? Ensuring Stability Against Rapid Change Categorization GeneralizationSpecification Normalization of Entities by Domains
  8. 8. What is Logical Data Modeling, in a nutshell? GeneralizationSpecification and The Wizard of OZ 08/19/10
  9. 9. What is Logical Data Modeling, in a nutshell? GeneralizationSpecification and The Wizard of OZ 08/19/10 Looks similar to a Domain Class Diagram.
  10. 10. What is Logical Data Modeling, in a nutshell? The Steps of Data Normalization 08/19/10
  11. 11. What is Logical Data Modeling, in a nutshell? Normalization and The Wizard of OZ 08/19/10
  12. 12. What is Logical Data Modeling, in a nutshell? Application Work: Entity Relationship Analysis 08/19/10
  13. 13. What is Logical Data Modeling, in a nutshell? Relationship Analysis: Data Analysis 08/19/10 Normalization and Application Requirements create entities by their own momentum. Relationship, Cardinality, Set and Dependency Analysis are all part of Logical Data Modeling.
  14. 14. What is Logical Data Modeling, in a nutshell? Modeling the Plot of the Wizard of Oz 08/19/10
  15. 15. What is Logical Data Modeling, in a nutshell? Modeling the Plot of the Wizard of Oz 08/19/10
  16. 16. What is Logical Data Modeling, in a nutshell? Modeling the Plot of the Wizard of Oz 08/19/10
  17. 17. Logical Analysis & Design II What is Semantic Analysis & Word Classification? 08/19/10 Part II
  18. 18. What is Semantic Analysis & Word Classing? Conceptual Analysis: Semantic Modeling 08/19/10 “ The better I can describe the business entities, the better I can model them.” For example: What are the contexts within which the word or phrase can be used? How does each context change the meaning of the word or phrase? Semantics: Information is Data in Context “ From the user's perspective.” Word Classes: How we interpret Semantics Noun, Verb, Adjective, Adverb, Conjunctive, Preposition, etc.
  19. 19. 08/19/10 What is Semantic Analysis & Word Classing? Conceptual Analysis: Context
  20. 20. What is Semantic Analysis & Word Classing? Conceptual Analysis: Semantic Methodology 08/19/10 Semantic Analysis: How do we do this? Classify (parse) the phrases and words Generalize (don’t get too specific at first) Generalizing and Classifying information leads to type definition: Identify Concrete and Abstract Objects as: Base Types (Entities) Composite Types (with attributes)
  21. 21. What is Semantic Analysis & Word Classing? Conceptual Analysis: Semantic Sources 08/19/10 PAST REQUIREMENTS REPORTS APPLICATION SCREENS INDUSTRY LANGUAGE
  22. 22. What is Semantic Analysis & Word Classing? Conceptual Analysis: Semantic Sources 08/19/10 During Semantic Analysis, we’re building a Conceptual Model based on what we hear, read and see. It is a form of Analytical Prototyping that allows the analyst to confirm knowledge through an artifact before moving on to the Logical phase. For Example, a new analyst might start with a broad definition, intended for a general audience: Format - Guideline that accommodates all commercial and promotional inventories, in addition to production elements . Used as the template for Ad Sales avails . Source: Wiki Page
  23. 23. What is Semantic Analysis & Word Classing? The Episode Break Format in Context 08/19/10 Application configuration context, the Format describes how a Program will be segmented by Breaks and then what Ad Types may appear within Breaks – and on what Days, during an original, a repeat or both, etc.
  24. 24. What is Semantic Analysis & Word Classing? Generalization: The Base Types – Conceptually Correct? 08/19/10 An entity is not really described without its predicates, attributes and relationships. Now, I know: To be described, a Format depends upon Networks, Programs, Segments within Programs, Breaks, Ad Types within Breaks, Days, and whether it is defined for an original, a repeat or both, etc.
  25. 25. What is Semantic Analysis & Word Classing? Generalization: Base Types Grow by Conversation 08/19/10
  26. 26. What is Semantic Analysis & Word Classing? Generalization: Base Types Will Change 08/19/10 Now I know: A Format describes availability of commercial Units and Units are Ad Types for Sale within a specific Program’s Selling Rotations. Selling Rotations coordinate a Customer's commercial air time and define which Episode broadcasts will meet demand for the Units Requested on a Customer Proposal.
  27. 27. What is Semantic Analysis & Word Classing? Generalization: Building on the Base Types 08/19/10 In its Program Scheduling context, Format versions may be created for any number of reasons. A new Format, intended to be employed over time, would cause Program Scheduling to version an existing Format. Causes: Program Duration Variations in Local vs. National time Variations in # Billboards, # Features Vendor agreements (impacts attributes) Institutional Agreements (impacts attributes) Government Regulations -usually foreign (impact attributes) Live Vs Taped programming Sales initiatives
  28. 28. 08/19/10 Now I know: Format versions may be created from an existing Format, based on the following: Program Duration, Variations in Local vs. National time, Variations in # Billboards or # Features, Vendor Agreements Institutional Agreements Government Regulations -usually foreign Live Programming Vs Taped Airings, Sales Initiatives What is Semantic Analysis & Word Classing? Generalization: Building on the Base Types
  29. 29. What is Semantic Analysis & Word Classing? The End Result: A Conceptual Data Model 08/19/10 CONCEPTUAL DATA MODEL INTEGRATION The Conceptual entities defined as a result of Semantic Analysis may be integrated to the Logical Diagram.
  30. 30. 08/19/10 Take Away: In order to perform complete analysis, is it necessary to have an advanced understanding of the business language in use at ESPN? What is Semantic Analysis & Word Classing? Take Away
  31. 31. Logical Analysis & Design III Where does LDM fit into the Enterprise? 08/19/10 Part III
  32. 32. Where does LDM fit into the Enterprise? The Cycle 08/19/10 The highest level view of everything we will define, design, develop and deploy moves from Contextual, through Conceptual and Logical, and on to Physical Stages. The phases we will look at in this presentation drill down on the Information System Architecture and touch on the Business Architecture: The Conceptual and Logical Contextual Conceptual Logical Logical Physical
  33. 33. Where does LDM fit into the Enterprise? The Zachman Framework 08/19/10
  34. 34. Where does LDM fit into the Enterprise? The Zachman Framework: Artifact Integration 08/19/10 THE ZACHMAN FRAMEWORK ‘ It is the integration of the answers to those six interrogatives, specifically the Logical models, that enables the comprehensive description of complex requirements.’ KEY: The Framework is Not a Methodology but a collection of artifacts intended to work together to unite an organization’s design and development efforts.
  35. 35. 08/19/10 GENERATION LINKS - are created during model or object generation. Each generated object is linked with its origin object . Where does LDM fit into the Enterprise? What We Mean by Integration: Two Definitions SHORTCUTS - create a reference to an object in another model. They are either created explicitly in order to share or reuse an object in another model, or implicitly when creating other kinds of links in a CASE tool.
  36. 36. Where does LDM fit into the Enterprise? The Framework Simplified 08/19/10
  37. 37. Where does LDM fit into the Enterprise? Take Away 08/19/10 Take Away: Which of the artifacts outlined in the Zachman Framework do we need in the ESPN Enterprise Architecture?
  38. 38. Logical Analysis & Design IV What is a Logical Functional approach? 08/19/10 Part IV
  39. 39. What is a Logical Functional approach? Conceptual Level: Business Process Model 08/19/10 A Business Process Model exists at a level of abstraction above the System Component Diagram. It captures real-world business processes, and their dependencies, sequence and hierarchy.
  40. 40. What is a Logical Functional approach? Conceptual Level: Business Process Model 08/19/10 A Conceptual Functional Model: The BPM
  41. 41. What is a Logical Functional approach? Logical Application Level: System Components <ul><li>A Component is a modular part of a computer system. Its behavior is defined by its sequence and interfaces. </li></ul><ul><li>One component may represent a large part of a system – or encompass other sub-components. </li></ul><ul><li>A BPM and Use Cases traditionally drive its functional logic requirements. </li></ul><ul><li>Without a Data Model, data requirements defined by the functional requirements may go directly to schema </li></ul>08/19/10
  42. 42. 08/19/10 What is a Logical Functional approach? Logical Application Level: ESPN Components
  43. 43. What is a Logical Functional approach? Logical Application Level: Domain Class Object 08/19/10 The Component is drawn at a level of abstraction above the Domain Class.
  44. 44. 08/19/10 What is a Logical Functional approach? Logical Application Level: Domain Class Objects
  45. 45. What is a Logical Functional approach? How is a Logical Data Model Constructed? 08/19/10 DOMAIN CLASS INTEGRATION The Classes defined on a Domain Class Diagram may be integrated by Reference or by Generation to or from the Logical Diagram, as composite data entities.
  46. 46. 08/19/10 Categorization GeneralizationSpecification What is Data Normalization? Ensuring Stability Against Rapid Change Normalization of Entities by Domains IDEF4 is used for Object-Oriented Design Methods. Data Entities may have Object-Relational influence – even integrate with Domain Class designs. IDEF1X provides support for Normalizing entities this way.
  47. 47. 08/19/10 How can Application Architecture and Data Architecture integrate and work in parallel here at ESPN? Take Away: What are the components of Logical Modeling? Take Away
  48. 48. Logical Analysis & Design V Are Logical Data Models Really Necessary? 08/19/10 Part V
  49. 49. Are Logical Data Models Really Necessary? Why design Logical Data Models? <ul><ul><li>‘ The process required to create them adds time to an already lengthy process’ </li></ul></ul><ul><ul><li>‘ Data Requirements follow Component Requirements inside Domain Classes’ </li></ul></ul><ul><ul><li>‘ They never look like the physical implementation (the schema) anyway’ </li></ul></ul><ul><ul><li>‘ A Functional approach allows me to go right to schema’ </li></ul></ul>08/19/10 Some of the ‘Reasons to Avoid the LDM?’
  50. 50. Are Logical Data Models Really Necessary? Do We Believe in Codd? 08/19/10
  51. 51. Are Logical Data Models Really Necessary? Codd: Who is this guy? <ul><li>Proper Englishman </li></ul><ul><li>Captain in the Royal Air Force </li></ul><ul><li>Moves to U.S. after the war </li></ul><ul><li>Becomes a professor of Mathematics @ the University of Tennessee </li></ul><ul><li>Becomes a mathematical programmer for IBM in 1949 </li></ul><ul><li>Takes leave 1961-1965 to complete a PhD in Communications Science </li></ul><ul><li>Returns to IBM and co-invents Data Normalization </li></ul><ul><li>Later, invents the definition of a Relational Database System </li></ul>08/19/10 Edgar F. Codd, PhD
  52. 52. Are Logical Data Models Really Necessary? Why Codd believes we need Logical Data Models? <ul><li>Protects users from having to know how the data is organized </li></ul><ul><li>Normalization stabilizes the database from radical change as the business changes- “Loose Coupling” </li></ul><ul><li>Normalization anticipates data inconsistencies which will become troublesome later on </li></ul><ul><li>Logical Data Models describe information in real world terms – without superimposing </li></ul><ul><li>Logical Data Models form the basis of ‘derivability’ – the Truth </li></ul>08/19/10
  53. 53. Logical Analysis & Design VI What is a Relational Database, Really? 08/19/10 Part VI
  54. 54. <ul><li>USE RDBMS TOOLS ONLY </li></ul><ul><li>“ For a system to qualify as a relational database, it must use its relational facilities exclusively to manage the database ” </li></ul><ul><li>E.F. Codd </li></ul>08/19/10 Instance, configuration management, object security, referential integrity, constraints, queries and application transactions. What is a Relational Database, Really? Database Management Exclusivity
  55. 55. <ul><li>LOGICAL DATA INDEPENDENCE </li></ul><ul><li>“ Changes to the logical level of the database must not require a change to the application programs based on the structure of the tables. ” </li></ul><ul><li>E.F. Codd </li></ul>08/19/10 What is a Relational Database, Really? Logical Independence See Prior Slide
  56. 56. <ul><li>INTEGRITY IDEPENDENCE </li></ul><ul><li>“ Integrity constraints must be specified separately from applications and stored in the catalog . It must be possible to change constraints without affecting existing applications.” </li></ul><ul><li>E.F. Codd </li></ul>08/19/10 What is a Relational Database, Really? Integrity Independence See Two Slides Back
  57. 57. <ul><li>NO SUBVERSION </li></ul><ul><li>“ If the system provides a record-at-a-time interface, then that interface cannot be used to subvert the system, for example, bypassing </li></ul><ul><li>relational security or </li></ul><ul><li>integrity constraints. ” </li></ul><ul><li>E.F. Codd </li></ul>08/19/10 What is a Relational Database, Really? Subversion Free See Three Slides Back
  58. 58. <ul><li>NORMALIZATION </li></ul><ul><li>‘ All attributes within an table must be Fully Functional - depending upon the key, the whole key, and nothing but the key.’ </li></ul><ul><li>E.F. Codd </li></ul>08/19/10 What is a Relational Database, Really? Database Normalization to 3NF
  59. 59. <ul><li>THE INFORMATION RULE </li></ul><ul><li>“ All information in the database is to be represented in one and only one way – by values in tables. ” </li></ul><ul><li>E.F. Codd </li></ul>08/19/10 What is a Relational Database, Really? Singular Data Representation
  60. 60. 08/19/10 “ No.” What is a Relational Database, Really? Codd’s Theories Are Still Relevant to ESPN
  61. 61. Logical Analysis & Design VII What is Data Normalization, really? 08/19/10 Part VII
  62. 62. What is Data Normalization? Identification and Reliability of Data Items <ul><li>The Data Item is the smallest component a Data Modeler </li></ul><ul><li>will work with – and yet, </li></ul><ul><li>if it is misunderstood, it </li></ul><ul><li>may create the largest number </li></ul><ul><li>of problems in a database. </li></ul><ul><ul><li>In the real world, attributes exist independently of any data entity </li></ul></ul><ul><ul><li>In technological terms, each attribute is owned by one and exactly one entity </li></ul></ul>08/19/10
  63. 63. What is Data Normalization? Avoiding Data Anomalies Down the Road 08/19/10 Functional Dependency Full Functional Dependency Partial Functional Dependency Transitive Functional Dependency Multi-Valued Dependency The RDBMS Engine is Designed to Protect the Integrity of Data, so long as Codd’s Principles are followed within it. Analysis to Avoid Data Anomalies in the Database
  64. 64. What is Data Normalization? Reliable Transactions: Functional Dependency 08/19/10 Functional Dependency If Brand and Advertiser are attributes of a table, then Brand is Functionally Dependent on Advertiser, if each value of Brand is associated with exactly one instance of Advertiser. FD: Advertiser  Brand (1) Advertiser  (n) Brands
  65. 65. 08/19/10 Full Functional Dependency (composite keys) To be Fully Functional, an attribute must be dependent upon a composite key (a key made up of more than one attribute). Of the following dependencies, which is Fully Functionally Dependent? Agency + Advertiser  Agency Contact Agency + Advertiser  ESPN Account Rep Which relationship is Partially Dependent? What is Data Normalization? Reliable Transactions: Full Functional Dependency
  66. 66. 08/19/10 Transitive Functional Dependency Suppose we want to collect information for an ESPN Account Rep, relative to his contact with an Agency representing a specific Advertiser. We would keep Comments about the communication, the Date of the last communication, the Name of the person we spoke with at the Agency, and that person’s formal Title. Agency + Advertiser + ESPN Account Rep + Date of Last Contact  Comment, Contact Name, Contact Title What is Data Normalization? Reliable Transactions: Transitive Functional Dependency
  67. 67. 08/19/10 Logically, if all those Proposals existed within the same entity, that would indicate the existence of one kind of row (the master Proposal) implied the existence of other related kinds of rows (the child or linked Proposals). Those related rows would be based on different values, however. There would be at least one multi-valued dependency: Proposal Identifier  Rating Type and Proposal Identifier  Brand ID Multi-Valued Dependency Suppose we have a Proposal for an Agency which includes a master Proposal for Nike and several linked proposals created to address a) different Ratings Types (audience coverage) Nike wishes to reach, and b) Ad Sales for different Nike Brands. What is Data Normalization? Reliable Transactions: Multi-Valued Dependency
  68. 68. Logical Analysis & Design VIII An Example of a General Purpose Artifact 08/19/10 Part VIII
  69. 69. An Example of a General Purpose Artifact Logical Data Modeling: Reifying Chaos 08/19/10
  70. 70. An Example of a General Purpose Artifact Logical Data Modeling: The Data Model (ErD) 08/19/10 How do we get from all of that to something that looks like this?
  71. 71. An Example of a General Purpose Artifact A More in Depth Look at the Data Artifacts 08/19/10
  72. 72. An Example of a General Purpose Artifact What are the Primary Data Artifacts? 08/19/10 DOMAIN CLASS DIAGRAM LOGICAL DATA MODEL DATA FLOW DIAGRAM
  73. 73. An Example of a General Purpose Artifact What is a Data Flow Diagram? 08/19/10 DFD “ Different vendors, consultants, and authors may have alternative views on this, but I have always considered DFD's to be more-or-less equivalent to Business Process Models, in the sense that they show a &quot;workflow&quot; progression of data inputs being transformed into outputs, and then sent on to the next process.   DFDs are (also) generally considered to be the lower-level &quot;details&quot; of inputs/processes/outputs that are contained  within  the components of a System Component Diagram.” Ed Yourdon
  74. 74. An Example of a General Purpose Artifact Conceptual Process with Data Sets: Data Flow Diagram 08/19/10 A Data Flow Diagram reifies context, roles, organizational units, external entities, process, workflow splits - and most significantly: Data Stores. The DFD is an artifact intended to integrate Application Design and the Data Model. A DFD is one example of an artifact which may be used by more than one IT group, at either the Conceptual or Logical Stages.
  75. 75. An Example of a General Purpose Artifact An Alternative Conceptual Approach to Semantics 08/19/10 DATA STORES As with the Semantic Analysis, an analyst can collect conceptual data base types and composites as a by-product of reviewing and recording application components, business processes and work-flow study.
  76. 76. An Example of a General Purpose Artifact The Transformation Process and the Data Store 08/19/10 A Process is defined as an activity that transforms data, whether it be a system component, a business function -or both. A Data Store may be derived from either a system component or a business function.
  77. 77. An Example of a General Purpose Artifact The Context Diagram 08/19/10
  78. 78. An Example of a General Purpose Artifact Component Decomposition 08/19/10
  79. 79. An Example of a General Purpose Artifact Decomposition Continues… 08/19/10
  80. 80. An Example of a General Purpose Artifact The Objective: The Data Dictionary 08/19/10
  81. 81. An Example of a General Purpose Artifact How is a Logical Data Model Constructed? 08/19/10 DATA STORE INTEGRATION Data Stores are the Base and Composite Types of a Semantic Model. Once defined within an artifact, they may be integrated by Generation from their Conceptual state to other Conceptual or Logical Diagrams.
  82. 82. 08/19/10 An Example of a General Purpose Artifact Normalizing the Data Stores: The ESPN Method
  83. 83. What is Data Normalization? The Normalized Logical Data Model 08/19/10 The End Result of the Normalization Process.
  84. 84. Logical Analysis & Design IX What might artifact integration look like? 08/19/10 Part IX
  85. 85. 08/19/10 What might artifact integration look like? Model Integration: By Reference or by Generation
  86. 86. What might artifact integration look like? Model Integration: An Illustration 08/19/10 Generation links - are created during model or object generation. Each generated object is linked with its origin object. Shortcuts - create a reference to an object in another model. They are either created explicitly in order to share or reuse an object in another model, or implicitly when creating other kinds of links in a CASE tool. Generation links - are created during model or object generation. Each generated object is linked with its origin object. Shortcuts - create a reference to an object in another model. They are either created explicitly in order to share or reuse an object in another model, or implicitly when creating other kinds of links in a CASE tool. Conceptual Logical Logical Logical Conceptual Physical Physical As Is
  87. 87. What might artifact integration look like? Take Away 08/19/10 Take Away: Will a common selection and integration of artifacts further unite ESPN IT as an organization?
  88. 88. Logical Data Analysis & Design: Thank You for your Time! 08/19/10 Questions

×