第8章 数据库的设计.ppt
《第8章 数据库的设计.ppt》由会员分享,可在线阅读,更多相关《第8章 数据库的设计.ppt(118页珍藏版)》请在三一办公上搜索。
1、1,第8章 数据库的设计,主讲教师 毛一梅2010.01,2,一、概述,数据库设计的基本概念数据库设计人员应具备的知识数据库设计的特点数据库设计的方法数据库设计的基本步骤,3,1、数据库设计的基本概念,数据库设计是建立数据库及其应用系统的技术的基础,是信息系统开发和建设中的核心技术和重要的组成部分。具体来讲,数据库设计是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求)。,4,2、数据库设计的专业人员应具备的知识:,计算机的基础知识和程序设计的方法与技巧;软件工程的原理和方法;数据库的基础知识和设计技术;
2、应用领域的知识。其中应用领域的知识随着应用系统所属的领域不同而不同。数据库设计人员必须深入实际与用户密切接触,对应用环境、专业知识有具体深入的了解才能设计出符合具体领域要求的数据库应用系统。,5,3、数据库设计的特点,将技术和管理相结合强调结构(数据)设计和行为(处理)设计相结合。,6,数据库设计应该与应用系统设计相结合,结构(数据)设计:设计数据库框架或数据库结构行为(处理)设计:设计应用程序、事务处理等,7,一个性能优良的数据库不可能一次性地完成设计,需要经过“反复探寻,逐步求精”的过程。首先从数据模型开始设计,以数据模型为核心进行展开,将数据库设计和应用系统设计相结合,建立一个完整、独立
3、、共享、冗余小和安全有效的数据库系统。,8,4、数据库设计的方法,直观设计法规范设计法计算机辅助设计法自动化设计法这些设计方法大都是数据库设计在不同阶段所使用的具体技术和方法。,9,5、数据库设计的基本步骤,按照规范的设计方法,考虑数据库及应用系统开发的全过程,将数据库设计分为以下六个阶段:需求分析概念结构设计逻辑结构设计物理设计数据库实施数据库的运行和维护,10,需求分析阶段,概念设计阶段,数据库运行和维护阶段,11,CreatLoad,Main()ifthenend,逻辑结构设计,概念结构设计,物理设计,12,二、需求分析,需求分析就是分析用户对数据库的具体要求,需求分析是整个数据库设计的
4、起点。它的结果需要准确地反映用户的实际要求,因为这将影响到后面各个阶段的设计和最终结果是否合理和实用。准确了解与分析用户需求(包括数据与处理)是整个设计过程的基础,是最困难、最耗费时间的一步,13,1、需求分析的任务,通过详细调查现实世界要处理的对象(组织、部门、企业等),充分了解原系统(手工系统或计算机系统)工作概况,明确用户的各种需求 在此基础上确定新系统的功能。新系统必须充分考虑今后可能的扩充和改变,不能仅仅按当前应用需求来设计数据库,14,2、需求分析的重点,需求分析的重点是调查、收集与分析用户在数据管理中的信息要求、处理要求、安全性与完整性要求。,15,(1)信息要求,用户需要从数据
5、库中获得信息的内容与性质由用户的信息要求可以导出数据要求,即在数据库中需要存储哪些数据,16,(2)处理要求,对处理功能的要求对处理的响应时间的要求对处理方式的要求(批处理/联机处理),17,(3)安全性与完整性要求,安全性是指用户需要如何保护数据不被未授权的用户破坏,完整性是指用户需要如何检查和控制不合语义的、不正确的数据,防止它们进入数据库。,18,3、需求分析的难点,用户缺少计算机知识,开始时无法确定计算机究竟能为自己做什么,不能做什么,因此无法一下子准确地表达自己的需求,他们所提出的需求往往不断地变化。设计人员缺少用户的专业知识,不易理解用户的真正需求,甚至误解用户的需求。新的硬件、软
6、件技术的出现也会使用户需求发生变化。,19,解决方法,设计人员必须采用有效的方法,与用户不断深入地进行交流,才能逐步得以确定用户的实际需求,20,4、需求分析的步骤,调查组织机构情况(组织部门的组成情况、各部门的职责等)调查各部门的业务活动情况(各个部门输入和使用什么数据、如何加工处理这些数据、输出什么信息、输出到什么部门、输出结果的格式是什么)。-调查重点之一在熟悉业务活动的基础上,协助用户明确对新系统的各种要求(信息要求、处理要求、完全性与完整性要求)。-调查重点之二。对前面调查的结果进行初步分析(确定新系统的边界:即确定哪些功能由计算机完成或将来准备让计算机完成、确定哪些活动由人工完成,
7、由计算机完成的功能就是新系统应该实现的功能。),21,5、需求调查的常用方法,跟班作业开调查会请专人介绍或询问设计调查表请用户填写查阅记录(包括各类报单、报表),22,做需求调查时,往往需要同时采用多种方法无论使用何种调查方法,都必须有用户的积极参与和配合设计人员应该和用户取得共同的语言,帮助不熟悉计算机的用户建立数据库环境下的共同概念,并对设计工作的最后结果共同承担责任,23,了解用户需求后,还需要进一步分析和表达用户的需求,使之转换为后续各设计阶段可用的形式。分析和表达用户需求的方法很多,其中结构化分析(Structured Analysis,SA)方法是一个简单实用的方法。SA方法是从最
8、上层的系统组织机构入手,采用逐层分解的方式分析系统,并且把每一层用数据流图和数据字典进行描述。,24,6、对需求调查结果的分析,系统抽象分解处理功能和数据,25,首先把任何一个系统都抽象为:,26,分解处理功能和数据,分解处理功能将处理功能的具体内容分解为若干子功能,再将每个子功能继续分解,直到把系统的工作过程表达清楚为止。分解数据在处理功能逐步分解的同时,其所用的数据也逐级分解,形成若干层次的数据流图 数据流图表达了数据和处理过程的关系表达方法 处理过程:用判定表或判定树来描述 数据:用数据字典来描述,27,需求分析阶段的工作结果是数据库设计的重要基础,因此对用户需求进行分析和表达后,必须要
9、交给用户,征得用户的认可。,28,需求分析过程小结,29,7、数据流图,数据流图(DFD,Data Flow Diagram)是描述各处理活动之间数据流动的有力工具,是一种从数据流的角度描述一个组织业务活动的图示。数据流图被广泛用于数据库设计中,并作为需求分析阶段的重要文档资料系统需求说明书的重要内容,也是数据库信息系统验收的依据。,30,(1)数据流图中使用的基本符号及其含义,或,数据源点或宿点,或,变换数据的处理,或,数据存储,数据流,31,从原则上讲,只要有足够大的纸,一个软件系统的数据流图可以画在一张纸上。但当系统比较复杂时,为了便于理解,控制其复杂性,根据自顶向下逐层分解的思想,可以
10、将数据流图进行分层绘制。在分层数据流图中,顶层图只有一张图,其中只有一个处理,代表整个软件系统,该处理描述了软件系统与外界(源或宿)之间的数据流;顶层图中的加工经过分解后的图称为0层图,也只有一张,它描述系统的全貌,揭示了系统的组成部分及各部分之间的关系;1层图分别描述各子系统的结构。如果系统结构还比较复杂,那么可以继续细化,直到表达清楚为止。在处理功能逐步分解的同时,它们所用的数据也逐级分解,形成若干层次的数据流图。,32,33,(2)数据流图应用举例,以图书管理系统开发的需求调研为例,在详细调查用户需求后,经过抽象、综合,将用户的活动归类为:注册、借书、还书和图书查询等活动。在此基础上可将
11、业务活动描述如下:注册:工作人员对读者进行信息注册,发放借书证。借书:首先输入读者的借书证号,检查借书证是否有效;如借书证有效,则查阅借还书登记文件,检查该读者所借图书是否超过可借图书数量(不同类别的读者具有不同的可借图书数量)。若超过,拒绝借阅;未超过,再检查图书的库存数量,在有库存的情况下办理借书,修改库存数量,并记录读者借书信息。还书:根据所还图书编号及借书证编号,从借还书登记文件中,查阅与读者有关的记录,查阅所借日期。如果超期,作罚款处理;否则,修改库存信息与借还书记录。图书查询:根据一定的条件对图书进行查询,并可查看图书详细信息。,34,图书管理系统顶层数据流图,通过以上描述可以把握
12、用户的工作需求,要进一步分析系统范围内的用户活动所涉及数据的性质、流向和所需的处理,用数据流图进行描述。图书管理系统顶层数据流图如下:,35,图书管理系统的0层数据流图,36,还书处理的第1层数据流图,还书审核,还书信息,超期处理,登记入库,登记还书,未超期图书,经处理的超期图书,罚款单,超期图书,读者信息,图书信息,图书/读者信息,借书信息,还书信息,37,8、数据字典,数据字典是进行数据收集和数据分析所获得的主要成果。数据字典是各类数据描述的集合,是数据库设计中的又一个有力工具。数据字典是对数据流图中出现的所有数据元素给出逻辑定义和描述,可供系统设计者,软件开发者、系统维护者和用户参照使用
13、。数据字典通常包括:数据项、数据结构、数据流、数据存储和处理过程五个部分。,38,(1)数据项,数据项是不可再分的数据单位。对数据项的描述通常包括以下内容:数据项描述数据项名称,别名,数据项含义说明,数据类型,长度,取值范围,取值含义,与其他数据项的逻辑关系 其中:取值范围、与其他数据项的逻辑关系定义了该数据项的完整性约束条件,是设计数据检查功能的依据。当然不是每个数据项描述都包含上述所有内容。,39,图书管理系统涉及很多数据项,其中“借书证号”数据项可以描述如下:数据项:借书证号 别名:卡号 含义说明:唯一标识一个借书证类型:字符型 长度:10 取值范围:S|T000000000至S|T99
14、9999999 取值含义:第一位是字母,代表学生(S)或老师(T);第二、三位标识该学生所在年级,第四、五位标识该学生所在系部,后五位按顺序编号。,40,(2)数据结构,数据结构反映了数据项之间的组合关系。一个数据结构可以由若干个数据项组成,也可以由若干个数据结构组成,或由若干个数据项和数据结构混合组成。对数据结构的描述通常包括以下内容:数据结构描述数据结构名,含义说明,组成:数据项或数据结构,41,在图书管理系统中,“读者”是核心数据结构之一,它可以描述如下:数据结构名:读者 含义说明:是图书管理系统的主体数据结构之一,定义了一个读者的相关信息 组成:=学号|工号姓名性别年龄所在系年级借书证
15、号,42,(3)数据流,数据流是数据结构在系统内传输的路径。对数据流的描述通常包括以下内容:数据流描述数据流名称,说明,数据流来源,数据流去向,组成:数据结构,平均流量,高峰期流量 其中:数据流来源说明该数据流来自哪里,可以是一个处理、源或文件;数据流去向说明该数据流将到哪个处理、宿或文件。平均流量是指在单位时间(每天、每周、每月等)中的传输次数。高峰期流量则是指在高峰时期的数据流量。,43,“罚款单”是图书管理系统中的一个数据流,具体描述如下:数据流名:罚款单 说明:超期归还图书的处理结果 数据流来源:超期处理 数据流去向:流通部(或读者)组成:=借书证号姓名图书编号书名超期天数罚款金额 平
16、均流量:高峰期流量:,44,(4)数据储存,数据存储是数据结构停留或保存的地方,也是数据流的来源和去向之一。对数据存储的描述通常包括以下内容:数据存储描述数据存储名,说明,编号,写文件加工,读文件加工,组成:数据结构,数据量,存取方式 其中:流入的数据流要指出其来源;流出的数据流要指出其去向;数据量是指每次存取多少数据,每天(或每小时、每周等)存取几次等信息;存取方式包括是批处理还是联机处理,是检索还是更新,是顺序检索还是随机检索等。,45,“图书借阅表”是图书管理系统中的一个数据存储,具体描述如下:数据存储名:借还表 说明:记录图书借阅的基本信息 写文件的处理:登记借书、登记还书流出数据流:
17、还书审核组成:=借书证号图书编号借阅日期应归还日期实际归还日期数据量:平均每年60000条存取方式:随机存取,46,(5)处理过程,数据字典中只需要描述处理过程的说明性信息,通常包括以下内容:处理过程描述处理过程名,说明,输入:数据流,输出:数据流,处理逻辑:简要说明 其中,简要说明中主要描述该处理过程的功能及处理要求。功能是指该处理过程用来做什么(而不是怎么做)处理要求包括处理频度要求,如单位时间里处理多少事务,多少数据量;响应时间要求等。这些处理要求是后面物理设计的输入及性能评价的标准。,47,处理过程“还书审核”可如下描述:处理过程名:还书审核说明:认定该图书借阅是否超期输入:还书信息、
18、借书信息、读者信息输出:超期图书或未超期图书 处理逻辑:根据借阅表和读者表,如果借阅图书没有超过规定的期限,认定未超期图书,否则认定为超期图书。要求从借阅之日起,学生借阅时间不能超过3个月,教师不能超过6个月。,48,由此可见,数据字典是关于数据库中数据的描述,而不是数据本身。数据本身将存放在物理数据库中,由数据库管理系统管理。数据字典有助于这些数据的进一步管理和控制,为设计人员和数据库管理员在数据库设计、实现和运行阶段控制有关数据提供依据。,49,三、概念结构设计,需求分析阶段描述的用户应用需求是现实世界的具体需求将需求分析得到的用户需求抽象为信息结构即概念模型的过程就是概念结构设计概念结构
19、是各种数据模型的共同基础,它比数据模型更独立于机器、更抽象,从而更加稳定。概念结构设计是整个数据库设计的关键,50,51,1、概念结构设计的特点,(1)能真实、充分地反映现实世界,包括事物和事物之间的联系,能满足用户对数据的处理要求。是对现实世界的一个真实模型。(2)易于理解,从而可以用它和不熟悉计算机的用户交换意见,用户的积极参与是数据库的设计成功的关键。(3)易于更改,当应用环境和应用要求改变时,容易对概念模型修改和扩充。(4)易于向关系、网状、层次等各种数据模型转换。,52,2、描述概念模型的工具,E-R模型,53,3、概念结构设计的方法,自顶向下 首先定义全局概念结构的框架,然后逐步细
20、化自底向上 首先定义各局部应用的概念结构,然后将它们集成起来,得到全局概念结构逐步扩张 首先定义最重要的核心概念结构,然后向外扩充,以滚雪球的方式逐步生成其他概念结构,直至总体概念结构混合策略 将自顶向下和自底向上相结合,用自顶向下策略设计一个全局概念结构的框架,以它为骨架集成由自底向上策略中设计的各局部概念结构。,54,(1)自顶向下策略,55,(2)自底向上策略,56,(3)逐步扩张策略,57,概念结构设计的步骤,常用策略自顶向下地进行需求分析自底向上地设计概念结构自底向上设计概念结构的步骤第1步:抽象数据并设计局部视图第2步:集成局部视图,得到全局概念结构见P211图7.8,58,4、数
21、据抽象与局部视图设计,数据抽象局部视图设计,59,(1)数据抽象,概念结构是对现实世界的一种抽象从实际的人、物、事和概念中抽取所关心的共同特性,忽略非本质的细节把这些特性用各种概念精确地加以描述这些概念组成了某种模型,60,三种常用抽象,分类聚集概括,61,分类(Classification),定义某一类概念作为现实世界中一组对象的类型这些对象具有某些共同的特性和行为它抽象了对象值和型之间的“is member of”的语义在E-R模型中,实体型就是这种抽象见P212图7.10,62,聚集(Aggregation),定义某一类型的组成成分它抽象了对象内部类型和成分之间“is part of”的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第8章 数据库的设计 数据库 设计
链接地址:https://www.31ppt.com/p-2428208.html