数据库设计方法和概念设计

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

需求分析
主要任务:通过详细调查要处理的对象,包括 某个组织、某个部门、某个企业的业务管理等, 充分了解原手工或原计算机系统的工作概况及 工作流程,明确用户的各种需求,产生数据流 图和数据字典,然后在此基础上确定新系统的 功能,并产生需求说明书。 新系统必须充分考虑今后可能的扩充和改变。 步骤:
用户需求的收集 用户需求的分析 撰写需求说明书
川 大 工 商 : 向 晓 林
收集用户需求
重点:调查、收集和分析用户在数据管理中的 信息需求、处理需求、安全性需求与完整性需 求
信息需求是指用户需要从数据库中获得的信息的内 容和性质。由用户的信息要求可以导出数据要求。 处理需求是指用户要求完成什么处理功能,对某种 要求的响应时间,处理方式是联机处理还是实时处 理等。明确用户的处理要求,将有利于后期应用程 序模块的设计。
川 大 工 商 : 向 晓 林
调查、收集用户需求的具体做法
了解组织机构的情况 了解各部门的业务活动情况 确定新系统的边界
川 大 工 商 : 向 晓 林
调查的方法:跟班作业、咨询业务权威、 设计调查问卷、查阅历史记录等。
必须有用户的参与和配合
分析用户需求
方法:结构化分析方法(SA):采用自顶向下, 逐层分解的方式分析系统,用数据流图 (DFD)、数据字典(DD)描述系统。 使用数据流图分析信息处理过程
川 大 工 商 : 向 晓 林
在每一个设计阶段完成后都要进行设计 分析,评价一些重要的设计指标,与用 户进行交流,如果不满足要求则进行修 改。在设计过程中,这种评价和修改可 能要重复若干次,以求得到理想的结果。 数据库设计的辅助开发工具:CA公司的 ERWin,Sybasde公司的PowerDesign等
需求分析的目标和任务 具体需求说明 系统功能和性能 系统的运行环境 在分析过程中得到的数据流图、数据字典、系统功能 结构图和系统配置图
川 大 工 商 : 向 晓 林
需求说明书完成之后要交用户审查。需要反复, 直到与用户达成一致
概念设计
任务:在需求说明书的基础上,按照特 定的方法把他们抽象为一个不依赖于任 何具体机器的数据模型,即概念模型。
川 大 工 商 : 向 晓 林
产品号
产品 产品名 库存量 M 使用 材料 材料号 价格
M
存放 N 仓库号 仓库
价格
面积
供应部门的局部ER图
地点
合成全局概念模型
集成的方式
多个ER模型一次性集成 逐步集成:首先集成两个关键的分ER图,以后每次 将一个新的分ER图集成进来,直至所有分ER图集成 完备。
数据流图
基本符号:Page 73 数据流图是有层次之分的,越高层次的数据流图表现的业 务逻辑逻辑越抽象,越低层次的数据流图表现的业务逻辑 越具体。 在SA方法中,最高层次的数据流图如下图:
川 大 工 商 : 向 晓 林
川 大 工 商 : 向 晓 林
数据存储
数据来源
数据流
数据流 处理 数据输出
生产部门的Байду номын сангаас务流程
生产查询 查询产品性能 输出查询结果 判断查 询项目 查阅产品用料
川 大 工 商 : 向 晓 林
查询产品零 件一览表
输出产品零 件一览表
编制零件 生产计划
产品性能表
零件用料表
产品零件一览表
供应部门的业务流程图
供应查询 查询产品价格 输出查询结果 判断查 询项目 查阅产品用料
川 大 工 商 : 向 晓 林
川 大 工 商 : 向 晓 林
产品
产品名
M
使用
N
材料
价格 材料名
价格
材料号
川 大 工 商 : 向 晓 林
零件数量 产品号 材料用量
产品
产品名
M
组装
N
零件
材料名 零件名
性能
零件号
生产部门的局部ER图
假设材料分别放在多个仓库中,同时应用中需要 仓库地点或仓库面积等数据。则:供应部门的
局部ER图:
用量 材料名 N
川 大 工 商 : 向 晓 林
要反映更详细的内容,可将处理功能分解为若干 子功能,每个子功能还可继续分解,直到把系统 工作过程表示清楚为止。在处理功能逐步分解的 同时,它们所用的数据也逐级分解,形成若干层 次的数据流图。如下图:
XX系统 子模块1 子模快1.1 … … 子模块2 … … 子模块n ……
川 大 工 商 : 向 晓 林
数据库设计过程:遵循软件的生命周期理论, 分为6个阶段
独立于任何DBMS的阶段
需求分析:与系统用户相互交流,了解他们对数据的需求 及已有的业务流程,并把这些信息用数据流图和数据字典 或文字的形式记录下来,最终与用户对系统的信息需求和 处理需求取得一致。
概念设计:对需求分析中收集的信息和数据进行 分析和抽象,确定实体、属性及他们之间的联系, 将各个用户的局部视图合并成一个总的全局视图, 形成独立于计算机的反映用户需求的概念模型。 目的是描述数据库的信息内容。
处理过程描述={处理过程名、说明、输入:{数据流}、 输出:{数据流}、处理:{简要说明}}
o 简要说明:说明该处理过程的功能和处理要求 功能:该处理过程做什么(不是怎么做) 处理要求:处理频度要求,如:单位时间里处理多少事 务、多少数据量、响应时间的要求等。(这些要求是后 面物理设计的依据及性能评价的标准)
川 大 工 商 : 向 晓 林
川 大 工 商 : 向 晓 林
描述概念模型的工具:ER图 概念设计采用的方法:
自顶向下的方法
先定义全局概念结构框架,然后逐步细化,形成 最终的概念模型
自底向上的方法
首先定义各局部应用的概念结构,然后将它们集 成,形成全局概念结构 在实际设计中使用更多的是自底向上的策略
物理设计:根据DBMS的特点和处理的需求,进 行物理存储的安排,建立索引,形成数据库的内 模式。
数据库的实施:建立实际的数据库结构,装入数 据、完成编码和进行测试,最终使系统投入使用。 数据库的运行和维护:整个数据库生存周期中的 最长的阶段。根据系统运行中产生的问题及用户 的新需求不断完善系统功能和提高系统的性能。
示意图
需求分析 数据抽象、局 部视图的设计 DFD;DD
分ER图
返回用户征求 意见直到满意 为止
视图集成 逻辑设计
总ER图
局部概念模型的设计
步骤
第一步:明确局部应用的范围 第二步:选择实体,确定实体的属性及标识实体的 关键字
在实际应用中,实体和属性是相对的,很难有截然的界限 划分实体的属性时,一般遵循以下的经验性原则:
需求
需求分析 (自顶向下)
需求 需求 需求
…… 需求
需求 需求
川 大 工 商 : 向 晓 林
概念模型
概念结构设计
概念模型
概念模型
概念模型
(自底向上)
概念模型
……
概念模型
概念模型
自底向上的方法分两步进行
o 首先,抽象数据,并建立局部概念模型 o 然后,将局部概念模型合并,建立全局概念模型
川 大 工 商 : 向 晓 林
川 大 工 商 : 向 晓 林
子模块1.n
最高层数据流
数据流图1
数据流图2
… …
数据流图n … …
数据流图1.1 … …
数据流图1.n
川 大 工 商 : 向 晓 林
实例:假设某工厂要设计一个数据库查询系 统。其中:
主管生产的部门:需要要掌握产品的性能、各种 零件的用料,和每种产品的零件组成;并据此编 制工厂的生产计划。 主管供应的部门:需要了解产品的价格、各种零 件的用料情况以及这些材料的价格与库存量;并 据此提出产品的采购计划。
概念模型使设计者能够从复杂的现实细节中 解脱出来,而只集中在重要的信息的组织结 构和处理模式上
川 大 工 商 : 向 晓 林
概念模型的特点及设计方法
特点
是对现实世界的抽象和概括,它真实、充分地反映 了现实世界地事务和事务之间地联系,能满足用户 对数据地处理要求 由于它简洁、明晰、独立于机器,很容易理解,因 此,可以用概念模型和不熟悉计算机地用户交换意 见,使用户能够积极参与数据库地设计工作,保证 设计工作顺利进行。 易于更新 容易向关系、网状、层次等各种数据模型转化
数据库设计方法
数据库系统的设计过程 需求分析 概念设计 逻辑结构设计 物理设计 数据库的实施、运行和维护
川 大 工 商 : 向 晓 林
川 大 工 商 : 向 晓 林
数据库设计:针对一个给定的应用系统,构造 最优的数据库模式,建立数据库及其应用系统, 使之能够有效地存储数据,满足各种用户的应 用需求。包括:
较大系统一般采用此方法。
川 大 工 商 : 向 晓 林
局部概念模型归并一般分为两步:
第一步:先解决各分ER模型之间的冲突,将分ER模 型合并起来生成初步ER模型 第二步:对初步ER模型进行修改,消除步必要的冗 余,生成基本的ER模型
消除冲突,合并分ER模型
冲突
命名冲突
同名异义 异名同义
缺料查询请求
缺料清单
接受查 询数据
计算产 品用料
计算 缺料
使用数据字典汇总各类数据
数据字典是各类数据描述的集合。包含:
数据项 数据结构 数据流:可以是数据项,也可以是数据结构。表示某一处理过 程的输入输出 数据存储:处理过程中存储的数据。常常是手工凭证、手工文 档或计算机文件 处理过程
o 属性是不可再分的数据项,不能再有需要说明的信息。否则, 该属性应定义为实体 o 属性不能再与其它实体发生联系,联系只能发生在实体之间 o 为了简化ER图,现实世界中的对象,凡能够作为属性的尽量 作为属性
川 大 工 商 : 向 晓 林
第三步:确定实体之间的联系,产生局部ER图
供应部门的局部ER图 使用量 产品号 库存量 仓库
查询材料价 格或库存量
产品价格表 接受待查 产品数据 缺料查询 产品用料表 材料价格或库存表
产生“缺料 清单”
编制材料 订货计划
系统功能分解
数据查询系统
川 大 工 商 : 向 晓 林
生产部门子系统
供应部门子系统
供应查询
缺料查询
缺料查询的数据流图
川 大 工 商 : 向 晓 林
产品数据
产品用料表
材料库存
川 大 工 商 : 向 晓 林
描述的内容:
数据项描述={数据项名、数据项含义说明、别名、类型、长度、 取值范围、与其它数据项的逻辑联系} 数据结构描述={数据结构名、含义说明、组成:{数据项或数 据结构}} 数据流描述={数据流名、说明、数据流来源、数据流去向、组 成:{数据结构}、平均流量、高峰期流量} 数据存储描述={数据存储名、说明、编号、输入的数据流、输 出的数据流、组成:{数据结构}、数据量、存取频度、存取方 式}
川 大 工 商 : 向 晓 林
属性冲突
属性取值单位的冲突 属性域冲突
结构冲突
同一对象在局部ER模型中有不同的冲突 同一实体在不同的局部ER模型中所包含的属性不完全相同, 或属性的排列次序不同 实体之间的联系在不同的局部ER模型中类型不一致
川 大 工 商 : 向 晓 林
实例:生产部门和供应部门的局部ER模型 综合后形成的初步ER模型
“材料”与“零件”两个实体之间增加了联 系“消耗” 联系“消耗”增加了属性“消耗量” “产品”实体的属性增加为4个 “零件”实体去掉了属性“材料名”和“耗 用量”
数据库的结构设计:静态的数据模型设计(模式和 子模式设计) 数据设计:应用程序设计(在模型上的动态操作)
一般地:数据库设计是以一个现成的DBMS为 基础开发数据库应用系统
数据库系统的设计过程
数据库设计方法:
新奥尔良法(New Orleans) 规范化方法 基于ER模型的数据库设计方法
川 大 工 商 : 向 晓 林
与具体的DBMS有关的阶段
逻辑设计:在概念模型的基础上导出数据库的逻 辑模型。
o 逻辑模型:可被DBMS所处理的数据库逻辑结构。包 括数据库、记录及记录之间的联系、安全性和一致性 约束等。 o 导出的逻辑结构是否与概念模式一致,从功能和性能 上是否满足用户的需求。要进行模式评价。如果达不 到用户要求,还要反复、修正或进行重新设计。
川 大 工 商 : 向 晓 林
数据描述实例:
数据项 产品名 材料名 库存量 缺料数量 生产数量 类型 字符型 字符型 正整型 正整型 正整型 长度 值范围 20 10 5 5 3 任何字母或数字 任何字母或数字 0∽99999 0∽99999 0∽999
撰写需求说明书
需求分析后建立的文档资料,对开发项目需求分 析的全面描述 需求说明书应该可读性强,无二义性。为数据库 的概念设计和物理设计提供准确和详细的资料。 内容:
相关文档
最新文档