王珊萨师煊课件第07章数据库设计

上传人:E**** 文档编号:91066051 上传时间:2019-06-21 格式:PPT 页数:83 大小:416KB
返回 下载 相关 举报
王珊萨师煊课件第07章数据库设计_第1页
第1页 / 共83页
王珊萨师煊课件第07章数据库设计_第2页
第2页 / 共83页
王珊萨师煊课件第07章数据库设计_第3页
第3页 / 共83页
王珊萨师煊课件第07章数据库设计_第4页
第4页 / 共83页
王珊萨师煊课件第07章数据库设计_第5页
第5页 / 共83页
点击查看更多>>
资源描述

《王珊萨师煊课件第07章数据库设计》由会员分享,可在线阅读,更多相关《王珊萨师煊课件第07章数据库设计(83页珍藏版)》请在金锄头文库上搜索。

1、数据库设计,1 概述 2需求分析 3概念结构设计 4逻辑结构设计 5物理结构设计 6数据库实施和维护,问题,一个“材料供应管理系统”完整的问题描述如下: 随着企业的发展,需要处理的大量的日常信息。希望建立一个基于网络的材料供应管理系统,它能够处理日常事件并采取相应的措施。这些日常事件包括:各种计划、文件资料、帐目、各种合同和报表的管理。并根据不同用户的需要,系统会提供相应的输出信息。,明确用户使用的应用系统应该具有怎样的特点?,使用计算机程序完成(替)用户对数据的处理或存储,将人力从繁重的数据处理工作中解脱出来。 即,本来由人工通过繁琐的处理(操作)才能实现的工作通过计算机应用系统可以高效地完

2、成,但是应用系统不可能进行创造。,因此,材料供应管理系统仅仅实现的是通过计算机程序来完成对数据的处理和存储。,故开发材料供应管理系统需要从数据的存储和数据的处理来考虑。,背景知识,在第1章中,介绍的数据抽象建模的过程是怎样的?,数据模型从用户和计算机角度分别可以分为哪两类?,数据库系统内部分为哪三个层次?,外模式(子模式或用户模式)是从哪个角度来描述数据的?,模式是从哪个角度来描述数据的,内模式呢?,概念模型和数据模型。,外模式,模式和内模式。,某类用户(某个应用)的局部数据的逻辑结构和特征。,模式统一地考虑了所有用户的数据需求,将这些数据需求有机的组 合在一起,形成一个逻辑整体,并进行描述和

3、管理。 内模式是数据物理结构和存储方式的描述,是数据在数据库内部的 表示方式。,7.1数据库设计概述,数据库设计的定义:,是指对于一个给定的应用环境,构造(设计)优化的数据库逻辑模式和物理结构,并据此建立数据库及其应用系统,使之能够有效地存储和管理数据,满足各种用户的应用需求,包括信息管理要求和数据操作要求。,信息管理要求:是指数据库中应该存储和管理哪些数据对象; 数据操作要求:是指对数据对象需要进行哪些操作,如查询、增/删、改、统计等操作。,理论知识,数据库设计的目标: 是为用户和各种应用系统提供一个信息基础设施和高效的运行环境,包括:数据库数据的存储效率、数据库存储空间的利用率、数据库系统

4、运行管理的效率等。,数据库设计的特点:,1、数据库建设的基本规律 三分技术熟练的数据库开发技术; 七分管理开发出的数据库要符合企业的组织结构和业 务规则。 十二分数据数据的收集、整理、组织和更新 强调了数据的有效性、可用性和完整性。,因此,数据库设计人员必须非常熟练数据库开发技术,熟悉企业(用户)的组织结构和业务规则。,如果让一个软件公司承担开发该系统的项目,而该软件公司的数据库设计人员,不熟悉企业的组织结构和业务规则,此时数据库的开发应该从何处开始?,2、结构(数据)设计和行为(处理)设计相结合 把系统设计开发的两个方面(数据设计和程序设计)放在同等重要的地位上,在设计过程中结合起来。,了解

5、企业的组织结构和业务规则用户的需求。,数据(库) 设计:,即根据数据抽象建模的过程,逐步实现现实世界向数据库系统的转变,同时注意用户的需求(子模式设计),程序设计:,在设计实现一段程序时,首先需要解决的问题是什么?例如:编程实现任意给定一个自然数n,求出n以内的所有素数。,1、首先,理解题目的要求 输入一个自然数n,得到n以内的所有素数,并输出结果。 2、程序需要有几部分功能 数据输入,结果输出,素数计算3个功能。 3、各部分功能应该如何实现 如何实现数据输入(从文件还是从屏幕),格式是什么。,如何实现结果输出(屏幕显示还是存放在文件中),格式是什么。 如何实现素数的查找,算法是什么。 4、程

