Вы находитесь на странице: 1из 59

1

Database Application Development


SSK 3408
CHAPTER 1:
INTRODUCTION

Learning Objectives
2

Define the following key terms:


Data,

database and Database Management


System (DBMS), metadata.

Describe the advantages of using database


approach
Describe components of database
environment
Briefly describe the evolution of database
systems.

Introduction
3

Over the past two decades, there has been


enormous growth in the number and the
importance of database applications.
To store, manipulate and retrieve data in nearly
every type of organization business, health
care, education, government and libraries.
Database technology can be used by an
individual up to large number of users accessing
databases.
The knowledge derived from databases can be
used:

Competitive advantage
Customer support

Introduction ..cont.
4

DataBase Management System (DBMS) is


one of the most powerful tools that can be
used in building business database
application.
Provide many features that represent
significant advantages over traditional
programming methods.
Understand the concepts of database design,
queries and application building will reduce
the time for developing complex applications

Build a Business Application


5

Program

SQL

Design

Program

SQL

Design

Tools:
Database Design
SQL (queries)
Programming

Best:
Spend your time
on design and SQL.

Worst:
Compensate for poor design
and limited SQL with programming.

Basic Concepts and Definitions


6

Database:

A collection of data stored in a standardized format, designed to be


shared by multiple users.

It may be of any size and complexity.

Data:

Stored representation of objects and events that have meaning and


importance in the users environment.

Structured data or Unstructured/Multimedia data

Information:

Data that have been processed in such a way as to increase knowledge


of the person who uses the data.

Databases today may contain either data or information.

Metadata:

Data that describes the properties and context of user data

Example of Data
7

Figure 1-1a Converting Data into Information

Context helps users understand data

Graphical displays turn data into useful


information that managers can use for
decision making and interpretation
9

Descriptions of the properties or characteristics of the


data, including data types, field sizes, allowable
values, and data context
10

Drawbacks of File Processing


Systems
11

Program-Data Dependence
Duplication of Data

Inconsistent data

Limited data sharing


Lengthy development times
Excessive program maintenance

Program-data Dependency
12

13

Problems with Data


Dependency

File description are stored within each application


program that access a given file.
Consequently, any changes to a file structure requires
changes to the file description for all programs that
access to the file.
It is often difficult to locate all programs affected by
such changes and consequently errors are often
introduced when making such changes.
Each application program must have its own
processing routines for reading, inserting, updating
and deleting data.
Lack of coordination and central control.

Duplicate
Data

14

15

Problems with Data


Redundancy

Waste of space to have duplicate data


Causes more maintenance headaches
The biggest problem:
When

data changes in one file, could cause


inconsistencies
Compromises data integrity.

File Processing Method


16

Programs
Payroll
Data Definition
File 1

File 2

Benefits
Data Definition
File A
File 2
File C

Files
Pay History

Benefits
Employee
Employee
Choices

Example of File Method


17

COBOL
File Division
01 Employees
02 ID
02 Name
02 Address
02 Cell Phone
01 Department
02 ID
02 . . .

Employee File
112 Davy Jones 999 Elm Street . . .
113 Peter Smith 101 Oak St . . .

Add to file (e.g. Cell phone)

More programs
File Division
01 Employees
...

Write code to copy employee


file and add empty cell phone
slot.
Find all programs that use
employee file.

Modify file definitions.


Modify reports (as needed)
Recompile, fix new bugs.

Easier: Keep two employee


files?

18

Solution: The Database


Approach
Central repository of shared data
Data is managed by a controlling agent
Stored in a standardized, convenient form.

Therefore, requires a database management


system (DBMS)
Order Filing
System
Invoicing
System
Payroll
System

Central database
DBMS
Contains employee,
order, inventory,
pricing, and
customer data

DBMS
19

A software system that is used to create, maintain, and


provide controlled access to user databases.
It provides systematic method of creating, updating,
storing, and retrieving data in a database.
It enables end users and application programmers to
share data and it enables data to be shared among
multiple application rather than propagated and stored in
new files for every new application.
It also provides facilities for controlling data access,
enforcing data integrity, managing concurrency control,
and restoring a database.

