ITS 232 Introduction To Database Management Systems CHAPTER
ITS 232 Introduction To Database Management Systems CHAPTER 4 Entity Relationship (E-R) Modeling (ERD) Siti Nurbaya Ismail Faculty of Computer Science & Mathematics, Universiti Teknologi MARA (Ui. TM), Kedah | sitinurbaya@kedah. uitm. edu. my | http: //www. sitinur 151. wordpress. com | | A 2 -3039 | ext: 2561 | 012 -7760562 |
Chapter 4: Entity Relationship (E-R) Modeling 4. 0 Entity Relationship (E-R) Modeling 4. 1 The Entity Relationship (ER) Model 4. 2 Developing An E-R Diagram 4. 3 Database Design Challenges
Chapter 4: Entity Relationship (E-R) Modeling Basic Modeling Concept A model is description or analogy used to visualize something that cannot be directly observed. 3
Chapter 4: Entity Relationship (E-R) Modeling Basic Modeling Concept • Relatively simple representations of complex real world data structures • A data model represents: – data structures and their characteristics – relation and constraints • Can be physical or abstract: – car, student = physical – subject, register = abstract • Used by database designer as: – communications tools to communicate and understanding between a client and the database designer, which the database to be develop. 4
Chapter 4: Entity Relationship (E-R) Modeling Basic Modeling Concept The importance of data modeling: • Data – constitute the most basic information units employed by a system • Application – is created to manage data and to transform data to information • View – different people views the same data differently based on their understanding • Model – helps different user to have the holistic view of the same data 5
Chapter 4: Entity Relationship (E-R) Modeling Basic Modeling Concept Three Level ANSI-SPARC Architecture User 1 User 2 View 1 View 2 -user’s view External Model 1. External level User n … Model 2. Conceptual level -designer’s view -h/w independent -s/w independent Conceptual Schema 3. Internal level Model -DBMS’s view -h/w independent -s/w dependent Internal Schema Physical data Physical Model organization -h/w dependent -s/w dependent View n ERD Database 6
Chapter 4: Entity Relationship (E-R) Modeling 4. 1 The Entity Relationship (E-R) Model Based on the set theory and the relational theory, it is used as tools to: – translate different views of data among managers, users and programmers to fit into a common work – define data processing and constraints to help meet the different views – help implement the database – considered as a stage in a database design preceding/before the relational database modeling – gives data structures representation of: * what information to be stored * the relationships between informational elements and constraint on the data structure * relationship 7
Chapter 4: Entity Relationship (E-R) Modeling 4. 1 The Entity Relationship (E-R) Model • ER model forms the basis of an ER diagram (ERD) • ERD represents conceptual database as viewed by end user • ERDs depict/shows database’s main components: – Entities – Attributes – Relationships 8
Chapter 4: Entity Relationship (E-R) Modeling 4. 1 The Entity Relationship (E-R) Model: Entity • Represents an object from the real world • Collection of similar entities that made up entity sets • Refers to entity set and not to single entity occurrence • Corresponds to table and not to row in relational environment • In both Chen and Crow’s Foot models, entity is represented by rectangle containing entity’s name • Entity name, a noun, is usually written in capital letters 9
Chapter 4: Entity Relationship (E-R) Modeling 4. 1 The Entity Relationship (E-R) Model: Attribute • Characteristics of entities • Property that explains about entity • Correspondents to fields of a table • Primary key are underline with a straight line • Foreign key are underline with dotted line or an * • Chen Model • attributes are represented by ovals and are connected to entity rectangle with a line • each oval contains the name of attribute it represents • Crow’s Foot Model • attributes are written in attribute box below entity rectangle 10
Chapter 4: Entity Relationship (E-R) Modeling 4. 1 The Entity Relationship (E-R) Model The Attributes of the STUDENT entity: Chen & Crow’s Foot 11
Chapter 4: Entity Relationship (E-R) Modeling 4. 1 The Entity Relationship (E-R) Model: Relationship • Associates between entities/connection between two or more entities • Logical interaction among the entities in a relational database • Operate in both directions • Chen Model • Crow’s Foot Model 12
Chapter 4: Entity Relationship (E-R) Modeling 4. 2 Developing An E-R Diagram Development of ER model is an Iterative Process that involved: • Step 1: General narrative of organizational operations developed • Step 2: Basic E-R Model graphically depicted and reviewed • Step 3: Modifications made to incorporate newly discovered ER components • Repeat process: Until designers and users agree on complete E-R Diagram 13
Chapter 4: Entity Relationship (E-R) Modeling 4. 2 Developing An E-R Diagram: Model Components ENTITY Variations of entity: i. Weak ii. Recursive iii. Composite iv. Supertype/Subtype ATTRIBUTE Types of attribute: i. Simple attributes ii. Composite attributes iii. Multivalued attributes iv. Derived attributes RELATIONSHIP Relationship can be describes by: i. Degree of the relationship ii. Connectivity of the relationship iii. Cardinality of the relationship iv. Participation 14
Chapter 4: Entity Relationship (E-R) Modeling 4. 2 Developing An E-R Diagram: Chen Model: Entity • Corresponds to table and not to row in relational environment • Represented by rectangle containing entity’s name • Entity name, a noun, is usually written in capital letters • Examlpe: Entity STUDENT with attributes 15
Chapter 4: Entity Relationship (E-R) Modeling 4. 2 Developing An E-R Diagram: Chen Model: Entity Variations of Entity: i. Weak Entity ii. Recursive Entity iii. Composite Entity iv. Entity Supertype and Subtype 16
Chapter 4: Entity Relationship (E-R) Modeling 4. 2 Developing An E-R Diagram: Chen Model: Entity Variations of Entity: i. Weak Entity – Existence-dependent • Entity B depends on Entity A to exist. If A does not exist then B cannot exist too – Primary key partially or totally derived from parent entity in relationship – Database designer determines whether an entity is weak based on business rules 17
Chapter 4: Entity Relationship (E-R) Modeling 4. 2 Developing An E-R Diagram: Chen Model: Entity 18
Chapter 4: Entity Relationship (E-R) Modeling 4. 2 Developing An E-R Diagram: Chen Model: Entity 19
Chapter 4: Entity Relationship (E-R) Modeling 4. 2 Developing An E-R Diagram: Chen Model: Entity Variations of Entity: ii. Recursive Entity • Entity set that have relationship with the same entity set • Example: EMPLOYEE entity employee. MANAGER employee. SPOUSE employee. NAME employee. NO 1 EMPLOYEE 1 1 married employee. NO 111 222 333 444 employee. NAME employee. SPOUSE Ali 444 Ah Chong Bazil Sheriz 111 EMPLOYEE 1 manage employee. NO employee. NAME employee. MANAGER 111 Ali 333 222 Ah Chong 333 Bazil 333 444 Sheriz 20
Chapter 4: Entity Relationship (E-R) Modeling 4. 2 Developing An E-R Diagram: Chen Model: Entity Variations of Entity: iii. Composite Entity • Originally a relationship between 2 entities that involved in M: N relationship • Composite entity takes its primary key from both entities that it bridges • Example: enroll grade student. NAME student. ID STUDENT student. ID 200922222 200933333 200944444 200955555 STUDENT student. NAME M course. NAME N enroll STUDENT_COURSE / ENROLL student. ID 200922222 200933333 200955555 course. ID ITS 232 CSC 318 CSC 203 ITS 232 grade A+ B+ B A- course. ID COURSE course. ID course. NAME ITS 232 Database CSC 318 IP CSC 203 OS
Chapter 4: Entity Relationship (E-R) Modeling 4. 2 Developing An E-R Diagram: Chen Model: Entity Variations of Entity: iv. Entity Supertype & Subtype • Parent-Child relationship • Supertype contains the shared attributes an entity type that include distinct subclasses that required to be presented in data model parent • Subtype contains the unique attributes an entity type that has a distinct role and also a member of supertype child 22
Chapter 4: Entity Relationship (E-R) Modeling 4. 2 Developing An E-R Diagram: Chen Model: Entity Variations of Entity: iv. Entity Supertype & Subtype • Example: Superype (EMPLOYEE) Subtype (Engineer & Full-Time) 23
Chapter 4: Entity Relationship (E-R) Modeling 4. 2 Developing An E-R Diagram: Chen Model: Entity Variations of Entity: iv. Entity Supertype & Subtype • Have two types of relationship: Disjoint Overlapping Unique subtype Non-overlapping: subtypes can be one of the types Indicate with: G Overlapping: Subtypes can be either one or both of the subtypes Indicate with: Gs 24
Chapter 4: Entity Relationship (E-R) Modeling 4. 2 Developing An E-R Diagram: Chen Model: Entity Variations of Entity: iv. Entity Supertype & Subtype • Example: Disjoint & Overlap Disjoint G Gs Overlap 25
Chapter 4: Entity Relationship (E-R) Modeling 4. 2 Developing An E-R Diagram: Chen Model: Entity Variations of Entity: iv. Entity Supertype & Subtype • Example: Disjoint 26
Chapter 4: Entity Relationship (E-R) Modeling 4. 2 Developing An E-R Diagram: Chen Model: Entity Variations of Entity: iv. Entity Supertype & Subtype • Example: Disjoint & Overlap 27
Chapter 4: Entity Relationship (E-R) Modeling 4. 2 Developing An E-R Diagram: Chen Model: Attributes • Represented by ovals that are connected to entity with a line • Oval contains of attribute (field) it represents • PK are underlined with straight line • FK are underlined with doted line or * • Example: Entity STUDENT with attributes name, course, student. ID, address, email name email address STUDENT course student. ID 28
Chapter 4: Entity Relationship (E-R) Modeling 4. 2 Developing An E-R Diagram: Chen Model: Attributes types: i. Simple Attributes ii. Composite Attributes iii. Multivalued Attributes iv. Derived Attributes 29
Chapter 4: Entity Relationship (E-R) Modeling 4. 2 Developing An E-R Diagram: Chen Model: Attributes types: i. Simple Attributes • An attribute composed of single component with an independent existence • Cannot be subdivided into smaller components • Example: gender, martial statues address. NO address. POSTCODE address. TOWN Simple Attributes phone. NO age STUDENT name gender student. ID 30
Chapter 4: Entity Relationship (E-R) Modeling 4. 2 Developing An E-R Diagram: Chen Model: Attributes types: ii. Composite Attributes • An attribute composed of multiple components, each with an independent existence • Can be further subdivide to additional attributes • Example: name first, middle, last address street, city, state, zip address. NO address phone. NO age STUDENT name gender address. POSTCODE address. TOWN Composite Attributes student. ID 31
Chapter 4: Entity Relationship (E-R) Modeling 4. 2 Developing An E-R Diagram: Chen Model: Attributes types: iii. Multivalued Attributes • attribute that holds multiple values for each occurrence of an entity type • Should not be implemented multivalued attributes in relational database • Can simplifies multivalued attributes by: a. Create several attributes b. Create new entity of the original multivalued attributes components • Example: phone number handset, office, home qualification diploma, degree, master 32
Chapter 4: Entity Relationship (E-R) Modeling 4. 2 Developing An E-R Diagram: Chen Model: Attributes types: iii. Multivalued Attributes Contact hobbies contactid firstname lastname hobbies 1639 George Barnes reading 5629 Susan Noble hiking, movies 3388 Erwin Star hockey, skiing 5772 Alice Buck 1911 Frank Borders photography, travel, art 4848 Hanna Diedrich cooking, movies 33
Chapter 4: Entity Relationship (E-R) Modeling 4. 2 Developing An E-R Diagram: Chen Model: Attributes types: iii. Multivalued Attributes Contact hobbies studentid gender age address contactnum 1639 M 18 Klang 0123456734, 0333721341 5629 M 18 Temerloh 0199871234, 094602721 3388 M 19 Jerantut 0199112344, 094601234 5772 F 18 Hulu Klang 0193448900, 0355446712 1911 F 18 Besut 0199556301, 4848 F 18 Machang 0144543331, 095723992 34
Chapter 4: Entity Relationship (E-R) Modeling 4. 2 Developing An E-R Diagram: Chen Model: Attributes types: iii. Multivalued Attributes • Can simplifies multivalued attributes by: a. Create several attributes address age gender STUDENT student. ID handset. NO homephone. NO b. Create new entity of the original multivalued attributes components homephone. NO address age gender STUDENT student. ID has handset. NO CONTACT student. ID* 35
Chapter 4: Entity Relationship (E-R) Modeling 4. 2 Developing An E-R Diagram: Chen Model: Attributes types: iv. Derived Attributes • An attributes that represents a value that is derived from the value of related attribute or set of attributes, not necessarily in the same entity type. • Need not be physically stored within database • Example: age 36
Chapter 4: Entity Relationship (E-R) Modeling 4. 2 Developing An E-R Diagram: Chen Model: Attributes 37
Chapter 4: Entity Relationship (E-R) Modeling 4. 2 Developing An E-R Diagram: Chen Model: Relationship • Associations /connection between entities • Logical interaction among the entities in a relational database • Operates in both directions • Naming Relationships: • • Relationship name is a verb phrase Avoid vague names • Defining Relationships: • • Definition explains what action is being taken and why it is important Give examples to clarify the action Optional participation should be explained Explain reasons for any explicit maximum cardinality Explain any restrictions on participation in the relationship Explain extent of the history that is kept in the relationship Explain whether an entity instance involved in a relationship instance can transfer participation to another relationship instance 38
Chapter 4: Entity Relationship (E-R) Modeling 4. 2 Developing An E-R Diagram: Chen Model: Relationship is described by: i. Degree of the relationship ii. Connectivity of the relationship iii. Cardinality of the relationship iv. Participation 39
Chapter 4: Entity Relationship (E-R) Modeling 4. 2 Developing An E-R Diagram: Chen Model: Relationship is described by: i. Degree of the relationship • Indicates number of associated entities within the relationship • There are three types: a. Unary Relationship • Association is maintained within single entity a. Binary Relationship • Two entities are associated (1: 1, 1: M, M: N) c. Ternary Relationship • Three entities are associated 40
Chapter 4: Entity Relationship (E-R) Modeling 4. 2 Developing An E-R Diagram: Chen Model: Relationship 41
Chapter 4: Entity Relationship (E-R) Modeling 4. 2 Developing An E-R Diagram: Chen Model: Relationship PK A PK FK EID Name Super_EID 111 Ikhsan 222 Eizan 333 Nawal 111 444 Fairuz 222 FK Unary Relationship Type R, we identify the relation A represents the entity type involves in this relationship. Include in this relation one more time as foreign key the primary of itself. The two keys (primary key and foreign key) are the same but they represents two entities of different roles relate to this relationship. 42
Chapter 4: Entity Relationship (E-R) Modeling 4. 2 Developing An E-R Diagram: Chen Model: Relationship A B R 1 -1 Binary Relationship Type R, identify relation A and B that correspond to the entity types participating in R. The relationship itself can be mapped using one of the following approaches: • Using foreign key: This is the most popular approach. Choose one of the participating relation, say A (usually one with total participation) ; include in A as the foreign key the primary key of B. If R has attributes then put them in the relation A as well. • Merged relation: If both participations of two related entity type are total then we can merge two entity types and the relationship into a relation. • Defining relationship relation: Define a relation R to represent the relationship. All attributes of relationship is included in R. In addition, put the primary keys of two relations A , B into R. The primary keys of R is combination of primary keys of A and B. 43
Chapter 4: Entity Relationship (E-R) Modeling 4. 2 Developing An E-R Diagram: Chen Model: Relationship A B 1 -N Binary Relationship Type: For each 1 -N Binary Relationship Type R, identify two relations A and B correspond to two entity types participating in R. A represents the entity type at 1 -side and B represents the entity type at N-side. Include the primary key of A as the foreign key in B. This foreign key represent the relationship type R. 44
Chapter 4: Entity Relationship (E-R) Modeling 4. 2 Developing An E-R Diagram: Chen Model: Relationship A B S M-N Binary Relationship Type: For each M-N Binary Relationship Type R, identify two relation A, B represent two entity type participating in R. Create a new relation S to represent R. Include in S as foreign keys the primary keys of A and B and all the simple attributes of R. The combination of primary keys of A and B will make the primary key of S. 45
Chapter 4: Entity Relationship (E-R) Modeling 4. 2 Developing An E-R Diagram: Chen Model: Relationship Ternary Relationship Type: For each n-ary ( > 2 ) Relationships create a new relation to represent the relationship. The primary key of the new relation is the combination of the primary keys of the participating entities that hold the N (many) side. In most cases of an n-ary relationship all the participating entities hold a many side 46
Chapter 4: Entity Relationship (E-R) Modeling 4. 2 Developing An E-R Diagram: Chen Model: Relationship is described by: ii. Connectivity of the relationship • Logical interaction among entities in a relational database • There are three types: a. 1: 1 Ui. TMBRANCH 1 have 1 RECTOR under M PROGRAM register N COURSE b. 1: M STUDENT 1 c. M: N STUDENT 1 M 47
Chapter 4: Entity Relationship (E-R) Modeling 4. 2 Developing An E-R Diagram: Chen Model: Relationship is described by: iii. Cardinality of the relationship • Express the specific (minimum and maximum) number of entity occurrences associated with one occurrence of the related entity • Function of organizational policy business rules 48
Chapter 4: Entity Relationship (E-R) Modeling 4. 2 Developing An E-R Diagram: Chen Model: Relationship is described by: iii. Cardinality of the relationship • Example 1: One student can register 1 to 9 courses One course maximum can have 35 student STUDENT M (1, 9) N register (0, 35) COURSE 49
Chapter 4: Entity Relationship (E-R) Modeling 4. 2 Developing An E-R Diagram: Chen Model: Relationship is described by: iii. Cardinality of the relationship • Example 2: One lecturer can teaches maximum 3 courses One course can be thought by 1 lecturer only LECTURER 1 (0, 3) M teach (1, 1) COURSE 50
Chapter 4: Entity Relationship (E-R) Modeling 4. 2 Developing An E-R Diagram: Chen Model: Relationship is described by: iii. Cardinality of the relationship • Example 3: 51
Chapter 4: Entity Relationship (E-R) Modeling 4. 2 Developing An E-R Diagram: Chen Model: Relationship is described by: iii. Cardinality of the relationship • Relationship Strength Existence Dependence – Existence dependence • Entity exists in database only when it is associated with another related entity occurrence – Existence independence • Entity can exist apart from one or more related entities • Sometimes such an entity is referred to as a strong or regular entity
Chapter 4: Entity Relationship (E-R) Modeling 4. 2 Developing An E-R Diagram: Chen Model: Relationship is described by: iii. Cardinality of the relationship • From Existence Dependence, exist two relationship strength: a. Weak Relationship �Entity existence-independent on other entity �PK of related entity doesn’t contain PK component of parent entity �Non-Identifying Relationship b. Strong Relationship �Existence dependence �PK of related entity contains PK component of parent entity 53 �Identifying Relationship
54
55
Chapter 4: Entity Relationship (E-R) Modeling 4. 2 Developing An E-R Diagram: Chen Model: Relationship Database Systems, 9 h Edition 56
Chapter 4: Entity Relationship (E-R) Modeling 4. 2 Developing An E-R Diagram: Chen Model: Relationship 57
Chapter 4: Entity Relationship (E-R) Modeling 4. 2 Developing An E-R Diagram: Chen Model: Relationship is described by: iv. Participation • Determines whether all or some entity occurrences participates in a relationship • There are two types: a. Optional (Partial) • One entity occurrence does not require corresponding entity occurrence in particular relationship b. Mandatory (Total) • One entity occurrence requires corresponding entity occurrence in particular relationship 58
Chapter 4: Entity Relationship (E-R) Modeling 4. 2 Developing An E-R Diagram: Chen Model: Relationship is described by: iv. Participation • Example 1: One lecturer can teaches maximum 3 courses One course can be thought by 1 lecturer only connectivity LECTURER 1 (0, 3) ‘not all lecturer teaches course’ optional participation for course M teach One lecturer can teaches maximum 3 courses (1, 1) COURSE One course can be thought by one lecturer only cardinality participation ‘all courses are taught’ (mandatory participation for lecturer)
Chapter 4: Entity Relationship (E-R) Modeling 4. 2 Developing An E-R Diagram: Comparison of E-R Model Alternate style developed to enable easier use of CASE tools. Chen Model The Chen notation favors conceptual modeling Crow’s Foot Model Crow’s Foot notation favors a more implementation-oriented approach UML Model UML notation can be used for both conceptual and implementation modeling 60
Chapter 4: Entity Relationship (E-R) Modeling 4. 2 Developing An E-R Diagram: Comparison of E-R Modeling Symbols Cardinality & Participation Chen Model Entity Weak Entity Composite Entity Relationship line Relationship Option Symbol One (1) Symbol 1 Many (M) Symbol M Crow’s Foot Model
Chapter 4: Entity Relationship (E-R) Modeling 4. 2 Developing An E-R Diagram: Comparison of E-R Model Chen Model
Chapter 4: Entity Relationship (E-R) Modeling 4. 2 Developing An E-R Diagram: Comparison of E-R Model Crow’s Foot Model
Chapter 4: Entity Relationship (E-R) Modeling 4. 3 Database Design Challenges Conflicting Goals • Database designers often must make design compromises that are trigged by conflicting goals, such as comply with the design standards, processing speed and information requirements. • In order to do so, – it is very important to have the entities, attributes, and relationships clearly identified and well-defined – there is a need in balancing between the customer needs and a design that meets logical requirements and conventions – The more thinking and modeling is done the less money and time are needed later on for rework • Additional concerns are security, performance, shared access and 64 integrity
- Slides: 64