6、序的整体结构怎样 数据输入,结果输出,素数计算3个功能在程序中的联系是什么。 程序的结构怎样。 5、编码实现 6、运行验证,在程序设计中如何实现一个具体题目的要求,因此需要 审题获得要求(需求); 程序应该有哪几部分功能组成功能分析 它们之间的联系和相互关系是什么功能设计 采用哪些算法,如何输入/输出,对数据有什么要求,用户如何使用等应用设计 编码实现应用开发 运行系统,是否满足了题目的要求调试,程序(应用系统)设计过程图示:,将数据和程序分开设计结构化设计方法(技术)。,面向对象的应用系统设计,对象:现实世界中的事物的抽象。例如,人,1、包含了所有个体人的属性(数据)和行为(处理过程)的概括

7、抽象。 2、在没有指定某一个具体的人时,抽象出来的总体的人是没有具体意义。 3、当指定一个具体的人时,他应该具有总体抽象人的属性和行为,也应该具有他本身的特殊属性和行为。,注意:具体的面向对象的分析和设计方法,请参照软件工程的相关书籍。,数据库设计的基本步骤:,为什么数据库设计要经历这些阶段,如不经历这些阶段会发生怎样的情况?,降低软件开发的风险。否则 可能会大大增加软件开发的成本; 开发出的软件可能不能满足用户的需要。,整个过程是一个不断改进的过程,原因有: 系统软件没能很好地解决用户的需要,需要改进; 系统的开发需要时间,随着时间的推移,用户的需求可能发生变更。,回到前面的问题(材料供应管

8、理系统),既然开发材料供应管理系统需要从数据的存储和数据的处理来考虑,那么,首先应该解决哪些问题?,1、系统需要处理哪些数据以及数据的结构怎样; 2、在企业的业务活动中数据的流动情况。,7.2需求分析,主要内容: 获得需求; 需求分析。,问题:一个不熟悉用户组织结构和业务规则的软件开发商(承担数据库应用系统的开发),如何才能开发出适用用户的应用系统?,7.2.1获得需求,1、在软件业内,什么是需求,有什么特点?,1997年,IEEE软件工程标准词汇表中定义需求为: 用户解决问题或达到目标所需的条件或权能; 系统或系统部件要满足合同、标准、规范或其他正式规定文档所需具有的条件或权能; 一种反映上

9、述所描述的条件或权能的文档说明。,2、需求包括: 业务需求 反映了组织机构或客户对系统、产品高层次的目标要求; 用户需求 用户使用产品必须要完成的任务; 功能需求 开发人员必须实现的软件功能。,所有获得的需求形成需求规格说明(书),是需求获得阶段的主要成果。,3、一个好的需求应该具有的特点: 完整性必须将所要实现的功能描述清楚; 正确性准确地陈述要开发的功能; 可行性在已知系统和环境限制范围内可以实施的。 必要性 划分优先级 无二义性 可验证性,4、需求的获取 具体步骤如下: 调查组织机构情况,各部门的职责等; 调查各部门的业务活动情况,包括了解部门输入和使用的数据,数据的格式,流向; 在熟悉

10、业务活动的基础上,协助用户明确对新系统的各种要求,包括信息要求、处理要求、安全要求与完整性要求。 确定新系统的边界。确定哪些功能有计算机完成或将来准备让计算机完成,哪些活动由人工完成。由计算机完成的功能是新系统应该实现的功能。,5、需求的获取方法: 跟班作业了解业务活动和流程; 开调查会了解业务活动情况; 请专人介绍; 询问; 设计调查表请用户填写; 查阅记录。,“材料供应管理系统”的部分需求经过处理形成文档(不包括约束条件和测试标准)如下: “材料供应管理系统”的软件允许用户进行系统配置,实施计划管理、合同管理和库存管理之间进行信息交互。 配置操作包括:指定每类计划的编号规则;指定每类合同的

