92
数据库系统概论讲义,第7章 数据库设计,20175 数据库系统概论 孟小峰 中国人民大学 [email protected] http://idke.ruc.edu.cn 信息学院2015级,2017-2~6,教2221

数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

Embed Size (px)

Citation preview

Page 1: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

数据库系统概论

孟小峰中国人民大学

[email protected]://idke.ruc.edu.cn

信息学院2015级,2017-2~6,教2221

Page 2: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

数据库系统概论An Introduction to Database Systems

第七章数据库设计

2017, 5, 7

Page 3: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

第七章 数据库设计

7.1 数据库设计概述

7.2 需求分析

7.3 概念结构设计

7.4 逻辑结构设计

7.5 数据库的物理设计

7.6 数据库实施与维护

7.7 小结

Page 4: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

数据库设计概述

• 广义:数据库及其应用系统的设计。

• 狭义:设计数据库本身,即设计数据库的各级模式并建立数据库,这是数据库应用系统设计的一部分。

• 数据库设计的一般定义:

–是指对于一个给定的应用环境,构造(设计)优化的数据库逻辑模式和物理结构,并据此简历数据库及其应用系统,使之能够有效地存储和管理数据,满足各种用户的应用需求,包括信息管理要求和数据操作要求。

4

Page 5: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

5

Database System Development

Lifecycle

• Database planning

• System definition

• Requirements collection and analysis

• Database design

• DBMS selection (optional)

Page 6: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

6

Database System Development

Lifecycle

• Application design

• Prototyping (optional)

• Implementation

• Data conversion and loading

• Testing

• Operational maintenance

Page 7: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

7

Stages of the Database System

Development Lifecycle

Case Study

DreamHome

Page 8: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

DreamHome案例简介• DreamHome specializes in intermediating property rentals

between owners and clients. • Currently 2000 staff working in 100 branches.

– Types of staff: Manager, Supervisor, Assisstant.

• Property owners register their properties at the nearest branch.• To ensure maximum return for both the owner, the company,

and the clients, DreamHome conducts:– Interviewing prospective renters(clients),– Organizing views of properties by the clients,– Advertising the properties,– Negotiating the lease– Collection of rent.

8

Page 9: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

9

Database Planning

• Management activities that allow stages

of database system development lifecycle

to be realized as efficiently and

effectively as possible.

• Must be integrated with overall IS

strategy of the organization.

Page 10: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

10

Database Planning – Mission

Statement

• Mission statement for the database project

defines major aims of database application.

• Mission statement helps clarify purpose of

the database project and provides clearer

path towards the efficient and effective

creation of required database system.

Page 11: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

11

Mission Statement for DreamHome Database System

Page 12: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

12

Database Planning – Mission

Objectives

• Once mission statement is defined, mission objectives are defined.

• Each objective should identify a particular task that the database must support.

• May be accompanied by some additional information that specifies the work to be done, the resources with which to do it, and the money to pay for it all.

Page 13: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

13

Mission Objectives for DreamHome Database System

Page 14: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

14

Database Planning

• Database planning should also include

development of standards that govern:

– how data will be collected,

– how the format should be specified,

– what necessary documentation will be needed,

– how design and implementation should proceed.

Page 15: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

15

System Definition

• Describes scope and boundaries of database

system and the major user views.

• User view defines what is required of a

database system from perspective of:

– a particular job role (such as Manager or

Supervisor) or

– enterprise application area (such as marketing,

personnel, or stock control).

Page 16: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

16

System Definition

• Database application may have one or more user views.

• Identifying user views helps ensure that no major users of the database are forgotten when developing requirements for new system.

• User views also help in development of complex database system allowing requirements to be broken down into manageable pieces.

Page 17: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

17

Representation of a Database System

with Multiple User Views

Page 18: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

18

System Boundary for DreamHome Database System

Page 19: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

19

Requirements Collection and Analysis

• Process of collecting and analyzing

information about the part of

organization to be supported by the

database system, and using this

information to identify users’

requirements of new system.

Page 20: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

DreamHome:Requirements

Collection and Analysis

• Client registration and receive weekly report with a list of properties for rent from DreamHome.

• Clients may require to view one or more properties from the list and comment afterwards.

• Properties proved difficult to rent our are advertised in newspapers.

• A member of staff draws up a lease between a client and a property.

20

Page 21: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

21

Staff registration form

Page 22: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

22

Staff listing at a branch

Page 23: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

23

Property registration form

Page 24: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

24

Client registration form

Page 25: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

25

Weekly report of properties available for rent

Page 26: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

26

Property viewing report

Page 27: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

27

Lease between a client and a property

Page 28: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

28

Requirements Collection and Analysis

• Information is gathered for each major user view including:– a description of data used or generated;

– details of how data is to be used/generated;

– any additional requirements for new database system.

• Information is analyzed to identify requirements to be included in new database system. Described in the requirements specification.

Page 29: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

29

Major User Views for DreamHome Database System

Page 30: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

30

Cross-reference of user views with main types of data used by

each

Page 31: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

31

Requirements Collection and Analysis

• Another important activity is deciding how to manage the requirements for a database system with multiple user views.

