DB Module

Helpfulness: 0
Set Details Share
created 4 years ago by gina_g23
show moreless
Page to share:
Embed this setcancel
code changes based on your size selection

History of DB applications

a. Early database application using hierarchical and network systems

b. Provide data abstraction and application flexibility with databases

c. Object-oriented applications and the need for more complex databases

d. Interchanging data on the Web for e-commerce using XML

i.Enterprise resource planning (ERP)

ii.Customer relationship management (CRM)

e.New capabilities for applications


Types of Information Stored in DB. Provide examples of each

a.Traditional-Textual / numeric information

b.Multimedia-Images, audio, video

c.Geographic Information System (GIS)-maps, weather data, satellite images

d.Data warehouses and online analytical processing (OLAP) systems

i.Business information from large databases

e. Real time and active

i.Control industrial and manufacturing process


Define Data and Information

Data-any sort of raw fact

Information-data's usable form, which is processed


Define Knowledge

Selection of information and interpretations


Define Data Models

A set of concepts to describe the structure of the database, and certain constraints that the database should obey


Describe Conceptual Model

Conceptual (high level) -close to the way many users perceive data



Describe Physical Model

describe details of how data is stored in the computer, low level. Relational


Implementation (representational) model

falls in between Physical and Conceptual. Relational DBMS


Data Models and DB Table

card image

Traditional File Processing

User defines and implements the files needed for specific software application


DB Approach

Repository maintains data that is defined once and then accessed by multiple users


Characteristics of DB Approach

Self Description
i. Data is stored separately from access programs

i. Virtual data derived from the database but not explicitly store
Multiple Views
i. Users have a variety of distinct applications using same data
ii. Concurrent, Controlled access

1) Type: Transactions

Data abstraction
Program-data independence and program operation independence

Conceptual representation of data
Does not include details of how data is stored or how operations are implemented

Data model

Type of data abstraction used to provide conceptual representation


Why do we choose databases

Traditional File Processing
User defines and implements the files needed for specific software application.

Database approach

Repository maintains data that is defined once and then accessed by multiple users


Advantages of Using a DB

Controlling Redundancy
Data Normalization
i. Restricting Access

Scalability and Availability
i. Manage higher loads and rates of requests from client applications -Scalability
ii. Load balancing, backup and recovery -Availability

Enforcing Integrity Constraints
i.Referential integrity-Every section record must be related to a Course_Record
ii. Key or Uniqueness-Every course record must have a unique value Course_Number

Business rules
Inherent nature of the data model


Define Scalability

Manage higher loadsand rates of requestsfrom client applications


Define Availability

Load balancing, backup and recovery


Define referential integrity

Every section record must be related to a Course_Record


Define Key or Uniqueness

Every course record must have a unique value Course_Number


When do you not use a DBMS

Well-defined database applications not expected to change
Real-time requirements due to DBMS overhead
Embedded systems with limited storage capacity or stringent execution constraints
No need for multiple-userdata access


Define DBMS and it's environment. Describe/Draw

card image

Software package / system to facilitate the analysis, storage, and maintenance of data so information can be distilled from it.


What is Meta-data

It is like a data dictionary

Database definition or descriptive information
Stored by the DBMS in the form of database catalog or dictionary


Define a database

Specifying the data types, structures, and constraints of the data to be stored


Manipulating a database

Inserting, deleting and updating the data in the database


Querying a database

Retrieve data from the database


Sharing a database

Allowing multiple users and programs to access the database simultaneously


Maintaining a database

Allow the system to evolve as requirements change over time


What is the difference between a conceptual and implementation level-model?

Conceptual (high level) -close to the way many users perceive data

Implementation (representational) -falls in between the above


Data Modeling Task: Inputs

Using Products of requirements analysis
Verbal and written communication among users and designers
Existing programs, files, documents, reports
Knowledge of meaning of data
Application Planning / Documentation and Design


Data Modeling Task: Abstraction

Where you think about specific ways that classes (entities) relate to each other
Use of some modeling discipline
Language, Diagramming, Tools
Use of representation technique
Analysis of business rules/semantic constraints


What are entities

Entities-Things in the Universe withindependent existence

Specific objects or things in the mini-world that are represented in the database


What's an entity type

Entity Type -a set of entities sharing the same attributes


Relationships define

They relate two or more entities with a specific meaning
The degree of a relationship type is the number of participating entity types
Relationship types can also have attributes

i. In a 1:1 relationship, attribute of a relationship can be moved to either entity
ii. In a 1:N relationship,the attribute can only be moved to the 'N' side.

Reification -M:N Relationship

Replace the relationship with an entity

Create relationships with the original participants


Attributes define

Particular properties that describe entity


Attribute Types are:

Simple-There is a singe value for the attribute

Composition may form a hierarchy where some components are themselves composite.
Composite-The attribute has several components. Ex. Address, Name
An entity may have multiple values for the attributed.

Key Attribute-An attribute of an entity type for which each entity must have a distinct value.
They may be composite
Entities may have more than one key


Primary Key

It is one of the key attributes

It is REQURED and "Preferred" Identifier


Shapes for Basic Modeling and Describe Everything

card image

Weak entity set does not have sufficient attributes to have a primary key. Strong entity set has a primary key.

Attributes that serve as primary keys are underlined. Broken underline indicates partial key (discriminator) for a weak entity set.

Broken ellipses denote derived attributes (from other attributes in the same table)

ISA triangle denotes a subclass of an entity set.

Role distinguish between the different “role” an entity may be in among entities with respect to the same attributes. In other words, the function that an entity plays in a relationship is called that entity’s role. E.g. empoyees work for supervisor, who are also employees themselves.

A relationship that associates a weak entity set with its owner is called an identifying relationship.


Steps for Analysis to Evolution or Requirements Gathering and Maintenance/Evolution

card image

Participation Constraints

Whether the existence of an entity depends on it being related to another entity = cardinality constraints.


Total Vs. Partial

card image

Type 1

Total: The coverage is total if each member of the generic class is mapped to at least one member among the member classes. Image

Partial: The coverage is partial if there are some members of the generic class that cannot be mapped to any member among member classes


Exclusive vs Overlapping (disjointed constraints)

Type 2

Exclusive: A member of the generic class is mapped to one element of at most one subset class

Overlapping: There exists some member of the generic class that can be mapped to two ore more of the subset classes


Cardinality Constraint

Cardinality Constraint -Quantification of the relationship between two concepts or classes
MINIMUM (A,B) = n --> Minimum, one instance of B is related to at least n instances of B

MIN (A,B) = 0 --> Optional Participation

MIN (A,B) = 1 --> Mandatory Participation

MAXIMUM (A,B) = n --> Maximum, one instance of A is related to at least n instances of B

MAX (A,B) = 1 --> No Participation

MIN (A,B) = x, MAX (A,B) = y Ranged Constrained Participation



Classification -X is a member of class B

Relationship between a class and it's members



-Extensional definition of the class by listing it's members



card image

A is a subclass of B

Relationship between classes --> represents an IS-A relationship



card image

B,C,D are aggregated into A

Class defined in terms of other classes, which are identified as components of the root class --> represents IS -PART -OF relationship