当前位置:文档之家› 第六章 概要设计说明书的编写

第六章 概要设计说明书的编写


6.2.2 总体设计

在概要设计说明书的总体设计部分,要说明 系统的需求规定、运行环境、基本设计概念 和处理流程、模块结构等。分别叙述如下:
1.需求规定

将需求规定形成为一个文档,序号为S2-1。
在需求规定中,说明对本系统的主要的输入、输出、处理的 功能性能要求。见需求说明书的有关章节。
2.运行环境
⑨ 审查和复审

最后应该对概要设计的结果进行严格的技 术审查,在技术审查通过之后再由使用部门 的负责人从管理角度进行复审。
6.2 概要设计说明书的内容要求与 编写指南

概要设计的文档可以围绕下列主要的设计任务来安排编制内容:
用系统流程图来表达软件系统的处理流程,即数据在设定
的系统中,各种物理构成元素之间的流动状况。
返回
② 选取合理的方案

应该从前一步得到的一系列供选择的方案中选取若 干个合理的方案,通常至少选取低成本、中等成 本和高成本的三种方案。在判断哪些方案合理时应 该考虑在问题定义和可行性研究阶段确定的工程规 模和目标,有时可能还需要进一步征求用户的意
见。

对每个合理的方案分析员都应该准备系统流程图、 组成系统的物理元素清单、成本/效益分析、实现 这个系统的进度计划等四份资料。
④ 功能分解

为了最终实现目标系统,必须设计出组成这个系统 的所有程序和文件(或数据库)。对程序 (特别是 复杂的大型程序)的设计,通常分为两个阶段 完成:首先进行结构设计,然后进行过程设计。
结构设计确定程序由哪些模块组成以及这些模块之间
的关系;
过程设计确定每个模块的 处理过程。结构设计是概要

将运行环境形成为一个文档,序号为S2-2。
在运行环境中,简要地说明对本系统的运行环境(包括硬件 环境和支持环境)的规定。见需求说明书的有关章节。
3.基本设计概念和处理流程
基本设计概念和处理流程,说明本系统的基本设计 概念和处理流程,尽量使用图表的形式。
4.概要设计模块结构图与描述表
这部分包括三种图表:模块结构图、模块描述表及 功能需求—模块关系表。

①模块结构图用框图的形式说明本系统的系 统元素(各层模块、子程序、公用程序等)的划 分,分层次地给出各元素之间的控制与被控 制关系。

②模块描述表说明模块的启动条件、输入、 输出及功能。模块描述表设计为如下格式:

③功能需求—模块关系表说明功能需求与程序的关 系,用一张如下的矩阵图说明各项功能需求的实现 同各块程序的分配关系:
⑥ 数据库设计

对于需要使用数据库的那些应用领域,分析员应 该在需求分析阶段对系统数据要求所做的分析的基 础上进一步设计数据库。数据库设计通常包括下述 四个步骤:

(1)模式设计 (2)子模式设计 (3)完整性和安全性设计 (4)优化 .
(1)模式设计

模式设计的目的是确定物理数据库结构。第 三范式形式的实体及关系数据模型是模式设 计过程的输入,模式设计的主要问题是处理 具体的数据库管理系统的结构约束。
说明对系统施加不同的外界运行控制时,所引起的 各种不同的运行模块组合,说明每种运行所历经的 内部模块和支持软件。

(2)运行控制 说明每一种外界的运行控制的方式方法和操作步骤。 (3)运行时间 说明每种运行模块组合将占用各种资源的时间。

6.2.6 系统出错处理与安全保密维 护设计




(1)出错信息 用一览表的方式说明每种可能的出错或故障情况出现时,系 统输出信息的形式、含意及处理方法。 (2)补救措施 (3)安全保密设计 说明将对不同的访问者分别对待而获得的系统安全保密的设 计考虑。 (4)维护设计 说明为了系统维护的方便而在程序内部设计中作出的安排, 包括在程序中专门安排用于系 统的检查与维护的检测点和 专用模块。



③编写概要设计说明书、用户手册、制定测试计 划。
6.1.2 概要设计的步骤

在概要设计阶段要先进行系统设计,复审 系统计划和需求分析,确定系统具体的实施 方案,然后进行结构设计,确定软件结构, 一般步骤如下:
① 设想供选择的方案 ② 选取合理的方案 ③ 推荐最佳方案
④ 功能分解
⑤设计软件结构 ⑥数据库设计 ⑦制定测试计划 ⑧书写文档 ⑨审查和复审
返回
6.3 概要设计说明书编写示例

请同学们参考教材第95页至106页。 简单讲解。



本章首先概述了概要设计的任务和进行概要 设计的步骤,阐述了概要设计的内容要求与 编写要点,重点是要熟练运用CASE工具绘 制系统流程图和模块结构图,运用CASE工 具进行数据库的设计。最后给出了概要设计 说明书的一个完整的例子。
概要设计说明书

概要设计说明书一般包括引言、总体设计、接口设 计、运行设计、系统数据结构设计、系统出错处理 设计等六部分,设计概要设计说明书目录如下: [项目名称]


