发布时间 : 星期日 文章软件工程导论课后习题答案更新完毕开始阅读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