• Three main approaches:

– centralized approach;

– view integration approach;

– combination of both approaches.

Page 32: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

32

Requirements Collection and Analysis

• Centralized approach

– Requirements for each user view are merged

into a single set of requirements.

– A data model is created representing all user

views during the database design stage.

Page 33: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

33

Centralized Approach to Managing

Multiple User Views

Page 34: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

34

Requirements Collection and Analysis

• View integration approach

– Requirements for each user view remain as

separate lists.

– Data models representing each user view are

created and then merged later during the

database design stage.

Page 35: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

35

Requirements Collection and Analysis

• Data model representing single user view

(or a subset of all user views) is called a

local data model.

• Each model includes diagrams and

documentation describing requirements

for one or more but not all user views of

database.

Page 36: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

36

Requirements Collection and Analysis

• Local data models are then merged at a

later stage during database design to

produce a global data model, which

represents all user views for the database.

Page 37: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

37

View Integration Approach to

Managing Multiple User Views

Page 38: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

The DreamHome case study –requirement collection and analysis

• User requirement specification (Appx. A)

– Data requirement and examples of how data is used for each view

• System specification (pp. 337 – 340)

– Initial database size

– Database rate of growth

– The type and avg number of record searches

– Performance

– ………

38

Page 39: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

39

Database Design

• Process of creating a design for a

database that will support the

enterprise’s mission statement and

mission objectives for the required

database system.

Page 40: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

40

Database Design

• Three phases of database design:

– Conceptual database design

– Logical database design

– Physical database design.

Page 41: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

41

Conceptual Database Design

• Process of constructing a model of the data used in an enterprise, independent of all physical considerations.

• Data model is built using the information in users’ requirements specification.

• Conceptual data model is source of information for logical design phase.

Page 42: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,542

EER Diagram of Branch View of DreamHome

Page 43: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

43

Logical Database Design

• Process of constructing a model of the

data used in an enterprise based on a

specific data model (e.g. relational), but

independent of a particular DBMS and

other physical considerations.

• Conceptual data model is refined and

mapped on to a logical data model.

Page 44: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,544

Extract from Data Dictionary for Staff View of

DreamHome Showing Description of Attributes

Page 45: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,545

Review of Normalization (UNF to BCNF)

Page 46: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,546

Review of Normalization (UNF to BCNF)

Page 47: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,547

Review of Normalization (UNF to BCNF)

Page 48: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,548

Review of Normalization (UNF to BCNF)

Page 49: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,549

Relations for the Staff View of DreamHome

Page 50: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,550

Referential Integrity Constraints for

Relations in Staff View of DreamHome

Page 51: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,551

Relations for the Branch View of DreamHome

Page 52: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,552

Global Relation Diagram for DreamHome

Page 53: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

53

Physical Database Design

• Process of producing a description of the database implementation on secondary storage.

• Describes base relations, file organizations, and indexes used to achieve efficient access to data. Also describes any associated integrity constraints and security measures.

• Tailored to a specific DBMS system.

Page 54: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,554

Cross-Referencing Transactions and Relations

Page 55: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,555

Example Transaction Analysis Form

Page 56: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

56

Three-Level ANSI-SPARC

Architecture and Phases of Database

Design

Page 57: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

57

Criteria to Produce an Optimal

Data Model

Page 58: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

58

DBMS Selection

• Selection of an appropriate DBMS to support the database system.

• Undertaken at any time prior to logical design provided sufficient information is available regarding system requirements.

• Main steps to selecting a DBMS:– define Terms of Reference of study;

– shortlist two or three products;

– evaluate products;

– recommend selection and produce report.

Page 59: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

59

DBMS Evaluation Features

Page 60: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

60

Example - Evaluation of DBMS

Product

Page 61: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

61

Application Design

• Design of user interface and application

programs that use and process the database.

• Database design and application design are

parallel activities.

• Includes two important activities:

– transaction design;

– user interface design.

Page 62: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

62

Application Design - Transactions

• An action, or series of actions, carried

out by a single user or application

program, which accesses or changes

content of the database.

• Should define and document the high-

level characteristics of the transactions

required.

Page 63: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

63

Application Design - Transactions

• Important characteristics of transactions:

– data to be used by the transaction;

– functional characteristics of the transaction;

– output of the transaction;

– importance to the users;

– expected rate of usage.

• Three main types of transactions: retrieval, update, and mixed.

Page 64: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

64

Prototyping

• Building working model of a database system.

• Purpose

– to identify features of a system that work well, or

are inadequate;

– to suggest improvements or even new features;

– to clarify the users’ requirements;

– to evaluate feasibility of a particular system design.

Page 65: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

65

Implementation

• Physical realization of the database and application designs.

– Use DDL to create database schemas and empty database files.

– Use DDL to create any specified user views.

– Use 3GL or 4GL to create the application programs. This will include the database transactions implemented using the DML, possibly embedded in a host programming language.

Page 66: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

66

Data Conversion and Loading

• Transferring any existing data into new database and converting any existing applications to run on new database.

• Only required when new database system is replacing an old system. – DBMS normally has utility that loads existing files

