第9章 数据库系统的详细设计_第1页
第9章 数据库系统的详细设计_第2页
第9章 数据库系统的详细设计_第3页
第9章 数据库系统的详细设计_第4页
第9章 数据库系统的详细设计_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第9章数据库系统的详细设计教材:数据库技术及应用2006年4月宁可、吴菁、胡海编著本章要点系统详细设计概述数据库的逻辑设计数据库的物理设计详细设计的工具用户界面设计系统详细说明运用Powerdesigner建立物理数据模型目录9.1系统详细设计概述

9.1.1软件系统的详细设计

9.1.2数据库系统的详细设计9.2数据库的逻辑设计

9.2.1数据库逻辑设计的过程

9.2.2关系数据库的逻辑设计9.3数据库的物理设计

9.3.1获取数据库系统事务对象的基本信息

9.3.2确定数据库的存取方法

9.3.3确定数据库的存储结构

9.3.4数据的物理结构评价9.4详细设计的工具

9.4.1程序流程图

9.4.2IPO图目录9.5用户界面设计

9.5.1用户界面应具备的特性

9.5.2用户界面的类型

9.5.3数据输入界面设计

9.5.4数据显示界面设计

9.5.5控制界面的设计9.6系统详细设计说明9.7运用Powerdesigner建立物理数据模型小结

9.1系统详细设计概述系统概要设计确定了软件系统的总体结构,详细设计则对概要设计结果进一步细化,即把一个模块的功能逐步分解细化为一系列具体的处理步骤,并给出目标系统的精确描述,以便在编码阶段直接翻译成计算机的程序代码。

9.1.1软件系统的详细设计

1.详细设计的目标与任务详细设计的目标

详细设计阶段将具体地设计目标系统,得出新系统软件的详细规格。同时,要求设计出的规格简明易懂,便于下一阶段用某种程序设计语言在计算机上实现。

(2)详细设计的任务

①算法过程的设计

数据结构的设计

数据库物理设计

测试用例的设计

其他设计

编写“详细设计说明书”

2.详细设计的原则(1)自顶向下,逐步求精。(2)采用结构化程序设计方法,改善控制结构。

结构化程序设计的三种结构,如图9-1所示。是否是否图9-1结构化程序设计的三种结构顺序结构选择结构循环结构9.1.2数据库系统的详细设计对于基于结构化的数据库系统开发方法而言,数据库系统在完成需求分析、概要设计阶段后,需进行数据库系统的详细设计工作,此阶段不仅需要完成对数据库系统的处理过程的详细算法描述和输入输出格式设计,而且还需要进行数据库逻辑结构设计和数据库物理结构设计(也可简称为数据库物理设计)工作。1.数据库逻辑结构设计数据库逻辑结构设计是将一个与计算机软硬件具体性能无关的、也不为任何一个DBMS所支持的全局概念模式(概念模型结构)转换成某个具体DBMS所支持的数据模型。

2.数据库物理结构设计数据库物理结构设计是依据给定的计算机系统,为逻辑数据模型选取一个最适合应用环境的物理结构,包括数据的存储结构和存取方法。

9.2数据库的逻辑设计

数据库逻辑设计的任务是将概念模型结构转换成某个具体DBMS所支持的数据模型,以便开始进入“实现设计”阶段,因此数据库逻辑设计阶段需要考虑到具体DBMS的性能和具体的数据模型特点。

9.2.1数据库逻辑设计的过程

数据库逻辑设计的过程就是概念数据模型向逻辑数据模型的转换过程。通常把概念数据模型向逻辑数据模型的转换过程分为如下几步进行:

把概念数据模型转换成一般的数据模型。

将一般的数据模型转换成某个具体DBMS所支持的数据模型。

通过优化方法将其转化为优化的数据模型。概念数据模型向逻辑数据模型的转换步骤,如图9-2所示。

概念数据模型(E-R图)一般数据模型(关系、网状、层次)