DBMS
20

It provides interface between the various database applications for organizational


users and database
It allows users to share data and to query, access and update the stored data.

21

Elements of Database
Approach

Enterprise Data Model

Relational Databases

Database technology involving tables (relations) representing


entities and primary/foreign keys representing relationships

Use of Internet Technology

Graphical model showing high-level entities and its relationships


used by the organization.

Networks and telecommunications, distributed databases, clientserver and 3-tier architectures

Database Applications

Application programs used to perform database activities (create,


read, update, and delete) for database users

One customer may place


many orders, but each
order is placed by a
single customer
One-to-many
relationship

One order has many order


lines; each order line is
associated with a single order

One-to-many relationship

One product can be in many


order lines, each order line
refers to a single product
One-to-many relationship

Therefore, one order involves


many products and one product
is involved in many orders
Many-to-many relationship

Relationships established in special columns that provide links between tables

Client/server
system
architecture

Application program functions:


inserting new data,
updating existing data,
deleting existing data,
reading data for display

29

30

The Range of Database


Applications

Two-Tier Client-Server
31

Client manages main business and data


processing logic and user interface.
Server manages and controls access to
database.

Pearson Education Limited, 2004

Two-Tier Client-Server
32

Pearson Education Limited, 2004

Three-Tier C-S Architecture


33

User interface layer runs on client.


Business logic and data processing layer
middle tier runs on a server (application
server).
DBMS stores data required by the middle
tier. This tier may be on a separate server
(database server).

Pearson Education Limited, 2004

Three-Tier C-S Architecture


34

Pearson Education Limited, 2004

35

An Example of Personal
Database

An Example of Workgroup
Database
36

An Example of Enterprise Data


Warehouse
37

Advantages of Database Approach


38

Program-data independence

Database design goal to integrate data files


into a single, logical structure.

By eliminating redundancy, reduce the


opportunities for inconsistencies.

A database is designed to shared corporate


resource. Authorized internal and external
users are granted permission to use the
database.

Increased productivity of application


development

New development without worry the file


design

DBMS provides high level productivity tools

Through Integrity constraint

Improved data accessibility and


responsiveness

Such as naming convention, data


quality standard and uniform
procedures for accessing,
updating and protecting data

Improved data quality

Improved data sharing

Improved data consistency

Data-description are stored in repository not


inside the application program

Enforcement of standards

Minimal data redundancy

Without the knowledge of


programming experience can
retrieve and display data, even it
crosses departmental boundaries.

Reduce program maintenance

Costs and Risks of Database


Approach
39

Components of Database
Environment
40

CASE Tools computer-aided software engineering


Repository centralized storehouse of metadata
Database Management System (DBMS) software for
managing the database
Database storehouse of the data
Application Programs software using the data
User Interface languages, menus, and other facilities by
which users interact with various system components such as
CASE tools, DBMS etc.
Data/Database Administrators personnel responsible for
maintaining the database
System Developers personnel responsible for designing
databases and software
End Users people who use the applications and databases

Components of Database
Environment
41

Hardware
PC, Mainframe, Network
computer

Software
Programming Language

Data

Procedures
Instructions and rules

People
Data and Database
Administrator, System
Developer, End-user

42

Database Management
Approach
Data is most important

Access through DBMS

All Data

Data defined first


Standard format

Queries, Reports, Forms


Application Programs
3GL Interface

DBMS
Program1

Data independence

Change data definition without changing


code
Alter code without changing data
Move/split data without changing code

Queries
Program2
Reports

Modifying Data with DBMS


43

Add cell number to


employee table

Open table definition


Add data element
If desired, modify reports

Use report writer


No programming

Existing reports, queries,


code will all run as before
with no changes.

Field Name

Data Type

Description

EmployeeID
TaxpayerID
LastName
FirstName
...
Phone
...

Number
Text
Text
Text

Autonumber..
Federal ID

CellPhone