11、编号规则;设置开、关机密码。 当计划管理子系统收到计划数据后,判断是否合理,合理则向合同管理子系统提供报表,并且定期向上级部分提供报表。当合同管理子系统收到报表和发货单数据后,产生合同和入库单。当库存管理子系统接收到入库单、材料文件、通知和单据后,产生核算单,形成修改库存台帐和材料文件。 开机后,系统接收并处理用户指令。,6、需求分析:,背景知识:,主要作用是:根据需求文档,分析数据的结构,数据的流向,系统的功能等。,主要方法: 1、自底向上的方法: 从各种基本业务和数据处理着手,即从一个企业的各个基层业务子系统的业务处理开始,进行分析和设计。 然后将各子系统进行综合和集中,进行上一层系统的分

12、析和设计,将不同的数据进行综合。 最后得到整个信息系统的分析和设计。,2、自顶向下,逐层分解的方法: 是从一般到特殊的开发策略。 它是从一个企业的高层管理着手,分析企业的目标、 对象和策略,构造抽象的高层数据模型。 然后逐步构造越来越详细的描述和模型(子系统的模型)。模型不断地扩展细化,直到能识别特定的数据库及其应用为止。,这两种方法各有优缺点。 在实际的数据库设计开发过程中,常常把这两种方法综合起来使用。 主要介绍自顶向下,逐层分解的方法。,1画出企业的组织结构图分解企业的管理层次; 2画出各个部分的业务流程图了解业务活动; 3确定数据流、处理过程和数据存储; 4确定数据项、数据结构。,自顶

13、向下,逐层分解的方法:,运营总监,财务部,统计分析部,运输部,市场营销部,仓库管理的组织结构图,画出企业的组织结构图,运营总监,财务部,统计分析部,运输部,市场营销部,结算凭证,运货信息,结算凭证报审,车辆调度信息,仓库的组织结构与业务功能关系图,合同报批,合同报批,费用开支报审,画出业务流程图,业务处理单位,业务处理功能描述,表格/报表制作,数据存储,信息传递过程,业务流程图的基本图形符号,收集/统计数据,材料入库业务流程,确定数据流,数据流图的基本符号,自顶向下,逐步细化,第1层数据流图,第2层数据流图,确定处理过程,完成数据流图后,需要对各个处理过程进行描述,描述的语言可以采用结构化语言

14、。例如计划管理处理过程的一个功能描述如下:,确定数据项和数据结构,入库单数据结构: 入库单=入库单编号,材料入库,组成:编号,货物名称,货物数量,仓库名称; 数据项: 入库单编号=入库单编号,标识一个入库单,RKID,字符,10,A-K0-99,A:航空材料;T:铁路材料;确定货物名称,货物数量,仓库名称 货物名称=货物名称,HNAME, 货物数量=货物数量,HSL, 仓库编号=仓库编号,CKID,确定数据存储,例如:入库单台帐=入库单表,存储所有的入库单证,输入:合同管理,输出:库存管理,组成入库单,系统存取并打印单证,经过前面的分析处理,掌握的信息有: 企业内部的业务联系:数据流 业务活动

15、:处理过程 数据:数据项,数据结构,数据存储方式,该需求分析的结果能否正确的反应企业的业务活动,与获得的需求的质量有直接关系,同时也与采用的分析技术有关。,7、数据字典 包括数据项、数据结构,数据流、数据存储和处理过程5部分。 格式如下:,数据项: 数据项描述=数据项名,数据项含义说明,别名,数据类型,长度,取值范围,取值含义,与其他数据项的逻辑关系,数据项之间的联系 数据结构: 数据结构描述=数据结构名,含义说明,组成:数据项或数据结构,数据流: 数据流描述=数据流名,说明,数据流来源,数据流去向,组成:数据结构,平均流量,高峰期流量 数据存储: 数据存储描述=数据存储名,说明,编号,输入的

16、数据流,输出的数据流,组成:数据结构,数据量,存取频度,存取方式 处理过程: 处理过程描述=处理过程名,说明,输入:数据流,输出:数据流,处理:简要说明,入库单数据结构: 入库单=入库单编号,材料入库,组成:编号,货物名称,货物数量,仓库名称; 数据项: 入库单编号=入库单编号,标识一个入库单,RKID,字符,10,A-K0-99,A:航空材料;T:铁路材料;确定货物名称,货物数量,仓库名称 货物名称=货物名称,HNAME, 货物数量=货物数量,HSL, 仓库编号=仓库编号,CKID,成绩管理中几个元素的定义: (1) 数据项名: 成绩 别名: 分数 描述: 课程考核的分数值 定义: 数值型,带一位小数 取值范围:

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号