数据库清华版6章数据库设计.ppt
《数据库清华版6章数据库设计.ppt》由会员分享,可在线阅读,更多相关《数据库清华版6章数据库设计.ppt(286页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第6章章 数据库设计数据库设计6.1 数据库设计的步骤数据库设计的步骤6.2 需求分析需求分析6.3 概念结构设计概念结构设计6.4 逻辑结构设计逻辑结构设计6.5 数据库的物理设计数据库的物理设计6.6 数据库实施数据库实施6.7 数据库运行与维护数据库运行与维护第第6章章 数据库设计数据库设计6.1 数据库设计的步骤数据库设计的步骤6.2 需求分析需求分析6.3 概念结构设计概念结构设计6.4 逻辑结构设计逻辑结构设计6.5 数据库的物理设计数据库的物理设计6.6 数据库实施数据库实施6.7 数据库运行与维护数据库运行与维护6.1 数据库设计的步骤数据库设计的步骤l数据库设计的准备工作数
2、据库设计的准备工作l数据库设计的过程数据库设计的过程一、数据库设计的准备工作一、数据库设计的准备工作l选定参加设计的人员选定参加设计的人员数据库分析设计人员数据库分析设计人员用户用户程序员程序员操作员操作员数据库设计的准备工作数据库设计的准备工作(续续)l1.数据库分析设计人员数据库分析设计人员数据库设计的核心人员数据库设计的核心人员自始至终参与数据库设计自始至终参与数据库设计其水平决定了数据库系统的质量其水平决定了数据库系统的质量数据库设计的准备工作数据库设计的准备工作(续续)l2.用户用户在数据库设计中也是举足轻重的在数据库设计中也是举足轻重的主要参加需求分析和数据库的运行维护主要参加需求
3、分析和数据库的运行维护用户积极参与带来的好处用户积极参与带来的好处加速数据库设计加速数据库设计提高数据库设计的质量提高数据库设计的质量数据库设计的准备工作数据库设计的准备工作(续续)l3.程序员程序员在系统实施阶段参与进来,负责编制程序在系统实施阶段参与进来,负责编制程序l4.操作员操作员在系统实施阶段参与进来,准备软硬件环境在系统实施阶段参与进来,准备软硬件环境二二.数据库设计的过程数据库设计的过程(六个阶六个阶段段)1.需求分析阶段需求分析阶段2.概念结构设计阶段概念结构设计阶段3.逻辑结构设计阶段逻辑结构设计阶段4.数据库物理设计阶段数据库物理设计阶段5.数据库实施阶段数据库实施阶段6.
4、数据库运行和维护阶段数据库运行和维护阶段数据库设计的过程数据库设计的过程(续续)需求分析阶段需求分析阶段准确了解与分析用户需求(包括数据与处理)准确了解与分析用户需求(包括数据与处理)是整个设计过程的基础,是最困难、最耗费时间的是整个设计过程的基础,是最困难、最耗费时间的一步一步数据库设计的过程数据库设计的过程(续续)概念结构设计阶段概念结构设计阶段是整个数据库设计的关键是整个数据库设计的关键通过对用户需求进行综合、归纳与抽象,形通过对用户需求进行综合、归纳与抽象,形成一个独立于具体成一个独立于具体DBMS的概念模型的概念模型数据库设计的过程数据库设计的过程(续续)逻辑结构设计阶段逻辑结构设计
5、阶段将概念结构转换为某个将概念结构转换为某个DBMS所支持的数据所支持的数据模型模型对其进行优化对其进行优化数据库设计的过程数据库设计的过程(续续)数据库物理设计阶段数据库物理设计阶段为逻辑数据模型选取一个最适合应用环境的为逻辑数据模型选取一个最适合应用环境的物理结构(包括存储结构和存取方法)物理结构(包括存储结构和存取方法)数据库设计的过程数据库设计的过程(续续)数据库实施阶段数据库实施阶段运用运用DBMS提供的数据语言、工具及宿主语提供的数据语言、工具及宿主语言,根据逻辑设计和物理设计的结果言,根据逻辑设计和物理设计的结果建立数据库建立数据库编制与调试应用程序编制与调试应用程序组织数据入库
6、组织数据入库并进行试运行并进行试运行数据库设计的过程数据库设计的过程(续续)数据库运行和维护阶段数据库运行和维护阶段数据库应用系统经过试运行后即可投入正式数据库应用系统经过试运行后即可投入正式运行。运行。在数据库系统运行过程中必须不断地对其进在数据库系统运行过程中必须不断地对其进行评价、调整与修改。行评价、调整与修改。数据库设计的过程数据库设计的过程(续续)设计一个完善的数据库应用系统往往是设计一个完善的数据库应用系统往往是上述六个阶段的不断反复。上述六个阶段的不断反复。P184图图6-1第第6章章 数据库设计数据库设计6.1 数据库设计的步骤数据库设计的步骤6.2 需求分析需求分析6.3 概
7、念结构设计概念结构设计6.4 逻辑结构设计逻辑结构设计6.5 数据库的物理设计数据库的物理设计6.6 数据库实施数据库实施6.7 数据库运行与维护数据库运行与维护6.2 需求分析需求分析6.2.1 需求分析的任务需求分析的任务6.2.2 需求分析的方法需求分析的方法6.2.3 数据字典数据字典需求分析(续)需求分析(续)l需求分析就是分析用户的需要与要求需求分析就是分析用户的需要与要求需求分析是设计数据库的起点需求分析是设计数据库的起点需求分析的结果是否准确地反映了用户的实需求分析的结果是否准确地反映了用户的实际要求,将直接影响到后面各个阶段的设计,际要求,将直接影响到后面各个阶段的设计,并影
8、响到设计结果是否合理和实用并影响到设计结果是否合理和实用6.2 需求分析需求分析6.2.1 需求分析的任务需求分析的任务6.2.2 需求分析的方法需求分析的方法6.2.3 数据字典数据字典6.2.1 需求分析的任务需求分析的任务一、需求分析的任务一、需求分析的任务二、需求分析的重点二、需求分析的重点三、需求分析的难点三、需求分析的难点一、需求分析的任务一、需求分析的任务l 通过详细调查现实世界要处理的对象通过详细调查现实世界要处理的对象(组织、部门、企业等),充分(组织、部门、企业等),充分了解原了解原系统系统(手工系统或计算机系统)(手工系统或计算机系统)工作概工作概况,明确用户的各种需求况
9、,明确用户的各种需求l 在此基础上在此基础上确定新系统的功能确定新系统的功能。新系统。新系统必须充分考虑今后可能的扩充和改变,必须充分考虑今后可能的扩充和改变,不能仅仅按当前应用需求来设计数据库不能仅仅按当前应用需求来设计数据库二、需求分析的重点二、需求分析的重点l需求分析的重点是调查、收集与分析用户在数需求分析的重点是调查、收集与分析用户在数据管理中的据管理中的信息要求、处理要求、安全性与完信息要求、处理要求、安全性与完整性要求整性要求。l 信息要求信息要求用户需要从数据库中获得信息的内容与性质用户需要从数据库中获得信息的内容与性质由用户的信息要求可以导出数据要求,即在由用户的信息要求可以导
10、出数据要求,即在数据库中需要存储哪些数据数据库中需要存储哪些数据需求分析的重点(续)需求分析的重点(续)l处理要求处理要求对处理对处理功能功能的要求的要求对处理的对处理的响应时间响应时间的要求的要求对处理对处理方式方式的要求的要求(批处理批处理/联机处理联机处理)l新系统的功能必须能够满足用户的信息要求、新系统的功能必须能够满足用户的信息要求、处理要求、安全性与完整性要求。处理要求、安全性与完整性要求。三、需求分析的难点三、需求分析的难点l确定用户最终需求的难点确定用户最终需求的难点用户用户缺少计算机知识,开始时无法确定计算缺少计算机知识,开始时无法确定计算机究竟能为自己做什么,不能做什么,因
11、此机究竟能为自己做什么,不能做什么,因此无法一下子准确地表达自己的需求,他们所无法一下子准确地表达自己的需求,他们所提出的需求往往不断地变化。提出的需求往往不断地变化。设计人员设计人员缺少用户的专业知识,不易理解用缺少用户的专业知识,不易理解用户的真正需求,甚至误解用户的需求。户的真正需求,甚至误解用户的需求。新新的硬件、软件的硬件、软件技术的出现技术的出现也会使用户需求也会使用户需求发生变化。发生变化。需求分析的难点需求分析的难点(续续)l解决方法解决方法设计人员必须采用有效的方法,与用户不断设计人员必须采用有效的方法,与用户不断深入深入地进行地进行交流交流,才能逐步得以确定用户的,才能逐步
12、得以确定用户的实际需求实际需求6.2 需求分析需求分析6.2.1 需求分析的任务需求分析的任务6.2.2 需求分析的方法需求分析的方法6.2.3 数据字典数据字典6.2.2 需求分析的方法需求分析的方法l调查清楚用户的实际需求并进行初步分析调查清楚用户的实际需求并进行初步分析l 与用户达成共识与用户达成共识l 进一步分析与表达这些需求进一步分析与表达这些需求一、一、调查与初步分析用户需求调查与初步分析用户需求 调查组织机构情况调查组织机构情况 部门的组成情况部门的组成情况 各部门的职责等各部门的职责等调查与初步分析用户需求(续)调查与初步分析用户需求(续)调查各部门的业务活动情况。调查重点之一
13、。调查各部门的业务活动情况。调查重点之一。各个部门各个部门输入输入和使用什么数据和使用什么数据 如何加工如何加工处理处理这些数据这些数据 输出输出什么信息什么信息 输出到什么部门输出到什么部门 输出结果的格式是什么输出结果的格式是什么调查与初步分析用户需求(续)调查与初步分析用户需求(续)在熟悉业务活动的基础上,协助用户明确对新在熟悉业务活动的基础上,协助用户明确对新系统的各种要求。调查重点之二。系统的各种要求。调查重点之二。信息要求信息要求 处理要求处理要求 完全性与完整性要求完全性与完整性要求调查与初步分析用户需求(续)调查与初步分析用户需求(续)对前面调查的结果进行初步分析对前面调查的结
14、果进行初步分析确定新系统的边界确定新系统的边界确定哪些功能由计算机完成或将来准备让计算机确定哪些功能由计算机完成或将来准备让计算机完成完成确定哪些活动由人工完成确定哪些活动由人工完成 由计算机完成的功能就是新系统应该实现的功能。由计算机完成的功能就是新系统应该实现的功能。二、常用调查方法二、常用调查方法l做需求调查时,往往需要同时采用多种做需求调查时,往往需要同时采用多种方法方法无论使用何种调查方法,都必须有用户的积无论使用何种调查方法,都必须有用户的积极参与和配合极参与和配合设计人员应该和用户取得共同的语言,帮助设计人员应该和用户取得共同的语言,帮助不熟悉计算机的用户建立数据库环境下的共不熟
15、悉计算机的用户建立数据库环境下的共同概念,并对设计工作的最后结果共同承担同概念,并对设计工作的最后结果共同承担责任责任常用调查方法(续)常用调查方法(续)l常用调查方法常用调查方法跟班作业跟班作业通过亲身参加业务工作了解业务活动的情况通过亲身参加业务工作了解业务活动的情况能比较准确地理解用户的需求,但比较耗时能比较准确地理解用户的需求,但比较耗时开调查会开调查会通过与用户座谈来了解业务活动情况及用户通过与用户座谈来了解业务活动情况及用户需求需求请专人介绍请专人介绍常用调查方法(续)常用调查方法(续)询问询问对某些调查中的问题,可以找专人询问对某些调查中的问题,可以找专人询问设计调查表请用户填写
16、设计调查表请用户填写如果调查表设计合理,则很有效,且易于为如果调查表设计合理,则很有效,且易于为用户接受用户接受查阅记录查阅记录查阅与原系统有关的数据记录查阅与原系统有关的数据记录三、进一步分析和表达用户需求三、进一步分析和表达用户需求l分析和表达用户的需求分析和表达用户的需求的常用方法的常用方法自顶向下的结构化分析方法(自顶向下的结构化分析方法(Structured Analysis,简称,简称SA方法)方法)lSA方法从最上层的系统组织机构入手,采用逐方法从最上层的系统组织机构入手,采用逐层分解的方式分析系统,并用数据流图和数据层分解的方式分析系统,并用数据流图和数据字典描述系统。字典描述
17、系统。进一步分析和表达用户需求(续)进一步分析和表达用户需求(续)1首先把任何一个系统都抽象为:首先把任何一个系统都抽象为:数据流数据流数据流数据流数据数据存储存储信息要求信息要求数据数据来源来源处理处理数据数据输出输出处理要求处理要求进一步分析和表达用户需求(续)进一步分析和表达用户需求(续)2分解处理功能和数据分解处理功能和数据(1)分解处理功能)分解处理功能将处理功能的具体内容分解为若干子功能,再将将处理功能的具体内容分解为若干子功能,再将每个子功能继续分解,直到把系统的工作过程表每个子功能继续分解,直到把系统的工作过程表达清楚为止。达清楚为止。(2)分解数据)分解数据在处理功能逐步分解
18、的同时,其所用的数据也逐在处理功能逐步分解的同时,其所用的数据也逐级分解,形成若干层次的数据流图级分解,形成若干层次的数据流图 数据流图表达了数据和处理过程的关系数据流图表达了数据和处理过程的关系进一步分析和表达用户需求(续)进一步分析和表达用户需求(续)(3)表达方法)表达方法 处理过程:用判定表或判定树来描述处理过程:用判定表或判定树来描述 数据:用数据字典来描述数据:用数据字典来描述 进一步分析和表达用户需求(续)进一步分析和表达用户需求(续)3将分析结果再次提交给用户,征得用户将分析结果再次提交给用户,征得用户的认可的认可四、需求分析小结四、需求分析小结lP187图图6-4需求分析小结
19、(续)需求分析小结(续)实例:假设我们要开发一个学校管理系统。实例:假设我们要开发一个学校管理系统。1经过可行性分析和初步需求调查,抽象出该系统最高经过可行性分析和初步需求调查,抽象出该系统最高层数据流图,该系统由层数据流图,该系统由教师管理子系统教师管理子系统、学生管理子学生管理子系统系统、后勤管理子系统后勤管理子系统组成,每个子系统分别配备一组成,每个子系统分别配备一个开发小组。个开发小组。2进一步细化各个子系统。进一步细化各个子系统。其中学生管理子系统开发小组通过进行进一步的需求其中学生管理子系统开发小组通过进行进一步的需求调查,明确了该子系统的主要功能是进行调查,明确了该子系统的主要功
20、能是进行学籍管理学籍管理和和课程管理课程管理,包括学生报到、入学、毕业的管理,学生,包括学生报到、入学、毕业的管理,学生上课情况的管理。通过详细的信息流程分析和数据收上课情况的管理。通过详细的信息流程分析和数据收集后,他们生成了该子系统的数据流图。集后,他们生成了该子系统的数据流图。6.2 需求分析需求分析6.2.1 需求分析的任务需求分析的任务6.2.2 需求分析的方法需求分析的方法6.2.3 数据字典数据字典6.2.3 数据字典数据字典一、数据字典的用途一、数据字典的用途二、数据字典的内容二、数据字典的内容一、数据字典的用途一、数据字典的用途l数据字典是各类数据描述的集合数据字典是各类数据
21、描述的集合l数据字典是进行详细的数据收集和数据分析所数据字典是进行详细的数据收集和数据分析所获得的主要结果获得的主要结果l数据字典在数据库设计中占有很重要的地位数据字典在数据库设计中占有很重要的地位二、数据字典的内容二、数据字典的内容l数据字典的内容数据字典的内容数据项数据项数据结构数据结构数据流数据流数据存储数据存储处理过程处理过程l 数据项是数据的最小组成单位数据项是数据的最小组成单位l 若干个数据项可以组成一个数据结构若干个数据项可以组成一个数据结构l 数据字典通过对数据项和数据结构的定义来描数据字典通过对数据项和数据结构的定义来描述数据流、数据存储的逻辑内容。述数据流、数据存储的逻辑内
22、容。数据项数据项l数据项是不可再分的数据单位数据项是不可再分的数据单位l 对数据项的描述对数据项的描述数据项描述数据项名,数据项含义说明,数据项描述数据项名,数据项含义说明,别名,数据类型,长度,取值范围,别名,数据类型,长度,取值范围,取值含义,与其他数据项的逻辑关系取值含义,与其他数据项的逻辑关系取值范围、与其他数据项的逻辑关系定义了取值范围、与其他数据项的逻辑关系定义了数据的完整性约束条件数据的完整性约束条件 数据结构数据结构l数据结构反映了数据之间的组合关系。数据结构反映了数据之间的组合关系。l 一个数据结构可以由若干个数据项组成,也可一个数据结构可以由若干个数据项组成,也可以由若干个
23、数据结构组成,或由若干个数据项以由若干个数据结构组成,或由若干个数据项和数据结构混合组成。和数据结构混合组成。l 对数据结构的描述对数据结构的描述数据结构描述数据结构名,含义说明,数据结构描述数据结构名,含义说明,组成组成:数据项或数据结构数据项或数据结构 数据流数据流l 数据流是数据结构在系统内传输的路径。数据流是数据结构在系统内传输的路径。l 对数据流的描述对数据流的描述数据流描述数据流名,说明,数据流来源,数据流描述数据流名,说明,数据流来源,数据流去向,组成数据流去向,组成:数据结构,数据结构,平均流量,高峰期流量平均流量,高峰期流量数据流来源是说明该数据流来自哪个过程数据流来源是说明
24、该数据流来自哪个过程数据流去向是说明该数据流将到哪个过程去数据流去向是说明该数据流将到哪个过程去平均流量是指在单位时间(每天、每周、每平均流量是指在单位时间(每天、每周、每月等)里的传输次数月等)里的传输次数高峰期流量则是指在高峰时期的数据流量高峰期流量则是指在高峰时期的数据流量 数据存储数据存储l数据存储是数据结构停留或保存的地方,也是数据存储是数据结构停留或保存的地方,也是数据流的来源和去向之一。数据流的来源和去向之一。l对数据存储的描述对数据存储的描述数据存储描述数据存储名,说明,编号,数据存储描述数据存储名,说明,编号,流入的数据流流入的数据流,流出的数据流,流出的数据流,组成组成:数
25、据结构,数据量,存取方式数据结构,数据量,存取方式流入的数据流:指出数据来源流入的数据流:指出数据来源流出的数据流:指出数据去向流出的数据流:指出数据去向数据量:每次存取多少数据,每天(或每小时、每数据量:每次存取多少数据,每天(或每小时、每周等)存取几次等信息周等)存取几次等信息存取方法:批处理存取方法:批处理/联机处理;检索联机处理;检索/更新;顺序更新;顺序检索检索/随机检索随机检索 处理过程处理过程l处理过程的具体处理逻辑一般用判定表或判定处理过程的具体处理逻辑一般用判定表或判定树来描述。数据字典中只需要描述处理过程的树来描述。数据字典中只需要描述处理过程的说明性信息说明性信息l处理过
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 清华 设计
限制150内