软件工程导论课后习题答案(第五版) 下载本文

4.什么是结构化分析?它的结构化体现在哪里?

结构化分析:使用数据流程图、数据字典、结构化英语、判定表和判定树等工具, 来建立一种新的、称为结构化说明书的目标文档-需求规格说明书。

结构化体现在将软件系统抽象为一系列的逻辑加工单元,各单元之间以数据流 发生关联。

5.软件需求规格说明书由哪些部分组成?

组成包括:

(1) 引言:编写目的、背景说明、术语定义及参考资料等。 (2) 概述主要功能、约束条件或特殊需求。 (3) 数据流图与数据字典。

(4) 用户接口、硬件接口及软件接口。 (5) 性能需求、属性等。

(6) 其它需求,如数据库、操作及故障处理等。

6.为什么数据流图要分层?画分层的 DFD 要遵循哪些原则?

分层的目的:便于逐步细化、结构清晰。 画分层的 DFD 要遵循哪些原则: (1)父图与子图之间数据要平衡。

(2)分解的深度和层次达到使加工足够简单、易于理解的基本加工为止。

(3)区分局部文件和局部外部项(局限于数据流中某一层或某几层的文件和外部 项)。

(4)不要把控制流作为数据流。 (5)忽略琐碎的枝节。

(6)每个数据流要有一个合适的名字,尽量使用现实系统中有具体意义的名字。

7.系统流程图与数据流程图有什么区别?

系统流程图描述系统物理模型的工具,数据流程图描述系统逻辑模型的工具。 系统流程图从系统功能的角度抽象的描述系统的各个部分及其相互之间信息流 动的情况。

数据流程图从数据传送和加工的角度抽象的描述信息在系统中的流动和数据处 理的工作状况。

8.数据字典包括哪些内容?它的作用是什么?

数据字典是描述数据流图中数据的信息的集合。它对数据流图上每一个成分: 数据项、文件(数据结构)、数据流、数据存储、加工和外部项等给以定义和说明;

它主要由数据流描述、加工描述和文件描述三部分组成。对用户来讲,数据字典为他 们提供了数据的明确定义;对系统分析员来讲,数据字典帮助他们比较容易修改已建 立的系统逻辑模型。

9.描述加工逻辑的工具有哪些?

有决策树(又称判定树)、决策表(又称判断表)和结构化语言等。

3-3 银行计算机储蓄系统的工作过程大致如下:储户填写的存款单或取款单由业务 员键入系统,如果是存款则系统记录存款人姓名、住址(或电话号码)、身份证号码、 存款类型、存款日期、到期日期、利率及密码(可选)等信息,并印出存单给储户; 如果是取款而且存款时留有密码,则系统首先核对储户密码,若密码正确或存款时 未留密码,则系统计算利息并印出利息清单给储户。

请用数据流图描绘本系统的功能,并用实体-联系图描绘系统中的数据对象。

E1 储户

F1存款单 F7密码

F5存款信息 P3 核算密码

E2 业务员

F8储蓄利率

P1

记录存款信息

F5存款信息 D1存款信息

P2 打印存单 F3存单 E1 储户

F4利息 P5

打印利息清单

F8储蓄利率

D2存款利率

F5存款信息

F7密码 F2取款单

F4利息

F4利息

F6取款信息

P6 设置利率

P4 计算利息

F8储蓄利率

3-6 复印机的工作过程大致如下:未接到复印命令时处于闲置状态,一旦接到复印 命令则进入复印状态,完成一个复印命令规定的工作后又回到闲置状态,等待下一 个复印命令;如果执行复印命令时发现没纸,则进入缺纸状态,发出警告,等待装 纸,装满纸后进入闲置状态,准备接收复印命令;如果复印时发生卡纸故障,则进 入卡纸状态,发出警告等待维修人员来排除故障,故障排除后回到闲置状态。 请用状态转换图描绘复印机的行为。

从问题陈述可知,复印机的状态主要有“闲置”、“复印”、“缺纸”和“卡纸”。 引起状态转换的事件主要是“复印命令”、“完成复印命令”、“发现缺纸”、“装 满纸”、“发生卡纸故障”和“排除了卡纸故障”。

第五章 总体设计 习题答案

1. 系统设计包括哪两个阶段?

系统设计包括总体设计与详细设计两个阶段。

2. 总体设计的主要任务是什么?

总体设计的主要任务是完成软件结构的设计,确定系统的模块及其模块之

间的关系。

3. 什么是模块?模块具有哪几个特征?总体设计主要考虑什么特征?

模块是数据说明、可执行语句等程序对象的集合,可以单独命名且可通过

名字来访问。

模块具有输入和输出(参数传递)、功能、内部数据结构(局部变量)和程序

代码四个特性。

概要设计主要考虑输入、输出(参数传递)和功能两个特性。 4. 什么是模块化?模块设计的准则?

模块化是按规定的原则将一个大型软件划分为一个个较小的、相对独立但

又相关的模块。

模块设计的准则:

(1) 改进软件结构, 提高模块独立性:在对初步模块进行合并、分解和移动

的分析、精化过程中力求提高模块的内聚,降低藕合。

(2) 模块大小要适中:大约 50 行语句的代码,过大的模块应分解以提高理

解性和可维护性;过小的模块,合并到上级模块中。

(3) 软件结构图的深度、宽度、扇入和扇出要适当。一般模块的调用个数

不要超过 5 个。

(4) 尽量降低模块接口的复杂程度; (5) 设计单入口、单出口的模块。 (6) 模块的作用域应在控制域之内。

5. 变换型数据流由哪几部分组成?

变换型结构由三部分组成:传入路径、变换(加工)中心和传出路径。

6. 变换分析设计的步骤?

(1) 区分传入、传出和变换中心三部分,划分 DFD 图的分界线; (2) 完成第一级分解:建立初始 SC 图的框架; (3) 完成第二级分解:分解 SC 图的各个分支; (4) 对初始结构图按照设计准则进行精化与改进。

7. 事务型数据流由哪几部分组成?

事务型结构由至少一条接受路径、一个事务中心与若干条动作路径组成。

8. 事务分析设计的步骤?

(1) 在 DFD 图中确定事务中心、接收部分(包含全部接收路径)和发送部分

(包含全部动作路径);

(2) 画出 SC 图框架,把 DFD 图的三部分分?quot;映射\为事务控制模块,接

收模块和动作发送模块.一般得到 SC 图的顶层和第一层(如果第一层简单可以并入 顶层);

(3) 分解和细化接收分支和动作分支,完成初始的 SC 图; (4) 对初始结构图按照设计准则进行精化与改进。

9. 比较层次方框图与结构图是的异同?

(1) 层次方框图描绘数据的层次结构, 结构图描绘的是软件结构。

(2) 二者都采用多层次矩形框树形结构。层次方框图的顶层矩形框代表完