Database Chapter 4: Database Modeling
attributes
describes the entities characteristics
entity instance
the occurrence of a particular entity
Identifying relationship
links strong entities to weak entities (if weak is ID-dependant, parent entity will be a composite primary key) -represented by a solid line
Data Modeling Process #5: Refine the Data Model
-Consider optionality -Consider cascading / restricted updates / deletions -Review alterations with the client -and finally obtain formal approval from client
Data Modeling Process #4: Define the Attributes
-Create domains -Identify indexes -Create column headings, default values, etc .-Create validation rules -Review the model with the client
Different sources of requirements:
-user interviews -forms -reports -queries -application programs -websites -use cases -business rules
ID- dependent weak entity
A weak entity that cannot exist without its parent entity. -has a composite identifier -first part is the identifier for strong entity -second part is the identifier for weak entity itself
minimum cardinality
the min number of entity instances that must participate in a relationship -typically assume value 0 (optional) or 1 (mandatory)
Data Modeling Process #1: Buisl a List of Entities
-Identify potential entities -Define possible unique identifiers -Define obvious non-key attributes
strong entity
An entity that is existence-independent, that is, it can exist apart from all of its related entities
associative entity
An entity type that associates the instances of one or more entity types and contains attributes that are peculiar to the relationship between those entity instances. -is used whenever a pure N:M relationship cannot properly hold attributes that are describing aspects of the relationship between two entities - a new entity is created to link 2 original entities and hold the attributes
weak entity
An entity type whose existence depends on some other entity type.
relationships
entities are associated with one another
identifier
an attribute (or group of attributes) whose value is associated with one and only one entity instance -SocialSecurityNumber, StudentID
Subtype Entity
an entity that represents a special case of another entity, called a supertype
prototyping
commonly use to validate forms and reports
Unified Modeling Language (UML)
is a set of structures and techniques for modeling and designing object-oriented programs (OOP) and applications.
If the identifier is unique, the data value..
must be unique for all instances
non identifying relationship
relationship between the strong and weak entity(is weak is (non-id-dependent, identifier of parent entity will be a foreign key) -represented by a dashed line -also used between strong entities
Exclusive subtypes
the supertype relates to at most one subtype
Data Modeling Process #2: Determine Relationships
-Determine cardinalities -Determine relationship types (e.g., associative)
Data Modeling Process #3: Draw Initial Data Model
-Formally define entities and relationships -Review the model with the client
one-to-one relationship (1:1)
between two entities in which an instance of one entity can be related to only one instance of a related entity
many-to-many relationship (M:N)
between two entities in which an instance of one entity is related to many instances of another and one instance of the other can be related to many instances of the first entity
has-a relationship
The relationship demonstrated by a class that contains another class. -an employee has a badge -a badge has an employee
cardinality
count of entity instances in a relationship
An attribute has a..
data type (character, numeric, date, currency) and properties determined from the requirements
degree
number of entity classes in the relationship -degree 2 = binary -3=ternary
maximum cardinality
the maximum number of entity instance that can be involved in a relationship -one, many or some other fixed number
composite
an identifier that consists of 2 or more attributes -(EmployeeNumber and LineItemNumber both required)
Entity Class
a collection of entities and provides the structure of the entities in that class
Three stages of database development:
-Requirements Analysis Stage -Component Design Stage -Implementation Stage -part of 5 stage system development life cycle model
supertype
A generic entity type that has a relationship with one or more subtypes, called a discriminator
recursive relationship
A relationship found within a single entity type. For example, an EMPLOYEE is married to an EMPLOYEE or a PART is a component of another PART.
Integrated Definition 1, Extended (IDEF1X)
A version of the entity-relationship model, adopted as a national standard, but difficult to understand and use. Most organizations use a simpler E-R version like the crow's foot model
one-to-many relationship (1:N)
Relationships involving two entity types in which an instance of one type can relate to many instances of the second type, but an instance of the second type can relate to at most one instance of the first
Information Engineering (IE)
[James Martin 1990] It uses "crow's feet" to show the many sides of a relationship, and is sometimes called the crow's foot model.
inclusive subtype
a supertype instance can relate to one or more subtypes
Business Rules
may constrain the data values and the processing of the database: -Heather Sweeney Design has a business rule that no more than one form letter or email per day is to be sent to a customer•
IS-A relationship
relationship that connected super type and subtypes, because subtype is the same entity as the super type