SlideShare uma empresa Scribd logo
1 de 59
Baixar para ler offline
Conceptual Data Modeling
Using E-R Models


   PM Jat
   pm_jat@daiict.ac.in
Data Model
   Data modeling is the most important task in database
    development
        completeness – correctness – performance of database
         depends on correct data model
   …shows up how data are structured at
     Conceptual, Logical and Physical level

   More formally, it is a collection of concepts that can be
    used to describe “Database Structure”
                                                          - Elmasri/Navathe

   “Database Structure”, we mean here -
    data types, relationships, and constraints
Aug 14, 2008             Data Modeling Using E-R Models                  2
Why Data Modeling

   It is essential step of database design, not optional

   If no, it is like making a house without a plan!

   Sometimes, in smaller applications, it may not be
    explicitly done or documented still it is done




Aug 14, 2008         Data Modeling Using E-R Models         3
Phases of Database Design
   Requirement Analysis – Understand the business
    needs and Data Components within.
   Conceptual Design
        Develop Higher/Conceptual Data Model – easily understandable by End-
         Users and Managers….. what this talk is about

   Logical Design
        Develop Logical/Implementation Schema in one of the implementation
         technologies like Relational, Object Relational, OO. Historically
         Hierarchical/Network Models

   Physical Design
        Develop Internal Schema – how files are stored on disk –
         deal with file organization, indexes, clustering etc.


Aug 14, 2008               Data Modeling Using E-R Models                       4
Conceptual Model
   Correct and Formal representation of data items
    are the objectives here
   Intuitive and Simple to understand – end users
    and managers can easily understand
   Centers on “what data items and business rules
    it contains” not on how they are stored or
    organized in application (or structured in a
    DBMS logically or physically)
   ER Diagrams and UML class diagrams are
    popular Conceptual models
   Implementation neutral
Aug 14, 2008      Data Modeling Using E-R Models   5
E-R Diagram (Model ? )
   As said, it is a popular high level Conceptual
    Data Model

   ER Diagram are simple consists of just -
        Entities – their attributes
        Relationship between entities
        Constraints on Entities and Relationship


   Let us understand what these terms mean here?

Aug 14, 2008          Data Modeling Using E-R Models   6
How we see data around us-
      List of Students IIyr BTech(CS)

StudID   Name     DOB         Fasther’s   Address   …………..
                              Name
060101   Aditi    12-10-88    …           ……        ………..

060102   Anurag   10-02-89    …           ……        ………..

060103   Arpit    11-07-88    …         ……      ………..
                               List of Programs Offered by CSE Department
…..      ……       ……          …            ……      ………..
                              ProgID      ProgName                        Intake

                               BCS        BTech(Computer Science)         40       …

                               BIT        BTech(Information Technology)   40       …

                               …..        …….                             …..      …

                               …..        ……                              ……       …

Aug 14, 2008                 Data Modeling Using E-R Models                            7
How do we describe this data
   Careful watch reveals that we have two type of “entity
    sets” here-
     Students and Programs
     Let us call all students together entity set, and Program
        together another entity set

   Each Student entity has certain properties (or attributes)
    like Name, DOB, Fathers Name etc., and their values
    drawn from a predefined “value set”,

   and similarly each program has certain attributes, and
    their values

Aug 14, 2008          Data Modeling Using E-R Models              8
How do we describe this data
   If we attempt to describe student entity, typically it can
    be like this-
     Name of Entity: Student
     Attributes: StudID, Name, DOB, FathersName, ..
     Each Attribute derives value from a value set (domain)
     StudID uniquely identifies a student entity in the set



   This is description of Student entity, and we call it
    “Entity Type”

   Similarly we describe Program Entity Type

Aug 14, 2008          Data Modeling Using E-R Models             9
ERD notation for the Entity types




  Notations used here are,
  originally suggested by
  Dr Peter Chen in ’76,
  known as Chen’s notation

Aug 14, 2008       Data Modeling Using E-R Models   10
Entities and Attributes
   Entity is the basic object in ER model. It is
    thing which exists
   Each entity has attributes- properties that
    describe the entity, for example as we have
    seen-
   Entity: Student
    Attributes: StudID, Name, DOB, Father’s
    Name, Address,
   Entity: Program
    Attributes: ProgID, ProgName, Intake
Aug 14, 2008      Data Modeling Using E-R Models    11
Entities and Attributes
   Attributes could be
        Atomic – can not be meaningfully decomposed:
         Example DOB can not be decomposed in
         Day/Month/Year – DOB is atomic data
        Student-Name may or may not be atomic
              If FirstName, LasteName have individual meaning
        Key Attributes
        Composite: Example Address (Street, City, PIN)
        Single valued and multi-valued
        Stored and Derived attributes

Aug 14, 2008             Data Modeling Using E-R Models          12
Entities and Attributes in ERD
                                                      Composite
                                                      Attribute




  Key
Attribute




                                                                  Multi-value
                                                                   Attribute




 Key attribute Uniquely Identifies an Entity in Entity Set
Aug 14, 2008         Data Modeling Using E-R Models                      13
Entities and Attributes



                                                Derived
                                                Attribute




Aug 14, 2008   Data Modeling Using E-R Models          14
Entity Type
    Casually, very often term “entity” is used for “Entity Type”.
    An Entity Type describes schema or intention for a set of
     entities sharing the same structure.
    In OO terminology, an entity type is similar to a class, and an
     entity is similar to an instance


Definition (Elmasri/Navathe):
Entity Type defines a collection (or set)
of entities that have the same attributes.
Each Entity Type in the database
is described by its name and attributes

 Aug 14, 2008           Data Modeling Using E-R Models          15
Entity Set
    The collection of entities of a particular entity type are
     grouped into an entity set, is also called extension of entity
     type.
    The entity set usually referred with the same name as of
     Entity Type

                StudID   Name        DOB        Fasther’s   Address   …………..
                                                Name
                060101   Aditi       12-10-88   …           ……        ………..

                060102   Anurag      10-02-89   …           ……        ………..
Definition (Elmasri/Navathe):
               060103 Arpit      11-07-88 …      …… ………..
The collection of all entities of a particular type
in the database….. any…… of …… is …
                at      point time called an entity set.
                                                 …… ………..



 Aug 14, 2008              Data Modeling Using E-R Models                      16
Key Attributes
       It is Attribute or set of Attributes, called Key Attribute
        which are used to uniquely identify the entity in the set
       An important constraint on entities of an entity type is
        the key constraint or uniqueness constraint.


  Key                                       StudID    Name     DOB        Address
