软件工程概论课后答案(2)

2018-11-27 19:46

第1章作业参考答案

第3章软件需求获取与结构化分析方法

3.1 为什么结构化分析要叫“结构化”?有其他可替代的术语吗?

“结构化”一词应来源于“结构化程序设计”,先有“结构化程序设计”的思想,后有结构化设计及结构化分析。有时称传统的分析方法,指的就是结构化分析方法。 3.2顶层数据流图或称环境图的作用是什么?

顶层数据流图(或称环境图)仅包括一个数据处理过程,也就是要开发的目标系统。其作用如下:

(1) 确定系统在其环境中的位置,与系统有联系的外部实体(包括硬件、软件、组织机构及人)有哪些。

(2) 通过确定系统的输入和输出与外部实体的关系确定系统的边界,也就是要确定哪些功能或处理属于系统范围之内,哪些属于系统范围之外,需要由其他系统处理或人工处理。 3.3 在对数据流图进行分解时需要注意哪些问题?

在对数据流图进行分解时,需要注意以下两个问题:

(1) 当对数据流图分层细化时必须保持信息连续性,也就是说,当把一个处理分解为一系列处理时,分解前和分解后的输入/输出数据流必须相同。

(2) 注意分层细化时对编号的处理方法。

3.4 银行存款业务如下:客户到银行柜台存款时,首先填写存款单(包括帐号、姓名、存款金额、存款类型),如果还没有开户,则需要先开户,填写开户单(包括姓名、身份证号、地址、电话、是否留密码)。填写完存款单或开户单后,交给营业员,营业员将存款单或开户单信息输入计算机,系统记录开户信息或存款单信息,如果是开户并选择留密码,则需要客户输入密码。最后印出开户单或存款单给用户。请画出银行存款业务的分层数据流图(至少画出两层)。

(1) 识别外部实体及输入输出数据流 外部实体:储户、业务员。

输入数据流:存款单,开户单,密码。可以将存款单和开户单抽象为事务。 输出数据流:存款单,开户单。 (2) 顶层数据流图

6

第1章作业参考答案

(3) 一层数据流图

对银行储蓄系统进行分解,从大的方面分解为接收事务、处理开户、处理存款三部分,得到一层数据流图。

(4) 二层数据流图

对 “处理存款”及“处理开户”进行进一步分解,得到二层数据流图,即处理存款的数据流图和处理开户的数据流图。

处理存款的数据流图

7

第1章作业参考答案

处理开户的数据流图

3.5 按照以下描述,画出ER图。

一本教材由许多章组成,每一章包含许多节、小结和习题组成,章和节都具有标题和序号属性。 ER图如下:

小结 习题 教材 章 节 序号 标题 序号 标题 8

第1章作业参考答案

第4章结构化设计方法

4.1 当你“编写”程序时你设计软件吗?软件设计和编码有什么不同吗?

在“编写”程序时并没有设计软件。软件设计包括概要设计和详细设计,编码是将详细设计中的过程描述转换成用程序设计语言来描述。

4.4 是否存在一种情况:复杂问题需要较少的工作去解决?这样的情况对模块化观点有什么影响?

通过对复杂的问题进行合理分解,分解为若干个相对简单及独立的子问题,就可以用较少的工作去解决。这种情况能够较好地支持模块化的观点,每个子问题用单独的模块去解决,模块之间应该是高内聚、低耦合的,这样才能减少工作量,否则,虽然每个模块的工作简单了,但模块之间的联系很复杂,也增加了问题解决的难度和工作量。

4.8 用面向数据流的方法设计第3章习题3.4所描述的银行存款业务的软件结构,并使用改进方法对模块结构进行精化。

(1) 对第3章习题3.4给出的数据流图进行精化,确定其边界,如下图所示。

(2) 对上图按事务型数据流进行处理,完成第一级分解,得到顶层和一层模块结构图。

9

第1章作业参考答案

输入数据 存款业务 调度 第一级分解后的结构图

输出数据 (3) 完成第二级分解。对上图所示的“输入数据”、“输出数据”和“调度”模块进行分解,得到未经精化的输入结构、输出结构和事务结构。

输入事务 未经精化的输入结构

输入密码 输入数据 输出数据

打印存款单 未经精化的输出结构

打印开户单

调度

记录存款信息 记录开户信息 未经精化的事务结构

10

记录密码 处理存款 处理开户


软件工程概论课后答案(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:计算机基础实验报告 电子表格处理资料

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: