Anda di halaman 1dari 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

Tools: Database Design SQL (queries) Programming


Program

Design

Design

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

Program

SQL

Best: Spend your time on design and SQL.

SQL

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. Stored representation of objects and events that have meaning and importance in the users environment. Structured data or Unstructured/Multimedia data 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. Data that describes the properties and context of user data

Data:

Information:

Metadata:

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 . . . More programs File Division 01 Employees ...

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

Add to file (e.g. Cell phone)

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

Graphical model showing high-level entities and its relationships used by the organization. Database technology involving tables (relations) representing entities and primary/foreign keys representing relationships Networks and telecommunications, distributed databases, clientserver and 3-tier architectures Application programs used to perform database activities (create, read, update, and delete) for database users

Relational Databases

Use of Internet Technology

Database Applications

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

Enforcement of standards

Data-description are stored in repository not inside the application program

Minimal data redundancy

Such as naming convention, data quality standard and uniform procedures for accessing, updating and protecting data

Database design goal to integrate data files into a single, logical structure.

Improved data quality

Improved data consistency

Through Integrity constraint

By eliminating redundancy, reduce the opportunities for inconsistencies.

Improved data accessibility and responsiveness

Improved data sharing

A database is designed to shared corporate resource. Authorized internal and external users are granted permission to use the database.

Without the knowledge of programming experience can retrieve and display data, even it crosses departmental boundaries.

Reduce program maintenance

Increased productivity of application development

New development without worry the file design DBMS provides high level productivity tools

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

Data defined first Standard format

All Data

Access through DBMS

Queries, Reports, Forms Application Programs 3GL Interface

DBMS
Program1 Queries Program2 Reports

Data independence

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

Modifying Data with DBMS


43

Add cell number to employee table

Field Name EmployeeID TaxpayerID LastName FirstName ... Phone ... CellPhone

Data Type Number Text Text Text Text

Description Autonumber.. Federal ID

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.

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


Query Processor

3GL Connector

Form Report Builder Writer Application Generator

Program

DBMS Engine, Security, Utilities


46

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

Data Tables Database Engine


Data Dictionary

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

Concurrency and Lock Manager Administration

Utilities

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 To retrieve data, you must start at the top (customer). When you retrieve a customer, you retrieve all nested data.

Items
Item Description 998 Dog Food 764 Cat Food Quantity 12 11

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

Customer
CustomerID Name Add Customer Drop Customer Change Address

OrderItem
OrderID ItemID OrderItem DropOrderItem

Item
ItemID Description New Item Sell Item Buy Item

ContactPhone ContactName Discount, ContactPhone NewContact NewContact

Government Customer Commercial ContactName Customer

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
Data,

the following key terms:

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.

Anda mungkin juga menyukai