第3章习题.doc_第1页
第3章习题.doc_第2页
第3章习题.doc_第3页
第3章习题.doc_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

一. 填空题1. 在软件的体系结构中,模块是可组合、分解和更换的单元。模块具有 接口 、 功能 、 逻辑 和 状态 。2. 模块之间联系越紧密,其藕合性就越 ,模块的独立性就越 。3. 将软件系统划分模块时,要尽量做到 ,提高模块的 。4. 数据流图一般可分为 型和 型两类。 型的DFD是一个顺序结构。5. 软件结构从形态上总的考虑是:顶层扇出数较 一些,中间层扇出数较 一些,底层扇入数较 一些。6. 一个模块的作用范围是指 的集合。7. 模块间经常用带注释的短箭头表示模块调用过程中来回传递的信息。有时箭头尾部带空心圆的表示传递的是 ,带实心圆的表示传递的是 。8. 两个模块通过全部变量相互作用,这种藕合方式称为 。9. 变换型DFD是由 、 和 三部分组成。10. 结构图的深度指结构图 ,也是模块的 ,结构宽度指 。二. 选择题1. 程序结构中矩形表示( )。A.数据B.加工C.模块D存储2. 划分模块时,一个模块的( )。A.作用范围应在其控制范围之内B.控制范围应在其作用范围之内C.作用范围与控制范围互不包含D.作用范围与控制范围不受任何限制3. 结构化设计方法在软件开发中,用于( )。A.测试用例设计B.概要设计C.程序设计D.详细设计4. 软件结构图中,模块框之间若有直线连接,表示它们之间存在着( )关系。A.调用B.组成C.连接D.顺序执行5. 在进行软件结构设计时应遵循的最主要的原理是( )。A.抽象B.模块化C.模块独立 D.信息隐藏6. 设计软件结构一般不确定( )。A.模块的功能 B.模块的接口C.模块内的局部数据D.模块间的调用关系7. 变换流的DFD由三部分组成,不属于其中一部分的是( )。A.事务中心B.变换中心C.输人流D.输出流8. 通过抽象,可以( )。A.确定组成软件的过程实体B.定义和实施对模块的过程细节存取限制C.定义和实施对局部数据结构的存取限制9. 标记耦合指( )。A.两个模块之间没有直接的关系,它们之间不传递任何信息B.两个模块之间有调用关系,传递的是简单的数据值C.两个模块之间传递的是数据结构D.一个模块调用另一个模块时,传递的是控制变量10. 通信内聚是指( )。A.把需要同时执行的动作组合在一起形成的模块B.各处理使用相同的输人数据或者产生相同的输出数据C.一个模块中各个处理元素都密切相关于同一功能且必须顺序执行D.模块内所有元素共同完成一个功能,缺一不可三. 名词解释1. 模块2. 信息隐蔽3. 模块独立性4. 藕合性5. 内聚性四. 简答题1. 衡量模块独立的两个标准是什么?它们各表示什么含义?2. 什么是软件结构?结构图的主要内容有哪些?3. 什么是面向数据流的设计方法?它有哪些策略?4. 通常采取哪些措施来降低模块间的耦合度?5. 如何设计软件系统结构?参考答案一. 填空题1. 接口 功能 逻辑 状态2. 强 差3. 高内聚低藕合 独立性4. 变换 事务 变换5. 高 低 高6. 受该模块内一个判定影响的所有模块7. 数据 控制信息8. 公共藕合9. 输入 变换(或称处理) 输出10. 控制的层次 层数 一层中最大的模块个数二. 选择题1. C2. A3. B4. A5. C6. C7. A8. A9. C10. B三. 名词解释1. 模块:模块在程序中是数据说明、可执行语句等程序对象的集合,或者是单独命名和编址的元素,如高级语言中的过程、函数、子程序等等。2. 信息隐蔽:信息隐蔽指在设计和确定模块时,使得一个模块内包含的信息(过程或数据),对于不需要这些信息的其它模块来说,是不能访问的。3. 模块独立性:模块独立性指每个模块只完成系统要求的独立的子功能,并且与其它模块的联系最少且接口简单。4. 藕合性:也称块间联系。指软件系统结构中各模块间相互联系紧密程度的一种度量。5. 内聚性:又称块内联系。指模块的功能强度的度量,即一个模块内部各个元素彼此结合的紧密程度的度量。四. 简答题1. 衡量模块的独立性的标准是两个定性的度量标准:耦合性和内聚性。(1)耦合性。也称块间联系。指软件系统结构中各模块间相互联系紧密程度的一种度量。模块之间联系越紧密,其耦合性就越强,模块的独立性则越差。模块间耦合高低取决于模块间接口的复杂性、调用的方式及传递的信息。(2)内聚性。又称块内联系。指模块的功能强度的度量,即一个模块内部各个元素彼此结合的紧密程度的度量。若一个模块内各元素(语句之间、程序段之间)联系得越紧密,则它的内聚性就越高。耦合性与内聚性是模块独立性的两个定性标准,将软件系统划分模块时,尽量做到高内聚低耦合,提高模块的独立性,为设计高质量的软件结构奠定基础。2. 软件结构是软件系统的模块层次结构,反映了整个系统的功能实现,即将来程序的控制层次体系。对于一个问题,可用不同的软件结构来解决,不同的设计方法和不同的划分与组织,得出不同的软件结构。软件结构往往用树状或网状结构的图形来表示。软件工程中,一般采用结构图(Structure Chart,简称SC)的工具来表示软件结构。结构图的主要内容有:模块、模块的控制关系、模块间的信息传递和表示模块有选择地调用或循环调用的两个附加符号。3. 面向数据流的设计方法也称结构化设计方法(SD),它与结构化分析(SA)相衔接,它按一定的设计策略将数据流图转换成软件的模块层次结构。有两种设计策略:(1)事务型分析设计:一个大的复杂的系统分解成较小的,相对简单的子系统,这些子系统彼此之间相对独立一些,而高层数据流图的数据处理往往反映这些子系统的功能,有平行分别处理的特点,因此,高层数据流图的转换通常可作为事务型处理,把一个加工逻辑看成是一类特定的事务,把它们分别映射成一个模块,最高层模块为系统模块,通过对输入初始命令的判断决定调用哪个模块。这种事务型分析设计的策略也用于较低层数据流图向软件结构图的转换。(2)变换型分析设计:变换型数据流图具有主要的处理功能及实现这项处理功能所需要的输入数据流和经过处理后产生的输出数据流。确定了第三部分,高层模块就可分解出三个从属于它的新模块,分别执行输入、变换、输出功能。变换分析设计一般用于对较低层数据流图向软件结构图的转换。软件结构图设计好后,还需要为每个模块提供必要的说明,如功能说明、接口说明等,IPO图是常采用的图形工具,软件结构图和各个模块的IPO图结合在一起才能较完整地描绘软件系统在总体上对需求功能的实现。4. 通常采取以下措施来降低模块间的耦合度:(1)在耦合方式上降低模块间接口的复杂性。模块间接口的复杂性包括模块的接口方式、接口信息的结构和数量。接口方式不采用直接引用(内容耦合),而采用调用方式(如过程语句调用方式)。接口信息通过参数传递且传递信息的结构尽量简单,不用复杂参数结构(如过程、指针等类型参数),参数的个数也不宜太多,如果很多,可考虑模块的功能是否庞大复杂。(2)在传递信息类型上尽量使用数据耦合,避免控制耦合,慎用或有控制地使用公共耦合。这只是原则,耦合类型的选择要根据实际情况综合地考虑

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论