特定的DBMS支持的数据模型优化的数据模型转换规则DBMS限制和特点有化方法图9-2概念数据模型向逻辑数据模型的转换的三个步骤9.2.2关系数据库的逻辑设计概念数据模型向关系数据模型的转换步骤如下:1.初始关系模式的设计首先,从概念结构设计阶段得到的综合E-R图出发,导出初始关系模式来,具体转换原则如下:(1)一个实体转换为一个关系模式,实体的属性就是关系的属性,实体的关键字就是关系的关键字。(2)一个1:1的联系转换为一个关系,则与该联系相连的各实体的关键字以及联系本身的属性均转换为关系的属性,每个实体的关键字是该关系的候选关键字。(3)一个1:n的联系转换为一个关系,则与该联系相连的各实体的关键字以及联系本身的属性均转换为关系的属性,而n端实体的关键字是关系的关键字。(4)一个m:n联系转换为一个关系。则与该联系相连的各实体的关键字以及联系本身的属性均转换为关系的属性,联系两端各实体关键字的组合组成关系的关键字(组合关键字)。2.关系数据库逻辑结构的设计检查数据库关系模式是否满足用户的要求,如疏漏的要新增关系或属性,如性能不好的要采用合并、分解或选用另外结构等。(1)合并合并可以减少系统的关系个数,合并的方法如下:①一个1:1的联系可以与任意一端对应的关系模式合并。②一个1:n的联系可与n端对应的关系模式合并。③

具有相同关键字的关系模式可以合并。

(2)分解关系模式虽已达到规范化,但因某些属性过多时,可将它分解成两个或多个关系模式,其中按属性组分解的称为垂直分解。垂直分解要注意,最后得到的每一关系都包含主关键字。3.关系数据模型的优化关系数据库模型的优化通常以规范化理论为指导,即消除异常,保证数据的完整性和一致性,一般达到3NF(第三范式)。此外,在关系数据模型的评价与优化过程中,还需注意以下几点:(1)并不是规范化程度越高的关系就越优。

(2)对关系数据模型的优化是一个反复的过程,即需要经过多次的规范化、合并、分解的过程。

9.3数据库的物理设计数据库物理设计的目标和设计步骤如下:1.数据库物理设计的目标

提高数据库的性能,特别是满足主要应用的性能要求。

有效地利用存储空间。2.数据库物理设计的步骤

获取数据库系统事务对象的基本信息。

确定数据的物理结构,即确定数据库的存取方法和存储结构。

数据的物理结构评价。

9.3.1获取数据库系统事务对象的基本信息为了使设计出的物理数据库结构能满足事务在数据库上运行时响应时间少、存储空间利用率高和事务吞吐率大的要求。有必要在确定数据的物理结构前,对数据库系统运行的事务进行详细地分析,以获取选择优化数据库物理设计策略所需要的参数。需要获取的参数有:1.数据库查询事务

2.数据库更新事务

3.每个事务在各关系上运行的频率和性能要求。

9.3.2确定数据库的存取方法为关系模式选择存取方法的目的是,使事务能快速存取数据库中的数据和满足多用户共享数据的要求。任何数据库管理系统都提供多种存取方法。对于关系数据库而言,一般常用的存取方法有索引方法、聚簇方法和HASH方法等。

1.索引方法选择索引存取方法实际上就是根据应用要求确定对关系的哪些属性列建立索引,哪些属性列建立组合索引,哪些索引建立唯一索引等。索引的选择是数据库物理设计的基本问题之一,也是比较困难的问题。在选择索引过程中,除了需遵循选择索引方法的基本原则外,还有一些选择索引的启发式规则可供参考。2.聚簇方法为了提高某个属性或属性组的查询速度,把这个属性或属性组上具有相同值的元组集中存放在连续的物理块上的处理称为聚簇,这个属性或属性组称为聚簇码。(1)建立聚簇的必要性聚簇功能可以大大提高按聚簇码进行查询的效率。(2)建立聚簇的基本原则一个数据库可以建立多个聚簇,但一个关系只能加入一个聚簇。设计候选聚簇的原则是:①对经常在一起进行连接操作的关系可以建立聚簇。②如果一个关系的一组属性经常出现在相等、比较条件中,则该单个关系可建立聚簇。③如果一个关系的一个(或一组)属性上的值重复率很高,则此单个关系可建立聚簇。④