Attribute
                                            060101    Aditi    12-10-88   ……

                                            060102    Anurag   10-02-89   ……

                                            060103    Arpit    11-07-88   ……


                                            …..       ……       ……         ……


    Aug 14, 2008         Data Modeling Using E-R Models                        17
Value Sets (Domains) of Attributes
   Each simple attribute of an entity type is
    associated with a value set (or a domain of
    values), which specifies the set of values that
    may be assigned to that attribute for each
    individual entity
   Also known as domain constraint on an
    attribute




Aug 14, 2008       Data Modeling Using E-R Models     18
Relationship Type, Instance, and Set
    Let us look at following facts –
         Aditi studies in BIT
         Amit studies in BCS
         Arpit studies in BIT
         Varun studies in BEE
         Radhika studies in BIT
         Shyam studies in BCS
    This shows Relationship between Student and Program
     entities (entity types to be precise) … let us give a
     name to it “Studies” – obvious choice
    Relationship also has type and set, here studies is
     Relationship Type,
    Each of above statement is instance of the type, and
     All together form relationship set
Aug 14, 2008            Data Modeling Using E-R Models   19
Relationship
                                                    Set
Relationship Instance Diagram




Aug 14, 2008   Data Modeling Using E-R Models                  20
Simple ER Diagram: Student-Program




                                                Relationship



Aug 14, 2008   Data Modeling Using E-R Models                  21
Relationships can also have attributes
   In our previous example, suppose we also want to have
    study duration of a student in a program, then
   Let us say, we have attributes year_from, and year_to




Aug 14, 2008        Data Modeling Using E-R Models     22
Cardinality Constraints for
Binary Relationships
   Binary relationship, is the one in which two
    entity types participate.
   Based on the number of relationships instances
    in which an entity can participate, relationship
    types can be one following-
        One to One (1:1)
        One to Many (1:N)
        Many to Many (M:N)
   Example:
        Customer – Bank Account as 1:1, 1:N, M:N
Aug 14, 2008         Data Modeling Using E-R Models   23
One to One (1:1)
   One Customer has one account and one account is
    owned by one customer




Aug 14, 2008       Data Modeling Using E-R Models     24
One to Many (1:N)
   One Customer has many accounts, and one account is
    owned by one customer




Aug 14, 2008       Data Modeling Using E-R Models        25
Many to Many (M:N)
   One Customer has many accounts, and one account is
    owned by multiple customers jointly




Aug 14, 2008       Data Modeling Using E-R Models        26
Cardinality Constraints for
Binary Relationships

   Every Relationship Type has to be specified to be one
    these – a constraint on relationship type

   Cardinality Constraints are also called Cardinality
    Ratio (Elmasri/Navathe), though not ratio in precise
    terms. Probably, because it written in ratio format
    (1:N)!

   Some authors also call it Mapping Cardinality (Korth)

   Cardinality Constraint appears to be better name, as it
    is an constraint on the cardinality of relationship
    instances into which a entity can participate at most.
Aug 14, 2008         Data Modeling Using E-R Models           27
Some relationship examples?
   Identify and determine cardinality ratio?
        Student and Mentor
        Bill and Item
        Course and Professor
        Course and Text Book
        Vehicle and Owner




Aug 14, 2008        Data Modeling Using E-R Models   28
Participation can be
Total (mandatory) or Partial (optional)
   In our Customer-Account example-
   If customer record can exist in database without having
    associated with an account – then participation of
    customer is partial otherwise total.
   Can Customer exist without associating with a
    account? Probably Yes.
   Can account exist without associating with a customer?
    Probably No.         Partial
                                                       Total
                      Participation
                                                     Participation




Aug 14, 2008        Data Modeling Using E-R Models             29
Student-Program “schema”
   Participation of Student in Studies relationship is
    mandatory – student has to study in a program.
   Participation of a Program can be optional – we may
    not take admission in a program.

                                     Total
                                  Participatio
                                       n




                                                       Partial
Aug 14, 2008        Data Modeling Using E-R Models   Participation   30
Student-Program schema




This diagram lets us ensure that we are modeling right business rule in the database
   Business rules are modeled as constraints in data models
        Cardinality and Participation are important constraints in Data Model
                                       Here we see that One student can participate only once—
     this means we are modeling the business rule that One Student can study in one program only
                                       And, One Program can have many students. That is Right

                              We can easily note that Participation of student is Mandatory
     Aug 14, 2008                   Data Modeling Using E-R Models                            31
                                                          While it is optional for Program.
Some relationship examples?
   Identify and determine cardinality ratio?
        Student and Mentor
        Bill and Item
        Course and Professor
        Course and Text Book
        Vehicle and Owner




Aug 14, 2008        Data Modeling Using E-R Models   32
Exercises


   Case: Simple Trading Company

   Case: My Books Database




Aug 14, 2008    Data Modeling Using E-R Models   33
Understand Cardinality Ratio
   Two of looking at-
        To how many entities an entity can be associated
         with other side entity type

        How many times an entity participates into the
         relationship




Aug 14, 2008          Data Modeling Using E-R Models        34
Cardinality Constraint (Ratio)
   One to One: Any entity (from any side)
    is associated with at most one entity
    in other side

   One to Many: one side entity can
    be associated with multiple
     entities from other side
                                                      1   N
   Many to Many: any entity from
    any side can be associated with
    multiple entities from other side
    Aug 14, 2008     Data Modeling Using E-R Models           35
Cardinality Constraint (Ratio)
        – another way of looking at
   One to One: any entity (from any side)
    can participate at most once
    in the relationship

   One to Many: one side entity
    participates multiple times
    in the relationship
                                                     1   N
   Many to Many: any entity from
    any side participates multiple
    times in the relationship
    Aug 14, 2008    Data Modeling Using E-R Models           36
Structural Constraints

   Cardinality ratio and participation constraints in
    together are also called structural constraints.

   Second approach of looking at cardinality
    constraints evolves another way of depicting
    structural constraints in ER Diagram




Aug 14, 2008       Data Modeling Using E-R Models   37
Another way of showing structural
constraint
   Min possibility a customer (entity) can participate in holds
    relationship is 0, and Max possibility it can participate in
    holds relationship is N, and same way for Account entity
    type it is one and only one




                                        (0,n)          (1,1)
