第8章数据库系统的概要设计 宁可、吴菁、胡海编著 教材:数据库技术及应用2006年4月
第8章 数据库系统的概要设计 教材:数据库技术及应用 2006年4月 宁可、吴菁、胡海编著
本章要点 系统概要设计概述 数据库的概念设计 模块化设计 概要设计的图形工具 ·系统概要设计说明 ·运用 Powerdesigner工具建立概念数据模型 TT1
本章要点 • 系统概要设计概述 • 数据库的概念设计 • 模块化设计 • 概要设计的图形工具 • 系统概要设计说明 • 运用Powerdesigner工具建立概念数据模型
目录 8.1系统概要设计概述 8.1.1软件系统的概要设计 8.1.2数据库系统的概要设计 8.2数据库的概念设计 832.1数据库概念设计的步骤 822实体-联系图 82、3数据抽象、局部视图的设计 824视图的集成 83模块化设计 8.3.1模块化设计的基本原则 832内聚与耦合 83、3模块分解时应遵循的准则 84概要设计的图形工具 841层次图 842IPO图
目 录 8.1 系统概要设计概述 8.1.1 软件系统的概要设计 8.1.2 数据库系统的概要设计 8.2 数据库的概念设计 8.2.1 数据库概念设计的步骤 8.2.2 实体-联系图 8.2.3 数据抽象、局部视图的设计 8.2.4 视图的集成 8.3 模块化设计 8.3.1 模块化设计的基本原则 8.3.2 内聚与耦合 8.3.3 模块分解时应遵循的准则 8.4 概要设计的图形工具 8.4.1 层次图 8.4.2 IPO图
目录 85系统概要设计说明 86运用 Powerdesigner建立概念数据模型 87应用实例 小结
目 录 8.5 系统概要设计说明 8.6 运用Powerdesigner建立概念数据模型 8.7 应用实例 小结
81系统概要设计概述 经过需求分析阶段以后,已经知道系统 必须“做什么”了,但还不知道系统该“怎 么做”。概要设计的基本目的是要回答“概 括地说,系统应该如何做?这个问题。因此, 有时也称概要设计为初步设计或总体设 计
8.1 系统概要设计概述 经过需求分析阶段以后,已经知道系统 必须“做什么”了,但还不知道系统该“怎 么做” 。概要设计的基本目的是要回答“概 括地说,系统应该如何做?”这个问题。因此, 有时也 称概 要设 计为 初步 设计或 总体 设 计
8.1.1软件系统的概要设计 软件系统的生命周期可分为制定计划、需求分析、设计、程序编制、 测试以及运行维护等阶段。在软件系统的开发过程中,经过制定计划、 需求分析阶段后,软件开发的下一阶段就是进行系统设计。 系统设计阶段通常可以划分为两个子阶段:概要设计和详细设计 概要设计的主要任务是回答“系统总体上应该如何做?,即将分析模 型映射为具体的软件系统结构,进行模块划分,确定每个模块的功能、 接口以及模块间的调用关系。详细设计则将概要设计的结果具体化 即为每个模块设计实现的细节。为了完成系统设计的任务,系统设计 人员通常根据分析阶段采用的分析方法的不同,采用不同的设计方法。 如针对分析阶段系统分析人员采用的分析方法的不同(如面向数据建 模、面向功能建模或面向对象建模等方法),系统设计的方法也不同 (相应的有面向数据的设计,面向功能的设计和面向对象的设计等)
8.1.1 软件系统的概要设计 软件系统的生命周期可分为制定计划、需求分析、设计、程序编制、 测试以及运行维护等阶段。在软件系统的开发过程中,经过制定计划、 需求分析阶段后,软件开发的下一阶段就是进行系统设计。 系统设计阶段通常可以划分为两个子阶段:概要设计和详细设计。 概要设计的主要任务是回答“系统总体上应该如何做?”,即将分析模 型映射为具体的软件系统结构,进行模块划分,确定每个模块的功能、 接口以及模块间的调用关系。详细设计则将概要设计的结果具体化, 即为每个模块设计实现的细节。为了完成系统设计的任务,系统设计 人员通常根据分析阶段采用的分析方法的不同,采用不同的设计方法。 如针对分析阶段系统分析人员采用的分析方法的不同(如面向数据建 模、面向功能建模或面向对象建模等方法),系统设计的方法也不同 (相应的有面向数据的设计,面向功能的设计和面向对象的设计等)
1.结构化设计方法的设计步骤 (1)数据设计,数据设计的任务是从分析阶段得到的数据流图和 数据字典出发,设计出相应的数据结构 (2)软件结构设计,软件结构设计的任务是定义系统的主要结构 元素之间的关系,通常是从数据流图出发,对数据流图进行分析, 得出软件的层次化模块结构图 (3)接口设计,软件结构设计的任务是描述系统内部、系统与系 统之间以及系统与用户之间如何进行通信,接口包含数据流和控 制流信息。 (4)过程设计,过程设计是从分析阶段得到的过程规格说明出 发,得出系统中各个功能的过程化描述
1.结构化设计方法的设计步骤: (1)数据设计,数据设计的任务是从分析阶段得到的数据流图和 数据字典出发,设计出相应的数据结构。 (2)软件结构设计,软件结构设计的任务是定义系统的主要结构 元素之间的关系,通常是从数据流图出发,对数据流图进行分析, 得出软件的层次化模块结构图。 (3)接口设计,软件结构设计的任务是描述系统内部、系统与系 统之间以及系统与用户之间如何进行通信,接口包含数据流和控 制流信息。 (4)过程设计,过程设计是从分析阶段得到的过程规格说明出 发,得出系统中各个功能的过程化描述
2.面向对象设计方法的设计步骤 (1)对象设计,把所有的对象都归为各种类,每个类都定义了 组数据和方法。数据用于表示对象的静态属性,即描述对象的状 态信息;方法是对象所能执行的操作,也就是类中所能提供的服 务 (2)子系统设计,子系统设计是根据实际系统的需要,按照子类 (也称为派生类)和父类(也称为基类)的关系,可以把若干个 类组成一个层次结构的系统。 (3)消息设计,消息设计是描述对象之间如何通过传递消息进行 通信, (4)方法设计,从系统的功能模型和行为模型出发,得出各个类 的方法及其实现细节
2.面向对象设计方法的设计步骤: (1)对象设计,把所有的对象都归为各种类,每个类都定义了一 组数据和方法。数据用于表示对象的静态属性,即描述对象的状 态信息;方法是对象所能执行的操作,也就是类中所能提供的服 务。 (2)子系统设计,子系统设计是根据实际系统的需要,按照子类 (也称为派生类)和父类(也称为基类)的关系,可以把若干个 类组成一个层次结构的系统。 (3)消息设计,消息设计是描述对象之间如何通过传递消息进行 通信,。 (4)方法设计,从系统的功能模型和行为模型出发,得出各个类 的方法及其实现细节
8.1.2数据库系统的概要设计 对于基于结构化的数据库系统开发方法而言,数据库系统在完成 需求分析之后应进入数据库系统的概要设计阶段,此阶段不仅需要 进行数据库概念结构设计(也可简称数据库概念设计)工作,即数 据库结构特性设计;而且还需要确定数据库系统的软件系统结构, 进行模块划分,确定每个模块的功能、接口以及模块间的调用关系, 即进行数据库行为特性的设计过程。 数据库概念结构设计是将系统需求分析得到的用户需求抽象为 信息结构过程。只有将系统应用需求抽象为信息世界的结构,也就 是概念结构后,才能转化为机器世界中的数据模型,并用DBMS实现 这些需求
8.1.2 数据库系统的概要设计 对于基于结构化的数据库系统开发方法而言,数据库系统在完成 需求分析之后应进入数据库系统的概要设计阶段,此阶段不仅需要 进行数据库概念结构设计(也可简称数据库概念设计)工作,即数 据库结构特性设计;而且还需要确定数据库系统的软件系统结构, 进行模块划分,确定每个模块的功能、接口以及模块间的调用关系, 即进行数据库行为特性的设计过程。 数据库概念结构设计是将系统需求分析得到的用户需求抽象为 信息结构过程。只有将系统应用需求抽象为信息世界的结构,也就 是概念结构后,才能转化为机器世界中的数据模型,并用DBMS实现 这些需求
1.数据库概念结构的特点 概念结构是独立于数据库逻辑结构和具体DBMS所支持的数据库 其主要特点是: (1)概念模型是对现实世界的一个抽象描述 概念模型应能真实、充分地反映现实世界,能满足用户对数据的 处理要求。 (2)概念模型应当易于理解。 概念模型只有被用户理解后,才可以与设计者交换意见,参与数 据库的设计 (3)概念模型应当易于更改。 由于现实世界(应用环境和应用要求)会发生变化,这就需要 改变概念模型,易于更改的概念模型有利于修改和扩充。 (4)概念模型应易于向数据模型转换 概念模型最终要转换为数据模型。设计概念模型时应当注意, 其有利于向特定的数据模型转换
1.数据库概念结构的特点 概念结构是独立于数据库逻辑结构和具体DBMS所支持的数据库, 其主要特点是: (1)概念模型是对现实世界的一个抽象描述。 概念模型应能真实、充分地反映现实世界,能满足用户对数据的 处理要求。 (2)概念模型应当易于理解。 概念模型只有被用户理解后,才可以与设计者交换意见,参与数 据库的设计。 (3)概念模型应当易于更改。 由于现实世界(应用环境和应用要求)会发生变化,这就需要 改变概念模型,易于更改的概念模型有利于修改和扩充。 (4)概念模型应易于向数据模型转换 概念模型最终要转换为数据模型。设计概念模型时应当注意, 使其有利于向特定的数据模型转换