概要设计说明书 本报告说明确定软件系统的总体结构、数据结构、及 其他全局性的考虑,所设计的系统应覆盖既定的软件需 求,经过评审通过后,本说明是后续实现的根据。
(2)子模式设计

子模式是用户使用的数据视图。
(3)完整性和安全性设计
指完整性约束条件及用户鉴定标识,存
取控制、视图和密码存储等设计。
(4)优化
主要目的是改进模式和子模式,以优化
数据的存取。
⑦ 制定测试计划

在软件开发的早期阶段考虑测试问题,能促 使软件设计人员在设计时注意提高软件的可 测试性。


6.2.4 系统数据结构设计

用数据结构图、数据结构描述表、数据结 构—模块关系表这三种表来表示数据结构设 计。

数据结构描述表的表头如下,在其中要说明 被描述的数据结构隶属于哪个数据结构图。

对应于一张数据结构图,可能有多张数据结构描述 表,具体的数据结构描述表设计为如下格式,其中 要说明数据结构的类型、组成元素(序号、名称、标 识符、类型、长度等)。

设想供选择的方案的一种常用的方法是:
设想数据流图中的处理分组的各种可能 的方法,抛弃在技术上行不通的分组方 法(例如,组内不同处理的执行时间不相容), 余下的分组方法代表可能的实现方法,
并且可以启示供选择的物理系统。

在概要设计的这个步骤中分析员仅仅一个 边界一个边界地设想并且列出供选择的方案, 并不评价这些方案。
① 设想供选择的方案

如何实现要求的系统呢?在概要设计阶段分析 员应该考虑各种可能的实现方案,并且力求 从中选出最佳方案。在概要设计阶段开始时 只有系统的逻辑模型,分析员有充分的自由 分析比较不同的物理实现方案,一旦选出了 最佳的方案,将能大大提高系统的性能/价 格比。

需求分析阶段得出的数据流图是概要设计的 极好的出发点。数据流图中的某些处理,可 以逻辑地归并在一个自动化边界内作为一组, 另一些处理可以放在另一个自动化边界内作 为另一 组。这些自动化边界通常意味着某种 实现策略。
用模块结构层次图来表达软件总体的模块结构组织,模块
结构一方面要表达系统功能模块的划分,另一方面要表达
模块之间的调用关系或者组成关系。
用适当的图形和说明来表达存储数据结构的数据模型。设
计的出发点是分析阶段得到的数据概念模型,构 集合或者各种形式的数据库数据模型。

(2)补救措施
说明故障出现后可能采取的变通措施,包括: ①后备技术,说明准备采用的后备技术,当原始系统数据 万一丢失时,启用副本的建立和启动技术,例如,周期性地 把磁盘信息记录到磁带上去就是对于磁盘媒体的一种 后备 技术。 ②降效技术,说明准备采用的后备技术,使用另一个效率 稍低的系统或方法来求得所需结果的某些部分,例如,一个 自动系统的降效技术可以是手工操作和数据的人工记录。 ③恢复及再启动技术,说明将使用的恢复及再启动技术, 使软件从故障点恢复执行或使软件从头开始重新运行的方法。

6.2.1 引言

引言说明概要设计说明书的编写目的、背 景、定义,列出参考资料。
(1)编写目的 说明编写这份概要设计说明书的目的,指出 预期的读者。 (2)背景 用以说明待开发软件系统的名称;列出此项 目的任务提出者、开发者、用户以及将运行该 软件的计算站(中心)。 (3)定义 列出本文件中用到的专门术语的定义和外文 首字母组词的原词组。
模块结构图可能有多个,每个模块结构图都应该有 相应的模块描述表及功能需求—模块关系表。
6.2.3 接口设计

在接口设计中,要说明用户接口、外部接口 和内部接口等。

①用户接口,说明将向用户提供的命令和它 们的语法结构以及软件的回答信息。 ②外部接口,说明本系统同外界的所有接口 的安排,包括软件与硬件之间的接口、本系 统与各支持软件之间的接口关系。 ③内部接口,说明本系统之内的各个系统元 素之间接口的安排。
设计阶段的任务,过程设计是详细设计阶段的任务。

为确定软件结构,需要从实现角度把复杂的 功能进一步分解。分析员结合算法描述仔细 分析数据流图中的每个处理,如果一个处理 的功能过分复杂,必须把它的功能适当地分 解成一系列比较简单的功能。一般说来,经 过分解之后应该使每个功能对大多数程序员 而言都是明显易懂的。功能分解导致数据流 图的进一步细化,同时还应该用IPO图或其 他适当的工具简要描述 细化后每个处理的算 法。
⑤ 设计软件结构

通常程序中的一个模块完成一个适当的子功
能。应该把模块组织成良好的层次系统,顶层模块
调用它的下层模块以实现程序的完整功能,每个下 层模块再调用更下层的模块,从而完成程序的一个 子功能,最下层的模块完成具体的功能。软件
结构(即由模块组成的层次系统)可以用层次 图或结构图来描绘。
相关主题