




已阅读5页,还剩65页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第五章数据库设计和ER模型 本章重要概念 1 DBS生存期及其7个阶段的任务和工作 DBD过程的输入和输出 2 概念设计的重要性 主要步骤 逻辑设计阶段的主要步骤 3 ER模型的基本元素 属性的分类 联系的元数 连通词 基数 采用ER方法的概念设计步骤 4 ER模型到关系模型的转换规则 采用ER方法的逻辑设计步骤 5 ER模型的扩充 弱实体 超类和子类 主要内容和学习要求 5 1数据库设计概述 了解 5 2数据库设计的全过程 领会 5 3ER模型 综合应用 5 4ER模型到关系模型的转换 综合应用 5 5ER模型实例分析 理解 5 6ER模型的扩充 理解 5 1数据库设计概论之一 软件工程人们认为 应该用科学知识 工程方面的纪律指导软件开发的过程 以提高软件质量和开发效率 降低开发成本 软件生存期从软件的规划 研制 实现 投入运行后的维护 直到它被新的软件所取代而停止使用的整个期间 数据库工程数据库系统生存期数据库应用系统从开始规划 设计 实现 维护到最后被新的系统取代而停止使用的整个期间 数据库设计的输入输出 软件生存期 数据库生存期 数据库设计的输入输出 主要内容 5 1数据库设计概述5 2数据库设计的全过程5 3ER模型5 4ER模型到关系模型的转换5 5ER模型实例分析5 6ER模型的扩充 5 2 1规划阶段 进行建立数据库的必要性和可行性分析 确定数据库系统在组织中和信息系统中的地位 任务 确定系统的范围 确定开发工作所需的资源 人员 硬件和软件 估算软件开发的成本 确定项目进度 结果是可行性分析报告及数据库规划纲要 内容包括信息范围 信息来源 人力资源 设备资源 软硬件环境 开发成本估算 进度计划 现行系统向新系统过渡计划等 规划阶段的三个步骤系统调查 对企业组织作全面的调查 画出组织层次图 以了解企业的组织结构可行性分析从技术 经济 效益 法律等各方面对建立数据库的可行性进行分析 写出可行性分析报告 组织专家进行讨论其可行性确定数据库系统的总目标和制定项目开发计划 这一阶段是计算机人员 系统分析员 和用户共同收集数据库所需要的信息内容和用户对处理的要求 加以规格化和分析 以书面形式确定下来 作为以后验证系统的依据 在分析用户要求时 要确保用户目标的一致性 5 2 2需求分析 需求分析阶段的输入和输出如图5 7所示 信息需求指目标系统涉及的所有实体 属性 以及实体间的联系等 包括信息的内容和性质 以及由信息需求导出的数据需求 处理需求指为得到需要的信息而对数据进行加工处理的要求 包括处理描述 发生的频度 响应时间以及安全保密要求等 图5 7 1需求分析阶段的输入和输出 分析用户活动产生 产生业务流程图确定系统范围 产生系统范围图分析用户活动涉及的数据 产生数据流图分析系统数据 产生数据字典 2需求分析步骤 3需求分析的主要工作 需求分析的工作包括 1 问题识别 problemrecognition 2 评价和综合 evaluationandsynthesis 3 建模 modeling 4 规格说明 specification 5 评审 review 4软件需求规格说明 软件需求规格说明是在对用户需求分析的基础上 把用户的需求规范化 形式化而写成的 目的是为软件开发提出总体要求 作为用户和开发人员之间相互了解和共同开发的基础 根据我国国家标准GB856D 88的规定 软件需求规格说明的内容如下 1 引言1 1编写说明1 2背景1 3定义1 4参考资料2 任务概述2 1目标2 2用户的特点2 3假定与约束3 需求规定3 1对功能的规定3 2对性能的规定3 2 1精度3 2 2时间特性要求3 2 3灵活性 3 3输入输出要求3 4数据管理能力要求3 5故障处理要求3 6其它专门要求4 运行环境规定4 1设备4 2支持软件4 3接口4 4控制 5系统逻辑模型表示工具 在需求分析阶段 通常用系统逻辑模型描述系统必须具备的功能 系统逻辑模型常用的工具主要是 1 数据流图 2 数据字典 1 数据流图 数据流图 DataFlowDiagram 简记为DFD 是从 数据 和 对数据的加工 两方面表达数据处理系统工作过程的一种图形表示法 具有直观 易于被用户和软件人员双方理解的特点 数据流图采用自顶向下的逐步细化的结构化方法表示 DFD有四种基本成分 数据流用箭头表示 加工或处理 process 用圆圈表示 文件或数据库用双线段表示 数据流的源点或终点用方框表示 下面是一个简单的DFD图示例 图5 12 图5 13 DFD可作为由顶向下逐步细化时描述对象的工具 顶层 0层 DFD的每一个加工都可以进一步细化为第1层 第2层 的DFD 直到最底层的每一个加工已表示一个最基本的处理动作为止 在DFD中并没有表示数据处理的过程逻辑 procedurallogic 如是否要循环处理或根据不同的条件进行处理等 了解用户的应用要求 使用信息流程图分析应用系统中的信息流 学生选课系统的简单的上下文信息流如下 数据流程图示例 图5 14 2 数据字典 数据字典 DataDictionary 简记为DD 是各类数据描述的集合 通常包括数据项 数据结构 数据流 数据存储和加工过程等五个部分 因为DFD只表示出系统由哪几部分组成和各部分之间的关系 并没有说明各个成分 数据流 加工等 的含义 因此 仅有DFD还不足以描述用户的需求 必须通过数据字典详细描述各类数据实体对象 数据项 数据项是不可分的数据单位 数据项的描述通常包括以下内容 数据项描述 数据项名 含义 别名 数据类型 长度 取值范围 与其它数据项的逻辑联系 数据结构 数据结构反映了数据之间的组合关系 一个数据结构可以由若干数据项组成 也可以由若干数据结构组成 数据结构的描述通常包括以下内容 数据结构描述 数据结构名 含义 组成 数据项或数据结构 数据流 数据流是数据项或数据结构在系统内传输的路径 对数据流的描述通常包括以下内容 数据流描述 数据流名 说明 数据流来源 数据流去向 组成 数据结构或数据项 平均流量 高峰期流量 数据存储 加工过程中存储的数据 通常是手工凭证 手工文档或计算机文件 也是数据流的来源和去向之一 对数据存储的描述通常包括以下内容 数据存储描述 数据存储名 说明 流入数据流 流出数据流 组成 数据结构或数据项 数据量 存取方式 加工过程 在数据字典中一般只需要描述处理过程的说明性信息 通常包括以下内容 加工过程描述 加工过程名 说明 输入的数据流 输出的数据流 加工的简要说明 下图给出了某机器制造厂零配件采购子系统最概括层的数据流图 该子系统要处理的工作是 对生产部门提出的生产计划书根据零配件当前价格计算成本送主管部门进行审批 对已批准的生产计划制定采购计划 准备好定货单送给供应商 为了反映系统更详细的处理过程 将图5 16的处理过程分解为三个子过程 得到第一层的数据流图 如图5 17所示 其中每个子过程还可以再细分 得到第二层次的数据流图 此处不再给出 图5 16零配件采购子系统最概括层数据流图 数据流和数据字典描述示例 图5 17零配件采购子系统第一层次数据流图 订货单数据流中 每张订货单有一个数据项为订货单号 对此数据项作以下描述 数据项名 订货单号说明 标识每张订货单类型 CHAR长度 7别名 采购单号取值范围 1000000 9999999对采购计划数据流作如下描述 数据项名 采购计划说明 由各产品所需零件数 选定的供应商 审核情况组成采购零配件计划 来自过程 确定采购计划流至过程 编制订货单数据结构 采购计划采购细节采购审核 数据字典中数据项描述 在数据流的描述中记录了有关数据流的所有细节 在数据结构中 采购细节 采购审核 均是数据结构 下面给出 采购细节 的数据结构 数据结构 采购细节说明 作为采购计划的组成部分说明对某个产品 要采购哪些零件 那种零件采购多少数量 组成 零件号数量图中产品是一个数据存储 在数据字典中可如下描述 数据存储 产品说明 对每种产品的品名 规格的描述 并对每种产品做成本预算 在核对生产计划书的成本时用 输出数据流 预算数据描述 产品号产品名称预算数量 每月30至40种存取方式 随机存取 对上图第二个过程 确定采购计划 可作如下描述 处理过程 确定采购计划说明 对要采购的每一零件 根据零件库存量确定采购数量 再根据每位供应商的报价选择适当的供应商 制定采购计划 输入 供应商报价零件库存已批准生产计划输出 采购计划程序提要 对已批准生产计划中每种零件 根据零件库存计算采购数量对应采购的每种零件查找供应商报价表 选择报价最低的供应商号 将此供应商号填入应采购零件表的相应列中 处理完所有零件形成采购计划输出 5 2 3数据库概念设计 将需求分析得到的用户需求抽象为信息结构 即概念模型的设计 通过概念设计得到的概念模型是从现实世界的角度对所要解决的问题的描述 不依赖于具体的硬件环境和DBMS 在需求分析和逻辑设计之间增加概念设计阶段 可以使设计人员仅从用户的角度看待数据及处理要求和约束 处理需求 数据库设计的基本过程 需求分析 概念设计 逻辑设计 物理设计 信息需求 需求说明书 信息结构 逻辑数据库结构 DBMS能处理的 应用程序说明书 DBMS特性 硬件 OS特性 物理数据库结构 规划 1对数据库概念模型的要求 表达概念设计结果的工具称为概念模型 对概念模型有以下要求 1 有丰富的语义表达能力 能表达用户的各种需求 2 易于交流和理解 从而可以用它和不熟悉计算机的用户交换意见 3 要易于更改 当应用环境和应用要求改变时 概念模型要能很容易的修改和扩充以反映这种变化 4 易于向各种数据模型转换 按照上述要求 传统的数据模型 网状 层次和关系模型 都不适合作概念模型 在数据库的概念设计中 通常采用E R数据模型来表示数据库的概念结构 E R数据模型将现实世界的信息结构统一用属性 实体以及它们之间的联系来描述 2采用E R方法的概念设计步骤 采用E R方法进行概念设计 可分为三步进行 1 局部E R模式设计 2 全局E R模式设计 3 全局E R模式的优化和评审 1 局部E R模式设计 否 进入全局E R模式设计 图5 18 2 全局E R模式设计 是 否 是 否 进入全局E R模式优化 图5 19 3 全局E R模式的优化和评审 实体类型的合并冗余属性的消除冗余联系的消除 3数据库概念设计总结 用E R数据模型进行概念设计 首先必须根据需求说明 确认实体 联系和属性 采用E R方法进行数据库的概念设计 可以分成三步进行 首先设计局部E R图 然后合并各局部E R图 并解决可能存在的冲突 得到初步E R图 最后修改和重构初步E R图 消除其中的冗余部分 得到最终的全局基本E R图 即概念模式 设计全局E R模式的目的不在于把若干局部E R模式形式上合并为一个E R模式 而在于消除冲突使之成为能够被全系统所有用户共同理解和接受的统一的概念模型 在需求分析和逻辑设计之间增加概念设计阶段 使设计人员仅从用户角度看待数据及处理要求和约束 产生一个反映用户观点的概念模式 这样做有三个好处 1 数据库设计各阶段的任务相对单一化 设计复杂程度得到降低 便于组织管理 2 概念模式不受特定DBMS限制 也独立于存储安排 因而比逻辑设计得到的模式更为稳定 3 概念模式不含具体的DBMS所附加的技术细节 更容易为用户所理解 因而能准确反映用户的信息需求 5 2 4数据库逻辑设计 由于DBMS一般采用关系模型 因此数据库的逻辑设计 就是将概念设计中所得到的E R图转换成等价的关系模式 概念设计是对客观世界的描述 与实现无关 而逻辑设计依赖于实现的基础DBMS 图5 24 1关系数据库的逻辑设计过程 关系数据库的逻辑设计过程如图所示 图5 25 2E R模型转换为关系模型 关系数据据库的逻辑结构由一组关系模式组成 因而从概念结构到关系数据库逻辑结构的转换就是从E R图转换为关系模式 具体转换方法将在下一节详述 5 2 5物理设计 目标提高数据库的性能 特别是满足主要应用的性能要求 有效地利用存储空间 物理设计的步骤存储记录结构设计确定数据存放位置存取方法的设计完整性和安全性考虑程序设计 5 2 6数据库的实现 根据逻辑设计和物理设计的结果 在计算机系统上建立起实际数据库结构 装入数据 测试和试运行的过程称为数据库的实现阶段 实现数据库应做的主要工作用DDL定义数据库结构 组织数据入库 对数据量不大的小型系统 人工 主要工作 筛选数据 转换数据格式 输入数据 校验数据 对大中型系统 自动 主要工作 筛选数据 输入数据 校验数据 转换数据 综合数据 编制与调试应用程序 数据库试运行 功能测试性能测试 时空代价 5 2 7数据库的运行与维护工作 主要任务 数据库的转储和恢复数据库安全性 完整性控制数据库性能的监督 分析和改进数据库的重组织和重构造 5 3 1ER模型概述 什么是ER模型ER模型的历史ER模型的基本元素实体联系属性例子 实体 联系 属性 ER模型图例 连线 5 3 2属性的分类 基本属性和复合属性 可否再分 单值属性和多值属性 对一个实体对象是否只能取一个值 多值属性的处理将原来的多值属性用几个新的单值属性来表示 将原来的多值属性用一个新的实体类型表示导出属性空值 零件编码 5 3 3联系的设计之一 联系集联系集是n n 2 个实体集上的数学关系 这些实体集不必互异 如果E1 E2 En为n个实体集 那么联系集R是 e1 e2 en e1 E1 e2 E2 en En 的一个子集 而 e1 e2 en 是一个联系 联系的元数一个联系涉及到的实体集个数联系的连通词联系涉及到的实体集之间实体对应的方式实体的基数有两个实体集E1和E2 E1中每个实体与E2中有联系实体的数目的最小值min和最大值max 称为E1的基数 用 min max 形式表示 5 3 4ER模型的操作包括实体类型 联系类型和属性的分裂 合并 增删等等 5 3 5采用ER方法的数据库概念设计之设计局部ER模式 局部模式 现有的教学管理系统 初步分析系统的对象 根据服务种类分析教师子模块 局部ER图 其他局部模式 现有的教学管理系统 初步分析系统的对象 根据服务种类分析学生子模块 局部ER图 其他局部模式 现有的教学管理系统 初步分析系统的对象 根据服务种类分析课程子模块 局部ER图 5 3 5采用ER方法的数据库概念设计之设计全局ER模式 5 3 5采用ER方法的数据库概念设计之全局ER模式的优化 实体类型的合并1 1联系的两个实体类型具有相同键的实体类型冗余属性的消除冗余联系的消除 利用规范化理论中函数依赖的概念消除冗余联系 例子 三个局部ER图合并成一个ER图 5 4 1ER图转换成关系模式集的规则 将每个实体类型转换成一个关系模式 实体的属性即为关系模式的属性 实体标识符即为关系模式的键 ER图转换成关系模式集的规则 二元联系类型的转换若实体间联系是1 1 可以在两个实体类型转换成的两个关系模式中任意一个关系模式的属性中加入另一个关系模式的键和联系类型的属性 若实体间联系是1 N 则在N端实体类型转换成的关系模式中加入1端实体类型的键和联系类型的属性 若实体间联系是M N 则将联系类型也转换成关系模式 其属性为两端实体类型的键加上联系类型的属性 而键为两端实体键的组合 ER图转换成关系模式集的规则 一元联系类型的转换 同二元联系三元联系类型的转换总是将三元联系类型转换成关系模式 其属性为三端实体类型的键加上联系类型的属性 而键为三端实体键的组合 ER模型到关系模型的转换实例 ER模型到关系模型的转换实例 零件 零件号 零件名 规格 组成 零件号 子零件号 数量 仓库 仓库号 仓库名 地址 商店 商店号 商店名 商品 商品号 商品名 进货 商店号 商品名 仓库号 日期 数量 5 4 2采用ER方法的逻辑设计步骤 例1库存销售信息管理系统的ER模型及转换 库存系统ER图 车间 车间号 车间名 主任名 产品 产品号 产品名 单价 仓位 仓位号 地址 主任名 客户 客户号 客户名 联系人 电话 地址 税号 账号 销售员 销售员号 姓名 性别 学历 业绩 实体 入库 入库单号 入库量 入库日期 经手人 车间号 仓位号 产品名 出库 出库单号 出库量 出库日期 经手人 客户号 产品名 仓位号 订单 订单号 数量 折扣 总价 订单日期 产品号 客户号 销售员号 存储 仓位号 产品号 核对日期 核对员
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- DB42-T 2014-2023 导轨式胶轮系统交通工程技术规程
- 2025甘肃平凉第二批市直单位公益性岗位工作人员招聘37人模拟试卷及完整答案详解1套
- 小学六年级分数四则混合运算专项训练题
- 叶片结构设计创新-洞察及研究
- 张正勤律师的培训课件
- 2025年山东地区济南鲁源电气集团有限公司等28家企业高校毕业生招聘约140人(第三批)模拟试卷附答案详解(典型题)
- 2025黑龙江牡丹江市东宁市环境卫生中心招聘公益性岗位2人模拟试卷及完整答案详解一套
- 2025湖北经济学院后勤集团招聘1人模拟试卷及答案详解1套
- 岩溶洞穴形态演变机制-洞察及研究
- 人工智能在风险预警中的应用-洞察及研究
- 2025年中小学心理健康教育试卷及答案
- 2025年年少先队知识竞赛考试真题题库及答案
- 高中语文-“病句辨析”模块“语序不当”知识点
- 2025年厦大《诚信复试承诺书》
- 外泌体课件教学课件
- 粮食培训考试题及答案
- 老年人护理冷热应用课件
- 政府法律顾问聘用合同
- 2025年共青团入团考试测试题库及答案
- 低空经济产业园产学研融合方案
- 2025年秋季学期安全主题班会教育记录
评论
0/150
提交评论