CpE 320 Database Management Systems
Chapter I: The Database Environment and
Development Process
Objectives
Basic Concepts and Definitions
Objectives
Concisely define key terms
Name several limitations of conventional
file processing systems
List and describe nine components of a
typical database environment
Explain at least ten advantages of the
database approach
Describe the life cycle of a systems
development project
Identify several costs and risks of the
database approach
Explain prototyping and agile-development
approaches to database and application
development
Basic Concepts and Definitions
Database
Basic Concepts and Definitions
An organized collection of logically related data
Data
Stored representations of objects and events
that have meaning and importance in the users
environment
Structured data
Numeric, character, and date types
Unstructured data
Multimedia data
Documents, images, videos, maps
Structured data
Unstructured data
CpE 320 Database Management Systems
Basic Concepts and Definitions
Example: list of facts
Information
Data that have been processed in such a way as
to increase the knowledge
Converting data to information
Baker, Kenneth D.
153564573
Doyle, Joan E.
547247536
Finkle, Clive R.
634645745
Lewis, John C.
542632165
McFerran, Debra R.
346462462
Sineros, Michael
534645745
Baker, Kenneth D.
153564573
Doyle, Joan E.
547247536
Finkle, Clive R.
634645745
Lewis, John C.
542632165
McFerran, Debra R.
346462462
Sineros, Michael
534645745
Converting data to information
List of facts
Converting data to information
Data in context
Basic Concepts and Definitions
Metadata
Data that describe the properties or
characteristics of end-user data and the context
of those data
Metadata describe the properties of data but
are separate from that data
Summarized data
CpE 320 Database Management Systems
Basic Concepts and Definitions
Basic Concepts and Definitions
Metadata describing data context
Metadata
Source of data
Data about data
Location of data
Data that describes the properties of data
Ownership
Data names
Usage
Definitions
Length or size
Allowable values
Data
Item
Name
Type
Course
Alphanumeric 30
Section
Integer
Metadata
Length Min Max Description
1
Source
Course ID and name Academic Unit
Section number
Registrar
Semester Alphanumeric 10
Semester and year
Registrar
Name
Alphanumeric 30
Student name
Student IS
ID
Integer
Student ID (SSN)
Student IS
Major
Alphanumeric 4
Student major
Student IS
GPA
Decimal
0.0
4.0
Traditional File Processing Systems
Student grade point
Academic Unit
average
Example Metadata
Traditional File Processing Systems
Disadvantages of File Processing
Systems
Program-Data Dependence
Duplication of Data
Limited Data Sharing
Old file processing systems at Pine Valley Furniture Company
CpE 320 Database Management Systems
Disadvantages of File Processing
Systems
Lengthy Development Times
The Database Approach
Excessive Program Maintenance
The Database Approach
Data model
Graphical systems used to capture the nature
and relationships among data
The Database Approach
Entity
A person, a place, an object, and event, or a
concept in the user environment about which
the organization wishes to maintain data
A typical data model is made up of entities,
attributes, and relationships
The most common data modeling
representation is the entity-relationship model
The Database Approach
Relational Database
A database that represents data as a collection
of tables in which all data relationships are
represented by common values in related
tables.
Relationships can be one-to-many (1:M) or
many-to-many (M:N)
Enterprise data model
Project data model
CpE 320 Database Management Systems
The Database Approach
Database Management Systems
A software system that is used to create,
maintain, and provide controlled access to user
databases
Purpose: to provide a systematic method of
creating, updating, storing, and retrieving the
data stored in a database
Enterprise model for Pine Valley Furniture Company
Advantages of the Database Approach
Advantages of the Database Approach
Program-Data Independence
Improved Data Sharing
Planned Data Redundancy
Increased Productivity of Application
Development
Improved Data Consistency
Enforcement of Standards
Advantages of the Database Approach
Improved Data Quality
Improved Data Accessibility and
Responsiveness
Assignment
Why do we need to understand Database
Management Systems?
Contrast the following terms:
data; information
entity; enterprise data model
Reduced Program Maintenance
Improved Decision Support
systems development life cycle; prototyping
CpE 320 Database Management Systems
Costs and Risks of the Database Approach
New, Specialized Personnel
Installation and Management Cost and
Complexity
Conversion Costs
Costs and Risks of the Database Approach
Costs and Risks of the Database
Approach
Need for Explicit Backup and Recovery
Organizational Conflict
Agreement on data definitions and ownership
Components of the Database Environment
Responsibilities for accurate data maintenance
Conflicts on data formats and coding
Components of the Database Environment
Computer-aided software engineering
(CASE) tools
Software tools that provide automated support
for some portion of the systems development
process.
Components of the Database Environment
CpE 320 Database Management Systems
Components of the Database Environment
Repository
Components of the Database Environment
A centralized knowledge base of all data
A software system that is used to create,
definitions, data relationships, screen and
report formats, and other system components
A repository contains an extended set of
maintain, and provide controlled access to user
databases
metadata important for managing databases as
well as other components of an information
system
Components of the Database Environment
Application Programs
Components of the Database Environment
Includes menus and other facilities by which
users interact with various system components
Data and database administrators
Persons who are responsible for the overall
create and maintain the database and provide
to users
User Interface
Database
An organized collection of logically related data
Computer-based application programs used to
DBMS
management of data resources in an
organization
System Developers
Persons such as systems analysts and
programmers who design new application
programs
Components of the Database Environment
End Users
Persons who add, delete, and modify data in the
database and request or receive information
from it
The Range of Database Applications
CpE 320 Database Management Systems
The Range of Database Applications
Personal Databases
The Range of Database Applications
Personal Databases
Provide the user with ability to manage (store,
Two-Tier Client/Server Databases
Multitier Client/Server Databases
update, delete, and retrieve) small amounts of
data in an efficient manner
Information can be easily transferred from one
device to the other
Data cannot be easily shared with other users
The Range of Database Applications
Two-Tier Client/Server Databases
Used by a workgroup who collaborate on similar
projects or applications
Data can be shared among the group
Computers are linked by means of a network
Two-tier database with local area network
The Range of Database Applications
Two-Tier Client/Server Databases
Each computer has a copy of a specialized
application (client)
The database and the DBMS are stored on a
central device (server)
The Range of Database Applications
Two-Tier Client/Server Databases
Issues
Data management
Data security
Data integrity
CpE 320 Database Management Systems
The Range of Database Applications
Multitier Client/Server Databases
Intended to support a group of people larger
than a workgroup
Overcome the limitations of Two-Tier
Client/Server Database
Amount of functionality that needs to be
programmed on the users computer
Multitier database with local area network
The Range of Database Applications
Multitier Client/Server Databases
Application layer/Web server layer contains the
business logic required to accomplish the
business transactions requested by the users.
The Database Development Process
Separates the development of the database and
the modules that maintain the data from the
information systems
The Database Development Process
Enterprise data modeling
The first step in database development, in
which the scope and general contents of
organizational databases are specified
The Database Development Process
Enterprise data modeling
Describe the data needed at a very high level of
abstraction
Plan one or more database development
projects
Review current systems
Analyze the nature of the business areas to be
supported
CpE 320 Database Management Systems
Systems Development Life Cycle
Systems development life cycle (SDLC)
The traditional methodology used develop,
maintain, and replace information systems
Systems Development Life Cycle
Systems Development Life Cycle
Planning
Planning
Purpose
To develop a preliminary understanding of a
Maintenance
Implementation
business situation and how information systems
might help solve a problem or make an
opportunity possible
Analysis
Design
Systems Development Life Cycle (SDLC)
Systems Development Life Cycle
Planning
Enterprise modeling
Analyze current data processing
Analyze the general business functions and their
database needs
Justify need for new data and databases in
support of business
Systems Development Life Cycle
Planning
Conceptual data modeling
Identify scope of database requirements for
proposed information system
Analyze overall data requirements for business
function(s) supported by database
10
CpE 320 Database Management Systems
Systems Development Life Cycle
Analysis
Systems Development Life Cycle
Purpose
Analysis
Conceptual data modeling
To analyze the business situation thoroughly to
Develop preliminary conceptual data model,
determine requirements, to structure those
requirements, and to select among competing
system features
including entities and relationships
Compare preliminary conceptual data model with
enterprise data model
Develop detailed conceptual data model,
including all entities, relationships, attributes, and
business rules
Systems Development Life Cycle
Analysis
Systems Development Life Cycle
Conceptual data modeling
Purpose
Develop detailed conceptual data model,
To elicit and structure all information
including all entities, relationships, attributes, and
business rules
Make conceptual data model consistent with
other models of information system
Populate repository with all conceptual database
specifications
Systems Development Life Cycle
Design
Logical database design
Design
requirements
To develop all technology and organizational
specifications
Systems Development Life Cycle
Design
Physical database design and definition
Analyze in detail the transactions, forms, displays,
Define database to DBMS
and inquiries (database views) required by the
business functions supported by the database
Integrate database views into conceptual data
model
Identify data integrity and security requirements,
and populate repository
Decide on physical organization of data
Design database processing programs
11
CpE 320 Database Management Systems
Systems Development Life Cycle
Implementation
Systems Development Life Cycle
Purpose
Implementation
Database Implementation
To write programs, build databases, test and
Code and test database processing programs
install the new system, train users, and finalize
documentation
Complete database documentation and training
materials
Install database and convert data from prior
systems
Systems Development Life Cycle
Maintenance
Purpose
Systems Development Life Cycle
Maintenance
Database maintenance
To monitor the operation and usefulness of the
Analyze database and database applications to
system, and to repair and enhance the system
ensure that evolving information requirements
are met
Tune database for improved performance
Fix errors in database and database applications
and recover database when it is contaminated
Assignment
In the three-tiered database architecture, is
it possible for there to be no database on a
particular tier? If not, why? If yes, give an
example.
Name the five phases of the traditional
systems development life cycle, and explain
the purpose of each phase.
How are relationships between tables
expressed in a relational database?
Alternative Information Systems Development Approaches
12
CpE 320 Database Management Systems
Alternative Information Systems
Development Approaches
Alternative approach to the SDLC
Alternative Information Systems
Development Approaches
Prototyping
An iterative process of systems development in
which requirements are converted to a working
system that is continually revised through close
work between analysts and users.
Uses Rapid Application Development (RAD)
methods
The Prototyping Methodology
Conceptual data modeling
Analyze requirements
Develop preliminary data model
The Prototyping Methodology
The Prototyping Methodology
Logical database design
The Prototyping Methodology
Physical database design and definition
Analyze requirements in detail
Define new database contents to DBMS
Integrate database views into conceptual data
Decide on physical organization for new data
model
Design database processing programs
13
CpE 320 Database Management Systems
The Prototyping Methodology
Database implementation
The Prototyping Methodology
Code database processing
Database maintenance
Analyze database to ensure it meets application
needs
Install new database contents, usually from
Fix errors in database
existing data sources
Tune database for improved performance
The Prototyping Methodology
Database implementation and
maintenance activities are repeated as new
prototype are produced
Security and integrity controls are minimal
The Prototyping Methodology
Documentation is delayed until the end of
the project
User training occurs from hands-on use
Agile Software Development
Agile software development
An approach to database and software development
that emphasizes
Individuals and interactions over processes and tools
Working software over comprehensive documentation
Customer collaboration over contract negotiation, and
Responding to change over following a plan
14