数据库第六章-课程设计.ppt
《数据库第六章-课程设计.ppt》由会员分享,可在线阅读,更多相关《数据库第六章-课程设计.ppt(162页珍藏版)》请在三一办公上搜索。
1、1,第六章数据库系统设计,2,第6章 数据库系统设计,6.1 数据库设计概述6.2 需求分析6.3 概念结构设计6.4 逻辑结构设计6.5 物理结构设计6.6 数据库的实施和维护,3,6.1 数据库设计概述,什么是数据库设计数据库设计是指对于一个给定的应用环境,构造最优的数据库模型,建立数据库及其应用系统,使之能够有效地存储和管理数据,满足各种用户的应用需求(信息要求和处理要求)在数据库领域内,常常把使用数据库的各类系统统称为数据库应用系统。,4,数据库设计人员应该具备的技术和知识,数据库的基本知识和数据库设计技术计算机科学的基础知识和程序设计的方法和技巧软件工程的原理和方法应用领域的知识,5
2、,6.1.1 数据库设计的基本任务,数据库设计的任务:根据应用领域的信息需求、处理需求和数据库的支持环境,设计出数据模式(包括外模式、逻辑模式和内模式)以及相应的应用程序。其中:信息需求表示应用领域所需要的数据及其结构表达了对数据库的内容及结构的要求,也就是静态要求;处理需求表示应用领域需要进行的数据处理表达了基于数据库的数据处理要求,也就是动态要求;,6,6.1.1 数据库设计的基本任务(续),数据库设计的两个目标 满足应用功能需求是指把用户当前应用以及可预知的将来应用所需要的数据及其联系能全部准确地存放于数据库之中,并能根据用户的需要对数据进行合理的增、删、改、查询等操作。良好的数据库性能
3、是指数据库应具有良好的存储结构、良好的数据共享性、良好的数据完整性、良好的数据一致性及良好的安全保密性能等。,7,6.1.1 数据库设计的基本任务(续),数据库设计的结果不是唯一的,针对同一应用环境,不同的设计者可能得出不同的数据库模式。一个好的数据库设计方法应该能在合理的期限内,以合理的工作量建立一个有合理利用价值的数据库系统。,8,6.1.2 数据库设计的基本步骤,一、数据库设计的准备工作 选定参加设计的人员1.数据库分析设计人员数据库设计的核心人员自始至终参与数据库设计其水平决定了数据库系统的质量,9,6.1.2 数据库设计的基本步骤(续),2.用户在数据库设计中也是举足轻重的主要参加需
4、求分析和数据库的运行维护用户积极参与带来的好处加速数据库设计提高数据库设计的质量3.程序员在系统实施阶段参与进来,负责编制程序4.操作员在系统实施阶段参与进来,准备软硬件环境,10,6.1.2 数据库设计的基本步骤(续),二、数据库设计的过程数据库设计包含:结构设计是指系统整体逻辑模式与子模式的设计,是对数据的分析设计 行为设计是指施加在数据库上的动态操作(应用程序集)的设计,是对应用系统功能的设计,11,6.1.2 数据库设计的基本步骤(续),二、数据库设计的过程按照规范化设计的方法和软件工程生命周期的思想,考虑数据库及其应用系统的开发全过程,将数据库设计分为以下6个阶段,如图P127:6.
5、1所示。,12,6.1.2 数据库设计的基本步骤(续),13,6.1.2 数据库设计的基本步骤(续),二、数据库设计的过程(六个阶段)需求分析阶段准确了解与分析用户需求(包括数据与处理)是整个设计过程的基础,是最困难、最耗费时间的一步设计的内容形成文档资料(数据流图、数据字典),14,6.1.2 数据库设计的基本步骤(续),概念结构设计阶段是整个数据库设计的关键通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型ER图逻辑结构设计阶段将概念结构转换为某个DBMS所支持的数据模型对其进行优化,15,6.1.2 数据库设计的基本步骤(续),物理结构设计阶段为逻辑数据模型选取一个
6、最适合应用环境的物理结构(包括存储结构和存取方法)数据库实施阶段运用DBMS提供的数据语言、工具及宿主语言,根据逻辑设计和物理设计的结果建立数据库编制与调试应用程序组织数据入库试运行,16,6.1.2 数据库设计的基本步骤(续),数据库运行和维护阶段数据库应用系统经过试运行后即可投入正式运行。在数据库系统运行过程中必须不断地对其进行评价、调整与修改。设计一个完善的数据库应用系统往往是上述六个阶段的不断反复。设计过程各个阶段的设计描述:P128表6.1,17,CreatLoad,Main()ifthenend,概念结构设计,逻辑结构设计,物理设计,18,6.1.2 数据库设计的基本步骤(续),数
7、据库各级模式的形成过程总结需求分析阶段 综合各个用户的应用需求概念结构设计阶段 形成独立于DBMS产品的概念模式(E-R图)逻辑结构设计阶段首先将E-R图转换成具体的数据库产品支持的数据模型,如关系模型,形成数据库逻辑模式然后根据用户处理的要求、安全性的考虑,在基本表的基础上再建立必要的视图,形成数据的外模式物理结构设计阶段根据DBMS特点和处理的需要,进行物理存储安排,建立索引,形成数据库内模式,19,6.1.3 数据库设计的特点,三分技术,七分管理,十二分基础数据数据库设计应该与应用系统设计相结合结构(数据)设计:设计数据库框架或数据库结构行为(处理)设计:设计应用程序、事务处理等数据库设
8、计方法新奥尔良方法基于E-R模型的数据库设计方法基于3NF(第三范式)的设计方法等,20,6.1.3 数据库设计的特点(续),21,6.1.3 数据库设计的特点(续),数据库设计往往具有以下特征:反复性 试探性 分步进行,22,6.2 需求分析,需求分析就是分析用户的要求 需求分析是设计数据库的起点 需求分析的结果是否准确地反映了用户的实际要求,将直接影响到后面各个阶段的设计,并影响到设计结果是否合理和实用性。,23,6.2.1 需求分析的任务和方法,需求分析的任务:通过详实调查应用领域中各应用的信息要求和操作要求,进行详细分析,明确用户的各种需求。需求分析的目标给出应用领域中数据项、数据项之
9、间的关系和数据操作任务的详细定义,24,6.2.1 需求分析的任务和方法(续),1获得用户对数据库的要求(1)信息要求。指用户需要从数据库中获得信息的内容与性质。信息要求可以导出数据要求,即在数据库中需要存储哪些数据。(2)处理要求。用户要完成什么处理,检索方式有什么要求,被存取的数据量与运行限制等。(3)系统要求。系统要求包括安全性要求、使用方式要求和可扩充性要求3部分内容。,25,6.2.1 需求分析的任务和方法(续),2调查用户需求的步骤(1)调查组织机构情况,分析用户活动,产生业务流程图。组织机构的组成情况各部门的职责各个部门输入和使用什么数据如何加工处理这些数据输出什么信息输出到什么
10、部门输出结果的格式是什么,26,6.2.1 需求分析的任务和方法(续),2调查用户需求的步骤(续)(2)确定新系统范围即确定哪些工作准备由计算机完成,哪些工作由人工完成,计算机完成的功能就是新系统应该实现的功能。协助用户明确对新系统的各种要求:信息要求、处理要求、完全性与完整性要求 对前面调查的结果进行初步分析,确定新系统的边界,27,6.2.1 需求分析的任务和方法(续),3系统需求调查方法(1)查阅原系统有关的数据记录(2)开调查会(3)设计调查表请用户填写(4)请专人介绍(5)跟班作业,28,6.2.1 需求分析的任务和方法(续),调查之后,还需进一步分析和表达用户需求分析和表达用户的需
11、求的常用方法 自顶向下的结构化分析方法(Structured Analysis,简称SA方法)SA方法从最上层的系统组织机构入手,采用自顶向下、逐层分解的方式分析系统,并用数据流图和数据字典描述系统。,29,需求分析过程,30,6.2.2 数据流图,数据流图(Data Flow Diagram,DFD):是一种全面描述系统逻辑模型的主要工具,它是从“数据”和“对数据的加工”两方面表达数据处理系统的一种图形表示法。可以用少数几种符号综合地反映出数据在系统中的流动、存储和处理情况 把系统中的不同业务处理过程联系起来,形成一个整体,31,6.2.2 数据流图(续),DFD由4种基本符号组成:,32,
12、6.2.2 数据流图(续),1数据流数据流由一组确定的数据组成数据流用带有名字的具有箭头的线段表示 名字数据流名,表示流经的数据 箭头流向数据流可以从加工流向加工,也可以从加工流进、流出文件,还可以从源点流向加工或从加工流向终点。,33,6.2.2 数据流图(续),2加工(处理)加工(处理)是对数据进行的操作 把流入的数据流转换为流出的数据流 每个加工都应取一个名字表示它的含义,并规定一个编号用来标识该加工在层次分解中的位置 名字中必须包含一个动词,如“计算”、“打印”等,34,6.2.2 数据流图(续),3文件(数据存储)文件是存储数据的工具文件名应与它的内容一致,写在开口长条内数据流方向表
13、示从文件流入或流出数据流如果是读文件,则数据流的方向应从文件流出写文件时则相反如果是又读又写,则数据流是双向的,35,6.2.2 数据流图(续),4数据源或终点 数据源或终点是指独立于系统而存在的,但是又和系统有联系的实体 表示数据的外部来源和去处,通常是系统之外的人员或组织。,36,6.2.2 数据流图(续),一个简单的数据流图:,37,6.2.2 数据流图(续),SA方法设计各层的数据流图:1首先把任何一个系统都抽象为:,38,6.2.2 数据流图(续),2分解处理功能和数据(1)分解处理功能将处理功能的具体内容分解为若干子功能,再将每个子功能继续分解,直到把系统的工作过程表达清楚为止。(
14、2)分解数据在处理功能逐步分解的同时,其所用的数据也逐级分解,形成若干层次的数据流图 数据流图表达了数据和处理过程的关系(3)表达方法 处理过程:用判定表或判定树来描述 数据:用数据字典来描述,39,6.2.2 数据流图(续),实例:某医院门诊准备采用病人持IC卡就医,对应的数据流图如P132图所示。,40,6.2.2 数据流图(续),实例:病人持IC卡就医-“发卡”模块细化,41,6.2.2 数据流图(续),实例:病人持IC卡就医-“就诊”模块细化,42,6.2.3 数据字典,一、数据字典的用途二、数据字典的内容,43,一、数据字典的用途,数据字典是各类数据描述的集合数据库中数据的描述,即“
15、元数据”,而不是数据本身 数据字典是进行详细的数据收集和数据分析所获得的主要结果数据字典在数据库设计中占有很重要的地位数据字典和数据流图共同构成需求说明书(Specification Documents),是需求分析的阶段成果,是对需求分析结果的最终描述。,44,二、数据字典的内容,对数据流图(DFD)中涉及的各类元素进行规范的描述,就构成了数据字典的基本内容。数据字典所描述的数据内容 数据项 数据结构 数据流 数据存储 处理过程数据项是数据的最小组成单位若干个数据项可以组成一个数据结构数据字典通过对数据项和数据结构的定义来描述数据流、数据存储的逻辑内容。在数据库设计过程中,数据字典中的内容是
16、不断充实和完善的。,45,数据项,数据项是不可再分的数据单位 对数据项的描述数据项描述数据项名,数据项含义说明,别名,数据类型,长度,取值范围,取值含义,与其他数据项的逻辑关系 取值范围、与其他数据项的逻辑关系定义了数据的完整性约束条件,46,数据项(续),例6.2 对“IC卡卡号”的数据项说明。数据项:IC卡卡号含义说明:唯一标识每张卡别名:医疗卡卡号类型:字符型长度:10取值范围:00000000009999999999取值含义:前4位标识该患者所在地区编号与其他数据项的逻辑关系:N/A,47,数据结构,数据结构反映了数据之间的组合关系。一个数据结构可以由若干个数据项组成,也可以由若干个数
17、据结构组成,或由若干个数据项和数据结构混合组成。对数据结构的描述数据结构描述数据结构名,含义说明,组成:数据项或数据结构,48,数据结构(续),例6.3 对“病人”数据结构说明。数据结构:病人含义说明:是就诊系统的主体数据结构,定义了一个病人的有关信息组成:病人编号,姓名,性别,出生日期,籍贯,住址,电话,备注,49,数据流,数据流是数据结构在系统内传输的路径。对数据流的描述数据流描述数据流名,说明,数据流来源,数据流去向,组成:数据结构,平均流量,高峰期流量数据流来源是说明该数据流来自哪个过程数据流去向是说明该数据流将到哪个过程去平均流量是指在单位时间(每天、每周、每月等)里的传输次数高峰期
18、流量则是指在高峰时期的数据流量,50,数据流(续),例6.4 对“挂号票”数据流说明。数据流:挂号票说明:病人挂号后得到的票据数据流来源:挂号数据流去向:就诊组成:平均流量:高峰期流量:,51,数据存储,数据存储是数据结构停留或保存的地方,也是数据流的来源和去向之一。对数据存储的描述数据存储描述数据存储名,说明,编号,流入的数据流,流出的数据流,组成:数据结构,数据量,存取方式流入的数据流:指出数据来源流出的数据流:指出数据去向数据量:每次存取多少数据,每天(或每小时、每周等)存取几次等信息存取方法:批处理/联机处理;检索/更新;顺序检索/随机检索,52,数据存储(续),例6.5 对“病史数据
19、”的数据存储说明。数据存储:病史数据说明:记录病人所有病史资料流入数据流:填写流出数据流:查阅数据量:由病人就诊次数决定存取方式:随机存取,53,处理过程,处理过程的具体处理逻辑一般用判定表或判定树来描述。数据字典中只需要描述处理过程的说明性信息处理过程说明性信息的描述处理过程描述处理过程名,说明,输入:数据流,输出:数据流,处理:简要说明,54,5.处理过程(续),简要说明:主要说明该处理过程的功能及处理要求功能:该处理过程用来做什么处理要求:处理频度要求(如单位时间里处理多少事务,多少数据量);响应时间要求等处理要求是后面物理设计的输入及性能评价的标准,55,处理过程(续),例6.6 对“
20、诊断”的处理过程说明。处理过程:诊断说明:病人在医生处获得诊断结果输入:挂号票输出:处方或化验单处理:病人挂号后,获取挂号单到某科室医生处就医,医生经过检查和查看病人过往病史,得出诊断结果;将病人就医情况等信息记入病人的病史数据库中;并开出处方或者化验单,让病人取药或者化验。,56,6.3 概念结构设计,什么是概念结构设计需求分析阶段描述的用户应用需求,是现实世界的具体需求将需求分析得到的用户需求抽象为信息结构即概念模型的过程就是概念结构设计概念结构是各种数据模型的共同基础,它比数据模型更独立于机器、更抽象,从而更加稳定。概念结构设计是整个数据库设计的关键,57,6.3.1 概念结构的特点及设
21、计方法,58,6.3.1 概念结构的特点及设计方法(续),概念结构设计的特点(1)语义表达能力强。能真实、充分地反映现实世界,包括实体和实体之间的联系,概念模型是现实世界的一个真实模型。(2)易于向关系、网状、层次等各种数据模型转换。(3)易于理解。可以用它和不熟悉计算机的用户交换意见,使用户易于参与。(4)易于更改。当应用环境和应用要求改变时,容易对概念模型修改和扩充。,59,6.3.1 概念结构的特点及设计方法(续),描述概念模型的工具:E-R模型,60,6.3.1 概念结构的特点及设计方法(续),概念结构的设计集中式模式设计法首先将需求说明综合成一个统一的需求说明,然后,在此基础上设计全
22、局数据模式,再根据全局数据模式为各个用户组或应用定义数据库逻辑设计模式。一般用于小型的、不太复杂的系统。视图集成法 分别以各局部应用的需求说明设计各自的模式(局部视图),然后以这些视图为基础,集成为一个全局模式。常用的方法,61,6.3.1 概念结构的特点及设计方法(续),视图集成法设计概念结构的四类方法:自顶向下 首先定义全局概念结构的框架,然后逐步细化自底向上 首先定义各局部应用的概念结构,然后将它们集成起来,得到全局概念结构,62,6.3.1 概念结构的特点及设计方法(续),逐步扩张 首先定义最重要的核心概念结构,然后向外扩充,以滚雪球的方式逐步生成其他概念结构,直至总体概念结构混合策略
23、 将自顶向下和自底向上相结合,用自顶向下策略设计一个全局概念结构的框架,以它为骨架集成由自底向上策略中设计的各局部概念结构。,63,6.3.1 概念结构的特点及设计方法(续),自顶向下策略,64,6.3.1 概念结构的特点及设计方法(续),自底向上策略,65,6.3.1 概念结构的特点及设计方法(续),逐步扩张,66,6.3.1 概念结构的特点及设计方法(续),常用策略自顶向下地进行需求分析自底向上地设计概念结构自底向上设计概念结构的步骤第1步:抽象数据并设计局部视图第2步:集成局部视图,得到全局概念结构,67,6.3.2 概念结构设计的步骤,1、数据抽象 概念结构是对现实世界的一种抽象 从实
24、际的人、事、物和概念中抽取所关心的共同特性,忽略非本质的细节 把这些特性用各种概念精确地加以描述 这些概念组成了某种模型,68,6.3.2 概念结构设计的步骤(续),1、三种常用抽象(1)分类(Classification)定义某一类概念作为现实世界中一组对象的类型这些对象具有某些共同的特性和行为它抽象了对象值和型之间的“is member of”的语义在E-R模型中,实体型就是这种抽象例:P136图6.8,69,6.3.2 概念结构设计的步骤(续),1、三种常用抽象(续)(2)聚集(Aggregation)定义某一类型的组成成分它抽象了对象内部类型和成分之间“is part of”的语义在E
25、-R模型中若干属性的聚集组成了实体型,就是这种抽象例:P136图6.9,70,6.3.2 概念结构设计的步骤(续),1、三种常用抽象(续)(3)概括(Generalization)定义类型之间的一种子集联系它抽象了类型之间的“is subset of”的语义概括有一个很重要的性质:继承性。子类继承超类上定义的所有抽象。例:P136图6.10,71,6.3.2 概念结构设计的步骤(续),数据抽象的用途对需求分析阶段收集到的数据进行分类、组织(聚集),形成实体实体的属性,标识实体的码确定实体之间的联系类型(1:1,1:n,m:n),72,6.3.2 概念结构设计的步骤(续),2、抽象数据并设计局部
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 第六 课程设计
链接地址:https://www.31ppt.com/p-6578586.html