软件工程导论课后习题答案 联系客服

发布时间 : 星期日 文章软件工程导论课后习题答案更新完毕开始阅读c58f28ffaef8941ea76e058a

大学生校园网—努力打造大学生最实用的网络平台! http://www.vvschool.cn

第五章 习题参考答案 一.回答问题

1.详细设计的目的?

为软件结构图(SC图或HC图)中的每一个模块确定采用的算法和块内数据结构,用某种选定的表达工具给出清晰的描述.

2.详细设计的主要任务?

编写软件的“详细设计说明书”.软件人员要完成的工作:

(1) 为每一个模块确定采用的算法, 选择某种适当的工具表达算法的过程,写出模块的详细过程描述.

(2) 确定每一模块使用的数据结构.

(3) 确定模块结构的细节,包括对系统外部的接口和用户界面,对系统内部其它模块的接口,以及关于模块输入数据、输出数据及局部数据的全部细节.

(4) 为每一个模块设计出一组测试用例,以便在编码阶段对模块代码(即程序)进行预定的测试. 3.结构化程序设计的基本原则?

在详细设计中所有模块都使用单入口、单出口的顺序、选择、循环三种基本控制结构.

4.比较面向数据流和面向数据结构两类设计方法的异同? 相同点:

(1) 遵守结构程序设计“由顶向下”逐步细化的原则,并以其为共同的基础; (2) 均服从“程序结构必须适应问题结构”的基本原则,各自拥有从问题结构(包括数据结构)导出程序结构的一组映射规则。

不同点:

(1) 面向数据流的设计以数据流图为基础,在分析阶段用DFD表示软件的逻辑模型,在设计阶段按数据流类型,将数据流图转换为软件结构。面向数据结构的设计以数据结构为基础,从问题的数据结构出发导出它的程序结构。

(2) 面向数据流的设计的最终目标是软件的最终SC图,面向数据结构的设计

更多精彩尽在大学生校园网—VvSchool.CN

大学生校园网—努力打造大学生最实用的网络平台! http://www.vvschool.cn

的最终目标是程序的过程性描述。

5.比较Jackson方法和LCP方法的异同?

Jackson与LCP设计方法都是以数据结构为出发点,以程序的过程描述为最终目标,设计步骤基本相似。它们的主要差别是:

(1)使用不同的表达工具,其中LCP方法中的表达工具Warnier图

比Jackson设计方法中的表达工具Jackson图有更大的通用性; (2)Jackson方法的步骤和指导原则有一定的灵活性,而LCP设计 方法则更加严密。

6.详细设计的描述工具应具备什么功能?

无论哪类描述工具不仅要具有描述设计过程,如控制流程、处理功能、数据组织及其它方面的细节的能力,而且在编码阶段能够直接将它翻译为用程序设计语言书写的源程序。

二.给出一组数从小到大的排序算法,分别用下列工具描述其详细过程: (1) (1) 流程图;(2)N—S图;(3)PAD图;(4)PDL语言。 PDL语言略

更多精彩尽在大学生校园网—VvSchool.CN

大学生校园网—努力打造大学生最实用的网络平台! http://www.vvschool.cn

三.根据后面给出“卡片的分类及统计”项目说明,完成下列工作:

(1)用Jackson图表示输入与输出数据结构,找出它们之间的对应单元; (2)画出用Jackson图表示的程序结构;

(3)列出程序所需用的操作,并加到上一步画出的程序结构图上; (4)用Jackson伪代码写出程序的过程表示。

输入卡片分析程序。一叠输入卡片按内容分为K1、K2、K3三类,卡片的排列规则是:以K1卡始,以K2卡终。起始卡之前属前置部分,不含K1卡;起始卡与终了卡之间属分批部分,不含K2卡。如图:

试用Jackson方法编一程序,要求依次完成下列分析工作: -----统计起始卡前卡片的张数,存入A; -----打印起始卡的内容;

-----统计起始卡后出现的K1卡和K3卡总批数,存入B; -----统计起始卡后出现的K1卡的张数,存入C; -----统计起始卡后出现的K3卡的批数,存入D; -----打印终了卡的内容;

-----打印A、B、C、D四个统计值。

更多精彩尽在大学生校园网—VvSchool.CN

大学生校园网—努力打造大学生最实用的网络平台! http://www.vvschool.cn

更多精彩尽在大学生校园网—VvSchool.CN