Aug 14, 2008          Data Modeling Using E-R Models           38
Another way of showing structural
constraint – Many to Many
   Min possibility an Account (entity) can participate in
    holds relationship is 1, and Max possibility it can can
    participate in holds relationship is N




                                        (0,n)          (1,N)
Aug 14, 2008          Data Modeling Using E-R Models           39
Structural constraints
   Note that this notation takes care of
    participation constraints as well.

   Having min participation zero is partial
    participation while, and having > 0 is total
    participation




Aug 14, 2008       Data Modeling Using E-R Models   40
Recursive Relationship
   Entity having relationship with itself
   There can be many situations like this
        Employee supervises another employee
        One citizen is spouse of another citizen
        One course has pre-requisite of another course
        One category is parent of another category




Aug 14, 2008            Data Modeling Using E-R Models    41
Recursive Relationship

                             Employee
                              Employee                            Supervises
                                                                   Supervisor
r1: e5 is supervisor of e1
                               e1                                       r1
r2: e1 is supervisor of e2
                               e2                                       r2
r3: e1 is supervisor of e2     e3
                                                                        r3
                               e4
r4: e5 is supervisor of e4
                                e5                                      r4
r5: e4 is supervisor of e6     e6
                               e7                                       r5
r6: e4 is supervisor of e7
                                                                        r6



                   Roles: Supervisor (Green), Subordinate (Red)
    Aug 14, 2008              Data Modeling Using E-R Models           42
What about Cardinality and participation
constraints in Supervises relationship..
   ?




Aug 14, 2008   Data Modeling Using E-R Models   43
Weak Entity Types
   Entity that do not have key attributes of their own are
    called weak entity types
   These are attached to some regular/strong entity type,
    we call that entity as identifying or owner entity type,
    and we call the relationship between weak entity type
    and its owner entity type, identifying relationship.
   A weak entity type always has total participation in its
    identifying relationship.
   Examples:
        Experience History of an Employee
        Dependents of an Employee

Aug 14, 2008          Data Modeling Using E-R Models       44
Weak Entity Types
Identifying
Relationship


                                                   Owner
                                                   Entity




     Weak
     Entity


   Aug 14, 2008   Data Modeling Using E-R Models      45
   In some cases, database designer may choose to
    express weak entity as multi-value composite
    attribute of the owner entity type

   However, this approach could only be possible
    if week entity does not participate in any other
    relationship than identifying relationships.