into new database.

• May be possible to convert and use application programs from old system for use by new system.

Page 67: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

67

Testing

• Process of running the database system with intent of finding errors.

• Use carefully planned test strategies and realistic data.

• Testing cannot show absence of faults; it can show only that software faults are present.

• Demonstrates that database and application programs appear to be working according to requirements.

Page 68: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

68

Testing

• Should also test usability of system.

• Evaluation conducted against a usability specification.

• Examples of criteria include:– Learnability;

– Performance;

– Robustness;

– Recoverability;

– Adaptability.

Page 69: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

69

Operational Maintenance

• Process of monitoring and maintaining database system following installation.

• Monitoring performance of system. – if performance falls, may require tuning or

reorganization of the database.

• Maintaining and upgrading database application (when required).

• Incorporating new requirements into database application.

Page 70: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

70

CASE Tools

• Support provided by CASE toolsinclude:

- data dictionary to store information about database system’s data;

- design tools to support data analysis;

- tools to permit development of corporate data model, and conceptual and logical data models;

- tools to enable prototyping of applications.

Page 71: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

71

CASE Tools

• Provide following benefits:

– Standards;

– Integration;

– Support for standard methods;

– Consistency;

– Automation .

Page 72: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

72

CASE Tools and Database System

Development Lifecycle

Page 73: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

73

Data Administration and Database

Administration

• The Data Administrator (DA) and Database

Administrator (DBA) are responsible for

managing and controlling the corporate

data and corporate database, respectively.

• DA is more concerned with early stages of

database system development lifecycle and

DBA is more concerned with later stages.

Page 74: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

74

Data Administration

• Management of data resource including:

– database planning,

– development and maintenance of standards,

policies and procedures, and conceptual and

logical database design.

Page 75: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

75

Data Administration

• Management of data resource including:

– database planning,

– development and maintenance of standards,

policies and procedures, and conceptual and

logical database design.

Page 76: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

76

Database Administration

• Management of physical realization of a

database system including:

– physical database design and

implementation,

– setting security and integrity controls,

– monitoring system performance, and

reorganizing the database.

Page 77: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

Fact-finding技术

Page 78: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

What, who and when about fact-finding

• (what) Fact-finding: the formal process of using techniques such as interviews and questionnaires to collect facts about systems, requirements and preferences.

• (who) Database developers: a person or group of people responsible for the analysis , design, and implementation of a database system.

• (when) particularly crucial to the early stages of the lifecycle (planning, system definition, requirement collection and analysis), Useful in later stages.

78

Page 79: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

79

Examples of data captured and documentation produced

during the database application lifecycle

Page 80: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

80

Fact-Finding Techniques

• A database developer normally uses several

fact-finding techniques during a single

database project including:

– examining documentation

– interviewing

– observing the organization in operation

– research

– questionnaires

Page 81: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

81

Examining documentation

• Can be useful

– to gain some insight as to how the need for a

database arose.

– to identify the part of the organization associated

with the problem.

– To understand the current system.

Page 82: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

82

Examples of types of documentation that

should be examined

Page 83: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

83

Interviewing

• Most commonly used, and normally most

useful, fact-finding technique. Enables

collection of information from individuals face-

to-face.

• Objectives include finding out facts, verifying

facts, clarifying facts, generating enthusiasm,

getting the end-user involved, identifying

requirements, and gathering ideas and opinions.

Page 84: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

84

Advantages and disadvantages of

interviewing

Page 85: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

85

Interviewing

• There are two types of interviewsunstructured and structured.

• Open-ended questions allow the interviewee to respond in any way that seems appropriate.

• Closed-ended questions restrict answers to either specific choices or short, direct responses.

Page 86: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

86

Observing the Organization in

Operation

• An effective technique for understanding a system.

• Possible to either participate in, or watch, a person perform activities to learn about the system.

• Useful when validity of data collected is in question or when the complexity of certain aspects of the system prevents a clear explanation by the end-users.

Page 87: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

87

Advantages and disadvantages of using

observation

Page 88: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

88

Research

• Useful to research the application and problem.

• Use computer trade journals, reference books, and the Internet (including user groups and bulletin boards).

• Provide information on how others have solved similar problems, plus whether or not software packages exist to solve or even partially solve the problem.

Page 89: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

89

Advantages and disadvantages of

using research

Page 90: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

90

Questionnaires

• Conduct surveys through questionnaires,

which are special-purpose documents that

allow facts to be gathered from a large

number of people while maintaining some

control over their responses.

• There are two types of questions, namely

free-format and fixed-format.

Page 91: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

91

Advantages and disadvantages of using

questionnaires

Page 92: 数据库系统概论 - idke.ruc.edu.cnidke.ruc.edu.cn/xfmeng/course/Introduction to Database System... · •DreamHome specializes in intermediating property rentals between owners

数据库系统概论讲义,第7章数据库设计,2017,5

习题七

• 习题1-5

• 阅读:Database System:A Practical Approach to Design, Implementation, and Management

西方社会呈“团体格局”;中国社会呈“差序格局”

数据库呈“团体格局”;大数据呈“差序格局”