Chapter 3: Modeling Data in the Organization
-
Upload
paloma-cooke -
Category
Documents
-
view
52 -
download
4
description
Transcript of Chapter 3: Modeling Data in the Organization
![Page 1: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/1.jpg)
1Chapter 3
Chapter 3:
Modeling Data in the Organization
![Page 2: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/2.jpg)
2Chapter 3
Business Rules
• Statements that define or constrain some aspect of the business
• Assert business structure
• Control/influence business behavior
• Expressed in terms familiar to end users
• Automated through DBMS software
![Page 3: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/3.jpg)
3Chapter 3
Scope of Business Rules
• We see business rules in Information system context. What all fall inside and what all is outside the scope.
![Page 4: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/4.jpg)
4Chapter 3
A Good Business Rule is:
![Page 5: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/5.jpg)
5Chapter 3
Gathering Business Rules
• Gathered from descriptions of business functions, events, policies, units, stakeholders.
• Can be elicited by interviews, group information system requirements collection sessions, organizational documents (personnel manuals, policies, contracts, marketting broucheres, technical istructions.)
• Questions like who, what, where, why, and how are asked.
• To validate questions like, “is this always true?, “Are there special circumstances where alternatives exists?” etc
![Page 6: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/6.jpg)
6Chapter 3
Data Names
![Page 7: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/7.jpg)
7Chapter 3
A Good Data Name is:
![Page 8: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/8.jpg)
8Chapter 3
Data Definitions• Explanation of a term or fact
– Term–word or phrase with specific meaning– Fact–association between two or more terms
• Guidelines for good data definition– Gathered in conjunction with systems requirements– Accompanied by diagrams– Iteratively created and refined– Achieved by consensus
![Page 9: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/9.jpg)
9Chapter 3
E-R Model Constructs• Entities:
– Entity instance–person, place, object, event, concept (often corresponds to a row in a table)
– Entity Type–collection of entities (often corresponds to a table)
• Relationships:– Relationship instance–link between entities (corresponds to
primary key-foreign key equivalencies in related tables)– Relationship type–category of relationship…link between entity
types
• Attribute–property or characteristic of an entity or relationship type (often corresponds to a field in a table)
![Page 10: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/10.jpg)
10Chapter 3
Sample E-R Diagram (Figure 3-1)
![Page 11: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/11.jpg)
11Chapter 3
Relationship degrees specify number of entity types involved
Entity symbols
A special entity that is also a relationship
Relationship symbols
Relationship cardinalities specify how many of each entity type is allowed
Attribute symbols
Basic E-R notation (Figure 3-2)
![Page 12: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/12.jpg)
12Chapter 3
What Should an Entity Be?• SHOULD BE:
– An object that will have many instances in the database
– An object that will be composed of multiple attributes
– An object that we are trying to model
• SHOULD NOT BE:– A user of the database system – An output of the database system (e.g., a
report)
![Page 13: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/13.jpg)
13Chapter 3
Inappropriate entities
System System useruser
System System outputoutput
Figure 3-4 Example of inappropriate entities
Appropriate entities
![Page 14: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/14.jpg)
14Chapter 3
Attributes
• Attribute–property or characteristic of an entity or relationahip type
• Classifications of attributes:– Required versus Optional Attributes– Simple versus Composite Attribute– Single-Valued versus Multivalued Attribute– Stored versus Derived Attributes– Identifier Attributes
![Page 15: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/15.jpg)
15Chapter 3
Identifiers (Keys)
• Identifier (Key)–An attribute (or combination of attributes) that uniquely identifies individual instances of an entity type
• Simple versus Composite Identifier• Candidate Identifier–an attribute that could
be a key…satisfies the requirements for being an identifier
![Page 16: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/16.jpg)
16Chapter 3
Characteristics of Identifiers
• Will not change in value
• Will not be null
• No intelligent identifiers (e.g., containing locations or people that might change)
• Substitute new, simple keys for long, composite keys
![Page 17: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/17.jpg)
17Chapter 3
Figure 3-7 A composite attribute
An attribute broken into component parts
Figure 3-8 Entity with multivalued attribute (Skill) and derived attribute (Years_Employed)
Multivaluedan employee can have more than one skill
Derivedfrom date employed and current date
![Page 18: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/18.jpg)
18Chapter 3
Figure 3-9 Simple and composite identifier attributes
The identifier is boldfaced and underlined
![Page 19: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/19.jpg)
19Chapter 3
Figure 3-19 Simple example of time-stamping
This attribute that is both multivalued and composite
![Page 20: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/20.jpg)
20Chapter 3
More on Relationships• Relationship Types vs. Relationship Instances
– The relationship type is modeled as lines between entity types…the instance is between specific entity instances
• Relationships can have attributes– These describe features pertaining to the association between
the entities in the relationship
• Two entities can have more than one type of relationship between them (multiple relationships)
• Associative Entity–combination of relationship and entity
![Page 21: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/21.jpg)
21Chapter 3
Figure 3-10 Relationship types and instances
a) Relationship type
b) Relationship instances
![Page 22: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/22.jpg)
22Chapter 3
Degree of Relationships
• Degree of a relationship is the number of entity types that participate in it–Unary Relationship–Binary Relationship–Ternary Relationship
![Page 23: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/23.jpg)
23Chapter 3
Degree of relationships – from Figure 3-2
Entities of two different types related to each other Entities of three
different types related to each other
One entity related to another of the same entity type
![Page 24: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/24.jpg)
24Chapter 3
Cardinality of Relationships
• One-to-One– Each entity in the relationship will have exactly one
related entity
• One-to-Many– An entity on one side of the relationship can have
many related entities, but an entity on the other side will have a maximum of one related entity
• Many-to-Many– Entities on both sides of the relationship can have
many related entities on the other side
![Page 25: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/25.jpg)
25Chapter 3
Cardinality Constraints
• Cardinality Constraints - the number of instances of one entity that can or must be associated with each instance of another entity
• Minimum Cardinality– If zero, then optional– If one or more, then mandatory
• Maximum Cardinality– The maximum number
![Page 26: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/26.jpg)
26Chapter 3
Figure 3-12 Examples of relationships of different degrees
a) Unary relationships
![Page 27: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/27.jpg)
27Chapter 3
Figure 3-12 Examples of relationships of different degrees (cont.)
b) Binary relationships
![Page 28: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/28.jpg)
28Chapter 3
Figure 3-12 Examples of relationships of different degrees (cont.)
c) Ternary relationship
Note: a relationship can have attributes of its own
![Page 29: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/29.jpg)
29Chapter 3
Figure 3-17 Examples of cardinality constraints
a) Mandatory cardinalities
A patient must have recorded at least one history, and can have many
A patient history is recorded for one and only one patient
![Page 30: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/30.jpg)
30Chapter 3
Figure 3-17 Examples of cardinality constraints (cont.)
b) One optional, one mandatory
An employee can be assigned to any number of projects, or may not be assigned to any at all
A project must be assigned to at least one employee, and may be assigned to many
![Page 31: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/31.jpg)
31Chapter 3
Figure 3-17 Examples of cardinality constraints (cont.)
a) Optional cardinalities
A person is is married to at most one other person, or may not be married at all
![Page 32: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/32.jpg)
32Chapter 3
Entities can be related to one another in more than one way
Figure 3-21 Examples of multiple relationships
a) Employees and departments
![Page 33: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/33.jpg)
33Chapter 3
Figure 3-21 Examples of multiple relationships (cont.)
b) Professors and courses (fixed lower limit constraint)
Here, min cardinality constraint is 2
![Page 34: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/34.jpg)
34Chapter 3
Figure 3-15a and 3-15b Multivalued attributes can be represented as relationships
simple
composite
![Page 35: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/35.jpg)
35Chapter 3
Strong vs. Weak Entities, andIdentifying Relationships
• Strong entities – exist independently of other types of entities– has its own unique identifier– identifier underlined with single-line
• Weak entity– dependent on a strong entity (identifying owner)…cannot exist on its own– does not have a unique identifier (only a partial identifier)– Partial identifier underlined with double-line– Entity box has double line
• Identifying relationship– links strong entities to weak entities
![Page 36: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/36.jpg)
36Chapter 3
SUMMARY OF ER-DIAGRAM NOTATION FOR ER SCHEMAS
Meaning
ENTITY TYPE
WEAK ENTITY TYPE
RELATIONSHIP TYPE
IDENTIFYING RELATIONSHIP TYPE
ATTRIBUTE
KEY ATTRIBUTE
MULTIVALUED ATTRIBUTE
COMPOSITE ATTRIBUTE
DERIVED ATTRIBUTE
Symbol
![Page 37: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/37.jpg)
37Chapter 3
Strong entity Weak entity
Identifying relationship
![Page 38: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/38.jpg)
38Chapter 3
Associative Entities
• An entity–has attributes
• A relationship–links entities together
• When should a relationship with attributes instead be an associative entity? – All relationships for the associative entity should be many– The associative entity could have meaning independent of the other
entities– The associative entity preferably has a unique identifier, and should
also have other attributes– The associative entity may participate in other relationships other
than the entities of the associated relationship– Ternary relationships should be converted to associative entities
![Page 39: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/39.jpg)
39Chapter 3
Figure 3-11a A binary relationship with an attribute
Here, the date completed attribute pertains specifically to the employee’s completion of a course…it is an attribute of the relationship
![Page 40: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/40.jpg)
40Chapter 3
Figure 3-11b An associative entity (CERTIFICATE)
Associative entity is like a relationship with an attribute, but it is also considered to be an entity in its own right.
Note that the many-to-many cardinality between entities in Figure 3-11a has been replaced by two one-to-many relationships with the associative entity.
![Page 41: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/41.jpg)
41Chapter 3
Figure 3-13c An associative entity – bill of materials structure
This could just be a relationship with attributes…it’s a judgment call
![Page 42: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/42.jpg)
42Chapter 3
Figure 3-18 Ternary relationship as an associative entity
![Page 43: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/43.jpg)
43Chapter 3
Microsoft Visio Notation for Pine Valley Furniture
E-R diagram
Different modeling software tools may have different notation for the same constructs
![Page 44: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/44.jpg)
44Chapter 3
Creating an ERD from the Investigated Facts
• Identify all the entities.
• Identify all the relationships.
• Identify cardinality and multiplicities (min max).
![Page 45: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/45.jpg)
45Chapter 3
Simple ERD 1
• A painter can paint many paintings; each painting is painted by one painter. A gallery can have many paintings. A painting can be exhibited by a gallery.
Painter Painting GalleryPaintDisplayed(0,N)(1,1)
(1,1)(0,N)
![Page 46: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/46.jpg)
46Chapter 3
Simple ERD 2
• An employee can learn many skills; each skill can be learnt by many employees.
• Expert Level? (L1.. L5)
Employee SkillsLearn(0,N) (0,M)
Level
![Page 47: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/47.jpg)
47Chapter 3
Simple ERD 3
• An employee manages one store; each store is managed by one employee
Employee StoreManages(0,1)(1,1)
![Page 48: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/48.jpg)
48Chapter 3
Simple ERD 4
• A College example• Students in a typical college or university will
discover that each course can have many sections, each section refers to only one course.
• For example, an Accounting II course might have two sections: one offered on Monday, Wednesday, and Friday from 10:00 a.m. to 10:50 a.m., and one offered on Thursday from 6:00 p.m. to 8:40 p.m.
![Page 49: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/49.jpg)
49Chapter 3
Course SectionHas
(0,N)(1,1)
![Page 50: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/50.jpg)
50Chapter 3
Simple ERD 5
• Each student can take many classes (or none) and each class can contain many students.
Student ClassesTake(0,N)(1,M)
![Page 51: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/51.jpg)
51Chapter 3
Combining ERDs
• A class can be identified with course and section.
Course SectionHas(0,N)(1,1)
Student SectionTake(0,N)(1,M)
![Page 52: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/52.jpg)
52Chapter 3
Course Section(0,N)(1,1)
Student Take
(0,N)
(1,M)
Has
![Page 53: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/53.jpg)
53Chapter 3
Adding Additional Conditions
• Adding prerequisite, enroll grade
Course Section
(0,N)(1,1)
Student Take
(0,N)
(1,M)
HasHas
Prerequisite
(0,N)(0,M)
Grade
![Page 54: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/54.jpg)
54Chapter 3
Example
• a professor teaches zero, one or many classes and a class is taught by one professor
• a course may generate zero, one or many classes and a class comes from one course
• a class is held in one room but a room has many classes
![Page 55: Chapter 3: Modeling Data in the Organization](https://reader035.fdocuments.in/reader035/viewer/2022062221/56812af3550346895d8ed769/html5/thumbnails/55.jpg)
55Chapter 3
Example
• an invoice is written by one salesrep but a salesrep writes many invoices
• a vendor sells many products but a product is bought from one vendor
• an invoice has one or many products and a product is found on zero, one or many invoices