如果关系的主要应用是通过聚簇码进行访问或连接,而其他属性访问关系的操作很少时,可以使用聚簇。

9.3.3确定数据库的存储结构确定数据的存放位置和存储结构要综合考虑存取时间、存储空间利用率和维护代价三方面的因素。这三个方面常常相互矛盾,需要进行权衡,选择一个折中方案。1.确定数据的存放位置为了提高系统性能,应该根据应用情况将数据的易变部分与稳定部分、经常存取部分和存取频率较低部分分开存放。对于有多个磁盘的计算机,可采用划分技术,提高I/O的并行性。2.确定系统配置每个DBMS产品一般都提供了一些系统配置变量和存储分配参数供设计人员和DBA对数据库进行物理优化。在初始情况下,系统都为这些变量赋予了合理的缺省值。但是这些缺省值不一定适合每一种应用环境。在进行数据库的物理设计时,还需要重新对这些变量赋值,以改善系统的性能。演示9.3.4数据的物理结构评价物理设计过程中需要对时间效率、空间效率、维护代价和各种用户要求进行权衡,其结果可能会产生多种设计方案。数据库设计人员必须对这些方案进行详细地评价,从中选择一个较优的方案作为数据库的物理结构。评价物理数据库的方法完全依赖于所选用的DBMS,主要是从定量估算各种方案的存储空间、存取时间和维护代价入手,对估算结果进行权衡和比较,选择出一个较优的、合理的物理结构。如果该结构不符合用户需求,则需要修改设计。的。

9.4详细设计的工具描述程序处理过程的工具称为详细设计的工具,它们可以采用图形(如程序流程图、盒图等)、表格(如判定表)、语言(如伪代码语言)等工具。每种工具都有优缺点,在设计时可针对不同的情况选用,甚至可以同时采用多种工具来描述设计的结果。但不论是哪类工具,对它们的基本要求都是能提供对设计的无歧义的描述,也就是应该能指明控制流程、处理功能、数据组织以及其他方面的实现细节,从而在编码阶段能把对设计的描述直接翻译成程序代码。本节主要对程序流程图和IPO图进行介绍,其中IPO图不仅可用于系统的概要设计,也可用于系统的详细设计。

9.4.1程序流程图程序流程图也称程序框图,是软件开发者最熟悉的一种算法表达工具。程序流程图绘制简单,方框表示处理,菱形表示逻辑条件,箭头表示控制流方向。图9-8显示了顺序、选择、重复三种基本流程控制结构对应的流程图。图9-8三种基本流程控制结构的流程图是否值1值2值3值4。。。。(a)顺序(b)两路选择(c)多路选择是否是否(d)先判断条件循环

(e)后判断条件循环

9.4.2IPO图IPO图(输入—处理—输出图),是一种描述系统结构和模块内部处理功能的工具。可用于总体设计、详细设计、设计、评审、测试和维护的不同阶段。

图9-9用于对模块进行详细描述的IPO图9.5用户界面设计

用户界面提供了计算机与用户之间的信息接口。用户界面设计是软件设计的重要内容之一,也是用户能否正确、高效地完成任务的因素之一,用户界面设计的优劣可以反映出系统分析与设计的水平。9.5.1用户界面应具备的特性用户界面应具备可使用性、灵活性和可靠性。1.可使用性

(1)使用的简单性(2)术语标准化和一致性

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论