Download presentation
Presentation is loading. Please wait.
Published byPaul Walton Modified over 9 years ago
1
Conceptual Modeling with ER Diagrams Peter Chen introduced ER Diagrams
2
E-R Modeling E-R Modeling is a design methodology for modeling the –Entities –Relationships using a diagram with specified shapes for entities, relationships, roles of entities in these relationships, and cardinality.
3
E-R Diagram Conventions Symbol Meaning Entity Type Weak Entity Type Relationship Identifying Relationship Attribute
4
ER-Diagram Conventions - CONTINUED Symbol Meaning Key Attribute Multivalued Attribute Composite Attribute
5
Entities, Relationships and Attributes Employee A entity is a object or event which needs to be tracked. Attributes characterize entity sets and relationships. Relationships relate two entity sets EmployeeProject Assigned Name Date SSNum Name
6
Payroll Application A contractor does custom work (projects). He keeps track of employee time for each project. Besides materials, the customer is charged by invoice for employee time on his job. To keep track of employee time, the employee submits a time sheet with entries of project number, hours, description. These are entered into the system along with the employee ID. The hourly rate for the employee is used for each entry to generate a labor charge. The labor charges are totaled for each project and used as a basis for the customer invoice.
7
Understanding the Requirements Management End Users Analysts Conference Management – know high level business rules End users – have used paper system or previous software system and have expectations Analysts – have understanding of what can / cannot be done and must requirements into system
8
ER Diagrams for Payroll Step 1. Identify the Entity Sets with Attributes Customers : Name, Address,Phone,CustID Projects : Name,Description,ProjID,Total,CustID Employees : Name,SSNo,PayRate,EmpID LaborCharges : EmpID,ProjID,Description,Hours,Amount
9
ER Diagrams for Payroll Step 1. Identify Relationships between Entity Sets with any Attributes Customers Has Project … Project is Weak Entity Set Employee Works_On Project Employee Has_Labor_Charge For Project … Labor_Charge is Weak Entity Set
10
E-R Modeling – Entity Sets, Attributes, Relationships Racquet Club Example A Racquet Club has members with one year or two year contracts. Members pay contract amount up front, quarterly, or monthly. Members may reserve a court for the next day.
11
E-R Modeling – Entity Sets, Attributes, Relationships Racquet Club Example Continued Entity Sets –Members : Name, Start, Contract_Amount, Contract_Period, Initial_Balance, Member_ID –Payments : PayerID, Amount, Paid_Date, Payment_ID –Reservations : Member_ID, CourtNumber, Hour Relations : –Member - Makes – Payment –Member - Makes - Reservation
12
Data Modeling – Racquet Club Example
13
Keys, Cardinality Constraints and Participation Constraints A key of a relation is a minimal set of attributes and roles which uniquely determine each entity. A cardinality constraint m..n constrains the number of times a single entity can participate in a role of a relationship : m <= times <= n. A participation constraint ensures that an entity will particpate at least this many times.
14
ER-Diagram Cardinality Conventions Symbol Meaning Calculated Attribute Cardinality Constraints and Participation Constraints 0.. * 0.. 1 1.. * 1.. 1
15
Cardinality and Participation in the E-R model. 1.. 2 means that at least 1 d must participate in the A relation with C and that not more that 2 d’s can participate. If A is represented by a table, then there is at least one row and not more than 2 rows with a single c value.
16
Many-to-one, one-to-one, and many-to-many correspondences
17
Cardinality & Participation Constraints Library Circulation Motel/Hotel Video Store Employment Company
18
Cardinality & Participation Constraints Library Circulation Book is_checked_out to Patron Motel/HotelCustomer rents a room Video StoreCustomer rents a video Employment Company Applicant is hired for a job
19
Example of an E-R diagram with an ISA hierarchy.
20
Using IsA for data partitioning. New York CustomerPennsylvania Customer
21
Participation Constraints A participation constraint is a lower bound on the number of times an entity can particpate in a relation. Examples: An employee belongs to ONE department. This is a participation and a cardinality constraint 1.. 1. EmployeeDepartment 0.. * 0.. 1 1.. * 1.. 1
22
Participation constraints.
23
Relationship Types – Two Entity Set Relations A customer will pay for at least one project Project Assigned To Employee Num-Hours Project Will Pay For Fixed-Cost Customer An employee is assigned to at least one project (participation)
24
Relationship Types – One & Three Entity Set Relations One Set : ReportsTo( SupID, SubID ) Three Sets : Sale( ProdID, CustID,SuppID;Date) Employee Reports_To subordinate supervisor Customer Product Supplier Sold Date Price
25
ER Diagrams for Payroll Customer Name Address Phone CustID Projects Name Description Total CustID ProjID Has
26
ER Diagrams for Payroll Employee Name SSNo PayRate EmpID TimeSheet Year Month EmpID TSID Has PayCheck Has Labor Charges Has TSID... NetPay TSID... Amount
27
The IS-A Relationship Employee Is-A Salaried Employee Hourly Employee disjoint Name SSNo Salary PayRate
28
Construct an ER Diagram Lawn Furniture Manufacturer Stores Information for Catalog of products and parts Stores Information for Manufacturing, including quantity on hand Identify product entities (picnic table and lawn chair) with attributes Identify relationships IsA and PartOf
29
The Part-Of Relationship Picnic_Table Lawn_Chair ProdNo Part_Of OutDoorProducts IsA TopBase Seats Quantity ProdNo Price
30
From E-R Diagrams to Relational Database Schema Converting entities into relations (tables) –Each entity becomes a relation –Each attribute of the entity becomes an attribute of that relation (column) –If attributes K 1... K n form a key of the entity, then K 1... K n form a candidate key of the relation.
31
From ER Diagrams to Relational Database Schema Translating Entities Employee Name SSNo Type HireDate Termination Create Table Employee ( Name char(20), Type char(1), HireDate date, Termination date, SSNo char(9), Primary Key (SSNo) )
32
From E-R Diagrams to Relational Database Schema Representing relationships in the database schema –R is a relationship between entity set A and weak entity set B A becomes a relation with primary key K and B+K becomes a relation with K being a foreign key – e.g. employees and dependents –R is a relationship between entity sets A,B and C A,B and C become relations with K A, K B, and K c as keys. R becomes a relation with foreign keys K A, K B, and K c
33
From ER Diagrams to Relational Database Schema Translating Relationships Customer Product Supplier Sold SaleDate Price Create Table Sold ( SaleDate Date, Price Currency, SaleID autonumber, Customer Integer, Supplier Integer, Product Integer, Primary Key (SaleID), Foreign Key ( Customer ) References Customers( CustID), Foreign Key ( Supplier ) References Suppliers( SuppID ), Foreign Key ( Product ) References Products ProdID ) ) SaleID
34
Translate into Schema Employee Is-A Salaried Employee Hourly Employee disjoint Name SSNo Salary PayRate
35
Translate Into Schema Picnic_Table Lawn_Chair ProdNo Part_Of OutDoorProducts IsA TopBase Seats Quantity ProdNo Price
Similar presentations
© 2024 SlidePlayer.com Inc.
All rights reserved.