Aug 14, 2008      Data Modeling Using E-R Models   46
ER Creating Guidelines
     As a thumb rule Nouns and Objects are
      candidate for Entities and Verbs for
      relationships in a problem description.
     Below are some rules suggested in
      [Entity-Relationship Modeling, A Practical how-to-guide, Yeol Song and
      Kristin Froehlich, IEEE Potentials, Dec-94/Jan-95, pg#29-34]

3.    Every entity type should be important in its
      own right within the problem domain
     Address can not be an entity
     City, can be Yes or No

Aug 14, 2008               Data Modeling Using E-R Models                      47
ER Creating Guidelines
1.    IF an object type (noun) has only one property
      to store THEN it is an attribute of another
      entity type ELSE it is an entity type-
     Suppose naukari.com wants to store skills of
      job seekers, can it be attribute or entity?
     Can be Yes or No
     If we want to store more meaning to skills, For
      example “C++”: which platform, which
      functional Area etc., then it becomes entity,
      otherwise just attribute
Aug 14, 2008       Data Modeling Using E-R Models   48
ER Creating Guidelines
1.    IF an object type has only one data instance THEN do
      not model as an entity type – example Director,
      DAIICT
2.    IF a relationship needs to have a unique identifier
      THEN model it as an entity type
         Consider “products are billed to customers”, appear like
          relationship, but bills are numbered, and uniquely identified,
          candidate for entity type.
         Similarly Pays, Orders look like relationships but are
          possibly entities – depends on business context
3.    IF any verb refers to nouns which are not selected as
      entity types THEN do not model it as a relationship
      type
         Students Fills Enrollment Form. Here neither Enrollment
          form is entity nor FillsIn is a relationship

Aug 14, 2008             Data Modeling Using E-R Models               49
ER Creating Guidelines
     Below are rules related to cardinality and
      participation. Suppose Entity A relates to entity
      B, then
2.    For each A, what is the maximum number of
      Bs that may be related to it?
3.    IF A can exist without being associated with a
      B THEN A has partial (optional) participation
      ELSE A has total (mandatory) participation.



Aug 14, 2008        Data Modeling Using E-R Models   50
Example - Student Election scenario
   Consider
        There are some positions for which voting needs to
         be done
        For each position there can be N candidates
        When voting takes place we want to make sure that
         no body votes twice.




Aug 14, 2008          Data Modeling Using E-R Models      51
Example - Student Election scenario
extended
   How our ERD will change if we have some
    requirements/constraints-
   Suppose we want to keep track of who has voted to
    whom

   Suppose there is constraints that for some positions
    students from certain program can only vote

   Suppose there is another constraint that for some
    position students from certain program can only be
    candidates
Aug 14, 2008        Data Modeling Using E-R Models         52
Home Exercises

   Elmasri/Navathe 4th ed

   Unsolved Exercise: 3.21, 3.22




Aug 14, 2008     Data Modeling Using E-R Models   53
Ternary Relationship




      Three entities are participating in a relationship
      Most case binary suffices, but ternary/n-ary comes in
       some cases

    Aug 14, 2008        Data Modeling Using E-R Models         54
An example of ternary Relationship




Aug 14, 2008   Data Modeling Using E-R Models   55
Enhanced Features in ER modeling
   Primarily addresses issues related to
    generalization/specialization, aggregation,
    which were missing in Chen’s original ER
    model
   Features suggested by Elmasri/Navathe appears
    to be complete covering most aspects of
    generalization/specialization, aggregation




Aug 14, 2008     Data Modeling Using E-R Models   56
Aggregation
   Let us take an Example Company-Interview-Applicant-
    Offer situation




Aug 14, 2008       Data Modeling Using E-R Models    57
Aggregation




Aug 14, 2008   Data Modeling Using E-R Models   58
Thanks


Aug 14, 2008   Data Modeling Using E-R Models   59

Mais conteúdo relacionado

Mais procurados

What is Object Orientation?
What is Object Orientation?What is Object Orientation?
What is Object Orientation?AMITJain879
 
AUTOMATED SQL QUERY GENERATOR BY UNDERSTANDING A NATURAL LANGUAGE STATEMENT
AUTOMATED SQL QUERY GENERATOR BY UNDERSTANDING A NATURAL LANGUAGE STATEMENTAUTOMATED SQL QUERY GENERATOR BY UNDERSTANDING A NATURAL LANGUAGE STATEMENT
AUTOMATED SQL QUERY GENERATOR BY UNDERSTANDING A NATURAL LANGUAGE STATEMENTijnlc
 
DBMS Campus crack Question Prepared by Randhir Kumar
DBMS Campus crack Question Prepared by Randhir KumarDBMS Campus crack Question Prepared by Randhir Kumar
DBMS Campus crack Question Prepared by Randhir KumarRandhir Chouhan
 
Feature selection on boolean symbolic objects
Feature selection on boolean symbolic objectsFeature selection on boolean symbolic objects
Feature selection on boolean symbolic objectsijcsity
 
Uml Omg Fundamental Certification 3
Uml Omg Fundamental Certification 3Uml Omg Fundamental Certification 3
Uml Omg Fundamental Certification 3Ricardo Quintero
 
Class notes(week 2) on basic concepts of oop-2
Class notes(week 2) on basic concepts of oop-2Class notes(week 2) on basic concepts of oop-2
Class notes(week 2) on basic concepts of oop-2Kuntal Bhowmick
 
Design Pattern Notes: Nagpur University
Design Pattern Notes: Nagpur UniversityDesign Pattern Notes: Nagpur University
Design Pattern Notes: Nagpur UniversityShubham Narkhede
 
Microposts Ontology Construction Via Concept Extraction
Microposts Ontology Construction Via Concept Extraction  Microposts Ontology Construction Via Concept Extraction
Microposts Ontology Construction Via Concept Extraction dannyijwest
 
Class notes(week 2) on basic concepts of oop-2
Class notes(week 2) on basic concepts of oop-2Class notes(week 2) on basic concepts of oop-2
Class notes(week 2) on basic concepts of oop-2Kuntal Bhowmick
 
Scope, binding, papameter passing techniques
Scope, binding, papameter passing techniquesScope, binding, papameter passing techniques
Scope, binding, papameter passing techniquesCareerMonk Publications
 
Entity Relationship Model
Entity Relationship ModelEntity Relationship Model
Entity Relationship ModelA. S. M. Shafi
 
Mapping Java Objects with JPA
Mapping Java Objects with JPAMapping Java Objects with JPA
Mapping Java Objects with JPAAaron Schram
 

Mais procurados (14)

What is Object Orientation?
What is Object Orientation?What is Object Orientation?
What is Object Orientation?
 
AUTOMATED SQL QUERY GENERATOR BY UNDERSTANDING A NATURAL LANGUAGE STATEMENT
AUTOMATED SQL QUERY GENERATOR BY UNDERSTANDING A NATURAL LANGUAGE STATEMENTAUTOMATED SQL QUERY GENERATOR BY UNDERSTANDING A NATURAL LANGUAGE STATEMENT
AUTOMATED SQL QUERY GENERATOR BY UNDERSTANDING A NATURAL LANGUAGE STATEMENT
 
DBMS Campus crack Question Prepared by Randhir Kumar
DBMS Campus crack Question Prepared by Randhir KumarDBMS Campus crack Question Prepared by Randhir Kumar
DBMS Campus crack Question Prepared by Randhir Kumar
 
Feature selection on boolean symbolic objects
Feature selection on boolean symbolic objectsFeature selection on boolean symbolic objects
Feature selection on boolean symbolic objects
 
Uml Omg Fundamental Certification 3
Uml Omg Fundamental Certification 3Uml Omg Fundamental Certification 3
Uml Omg Fundamental Certification 3
 
Class notes(week 2) on basic concepts of oop-2
Class notes(week 2) on basic concepts of oop-2Class notes(week 2) on basic concepts of oop-2
Class notes(week 2) on basic concepts of oop-2
 
Design Pattern Notes: Nagpur University
Design Pattern Notes: Nagpur UniversityDesign Pattern Notes: Nagpur University
Design Pattern Notes: Nagpur University
 
Microposts Ontology Construction Via Concept Extraction
Microposts Ontology Construction Via Concept Extraction  Microposts Ontology Construction Via Concept Extraction
Microposts Ontology Construction Via Concept Extraction
 
Class notes(week 2) on basic concepts of oop-2
Class notes(week 2) on basic concepts of oop-2Class notes(week 2) on basic concepts of oop-2
Class notes(week 2) on basic concepts of oop-2
 
Scope, binding, papameter passing techniques
Scope, binding, papameter passing techniquesScope, binding, papameter passing techniques
Scope, binding, papameter passing techniques
 
Database design
Database designDatabase design
Database design
 
Entity Relationship Model
Entity Relationship ModelEntity Relationship Model
Entity Relationship Model
 
Ooad Uml
Ooad UmlOoad Uml
Ooad Uml
 
Mapping Java Objects with JPA
Mapping Java Objects with JPAMapping Java Objects with JPA
Mapping Java Objects with JPA
 

Destaque

Data-Ed Online: A Practical Approach to Data Modeling
Data-Ed Online: A Practical Approach to Data ModelingData-Ed Online: A Practical Approach to Data Modeling
Data-Ed Online: A Practical Approach to Data ModelingDATAVERSITY
 
Best Practices of Data Modeling with InfoSphere Data Architect
Best Practices of Data Modeling with InfoSphere Data ArchitectBest Practices of Data Modeling with InfoSphere Data Architect
Best Practices of Data Modeling with InfoSphere Data ArchitectVladimir Bacvanski, PhD
 
The Definitive Guide to Data Modeling for Business Intelligence
The Definitive Guide to Data Modeling for Business IntelligenceThe Definitive Guide to Data Modeling for Business Intelligence
The Definitive Guide to Data Modeling for Business IntelligenceEran Levy
 
LDM Webinar: Data Modeling & Business Intelligence
LDM Webinar: Data Modeling & Business IntelligenceLDM Webinar: Data Modeling & Business Intelligence
LDM Webinar: Data Modeling & Business IntelligenceDATAVERSITY
 
Hybris Hackathon - Data Modeling
Hybris Hackathon - Data ModelingHybris Hackathon - Data Modeling
Hybris Hackathon - Data ModelingNeev Technologies
 
Data Warehouse Modeling
Data Warehouse ModelingData Warehouse Modeling
Data Warehouse Modelingvivekjv
 

Destaque (7)

Data-Ed Online: A Practical Approach to Data Modeling
Data-Ed Online: A Practical Approach to Data ModelingData-Ed Online: A Practical Approach to Data Modeling
Data-Ed Online: A Practical Approach to Data Modeling
 
Best Practices of Data Modeling with InfoSphere Data Architect
Best Practices of Data Modeling with InfoSphere Data ArchitectBest Practices of Data Modeling with InfoSphere Data Architect
Best Practices of Data Modeling with InfoSphere Data Architect
 
The Definitive Guide to Data Modeling for Business Intelligence
The Definitive Guide to Data Modeling for Business IntelligenceThe Definitive Guide to Data Modeling for Business Intelligence
The Definitive Guide to Data Modeling for Business Intelligence
 
LDM Webinar: Data Modeling & Business Intelligence
LDM Webinar: Data Modeling & Business IntelligenceLDM Webinar: Data Modeling & Business Intelligence
LDM Webinar: Data Modeling & Business Intelligence
 
Hybris Hackathon - Data Modeling
Hybris Hackathon - Data ModelingHybris Hackathon - Data Modeling
Hybris Hackathon - Data Modeling
 
Data Warehouse Modeling
Data Warehouse ModelingData Warehouse Modeling
Data Warehouse Modeling
 
Data modeling for the business
Data modeling for the businessData modeling for the business
Data modeling for the business
 

Semelhante a Data modeling

U2_ER_modeling.pptx
U2_ER_modeling.pptxU2_ER_modeling.pptx
U2_ER_modeling.pptxssusera7b660
 
Web app development_database_design_10
Web app development_database_design_10Web app development_database_design_10
Web app development_database_design_10Hassen Poreya
 
Chapter-3 Data Modeling Using the Entity-Relationship Model
Chapter-3  Data Modeling Using the Entity-Relationship ModelChapter-3  Data Modeling Using the Entity-Relationship Model
Chapter-3 Data Modeling Using the Entity-Relationship ModelRaj vardhan
 
Introductin to Data Modeling.
Introductin to Data Modeling.Introductin to Data Modeling.
Introductin to Data Modeling.Cloudbells.com
 
Introduction to database-ER Model
Introduction to database-ER ModelIntroduction to database-ER Model
Introduction to database-ER ModelAjit Nayak
 
Chapter 7 (Part I) - User Defined Datatypes.pdf
Chapter 7 (Part I) - User Defined Datatypes.pdfChapter 7 (Part I) - User Defined Datatypes.pdf
Chapter 7 (Part I) - User Defined Datatypes.pdfTamiratDejene1
 
Dsc -session01_introduction_to_data_structures_v2_1_.2
Dsc  -session01_introduction_to_data_structures_v2_1_.2Dsc  -session01_introduction_to_data_structures_v2_1_.2
Dsc -session01_introduction_to_data_structures_v2_1_.2sivakumar323849
 
New Directions in Metadata
New Directions in MetadataNew Directions in Metadata
New Directions in Metadatasuyu22
 
Data modelingpresentation
Data modelingpresentationData modelingpresentation
Data modelingpresentationfikirabc
 
SCHEMA BASED STORAGE OF XML DOCUMENTS IN RELATIONAL DATABASES
SCHEMA BASED STORAGE OF XML DOCUMENTS IN RELATIONAL DATABASESSCHEMA BASED STORAGE OF XML DOCUMENTS IN RELATIONAL DATABASES
SCHEMA BASED STORAGE OF XML DOCUMENTS IN RELATIONAL DATABASESijwscjournal
 
SCHEMA BASED STORAGE OF XML DOCUMENTS IN RELATIONAL DATABASES
SCHEMA BASED STORAGE OF XML DOCUMENTS IN RELATIONAL DATABASESSCHEMA BASED STORAGE OF XML DOCUMENTS IN RELATIONAL DATABASES
SCHEMA BASED STORAGE OF XML DOCUMENTS IN RELATIONAL DATABASESijwscjournal
 
SCHEMA BASED STORAGE OF XML DOCUMENTS IN RELATIONAL DATABASES
SCHEMA BASED STORAGE OF XML DOCUMENTS IN RELATIONAL DATABASESSCHEMA BASED STORAGE OF XML DOCUMENTS IN RELATIONAL DATABASES
SCHEMA BASED STORAGE OF XML DOCUMENTS IN RELATIONAL DATABASESijwscjournal
 
Chapter 1 - Concepts for Object Databases.ppt
Chapter 1 - Concepts for Object Databases.pptChapter 1 - Concepts for Object Databases.ppt
Chapter 1 - Concepts for Object Databases.pptShemse Shukre
 
Introduction to Data Abstraction
Introduction to Data AbstractionIntroduction to Data Abstraction
Introduction to Data AbstractionDennis Gajo
 

Semelhante a Data modeling (20)

U2_ER_modeling.pptx
U2_ER_modeling.pptxU2_ER_modeling.pptx
U2_ER_modeling.pptx
 
Er model
Er modelEr model
Er model
 
Dbms
DbmsDbms
Dbms
 
Web app development_database_design_10
Web app development_database_design_10Web app development_database_design_10
Web app development_database_design_10
 
Chapter-3 Data Modeling Using the Entity-Relationship Model
Chapter-3  Data Modeling Using the Entity-Relationship ModelChapter-3  Data Modeling Using the Entity-Relationship Model
Chapter-3 Data Modeling Using the Entity-Relationship Model
 
ER Model Ppt.ppt
ER Model Ppt.pptER Model Ppt.ppt
ER Model Ppt.ppt
 
Introductin to Data Modeling.
Introductin to Data Modeling.Introductin to Data Modeling.
Introductin to Data Modeling.
 
Introduction to database-ER Model
Introduction to database-ER ModelIntroduction to database-ER Model
Introduction to database-ER Model
 
Chapter 7 (Part I) - User Defined Datatypes.pdf
Chapter 7 (Part I) - User Defined Datatypes.pdfChapter 7 (Part I) - User Defined Datatypes.pdf
Chapter 7 (Part I) - User Defined Datatypes.pdf
 
Dsc -session01_introduction_to_data_structures_v2_1_.2
Dsc  -session01_introduction_to_data_structures_v2_1_.2Dsc  -session01_introduction_to_data_structures_v2_1_.2
Dsc -session01_introduction_to_data_structures_v2_1_.2
 
Sq lite module3
Sq lite module3Sq lite module3
Sq lite module3
 
New Directions in Metadata
New Directions in MetadataNew Directions in Metadata
New Directions in Metadata
 
Data modelingpresentation
Data modelingpresentationData modelingpresentation
Data modelingpresentation
 
SCHEMA BASED STORAGE OF XML DOCUMENTS IN RELATIONAL DATABASES
SCHEMA BASED STORAGE OF XML DOCUMENTS IN RELATIONAL DATABASESSCHEMA BASED STORAGE OF XML DOCUMENTS IN RELATIONAL DATABASES
SCHEMA BASED STORAGE OF XML DOCUMENTS IN RELATIONAL DATABASES
 
SCHEMA BASED STORAGE OF XML DOCUMENTS IN RELATIONAL DATABASES
SCHEMA BASED STORAGE OF XML DOCUMENTS IN RELATIONAL DATABASESSCHEMA BASED STORAGE OF XML DOCUMENTS IN RELATIONAL DATABASES
SCHEMA BASED STORAGE OF XML DOCUMENTS IN RELATIONAL DATABASES
 
SCHEMA BASED STORAGE OF XML DOCUMENTS IN RELATIONAL DATABASES
SCHEMA BASED STORAGE OF XML DOCUMENTS IN RELATIONAL DATABASESSCHEMA BASED STORAGE OF XML DOCUMENTS IN RELATIONAL DATABASES
SCHEMA BASED STORAGE OF XML DOCUMENTS IN RELATIONAL DATABASES
 
Chapter 1 - Concepts for Object Databases.ppt
Chapter 1 - Concepts for Object Databases.pptChapter 1 - Concepts for Object Databases.ppt
Chapter 1 - Concepts for Object Databases.ppt
 
Db lec 01
Db lec 01Db lec 01
Db lec 01
 
Int306 02
Int306 02Int306 02
Int306 02
 
Introduction to Data Abstraction
Introduction to Data AbstractionIntroduction to Data Abstraction
Introduction to Data Abstraction
 

Data modeling

  • 1. Conceptual Data Modeling Using E-R Models PM Jat pm_jat@daiict.ac.in
  • 2. Data Model  Data modeling is the most important task in database development  completeness – correctness – performance of database depends on correct data model  …shows up how data are structured at Conceptual, Logical and Physical level  More formally, it is a collection of concepts that can be used to describe “Database Structure” - Elmasri/Navathe  “Database Structure”, we mean here - data types, relationships, and constraints Aug 14, 2008 Data Modeling Using E-R Models 2
  • 3. Why Data Modeling  It is essential step of database design, not optional  If no, it is like making a house without a plan!  Sometimes, in smaller applications, it may not be explicitly done or documented still it is done Aug 14, 2008 Data Modeling Using E-R Models 3
  • 4. Phases of Database Design  Requirement Analysis – Understand the business needs and Data Components within.  Conceptual Design  Develop Higher/Conceptual Data Model – easily understandable by End- Users and Managers….. what this talk is about  Logical Design  Develop Logical/Implementation Schema in one of the implementation technologies like Relational, Object Relational, OO. Historically Hierarchical/Network Models  Physical Design  Develop Internal Schema – how files are stored on disk – deal with file organization, indexes, clustering etc. Aug 14, 2008 Data Modeling Using E-R Models 4
  • 5. Conceptual Model  Correct and Formal representation of data items are the objectives here  Intuitive and Simple to understand – end users and managers can easily understand  Centers on “what data items and business rules it contains” not on how they are stored or organized in application (or structured in a DBMS logically or physically)  ER Diagrams and UML class diagrams are popular Conceptual models  Implementation neutral Aug 14, 2008 Data Modeling Using E-R Models 5
  • 6. E-R Diagram (Model ? )  As said, it is a popular high level Conceptual Data Model  ER Diagram are simple consists of just -  Entities – their attributes  Relationship between entities  Constraints on Entities and Relationship  Let us understand what these terms mean here? Aug 14, 2008 Data Modeling Using E-R Models 6
  • 7. How we see data around us- List of Students IIyr BTech(CS) StudID Name DOB Fasther’s Address ………….. Name 060101 Aditi 12-10-88 … …… ……….. 060102 Anurag 10-02-89 … …… ……….. 060103 Arpit 11-07-88 … …… ……….. List of Programs Offered by CSE Department ….. …… …… … …… ……….. ProgID ProgName Intake BCS BTech(Computer Science) 40 … BIT BTech(Information Technology) 40 … ….. ……. ….. … ….. …… …… … Aug 14, 2008 Data Modeling Using E-R Models 7
  • 8. How do we describe this data  Careful watch reveals that we have two type of “entity sets” here-  Students and Programs  Let us call all students together entity set, and Program together another entity set  Each Student entity has certain properties (or attributes) like Name, DOB, Fathers Name etc., and their values drawn from a predefined “value set”,  and similarly each program has certain attributes, and their values Aug 14, 2008 Data Modeling Using E-R Models 8
  • 9. How do we describe this data  If we attempt to describe student entity, typically it can be like this-  Name of Entity: Student  Attributes: StudID, Name, DOB, FathersName, ..  Each Attribute derives value from a value set (domain)  StudID uniquely identifies a student entity in the set  This is description of Student entity, and we call it “Entity Type”  Similarly we describe Program Entity Type Aug 14, 2008 Data Modeling Using E-R Models 9
  • 10. ERD notation for the Entity types Notations used here are, originally suggested by Dr Peter Chen in ’76, known as Chen’s notation Aug 14, 2008 Data Modeling Using E-R Models 10
  • 11. Entities and Attributes  Entity is the basic object in ER model. It is thing which exists  Each entity has attributes- properties that describe the entity, for example as we have seen-  Entity: Student Attributes: StudID, Name, DOB, Father’s Name, Address,  Entity: Program Attributes: ProgID, ProgName, Intake Aug 14, 2008 Data Modeling Using E-R Models 11
  • 12. Entities and Attributes  Attributes could be  Atomic – can not be meaningfully decomposed: Example DOB can not be decomposed in Day/Month/Year – DOB is atomic data  Student-Name may or may not be atomic  If FirstName, LasteName have individual meaning  Key Attributes  Composite: Example Address (Street, City, PIN)  Single valued and multi-valued  Stored and Derived attributes Aug 14, 2008 Data Modeling Using E-R Models 12
  • 13. Entities and Attributes in ERD Composite Attribute Key Attribute Multi-value Attribute Key attribute Uniquely Identifies an Entity in Entity Set Aug 14, 2008 Data Modeling Using E-R Models 13
  • 14. Entities and Attributes Derived Attribute Aug 14, 2008 Data Modeling Using E-R Models 14
  • 15. Entity Type  Casually, very often term “entity” is used for “Entity Type”.  An Entity Type describes schema or intention for a set of entities sharing the same structure.  In OO terminology, an entity type is similar to a class, and an entity is similar to an instance Definition (Elmasri/Navathe): Entity Type defines a collection (or set) of entities that have the same attributes. Each Entity Type in the database is described by its name and attributes Aug 14, 2008 Data Modeling Using E-R Models 15
  • 16. Entity Set  The collection of entities of a particular entity type are grouped into an entity set, is also called extension of entity type.  The entity set usually referred with the same name as of Entity Type StudID Name DOB Fasther’s Address ………….. Name 060101 Aditi 12-10-88 … …… ……….. 060102 Anurag 10-02-89 … …… ……….. Definition (Elmasri/Navathe): 060103 Arpit 11-07-88 … …… ……….. The collection of all entities of a particular type in the database….. any…… of …… is … at point time called an entity set. …… ……….. Aug 14, 2008 Data Modeling Using E-R Models 16
  • 17. Key Attributes  It is Attribute or set of Attributes, called Key Attribute which are used to uniquely identify the entity in the set  An important constraint on entities of an entity type is the key constraint or uniqueness constraint. Key StudID Name DOB Address Attribute 060101 Aditi 12-10-88 …… 060102 Anurag 10-02-89 …… 060103 Arpit 11-07-88 …… ….. …… …… …… Aug 14, 2008 Data Modeling Using E-R Models 17
  • 18. Value Sets (Domains) of Attributes  Each simple attribute of an entity type is associated with a value set (or a domain of values), which specifies the set of values that may be assigned to that attribute for each individual entity  Also known as domain constraint on an attribute Aug 14, 2008 Data Modeling Using E-R Models 18
  • 19. Relationship Type, Instance, and Set  Let us look at following facts –  Aditi studies in BIT  Amit studies in BCS  Arpit studies in BIT  Varun studies in BEE  Radhika studies in BIT  Shyam studies in BCS  This shows Relationship between Student and Program entities (entity types to be precise) … let us give a name to it “Studies” – obvious choice  Relationship also has type and set, here studies is Relationship Type,  Each of above statement is instance of the type, and All together form relationship set Aug 14, 2008 Data Modeling Using E-R Models 19
  • 20. Relationship Set Relationship Instance Diagram Aug 14, 2008 Data Modeling Using E-R Models 20
  • 21. Simple ER Diagram: Student-Program Relationship Aug 14, 2008 Data Modeling Using E-R Models 21
  • 22. Relationships can also have attributes  In our previous example, suppose we also want to have study duration of a student in a program, then  Let us say, we have attributes year_from, and year_to Aug 14, 2008 Data Modeling Using E-R Models 22
  • 23. Cardinality Constraints for Binary Relationships  Binary relationship, is the one in which two entity types participate.  Based on the number of relationships instances in which an entity can participate, relationship types can be one following-  One to One (1:1)  One to Many (1:N)  Many to Many (M:N)  Example:  Customer – Bank Account as 1:1, 1:N, M:N Aug 14, 2008 Data Modeling Using E-R Models 23
  • 24. One to One (1:1)  One Customer has one account and one account is owned by one customer Aug 14, 2008 Data Modeling Using E-R Models 24
  • 25. One to Many (1:N)  One Customer has many accounts, and one account is owned by one customer Aug 14, 2008 Data Modeling Using E-R Models 25
  • 26. Many to Many (M:N)  One Customer has many accounts, and one account is owned by multiple customers jointly Aug 14, 2008 Data Modeling Using E-R Models 26
  • 27. Cardinality Constraints for Binary Relationships  Every Relationship Type has to be specified to be one these – a constraint on relationship type  Cardinality Constraints are also called Cardinality Ratio (Elmasri/Navathe), though not ratio in precise terms. Probably, because it written in ratio format (1:N)!  Some authors also call it Mapping Cardinality (Korth)  Cardinality Constraint appears to be better name, as it is an constraint on the cardinality of relationship instances into which a entity can participate at most. Aug 14, 2008 Data Modeling Using E-R Models 27
  • 28. Some relationship examples?  Identify and determine cardinality ratio?  Student and Mentor  Bill and Item  Course and Professor  Course and Text Book  Vehicle and Owner Aug 14, 2008 Data Modeling Using E-R Models 28
  • 29. Participation can be Total (mandatory) or Partial (optional)  In our Customer-Account example-  If customer record can exist in database without having associated with an account – then participation of customer is partial otherwise total.  Can Customer exist without associating with a account? Probably Yes.  Can account exist without associating with a customer? Probably No. Partial Total Participation Participation Aug 14, 2008 Data Modeling Using E-R Models 29
  • 30. Student-Program “schema”  Participation of Student in Studies relationship is mandatory – student has to study in a program.  Participation of a Program can be optional – we may not take admission in a program. Total Participatio n Partial Aug 14, 2008 Data Modeling Using E-R Models Participation 30
  • 31. Student-Program schema This diagram lets us ensure that we are modeling right business rule in the database Business rules are modeled as constraints in data models Cardinality and Participation are important constraints in Data Model Here we see that One student can participate only once— this means we are modeling the business rule that One Student can study in one program only And, One Program can have many students. That is Right We can easily note that Participation of student is Mandatory Aug 14, 2008 Data Modeling Using E-R Models 31 While it is optional for Program.
  • 32. Some relationship examples?  Identify and determine cardinality ratio?  Student and Mentor  Bill and Item  Course and Professor  Course and Text Book  Vehicle and Owner Aug 14, 2008 Data Modeling Using E-R Models 32
  • 33. Exercises  Case: Simple Trading Company  Case: My Books Database Aug 14, 2008 Data Modeling Using E-R Models 33
  • 34. Understand Cardinality Ratio  Two of looking at-  To how many entities an entity can be associated with other side entity type  How many times an entity participates into the relationship Aug 14, 2008 Data Modeling Using E-R Models 34
  • 35. Cardinality Constraint (Ratio)  One to One: Any entity (from any side) is associated with at most one entity in other side  One to Many: one side entity can be associated with multiple entities from other side 1 N  Many to Many: any entity from any side can be associated with multiple entities from other side Aug 14, 2008 Data Modeling Using E-R Models 35
  • 36. Cardinality Constraint (Ratio) – another way of looking at  One to One: any entity (from any side) can participate at most once in the relationship  One to Many: one side entity participates multiple times in the relationship 1 N  Many to Many: any entity from any side participates multiple times in the relationship Aug 14, 2008 Data Modeling Using E-R Models 36
  • 37. Structural Constraints  Cardinality ratio and participation constraints in together are also called structural constraints.  Second approach of looking at cardinality constraints evolves another way of depicting structural constraints in ER Diagram Aug 14, 2008 Data Modeling Using E-R Models 37
  • 38. Another way of showing structural constraint  Min possibility a customer (entity) can participate in holds relationship is 0, and Max possibility it can participate in holds relationship is N, and same way for Account entity type it is one and only one (0,n) (1,1) Aug 14, 2008 Data Modeling Using E-R Models 38
  • 39. Another way of showing structural constraint – Many to Many  Min possibility an Account (entity) can participate in holds relationship is 1, and Max possibility it can can participate in holds relationship is N (0,n) (1,N) Aug 14, 2008 Data Modeling Using E-R Models 39
  • 40. Structural constraints  Note that this notation takes care of participation constraints as well.  Having min participation zero is partial participation while, and having > 0 is total participation Aug 14, 2008 Data Modeling Using E-R Models 40
  • 41. Recursive Relationship  Entity having relationship with itself  There can be many situations like this  Employee supervises another employee  One citizen is spouse of another citizen  One course has pre-requisite of another course  One category is parent of another category Aug 14, 2008 Data Modeling Using E-R Models 41
  • 42. Recursive Relationship Employee Employee Supervises Supervisor r1: e5 is supervisor of e1 e1 r1 r2: e1 is supervisor of e2 e2 r2 r3: e1 is supervisor of e2 e3 r3 e4 r4: e5 is supervisor of e4 e5 r4 r5: e4 is supervisor of e6 e6 e7 r5 r6: e4 is supervisor of e7 r6 Roles: Supervisor (Green), Subordinate (Red) Aug 14, 2008 Data Modeling Using E-R Models 42
  • 43. What about Cardinality and participation constraints in Supervises relationship..  ? Aug 14, 2008 Data Modeling Using E-R Models 43
  • 44. Weak Entity Types  Entity that do not have key attributes of their own are called weak entity types  These are attached to some regular/strong entity type, we call that entity as identifying or owner entity type, and we call the relationship between weak entity type and its owner entity type, identifying relationship.  A weak entity type always has total participation in its identifying relationship.  Examples:  Experience History of an Employee  Dependents of an Employee Aug 14, 2008 Data Modeling Using E-R Models 44
  • 45. Weak Entity Types Identifying Relationship Owner Entity Weak Entity Aug 14, 2008 Data Modeling Using E-R Models 45
  • 46. In some cases, database designer may choose to express weak entity as multi-value composite attribute of the owner entity type  However, this approach could only be possible if week entity does not participate in any other relationship than identifying relationships. Aug 14, 2008 Data Modeling Using E-R Models 46
  • 47. ER Creating Guidelines  As a thumb rule Nouns and Objects are candidate for Entities and Verbs for relationships in a problem description.  Below are some rules suggested in [Entity-Relationship Modeling, A Practical how-to-guide, Yeol Song and Kristin Froehlich, IEEE Potentials, Dec-94/Jan-95, pg#29-34] 3. Every entity type should be important in its own right within the problem domain  Address can not be an entity  City, can be Yes or No Aug 14, 2008 Data Modeling Using E-R Models 47
  • 48. ER Creating Guidelines 1. IF an object type (noun) has only one property to store THEN it is an attribute of another entity type ELSE it is an entity type-  Suppose naukari.com wants to store skills of job seekers, can it be attribute or entity?  Can be Yes or No  If we want to store more meaning to skills, For example “C++”: which platform, which functional Area etc., then it becomes entity, otherwise just attribute Aug 14, 2008 Data Modeling Using E-R Models 48
  • 49. ER Creating Guidelines 1. IF an object type has only one data instance THEN do not model as an entity type – example Director, DAIICT 2. IF a relationship needs to have a unique identifier THEN model it as an entity type  Consider “products are billed to customers”, appear like relationship, but bills are numbered, and uniquely identified, candidate for entity type.  Similarly Pays, Orders look like relationships but are possibly entities – depends on business context 3. IF any verb refers to nouns which are not selected as entity types THEN do not model it as a relationship type  Students Fills Enrollment Form. Here neither Enrollment form is entity nor FillsIn is a relationship Aug 14, 2008 Data Modeling Using E-R Models 49
  • 50. ER Creating Guidelines  Below are rules related to cardinality and participation. Suppose Entity A relates to entity B, then 2. For each A, what is the maximum number of Bs that may be related to it? 3. IF A can exist without being associated with a B THEN A has partial (optional) participation ELSE A has total (mandatory) participation. Aug 14, 2008 Data Modeling Using E-R Models 50
  • 51. Example - Student Election scenario  Consider  There are some positions for which voting needs to be done  For each position there can be N candidates  When voting takes place we want to make sure that no body votes twice. Aug 14, 2008 Data Modeling Using E-R Models 51
  • 52. Example - Student Election scenario extended  How our ERD will change if we have some requirements/constraints-  Suppose we want to keep track of who has voted to whom  Suppose there is constraints that for some positions students from certain program can only vote  Suppose there is another constraint that for some position students from certain program can only be candidates Aug 14, 2008 Data Modeling Using E-R Models 52
  • 53. Home Exercises  Elmasri/Navathe 4th ed  Unsolved Exercise: 3.21, 3.22 Aug 14, 2008 Data Modeling Using E-R Models 53
  • 54. Ternary Relationship  Three entities are participating in a relationship  Most case binary suffices, but ternary/n-ary comes in some cases Aug 14, 2008 Data Modeling Using E-R Models 54
  • 55. An example of ternary Relationship Aug 14, 2008 Data Modeling Using E-R Models 55
  • 56. Enhanced Features in ER modeling  Primarily addresses issues related to generalization/specialization, aggregation, which were missing in Chen’s original ER model  Features suggested by Elmasri/Navathe appears to be complete covering most aspects of generalization/specialization, aggregation Aug 14, 2008 Data Modeling Using E-R Models 56
  • 57. Aggregation  Let us take an Example Company-Interview-Applicant- Offer situation Aug 14, 2008 Data Modeling Using E-R Models 57
  • 58. Aggregation Aug 14, 2008 Data Modeling Using E-R Models 58
  • 59. Thanks Aug 14, 2008 Data Modeling Using E-R Models 59