CS 623 – Database Management Systems
Session 2 Agenda
Chapter 1 Team Assignments Questions
Chapter 2: Database Planning and Database Architecture
Chapter 2 Team Assignment Review
Team time
CS 623 – Database Management Systems
Current Team Assignments
Team One Team Two Team Three Team Four
Chavan, Rohit Dattatray Griswold, Kunxi Jadav, Brijesh Kanchan, Kishore
Dhabade, Ramya Moro, Melba Louis Ju, Soyeon Keppel-Palmer, Annabel
Girase, Hrishikesh Ramala, Tejaswini Reddy Kamarapu, Murali King, Griffin
Mathur, Neha Spanburgh, Matthew Konjeti, Ravi Kumar
Team Five Team Six Team Seven Team Eight
Bouvier, Dimitri Kulkarni, Neeraj Shripad Pebbeti, Anirudh Reddy Salcedo, Jose
DiSanto, Zo Mudenti, Sathwik Pissey Suresh, Nihal Sharma, Kshitij
Gutu, Krystyn Nimmagadda, Deva Harshalai Sahu, Nihar Sosa, David
Mirganiyev, Rufan Patil, Anvai Nitin
Team Nine Team Ten
Sreekumar, Prashant Yada, Venu
Talukder, Dolon Yu, Ming
Tammisetty, Venkata Sai Krishna Zandikarimi, Melika
Wang, Sen Zou, Jincheng
Note: If there are any class roster changes, I will make an announcement in Pace Classes
Chapter 1 Team Assignment Questions
Chapter 2: Database Planning and Database Architecture
Chapter 1 Team Assignment General Comments
Use the weekly chapter instruction doc to answer your questions. Meaning paste
your answers / screenshots into the appropriate sections of the instruction doc and
submit the instruction doc.
Make sure your answers are numbered and in the right order.
Make sure your work is presented well (same font size, type, etc. no blank lines)
Add a title heading: team number, assignment name, team members
File name should include student name or team number
Ex: Student Name - Chapter 3 Laboratory Exercise.docx
Ex: Team Number - Chapter 3 Team Project.docx
Don’t wait until the day the assignment is due to start working on it
Don’t wait until the last half hour to submit
All assignments must be submitted through Pace Classes.
Use the sample project to help you complete your Team Assignments
Chapter 2: Database Planning and
Database Architecture
Chapter 2: Database Planning and Database Architecture
Distinction between Data, Information, Knowledge, and Wisdom
Data is the collection of raw facts / flow of events / transactions that are
recorded into the database.
Information is processed data / data put into context / organizing data
into categories of understanding.
Knowledge is the ability to use information to strategically / ability to
discover patterns, rules, and contexts where the knowledge works.
Wisdom is the collective and individual experience of applying
knowledge to the solution of problems.
Wisdom involves where, when, and how to apply knowledge.
Chapter 2: Database Planning and Database Architecture
Data Sublanguage
The language that is used for defining and processing the Database
Management System (DBMS) is called a data sublanguage and
consists of two parts:
Data Definition Language (DDL) is the syntax to define the
database – Ex: create or modify database objects such as tables,
indexes, users, etc.
Data Manipulation Language (DML) is the syntax used to process
the database – Ex: select, insert, update, delete data from the
database.
Chapter 2: Database Planning and Database Architecture
Benefits of a Conceptual Database Model
The database should be designed in a such a way that it can evolve / change
to meet the future information needs of the organization. This can occur
when the model:
Mirrors the operations of the organization
Flexible enough to allow changes as new information needs arise
Supports many different user views
Independent of physical implementation
Does not depend on the model used by a particular database
management system
Chapter 2: Database Planning and Database Architecture
Stages in Database Design
The staged database design approach is a top-down method that begins with
general statements of needs and progresses to a more detailed consideration of
problems.
1) Analyze user environment – understand current user environment – needs,
requirements, inputs, outputs, reports.
2) Develop conceptual data model – using description from user
environment, designer develops a conceptual model to determine the entities,
attributes, relationships.
3) Choose a DBMS – designer uses the specifications and knowledge to
evaluate database management systems.
4) Develop logical model – Database designer maps the conceptual model to the
database model – defines the structure of the data elements and relationships
between them – defines how the system should be implemented.
Chapter 2: Database Planning and Database Architecture
Steps in a Staged Database Design
5) Develop physical model –designer plans the layout of data, considering
the structures supported by the chosen DBMS and the hardware and
software resources available.
6) Evaluate physical model – designer estimates the performance for all
applications and transactions based on the performances characteristics of
the hardware and software.
7) Perform tuning - if indicated by evaluation, adjustments such as modifying
physical structures or optimizing software can be done to improve
performance.
8) Implement physical model –designer implements the physical design and
the database becomes operational.
Chapter 2: Database Planning and Database Architecture
Data Dictionary
Data Dictionary is a repository of information about the logical
structure of the database.
Collects / stores information about data in central location
Securing agreement on meanings of items
Communicating with users
Identifying inconsistencies
Keeping track of changes to DB structure
Determining impact of changes to DB structure
Identifying sources of responsibility for items
Recording external/logical/physical models & mappings
Recording access control information
Providing audit information
Chapter 2: Database Planning and Database Architecture
Project Management Software
Project Management software provides a set of tools that can be used
to plan and manage a project. The user specifies:
Scope and objectives of the project
Major tasks and phases
Task dependencies
Resources available including personnel
Timelines for completing the tasks and phases of the project
Examples include Gantt Chart or PERT Chart
Chapter 2: Database Planning and Database Architecture
Gantt Chart Example
Project Management software provides a set of tools that can be used
to plan and manage a project. The user specifies:
Scope and objectives of the project
Major tasks and phases
Task dependencies
Resources available including personnel
Timelines for completing the tasks and phases of the project
Examples include Gantt Chart or PERT Chart
Chapter 2: Database Planning and Database Architecture
Responsibilities of Database Administrator
Database Administrator (Continuation from Chapter 1) has many
responsibilities. Major functions include planning, designing,
developing and managing the database.
Planning and Design Phase:
Preliminary planning
Identifying user requirements
Developing and maintaining the data dictionary
Designing conceptual model
Choosing a DBMS
Developing the logical model / writes out database schema
Developing the physical model
Chapter 2: Database Planning and Database Architecture
Responsibilities of Database Administrator (Con’t)
Development Phase
Creating and loading the database
Developing user views
Writing and maintaining documentation
Developing and enforcing data standards
Developing and enforcing application program standards
Developing operating procedures
Conducting user training
Database Management Phase
Ensuring database security
Monitoring performance
Tuning and reorganizing
Keeping current on database improvements
Chapter 2: Database Planning and Database Architecture
Overview of Data Models
A data model is a representation of the content, relationships, and
constraints of the data needed to support the requirements.
Describes the structure of database
Usually includes a type of diagram and specialized vocabulary
Description of the data, relationships, constraints of the data
Most permanent part in database architecture
Corresponds to conceptual level or logical level
Intension or scheme of the database
May change with schema evolution
Chapter 2: Database Planning and Database Architecture
Types of Data Models (Con’t)
Entity-Relationship Model – introduced by Peter Chen – mid-70s
Provides a graphical method of depicting the conceptual structure of
the database.
Entity-Relationship models contain symbols for entities and their
attributes and connected by relationships.
The model is based on identifying:
Entities which are any such distinctly identifiable item (University
database example: students, faculty, courses)
Attributes are the characteristics that describe the entity.
Relationships – are the associations among entities.
Entity sets – set of entities of the same type
Relationship sets – set of relationships of the same type
Chapter 2: Database Planning and Database Architecture
Basic Symbols for Entity- Relationship Diagrams
Chapter 2: Database Planning and Database Architecture
University Database Example
Last week we discussed the University database which consisted of the
following four entities (tables):
Students – each row represents one student.
Classes – each row represents one class.
Faculty – each row represents on faculty.
Enroll– represents the relationship between one student and one
class.
The following Entity-Relationship diagram shows a portion of the
database (Student, Classes, Enroll)
Student - stuId (PK), lastName, firstName, major, and credits.
Classes - classNumber (PK), schedule, and room.
Student and Class entity sets are connected by a relationship set - Enroll
- which tells us which students are enrolled in which classes.
Chapter 2: Database Planning and Database Architecture
Simplified Entity- Relationship Diagram for University Database
Chapter 2: Database Planning and Database Architecture
Types of Data Models (Con’t)
Relational Model – Developed by E.F. Codd.
Successor to network and hierarchical models
Record based model
Logical-level model
Based on mathematical relations
Entities are represented as relations, which are physically
represented as tables
Attributes are represented as columns of those tables.
Some relationships may also be represented as relations or tables.
Does not provide much semantic information such as categorization
of objects, relationships, abstraction, or data constraints.
Chapter 2: Database Planning and Database Architecture
Types of Data Models (Con’t)
Object-Oriented Model – became popular in the 90s.
Includes encapsulation incorporating both data and functions in a
unit
Objects have both state (attributes) and behavior (methods)
Designer defines classes with attributes, methods, and relationships
Class constructor method creates object instances
Each object has a unique object ID
Classes can be grouped into class hierarchies
Database objects have persistence
Both conceptual-level and logical-level model
Unified Modeling Language (UML) class diagrams often used
Chapter 2: Database Planning and Database Architecture
Types of Data Models (Con’t)
Object-Relational Model – developed in the 90s.
It’s a combination of object relation and object oriented model.
Supports objects, classes, inheritance etc.
Support for data types, tabular structures etc.
SQL was extended to create and manipulate the more complex data
types and facilities that this model supports.
Chapter 2: Database Planning and Database Architecture
Large Scale Data Models
Data Warehouses and Big Data environments often have
requirements that are not easily represented in traditional data
models. These environments call for more complex and flexible
models such as:
Star Schema - Resembles a star where you have one fact table and a
number of associated dimension tables.
Central table (fact table) – stores information about observed data
such as individual business transactions.
Dimension tables – stores additional information about attributes
Data Cube
Stores data using Multidimensional arrays
Cube resembles a set of stacked tables
Supports pivoting, rollup, drilldown of data
Chapter 2: Database Planning and Database Architecture
Large Scale Data Models (Con’t)
Semi-structured
Collection of nodes, each with data, with different schemas
Node contains information about the structure
Key-value pairs
Data can be stored in a schema-less fashion using an associative array
of <key,value> pairs. The key is a unique identifier and value is the data
item associated with key.
Big table systems
Data model compromised of a map indexed by a row key, column key,
and timestamp.
Graph-oriented systems
Data is stored in a graph structure consisting of nodes, properties, and
edges. Nodes contain data and edges represent the relationships
between them.
Chapter 2 Questions?
CS 623 – Database Management Systems
Chapter 2 Team Assignment
Step 2.1 - Design the Data Dictionary for Team Project.
Write out a user-oriented data dictionary, consisting of an alphabetical
list of every data item referenced in any report or routine transaction,
and an informal definition for each term.
Example: MemberID Unique identified for a particular member
Step 2.2 – Modify list of assumptions (as needed)
Review the assumptions from Chapter 1 team assignment and
determine if any modifications are necessary.
CS 623 – Database Management Systems
Chapter 2 Team Assignment (Con’t)
Step 2.3 - Write out a cross-reference table, showing what data
items appear on what forms, reports, or transactions.
To construct the cross-reference table, write the names of all forms,
reports, and transactions as column headings across the top of the
table.
Write the items from the data dictionary down the first column,
making a form similar to a spreadsheet.
If a data item on a given row appears on a particular form, report, or
transaction, place a check mark in the cell for the corresponding
column-row intersection.
CS 623 – Database Management Systems
Chapter 2 Team Assignment (Con’t)
Step 2.4 – Create a project management chart using either Gantt
or PERT format.
Divide the major tasks into subtasks.
If the project is being done by a group, assign the subtasks to the
group members.
Indicate dependency of one task on another by drawing arrows.
Establish deadlines (start date, finish date and duration) as
necessary to complete the project on time.
Draw the timelines on the Gantt chart.