Text

Text

Cellular . . .

DBMS Features/Components
44

Database engine
Storage,

retrieval,

update
Enforce business
rules
Performance and
ability to handle
large problems

Data dictionary
Query Processor

Utilities
Security
Report writer
Forms generator
(input screens)
Application
generator
Communications
3GL Interface

DBMS Components
45

All Data

Communication
Network

Database Engine
Data Dictionary
Security

3GL
Connector

Query Processor

Form
Report
Builder
Writer
Application
Generator

Program

DBMS Engine, Security, Utilities


46

Product
ItemID Description
Order
887
Dog food
OrderID ODate
Customer
946
Cat food
9874
3-3-97
CustomerID Name
9888
3-9-97
1195
Jones
2355
Rojas

Data
Tables

Product
Customer
ItemID
Integer, Unique
CustomerID
Description Integer,
Text, 100
Unique
char
Name
Text, 50 char
User Identification
Security
Access Rights
Backup and
Recovery

Utilities

Database
Engine
Data
Dictionary

Concurrency and
Lock Manager
Administration

DBMS Query Processor


47

All Data
Database Engine
Data Dictionary
Query Processor

DBMS Report Writer


48

All Data
Database Engine
Data Dictionary
Query Processor
Report Writer

Report
Format
and Query

Report Writer (Oracle)


49

DBMS Input Form


50

All Data
Database Engine
Data Dictionary
Query Processor

Form Builder

Input
Form
Design

Example of Commercial DBMS


51

Oracle
Ingres
Informix (Unix)
DB2, SQL/DS (IBM)
Access (Microsoft)
SQL Server (Microsoft +)
Many older (Focus, IMS, ...)
Many limited PC (dBASE, Paradox, )

Significance of using DBMS


52

Applications change a lot, but same data.


Need for ad hoc questions and queries.
Need to reduce development times.
Need shared data.
Improve quality of data.
Enable users to do more development.

Evolution of Database Systems


53

Flat files - 1960s - 1980s


Hierarchical 1970s - 1990s
Network 1970s - 1990s
Relational 1980s - present
Object-oriented 1990s - present
Object-relational 1990s - present
Data warehousing 1980s present
Web-enabled 1990s - present

Hierarchical Database
54

Customers
Customer
Order
Items Ordered
Orders

Items
Item Description
998 Dog Food
764 Cat Food

Quantity
12
11

To retrieve data, you


must start at the top
(customer). When you
retrieve a customer, you
retrieve all nested data.

Network Database
55

Entry point

Customer

Order

Items
Ordered

Items

Entry point

Relational Database
56

Customer(CustomerID, Name,
Order(OrderID, CustomerID, OrderDate,
ItemsOrdered(OrderID, ItemID, Quantity,
Items(ItemID, Description, Price,

Data is stored in separate sets of data


The tables are not physically connected.
Instead, data is linked between column
Ex: retrieve order, database can match customer and order
by customerID

Object-Oriented Database
57

Order
OrderID
CustomerID

NewOrder
DeleteOrder

OrderItem
OrderID
ItemID

OrderItem
DropOrderItem

Customer
CustomerID
Name

Add Customer
Drop Customer
Change Address

Item
ItemID
Description

New Item
Sell Item
Buy Item

Government
Customer
Commercial
ContactName
Customer

ContactPhone
ContactName
Discount,
ContactPhone

NewContact
NewContact

Object 3 component
- name
- a set of properties or attributes
- a set of methods or functions

Reference:
58

Hoffer, J.A, Ramesh, V., Topi, H. 2011. Modern


Database Management. 10th Edition, Pearson
Education Limited.
Post, G.V. 2005. Database Management
Systems: Designing and Building Business
Application, 3rd Edition, McGraw Hill.

Summary
59

In this chapter you learned how to:


Define

the following key terms:

Data,

database, Information, Metadata and Database


Management System (DBMS).

Describe

the advantages of using database

approach
Describe components of database environment
Briefly describe the evolution of database
systems.

Вам также может понравиться