第7章 数据库设计优秀PPT.ppt
《第7章 数据库设计优秀PPT.ppt》由会员分享,可在线阅读,更多相关《第7章 数据库设计优秀PPT.ppt(102页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第7章章 数据库设计数据库设计现在学习的是第1页,共102页7.1 数据库设计介绍数据库设计介绍 合理的数据库结构是数据库应用系统性能良好的基础和保证,但数据库的设计和开发却是一项庞大而复杂的工程。从事数据库设计的人员,不仅要具备数据库知识和数据库设计技术,还要有程序开发的实际经验,掌握软件工程的原理和方法;数据库设计人员必须深入应用环境,了解用户具体的专业业务;在数据库设计的前期和后期,与应用单位人员密切联系,共同开发,可大大提高数据库设计的成功率。现在学习的是第2页,共102页7.1.1数据库设计的一般策略数据库设计的一般策略有两种:自顶向下(TopDown)和自底向上(BottomUp
2、)。自顶向下是从一般到特殊的开发策略。它是从一个企业的高层管理着手,分析企业的目标、对象和策略,构造抽象的高层数据模型。然后逐步构造越来越详细的描述和模型(子系统的模型)。模型不断地扩展细化,直到能识别特定的数据库及其应用为止。现在学习的是第3页,共102页自底向上的开发采用与抽象相反的顺序进行。它从各种基本业务和数据处理着手,即从一个企业的各个基层业务子系统的业务处理开始,进行分析和设计。然后将各子系统进行综合和集中,进行上一层系统的分析和设计,将不同的数据进行综合。最后得到整个信息系统的分析和设计。这两种方法各有优缺点。在实际的数据库设计开发过程中,常常把这两种方法综合起来使用。现在学习的
3、是第4页,共102页7.1.2数据库设计的步骤在确定了数据库设计的策略以后,就需要相应的设计方法和步骤。多年来,人们提出了多种数据库设计方法,多种设计准则和规范。数据库是某个企业、组织或部门所涉及的数据的综合,它不仅反映数据本身的内容,而且反映数据之间的联系。在数据库中,是用数据模型来抽象、表示、处理现实世界中的数据和信息的。根据模型应用的不同目的,我们将数据模型分成两个层次:概念模型和具体的(如关系)数据模型。现在学习的是第5页,共102页概念模型是用户和数据库设计人员之间进行交流的工具,数据模型是由概念模型转化而来,是按照计算机系统的观点来对数据建模。产生具体数据模型的数据库设计即为逻辑设
4、计。1978年10月召开的新奥尔良(NewOrleans)会议提出的关于数据库设计的步骤,简称新奥尔良法,是目前得到公认的,较完整较权威的数据库设计方法,它把数据库设计分为如下四个主要阶段:现在学习的是第6页,共102页(1)用户需求分析。(2)信息分析和定义(概念设计):视图模型化;视图分析和汇总。(3)设计实现(逻辑设计):模式初始设计;子模式设计;应用程序设计;模式评价;模式求精。现在学习的是第7页,共102页(4)物理设计。当各阶段发现不能满足用户需求时,均需返回到前面适当的阶段,进行必要的修正。如此经过不断的迭代和求精,直到各种性能均能满足用户的需求为止。数据库设计一般应包括数据库的
5、结构设计和行为设计两部分内容。所谓数据库的结构设计,是指系统整体逻辑模式与子模式的设计,是对数据的分析设计;数据库的行为设计,是指施加在数据库上的动态操作(应用程序集)的设计,是对应用系统功能的分析设计。现在学习的是第8页,共102页虽然,数据库行为设计与一般软件工程的系统设计,产生模块化程序的过程是一致的,并且,从学科划分的范畴来看,它更偏重于软件设计。但是,在系统分析中,过早地将“数据分析”和“功能分析”进行分离是不明智的,也是不可能的。因为数据需求分析是建立在功能分析上的,只有通过功能分析,才能产生系统数据流程图与数据字典,然后才通过数据分析去划分实体与属性等,最后才能进入结构设计。目前
6、,较多的数据库设计专家认为,数据库结构设计的基本步骤应如图71所示。现在学习的是第9页,共102页图71专家认同的数据库结构设计的基本步骤现在学习的是第10页,共102页在任一设计阶段,一旦发现不能满足用户数据需求时,均需返回到前面的适当阶段,进行必要的修正。经过如此的迭代求精过程,直到能满足用户需求为止。在进行数据库结构设计时,应考虑满足数据库中数据处理的要求,将数据和功能两方面的需求分析、设计和实现在各个阶段同时进行,相互参照和补充。现在学习的是第11页,共102页事实上,数据库设计中,对每一个阶段设计成果都应该通过评审。评审的目的是确认某一阶段的任务是否全部完成,从而避免出现重大的错误或
7、疏漏,保证设计质量。评审后还需要根据评审意见修改所提交的设计成果,有时甚至要回溯到前面的某一阶段,进行部分重新设计乃至全部重新设计,然后再进行评审,直至达到系统的预期目标为止。现在学习的是第12页,共102页7.1.3数据库设计的主流方法从20世纪70年代末以来,众多学者对数据库设计方法进行了深入的探讨和尝试,给出了许多各有优缺点的数据库设计方法,有基于ER模型的数据库设计方法,基于3NF的设计方法,基于抽象语法规范的设计方法等,较实用的主流方法有以下两种:1.ER模型加规范化关系的方法在数据库结构设计中,主要工作是从需求分析所得到的所有信息以及它们之间的依赖关系出发,去构造系统数据模型。在构
8、模中,最常用的是ER模型法。现在学习的是第13页,共102页ER模型中最基本的成分是实体、联系以及它们的属性。而由实体(或联系)与属性构成的关系,因为是否“规范化”而有“好”、“坏”之分,而关系的好坏又直接影响数据库的质量。所以,把ER模型与规范化关系结合起来,形成了目前最为流行的数据库构模方法。本章介绍概念结构设计时,采用了此方法。现在学习的是第14页,共102页2数据元素图加规范化关系的方法需求分析中得到的每一种信息,称为数据元素。数据元素图指系统所涉及的数据元素信息(包括:数据元素名、类型、字节长度、可能的别名、有效取值范围等)以及数据元素之间的依赖关系。用数据元素图及数据元素之间的关联
9、类型的分析来归并实体,并且产生部分实体之间的联系,这种方法称为数据元素图法(也称为数据项图法)。把数据元素图法与规范化关系有机结合起来,也是一种较实用的构模方法。采用这种方法,不必再经过ER模型转换成规范化的关系,而直接根据作图法获得规范化的关系,有时也被称为“扩充数据元素图法”。现在学习的是第15页,共102页7.1.4数据库设计的基本概念数据库设计中将会用到很多基本概念和术语,下面分别加以介绍:(1)需求分析:数据库设计人员采用一定的辅助工具对应用对象的功能、性能、限制等要求所进行的科学分析。(2)概念设计:对应用对象精确地抽象、概括而形成的独立于计算机系统的企业信息模型。描述概念模型的最
10、好工具是ER图。现在学习的是第16页,共102页(3)逻辑设计:将抽象的概念模型转化为与选用的DBMS产品所支持的数据模型相符合的逻辑模型,它是物理设计的基础。(4)物理设计:逻辑模型在计算机中的具体实现方案。(5)数据字典(DD:DataDictionary):关于数据的信息集合。它包含了应用对象和DBMS运行时所需的控制和管理信息的信息库。它既可为用户服务,又可为系统服务。现在学习的是第17页,共102页数据字典在需求分析阶段建立,在数据库设计过程中被不断修改、充实和完善。(6)数据流程图(DFD:DataFlowDiagram):也称为数据流图,是便于用户理解的系统数据流程的图形表示,能
11、精确地在逻辑上描述系统的功能、输入、输出和数据存储。该工具用于需求分析中。现在学习的是第18页,共102页7.2 需求分析需求分析需求分析是数据库设计的第一阶段,本阶段所得的结果是下一阶段系统的概念结构设计的基础。如果需求分析有误,则以它为基础的整个数据库设计将成为毫无意义的工作。而需求分析也是数据库设计人员感觉最繁琐和困难的一步。现在学习的是第19页,共102页数据库需求分析和一般信息系统的系统分析,基本上是一致的。但是,数据库需求分析所收集的信息,却要详细得多,不仅要收集数据的型(包括数据的名称、数据类型、字节长度等),还要收集与数据库运行效率、安全性、完整性有关的信息,包括数据使用频率、
12、数据间的联系以及对数据操纵时的保密要求等等。现在学习的是第20页,共102页7.2.1需求调查需求调查是指,为了彻底了解原系统的全部概况,系统分析师和数据库设计人员深入到应用部门,和用户一起调查和收集原系统所涉及的全部数据。需求调查要明确的问题很多,大到企业的经营方针策略、组织结构,小到每一张票据的产生、输入、输出、修改、查询等。重点是以下几个方面:(1)信息要求。用户需要对哪些信息进行查询和分析,信息与信息之间的关系如何等。现在学习的是第21页,共102页(2)处理要求。用户需要对信息进行何种处理,每一种处理有哪些输入、输出要求,处理的方式如何,每一种处理有无特殊要求等。(3)系统要求:安全
13、性要求:系统有几种用户使用,每一种用户的使用权限如何。使用方式要求:用户的使用环境是什么,平均有多少用户同时使用,最高峰时有多少用户同时使用,有无查询相应的时间要求等。可扩充性要求:对未来功能、性能和应用访问的可扩充性的要求。现在学习的是第22页,共102页需求调查的方法主要有:(1)阅读有关手册、文档及与原系统有关的一切数据资料。(2)与各种用户(包括企业领导、管理人员、操作员)交谈。每个用户所处的地位不同,对新系统的理解和要求也不同。与他们进行交谈,可获得在查阅资料时遗漏的信息。(3)跟班作业。有时用户并不能从信息处理的角度来表达他们的需求,需要分析人员和设计人员亲自参加他们的工作,了解业
14、务活动的情况。现在学习的是第23页,共102页(4)召集有关人员讨论座谈。可按职能部门召开座谈会,了解各部门的业务情况及对新系统的建议。(5)使用调查表的形式调查用户的需求。需求调查的方法很多,常常综合使用各种方法。对用户对象的专业知识和业务过程了解得越详细,为数据库设计所作的准备就越充分。确信没有漏掉大的方面。并且设计人员应考虑到将来对系统功能的扩充和改变,尽量把系统设计得易于修改。现在学习的是第24页,共102页7.2.2需求分析需求调查所得到的数据可能是零碎的、局部的,分析师和设计人员必须进一步分析和表达用户的需求。需求分析的具体任务是:(1)分析需求调查得到的资料,明确计算机应当处理和
15、能够处理的范围,确定新系统应具备的功能。(2)综合各种信息所包含的数据,各种数据之间的关系,数据的类型、取值范围、流向。现在学习的是第25页,共102页(3)将需求调查文档化,文档既要为用户所理解,又要方便数据库的概念结构设计。需求分析的结果应及时与用户进行交流,反复修改,直到得到用户的认可。在数据库设计中,数据需求分析是对有关信息系统现有数据及数据间联系的收集和处理,当然也要适当考虑系统在将来的可能需求。一般地,需求分析包括数据流的分析及功能分析。功能分析是指系统如何得到事务活动所需要的数据,在事务处理中如何使用这些数据进行处理(也叫加工),以及处理后数据流向的全过程的分析。换言之,功能分析
16、是对所建数据模型支持的系统事务处理的分析。现在学习的是第26页,共102页数据流分析是对事务处理所需的原始数据的收集及经处理后所得数据及其流向。一般用数据流程图(DFD)来表示。DFD不仅指出了数据的流向,而且还指出了需要进行的事务处理(但并不涉及如何处理,这是应用程序的设计范畴)。在需求分析阶段,应当用文档形式整理出整个系统所涉及的数据、数据间的依赖关系、事务处理的说明和所需产生的报告,并且尽量借助于数据字典(DD)加以说明。除了使用数据流程图、数据字典以外,需求分析还可使用判定表、判定树等工具。下面介绍数据流程图和数据字典,其他工具的使用可参见软件工程等方面的参考书。现在学习的是第27页,
17、共102页1.数据流程图(DFD)数据流程图的符号说明如下:数据流代表数据流,箭头表示数据流动的方向加工或称为处理,代表数据的处理逻辑文件或称为数据库存储文件,代表数据存储外部实体代表系统之外的信息提供者或使用者现在学习的是第28页,共102页(1)数据流:由一组确定的数据组成。数据流用带名字的箭头表示,名字表示流经的数据,箭头则表示流向。例如,“成绩单”数据流由学生名、课程名、学期、成绩等数据组成。(2)加工:是对数据进行的操作或处理。加工包括两方面的内容:一是变换数据的组成,即改变数据结构;二是在原有的数据内容基础上增加新的内容,形成新的数据。例如,在学生学习成绩管理系统中,“选课登记”是
18、一个加工,它把学生信息和开课信息进行处理后生成学生的选课清单。现在学习的是第29页,共102页(3)文件:数据暂时存储或永久保存的地方。如:学生表、开课计划表。(4)外部实体:指独立于系统而存在的,但又和系统有联系的实体。它表示数据的外部来源和最后的去向。确定系统与外部环境之间的界限,从而可确定系统的范围。外部实体可以是某种人员、组织、系统或某事物。例如,在学生学习成绩管理系统中,家长可作为外部实体存在,因为家长不是该系统要研究的实体,但它可以查询本系统中有关的学生成绩。现在学习的是第30页,共102页构造DFD的目的是使系统分析师与用户进行明确的交流,指导系统设计,并为下一阶段的工作打下基础
19、。所以DFD既要简单,又要容易被理解。构造DFD通常采用自顶向下、逐层分解,直到功能细化为止,形成若干层次的DFD。如图72是学校成绩管理系统的第一层数据流程图。如果需要,还可以对其中的三个处理过程分别作第二层数据流程图。现在学习的是第31页,共102页图72成绩管理的第一层数据流程图(部分)现在学习的是第32页,共102页2.数据字典(DD)数据字典是以特定格式记录下来的,对数据流程图中各个基本要素(数据流、文件、加工等)的具体内容和特征所作的完整的对应和说明。数据字典是对数据流程图的注释和重要补充,它帮助系统分析师全面确定用户的要求,并为以后的系统设计提供参考依据。数据字典的内容包括:数据
20、项、数据结构、数据流、加工、文件、外部实体等,一切在数据定义需求中出现的名称都必须有严格的说明。在数据库设计过程中,数据字典被不断地充实、修改、完善。现在学习的是第33页,共102页下面以成绩管理数据流图中几个元素的定义加以说明:(1)数据项名:成绩别名:分数描述:课程考核的分数值定义:数值型,带一位小数取值范围:0100(2)数据结构名:成绩单别名:考试成绩描述:学生每学期考试成绩单定义:成绩清单=学生号+开课号+学期+考试成绩现在学习的是第34页,共102页(3)加工名:选课登记处理输入数据流:学期、学生号、开课号、课程号输出数据流:选课清单加工逻辑:把选课者的学生号、所处的学期号、以及所
21、选的开课号、课程号记录进数据库中处理频率:根据学校的学生人数而定,具有集中性现在学习的是第35页,共102页(4)文件名:学生信息表简述:用来记录学生的基本情况组成:记录学生各种情况的数据项,如学生号、姓名、性别、政治面貌、专业、班级号等读文件:提供各项数据的显示,提取学生的信息写文件:对学生情况的修改、增加或删除现在学习的是第36页,共102页这一阶段的主要任务有:(1)确认系统的设计范围;(2)调查信息需求、收集数据;(3)分析、综合系统调查得到的资料;(4)建立需求说明文档、数据字典、数据流程图。与本阶段同步,对数据处理的同步分析应产生:数据流程图、判定树(判定表)以及数据字典中对处理过
22、程的描述。现在学习的是第37页,共102页7.3 概念结构设计概念结构设计 概念结构设计的目标是产生反映系统信息需求的数据库概念结构,即概念模式。概念结构是独立于支持数据库的DBMS和使用的硬件环境的。此时,设计人员从用户的角度看待数据以及数据处理的要求和约束,产生一个反映用户观点的概念模式,然后再把概念模式转换为逻辑模式。各级模式之间的关系如图73所示。现在学习的是第38页,共102页图73数据库各级模式现在学习的是第39页,共102页描述概念结构的模型应具有以下几个特点:(1)有丰富的语义表达能力。能表达用户的各种需求,反映现实世界中各种数据及其复杂的联系,及用户对数据的处理要求等。(2)
23、易于交流和理解。概念模型是系统分析师、数据库设计人员和用户之间的主要交流工具。(3)易于修改。概念模型能灵活地加以改变,以反映用户需求和环境的变化。现在学习的是第40页,共102页(4)易于向各种数据模型转换。设计概念模型的最终目的是向某种DBMS支持的数据模型转换,建立数据库应用系统。传统的数据模型(层次、网状、关系),由于缺乏必要的语义表达手段,不适合作概念模型。人们提出了多种概念设计的表达工具,其中最常用、最有名的是ER模型。在需求分析中,我们已初步得到了有关各类实体、实体间的联系以及描述它们性质的数据元素,统称数据对象。现在学习的是第41页,共102页在这一阶段中,首先要从以上数据对象
24、中确认出:系统有哪些实体?每个实体有哪些属性?哪些实体间存在联系?每一种联系有哪些属性?然后就可以作出系统的局部ER模型和全局ER模型。在第5章中,我们已详细讨论了建立ER模型、从局部ER图生成全局ER图的基本方法,这里主要介绍业务规则的文档化。从ER模型中可以获得实体、实体间的联系等信息,但不能得到约束实体处理的业务规则。现在学习的是第42页,共102页对模型中的每一个实体中的数据所进行的添加、修改和删除,应该符合预定的规则。特别是删除,往往包含着一些重要的业务规则。例:下面是学校图书管理系统中有关读者借阅图书的业务规则:(1)借阅者必需持有图书馆所发的借书证,每张借书证的号码唯一;(2)学
25、生的借书数最高为10本,教职工为20本;现在学习的是第43页,共102页(3)学生的借书周期为3个月,教职工为6个月;(4)一旦有图书超期,学生和教职工都不能再借阅任何图书;(5)尚未全部归还图书的学生及教职工不能办离校手续。现在学习的是第44页,共102页业务规则是在需求分析中得到的,需要反映在数据库模式和数据库应用程序中。概念结构设计的最后一步是把全局概念模式提交评审。评审可分为用户评审和DBA及设计人员评审两部分。用户评审的重点是确认全局概念模式是否准确完整地反映了用户的信息需求,以及现实世界事务的属性间的固有联系;DBA和设计人员的评审则侧重于确认全局概念模式是否完整,属性和实体的划分
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第7章 数据库设计优秀PPT 数据库 设计 优秀 PPT
限制150内