总体设计概要_第1页
总体设计概要_第2页
总体设计概要_第3页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

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

文档简介

1、第5章 总体设计软件总体设计又称概要设计, 它的主要任务就是软件结构的设计,为了提高设计的质量,必须根据软件设计的原理改进软件设计。本章内容主要内容包括:软件总体设计的基本任务,软件设计的基本原理, 软件结构以及软件结构设计优化准则,面向数据流的设计方法,IDEFO图的设计方法,以及表示软件结构的另一种图形工具一一HIPO图。5.1 基础知识软件总体设计的基本任务软件总体设计阶段是概要地回答系统应该如何实现。因此要把握与详细设计的区别。 要完成如下任务。1. 软件系统结构设计按照结构化理论,实现一个系统目标需要程序和数据。所以必须设计出组成这个系统 的所用程序结构和数据库(文件)。具体方法如下

2、:(1)采用某种设计方法,将一个复杂的系统按功能划分成模块。(2)确定每个模块的功能。(3)确定模块之间的调用关系。(4)确定模块之间的接口,即模块之间传递的信息。(5)评价模块结构的质量。2. 数据结构及数据库设计在结构化理论软件系统中, 尤其是对于大型数据处理的软件系统,除了系统结构设计外,数据结构与数据库设计是很重要的。1 )数据结构的设计根据需求分析阶段对系统数据的组成,操作约束和数据之间的描述,确定数据结 构特性。总体设计阶段利用逐步细化的方法对数据结构进行深入的设计。2)数据库的设计一般的软件系统都有数据的存储,存储要借助数据库技术。数据库的设计指数据存储文件的设计,设计包括概念设

3、计,逻辑设计和物理设计。3. 网络系统设计如果采用的是网络环境,则要进行网络系统的设计。4. 软件总体设计文档总体设计说明书是总体设计阶段结束时提交的技术文档。按国际GB8576-88计算机软件产品开发文件编制指南 的规定,软件设计文档可分为“总体设计说明书”,“详细设计说 明书”和“数据库数据说明书”。5. 评审在该阶段,对涉及部分是否完整地实现需求中的功能, 性能等要求,设计方案的可行性, 关键的处理及内外部接口定义正确性, 有效性以及各部分之间的一致性等, 都一一进行评审。 软件设计的基本原理1抽象抽象是认识复杂现象过程中使用的思维工具,即抽出事物本质的共同特性而暂不考虑它的细节,不考虑

4、其他因素。抽象的概念被广泛应用于软件工程学中。在进行软件设计时, 抽象与逐步求精,模块化密切相关,可帮助定义软件结构中模块的实体,有抽象到具体地分析和构造处软件的层次结构,提高软件的理解性。2细化细化实际是一个详细描述(elaboration)的过程。在高层抽象定义时,我们从功能说明 或信息描述开始。就是说明功能或信息的概念,而不给出功能内部的工作细节或信息的内部结构。细化则是设计者在原始说明的基础上进行详细说明,随着不断的细化(详细说明)给出更多的细节。3模块化在软件的体系结构中,模块是可组合,分解和更换的单位。模块具有以下几种基本属 性:(1)接口:指模块的输入与输出。(2)功能:指模块实

5、现什么功能。(3)逻辑:描述内部如何实现要求的功能及所需的数据。(4)状态:指该模块的运行环境,即模块的调用于被调用关系。 功能,状态与接口反映模块的外部特征,逻辑反映它的内部特征。模块化是指解决一个复杂问题时自顶向下逐层把软件系统划分为若干模块的过程。每 个模块完成一个特定的子功能,所有的模块按某种方法组装起来,成为一个整体,完成整个系统所需求的功能。4信息隐藏通过抽象,可以确定组成软件的过程实体。通过信息隐藏,可以定义和实现对模块的过程细节和局部数据结构的存取限制。信息隐蔽指在设计和确定模块时,使一个模块内包含信息(过程或数据),对于不需要这些信息的其他模块来说,是不可能访问的。5模块独立

6、性模块独立性指每个模块只完成系统要求的独立的子功能,并且与其他模块的联系最少且接口简单。衡量软件独立性的度量标准:(1)耦合性。指软件系统结构中各模块间相互联系紧密程度的一种度量。(2) 内聚性。指模块的功能强度的量度,即一个模块内部各个元素彼此结合的紧密度 的度量。软件结构图软件结构图时软件系统的模块化层次结构,反映了整个系统的功能实现,即将来程序的控制层次体系。软件结构往往用用树状或网状结构的图形表示。结构图的主要内容有: 模块、模块的控制关系、模块间的信息传递。结构图的形态特征:(1)深度:指结构图控制的层次,也是模块的层数。(2)宽度:指一层中最大的模块个数。(3)扇出:指一个模块直接

7、下属模块的个数。(4)扇入:指一个模块直接上属模块的个数。软件结构设计优化准则软件总体设计的主要任务就是软件结构的设计,为了提高设计的质量, 必须根据软件设计的原理改进软件设计,这里提出以下软件结构的设计优化准则。(1)模块独立性准则。在划分模块时,尽量做到高内聚,底耦合,保持模块相对 独立性,并以此原则优化初始的软件结构。(2)控制与作用范围之间的准则。一个模块的作用范围应在其控制范围之内,且 条件判定所在的模块应与受其影响的模块在层次上尽量靠近。(3)结构特征准则。软件结构的深度、宽度、扇入、扇出应适当。软件结构从形 态上看,应是顶层扇出数较高一些,中间层扇出数较底一些,低层扇入数较高一些

8、。(4)模块的接口准则。模块的接口要简单、清晰及含义明确,便于理解,易于实 现、测试与维护。面向数据流的设计方法结构化设计是以结构化分析产生的数据图为基础,将数据流图按一定的步骤映射成软件结构,因此又称结构化设计( Structured Design,简称SD)。1。数据流的类型在各种软件系统中,不论数据流图如何庞大与复杂,根据数据流的特性,一般可分为变换型数据流图和事物型数据流图两类。1)变换的型数据流是由输入、变换(或称处理)和输出三部分组成。变换型数据处理的工作过程一般分为取得数据、变换数据和给出数据。这三步体现了变换型数据流图的基本思想。变换是系统的主加工,是系统变换的中心。变换输入端

9、的数据流为系 统的逻辑输入,输出端为逻辑输出。 而直接从外部设备输入的数据称为物理输入,反之称为物理输出。外部的输入数据一般要经过输入正确性和合理性检查、编辑及格式转换等预处理,这部分工作都有逻辑输入部分完成,它将外部形式的数据转换成内部形式,送给变换中心。同理,逻辑输出部分把变换中心产生的数据的内部形式转换成外部形式,然后物理输出。当数据流图具有这些特征时,这种信息流就成为变换流。2)事物型的数据流图若某个加工将它的输入流分离成许多发散的数据流,形成许多平行的加工路径, 并根据输入的值选择其中一个路径来执行, 这种特征的数据流图称为事物型的数据流图,这个加工称为事务处理中心。一个大型的软件系

10、统的数据流图,可能既具有变换型的特征,又具有事务型的特征。例如事务型数据流图中的某个加工可能是变换型。2. SD方法设计过程(1)精化数据流图:把数据流图转换成软件结构图前,设计人员要参照规范说明书,仔细地研究分析数据流图并参照数据字典,认真理解其中的有关元素,检查有无遗漏或不合理之处,进行必要的修改。(2)确定数据流图类型:如果是变换型,确定变换中心和逻辑输入、逻辑输出的界线,映射为变换结构的顶层和第一层;如果是事务中心和加工路径,映射为事务结构的顶层和第一层。(3)分解上层模块,设计中下层模块结构。(4)根据;优化准则对软件结构求精。(5)描述模块功能、接口及全局数据结构。(6)复查,如果

11、有错,转(2 )修改完善,否则进入详细设计。3. 变换分析设计当数据流图具有较明显的变换特征时,则按照下列步骤设计。(1)确定数据流图中的变换中心、逻辑输入和逻辑设计。(2)设计软件结构的顶层和第一层变换结构。(3)设计中、下层模块。对第一层的输入、变换及输出模块自顶向下、逐层分解。1. 输入模块的下属模块的设计。输入输出下属模块的输入模块的功能是向它的调用模块提供数据,所以必须要有数据来源。 这样输入模块应由接收输入数据和数据转换调用模块所需信息两部分组成。 因此,每个是;输入模块可以设计成两个下属模块;一个接收、一个转换的。用类似的方法 一直分解下去,直到物理输入端。2. 输出模块的下属模

12、块的设计。输出模块的功能是将它的调用模块产生的结果送出,它由将数据转换下属模块所需的形式和发送数据两部分组成。这样每个输出模块可以设计成两个下属模块:一个转换、一个发送,一直到物理输出端。2. 变换模块的下属模块的设计。根据数据流图中变换中心的组成情况,按照模块独立性的原则来组织其结构,一般对数据流图中每个基本加工建立一个功能模块。3. 设计的优化。4. 事务分析设计方法(1)确定数据流图中的事务中心和加工路径。当数据流图中的某个加工明显地将一个数据流分解成多个发散的输出数据流时,该加工就是事务中心。从事务中心辐射出去的数据流为各个加工路径。(2)设计软件结构的顶层和第一层事务结构。首先设计一

13、个顶层模块, 它是一个主模块,有两个功能,一是接受数据,二是根据事务类型调度相应的处理模块。事务型软件结构应包括接收分支和发送分支两个部分。1接收分支:负责接收数据,它的设计与变换型数据流图的输入部分设计方法相同2发送分支:通常包含一个调度模块,它控制管理所有的下层的事物处理模块当事物类型不多时,调度模块可与主模块合并(3) 事务结构中,下层模块的设计与优化等工作同变换结构图设计方法基于IDEFO图的设计也是结构化设计技术之一,它以系统的功能模型和信息结构为基础 设计系统的软件结构由于IDEFO图按照自顶向下逐层对系统进行分解,并且对系统的每一功能的输入,输出,约束和机制都进行饿全面的描述因此

14、,在系统总体设计时,一般按照IDEFO图的分解层次,逐层将其转换成软件结构图表示软件结构的另一种图形工具-HIPO图HIPO图既可以描述软件总的模块层次结构-H图(层次图),又可以描述每个模块输入/输出数据,处理功能及模块调用的详细情况-IPO图.HIPO图是以模块分解的层次性以及模块内部输入,处理及输出三大基本部分为基础建立的5.2单元练习填空题I. 在软件系统结构中,模块是可组合,分解和更换的单元.模块具有,和等属性.2概要设计文档主要有 :,.3数据库的设计指的设计,主要进行以下几方面的设计:,.4. 软件设计基本任务包括 ,四个方面.5抽象是认识复杂现象过程中使用的思维工具,即抽出事物

15、 的,的特性而不考虑它的,不考虑其他因素.6. 软件结构的设计是以 为基础的,以需求分析的结果为依据,从实现的角度进一步分化为,并组成模块的.7. 软件设计是一个把 转换为的过程,包括和.8在大型数据处理系统的功能分析和设计中,同时要进行数据分析和数据设计 .数据库的"概念设计"与"逻辑设计”分别对应于系统开发中的 与,而数据库的"物理设计"与模块的相对应.9. 进入了设计阶段,要把软件”做什么”的变换为”怎么做”的,即着手实现软件的需求,并将设计的结果反映在文档中.10. 概要设计评价是对设计部分是否完整实现了需求中规定的,等要求,设计反感的

16、,关键的处理及内外部接口定义 ,各部分之间的 等等一一都进行评审.II. 在软件需求分析阶段,已经搞清楚了软件 的问题,并把这些需求通过描述出来,这也是目标系统的 12. 在一个模块中,,和反映模块的外部特性,反映它的内部特性.13. 是指在设计和确定模块时,使得一个模块内包含的信息(过程和数据),对于不需要这些信息的其他模块来说,是不能的.14. 开发一个大而复杂的软件系统,将它进行适当的分解,不但可降低它其复杂性,还可减少,从而降低 ,提高,这就是的依据.15. 设计软件结构,具体为:(1)采用某设计方法,将一个复杂的系统按功能划分为 .(2)确定每个模块的 .(3)确定模块间的 .(4)

17、确定模块之间的 ,即模块之间传递的信息.(5)评价模块结构的质量.16. 模块间耦合高低取决于模块间 ,及.17. 是指解决一个复杂问题时自顶向下逐层把软件系统划分成若干模块的过程.每个模块完成特定的,所有的模块按某方法起来,成为一个整体,完成整个系统所要求的功能.18. 模块独立性中每个模块只完成问题要求的 子功能,并且与其他模块的联系.19. 内聚性有六种类型:,.20耦合性也称,它是指软件系统结构中 互相联系紧密程度的一种度量.模块之间联系越 ,其耦合性越强.模块的 则越差.21. 通过,可以确定组成软件的过程实体,通过,它可以定义和实施对模块的过程细节和局部数据结构的存取限制.22.

18、模块的耦合性分为六种,.23. 指两个模块之间有调用关系,传递的是简单的数据值,相当于高级语言中的24. 指两个模块之间传递的是数据结构,如高级语言中的数足名,记录名,文件名等这些名字即为标记,其实传递的是 .25功能元素是内聚程度最 的内聚,指模块内所有元素共同完成 ,缺一不可.功能内聚的模块与其他模块的耦合是 的.26. 概要设计主要是把各项功能需求转换成系统的 .27. 结构图的主要内容有,.28. 内聚性又称 .指模块的 的度量,即一个模块内部各个元素彼此结合的紧密程度的度量.若一个模块内各元素(语句之间,程序段之间)的联系越 ,则它的内聚性越高29. 衡量模块独立性的两个定向的度量标

19、准是 和.30. 指一个模块内的各处理元素之间没有任何联系.这是内聚程度最的内聚.31.指模块内执行几个逻辑上相似的功能,通过参数确定该模块完成哪一个功能.把需要同时执行的动作组合在一起形成的模块称为 的模块.32. 通信内聚是指模块内所有处理元素都在 上操作,有时称之为或者指各处使用相同的 或者产生相同的 。33. 通信内聚的模块各部分都紧密相关于 ,所以可以把某一数据结构、文件、设备等操作都放在一个模块内,可达到 。34. 顺序内聚是指一个模块中各个处理元素都密切相关于 且必须。前一功能元素的 就是下一功能元素的 。35. 控制耦合中一个模块调用另一个模块时, 传递的是 (如开关、标志等)

20、,被调模块通过 有选择的执行块内某一功能。 因此被调模块内应具有多个功能, 哪个起作用受其 的控制。36. 与是模块独立性的两个定性标准,将软件系统划分模块时,尽量作到内聚、耦合,提高模块的 ,为设计高质量的软件奠定基础。37. 是最高程度的耦合。这种耦合出现在当一个模块直接使用另一个模块的,和通过 转入另一个模块的内部。38. 若某个加工将它的输入流分离成许多发散的数据流,形成许多加工路径, 并根据输入的值来选择其中一个路径来执行,这种特征的DFD称为的数据流图,这个加工称为。39. 模块的指一个模块直接下属模块的个数, 指一个模块直接上属模块的个数。40. 基于IDEF0图的设计也是结构化

21、设计技术之一,它以系统的 和为基础设计系统的 。41 如果若干模块之间耦合强度过高,每个模块内功能不复杂,可将它们,以减少信息的 和 的引用。若有多个相关模块,应该对它们的功能进行,消去。42. 一个模块的作用范围是指受该模块内 影响的所有的模块的集合,一个模块的控制范围是指及其的集合。43. 在结构图中,模块用 来表示,并用模块标示该模块。两个模块间用或连接表示它们的控制关系,模块和被调用模块的关系称为 与的关系或者“ ”与“”的关系,模块间还经常用带注释的箭 头表示模块调用过程中来回传递的信息。有时箭头尾部带 的表示传递的是数据,带表示传递的是控制信息。44. 变换型 DFD是由、和 三部

22、分组成。45. 变换型数据处理的工作一般分为三步: 、和,这三步体现了变换型 DFD的基本思想。46. 通过信息隐藏,可定义和实施对模块的过程细节和局部数据结构的。47. 结构图深度指结构图 ,也是模块的 ,结构宽度是指 。48个模块的 范围应在其范围之内,且判定所在的模块应与受其影响的模块在层次上应尽量 。49. HIPO图是表示的一种工具。它使用 描述软件总的模块层次结构,使用 描述每个模块输入输出数据、处理功能及模块调用的详细情况。50. 公共耦合指通过一个 相互作用的那些模块间的耦合。公共耦合合的复杂程度随的增加而增加。51 结构化设计简称 。数据流图一般可分为 型和型两类。型的DFD

23、是一个顺序结构。52. 在变换型DFD中,变换是系统的 ,变换输入端的数据流称为系统的,输出端的数据流为 。而直接从外部设备输入数据称为 _,直接从外部设备上输出的数据称为 。53. 软件结构从形态上总的考虑是:顶层扇出数较 一些,中间层扇出数较 _一些,低层扇入数较 一些。54. 要把数据流图(DFD )转换成软件结构,首先必须研究DFD的类型。各种软件系统,一般可分为 和 两类。55. 软件结构往往用 状或结构的图形来表示。 软件工程中,一般采用70年代中期美国 Yourdon等人提出的称为 简称的工具来表示软件结构。56. 如果只有两个模块之间有公共数据环境,这种公共耦合有两种情况: 一

24、是一个模块只是给公共数据环境送数据, 另一个模块只是从环境中取数据, 这是耦合,二是两个模块都既往公共数据环境送数据,又从里面取数据,这是 耦合。57. 一个模块内各元素联系的越紧密,则它的内聚性就 。按由低到高的顺序,模块的内聚类型有: 内聚、内聚、内聚、内聚、内聚、内聚。58. 为了防止软件概要设计的错误传播到开发的后继阶段,在概要设计文档完成后,要进行。59. 两个模块通过全程变量相互作用,这种耦合方式称为 。60. 面向数据流的设计是以需求分析阶段产生的数据流图为基础,按一定的步骤映射成软件结构。因此又称 。61 .将与同一张年报表有关的所以程序组成一个模块,该模块的内聚性为。62.

25、是软件系统的模块层次结构,反映了整个系统的功能实现,即将 来程序的控制层次体系。63. 软件结构的设计是 关键的一步,直接影响到下一阶段详细设计与编码 的工作。64. 模块用表示,并用名字标示该模块,名字应该体现该模块的功能。65. 一个模块的作用范围是指 的集合。66. 按国际GB8576 88的“计算机软件产品开发文件编制指南”规定,软件设计文档可分为“ ”、“”、“”。67. 两个模块间用 (或直线)连接表示它们的控制关系。68. 对于软件独立性的衡量, 根据软件的内部特征和外部特征,提出了两个定性的度量标准,即:和。69. 软件结构的设计是以 为基础的,在分析设计阶段,已经把系统分解

26、成层次结构。设计阶段, 以需求分析的结果为依据,从实现的角度进一步划分模块,并组成 模块的层次结构。70. 按由高到低的顺序,模块的耦合类型有: 耦合、耦合、耦合、耦合、耦合、耦合。71. 模块间还经常用带注释的短箭头表示模块调用过程中来回传递的信息。有时箭头尾部带空心圆的表示传递的是,带实心的表示传递的是 72. 模块之间联系越紧密,其耦合性就越 ,模块的独立性就越 522选择题1.软件设计一般分为总体设计和详细设计,A.全局和局部它们之间的关系是(B抽象和具体C总体和层次功能和结构软件结构使用的图形工具,一般采用()图。A DFDPADC SCER属于软件设计的基本原理是(A数据流分析设计

27、变换流分析设计模块化IPO图C事务流分析设计在软件结构的后处理中,下列说法错误的是( 为模块写的处理说明及接口说明可采用数据结构的描述可用Warnier图或Jackson图给出设计约束或限制。如数据的边界值,数据类型,格式,内存容量及时间的限D在概要设计评审中,应着重评审软件需求是否得到满足及软件结构的质量等设计的优化工作主要放在软件结构设计的后处理阶段5 在基于IDEF0图的设计方法中,下列说明错误的是()°A IDEF0图以系统的功能模型和信息结构为基础设计系统的软件结构B IDEF0图按照自顶向下逐层对系统进行分解C IDEF0图对系统每一功能的输入,输出,约束,机制都进行了全

28、面的描述D在系统概要设计时,一般按照DFD图的分解层次,逐层将其转换成软件结构图6 将几个逻辑上相似的成分放在一个模块中,该模块的内聚度是()的。A逻辑性B瞬时性C功能性D通信性7 模块内的某成分的输出是另一成分的输入,该模块的内聚度是()的°A功能性B顺序性C逻辑性D瞬时性8 在分层数据流图映射成软件结构的设计中,下列说法错误的是()°A 分层的数据流图映射成软件结构图也应该是分层的B 软件结构图的物理收入与输出部分放在主图中较为合适C 分层DFD图的映射方法:主图是变换型,子图是事务型;或主图是事务型,子图是变换型。D变换型通常用于高层数据流图的转换,而事务型通常用于较

29、低层数据流图的转软件设计阶段一般又可分为(A逻辑设计与功能设计C概念设计与物理设计10111213模块中所有成分引用共同的数据,该模块的内聚度是( A 逻辑性C 功能性结构图中,不是其主要成分的是(A 模块C模块内部数据好的软件结构应该是(A 高耦合,高内聚 C 高耦合,低内聚结构分析方法就是面向(A 目标 C 功能14和程序内部的各个部分之间存在的联系,)。概要设计与详细设计模型设计与程序设计)的。瞬时性通信性模块间传递的数据 模块的控制关系低耦合,高内聚低耦合,低内聚自顶向下逐步求精进行需求分析的方法。B 数据流D 对象用结构图表达时,最关心的是模块的内聚性A 独立性C 耦合性程序内部的各

30、个部分之间存在的联系,15和耦合性。A 一致性C嵌套限制16 一组语句在程序中多处出现,模块的内聚度是()的。A 逻辑性C 偶然性B 有效性D 安全性用结构图表达时,最关心的是模块的(B 作用域D 内聚性为了节省内存空间,把这些语句放在一个模块中,B 瞬时性D通信性17 模块中的所有成分结合起来完成一项任务,该模块的内聚度是( 有简明的外部界面,由它构成的软件易于理解,测试和维护。A偶然性B顺序性C通信性D功能性18 软件设计中划分通常遵循的原则是要使模块间的耦合性尽可能(A强BC较强D19 一个模块把一个数值量作为参数传给另一模块。A逻辑耦合BC控制耦合D)的°弱 适中这两个模块之

31、间的耦合是 ( 数据耦合 内容耦合它具20下列几种耦合中,()的耦合性最强。A公共耦合B数据耦合C.控制耦合D.内容耦合21. 一个模块直接引用另一模块中的数据,这两个模块之间的耦合是()A. 公共耦合B.数据耦合C.控制耦合D.内容耦合22个模块把开关量作为参数传送给另一模块,这两个模块直接的耦合是().A. 外部耦合B.数据耦合C.控制耦合D.内容耦合23. M.Jacks on suggested the data structureorie nted software desig n method Whick of the follow ing structure can be in

32、troduced by using in put/output data strusture ().A. algorithm structure B.procedure structureC.code structure D.program structure24. 块联系中,()块内联系最强.A.偶然性B.功能性C.通信性D.顺序性25. 在面向数据流的软件设计方法中,一般将信息流分为().A.变换流和事物流 B.变换流和控制流C.事物流和控制流D.数据流和控制流26. 在多层次的结构图中,其模块的层次数称为结构图的().A.深度 B.跨度C.控制域D.粒度27. ()着重反映的是模块间隶属

33、关系,即模块间的调用关系和层次关系.A.程序流程图B.数据流图C.E-R图 D.结构图28. 块间联系和块内联系是评价程序质量的重要标准.联系的方式、共用信息的作用共用信息的数量和界面的()等元素确定了块间联系的大小.A.友好性B.坚固性C.清晰性D.安全性29. 软件设计一般将用到图形工具,下列()可用作设计的图形工具.结构图实体联系图IPO图层次图A.和 B.和C.和D.全部30. 首先将系统中的关键部分设计出来,再将系统的其余部分的设计去适应它们,这称 为().A.模块化设计B.逐步求精C.由底向上设计D.自顶向下设计31. ()数据处理问题的工作过程大致分为三步,即取得数据、变换数据和

34、给出数据.A.变换型B.事物型C.结构化D.非结构化32软件设计将涉及软件的结构,过程和模块的设计,其中软件工程是指().A. 模块间的关系B.模块的操作细节C.软件层次结构D.软件开发过程33模块(),则说明模块的独立性越强A. 耦合越强B.扇入数越高C偶合越弱D.扇入数越低34块间的信息可以作”控制信息"用,也可以作为()使用.A. 控制流B.数据结构C.控制结构D.数据35在对数据流的分析中,主要是找到中心变换,这是从()导出结构图的关键A. 数据结构B.实体关系C.数据流图D.E-R图36模块的独立性是软件模块化所提出的要求,衡量模块独立性的度量标准是模块的()A. 抽象和信

35、息隐蔽 B.局部化和封装化C.内聚性和耦合性 D.激活机制和控制方法37.为了提高模块(),当修改和维护模块时减少把一个模块的错误扩散到其他模块 中去的机会A.耦合性B.独立性C.内聚性D.共享性38在软件概要设计中,不使用的图形工具是()图A. SC B.IPOCDEF D.PAD39模块的独立性是由内聚性和耦合性来度量的,其中内聚性是()A.模块间的联系程度 B.模块的功能强度C.信息隐蔽程度D.接口的复杂程度40结构化的设计方法(SD)与结构化的分析方法(SA) 样,遵循()模型,采用逐 步求精技术,SD方法通常与SA相连,即依据数据流图设计程序的结构A.试题模型B.原型C.抽象思维D.

36、生命期41.()把已确定的软件需求转换成特定形式的设计表示,使其得以实现A.系统设计B.详细设计C逻辑设计D.软件设计42在软件结构中,如果两个矩形之间有直接相连,表示他们存在()关系A.链接B.调用C.并列D.顺序执行43. The software structure is an expressi on of the relati on ship among software module,in the followi ng phrase.Which are not the relati on ship among module software module(). 44为了提高模块的独立

37、性,模块内部最好是().A.逻辑内聚B.时间内聚C.功能内聚D.通信内聚45. 概要设计与详细设计衔接的图形工具是()A.数据流图B.结构图C.程序流程图D.PDA图46. 软件结构是软件模块间关系的表示,下列术语中()不属于对模块间关系的描述.A.调用关系B.从属关系A.嵌套关系D.主从关系47. 为了最终实现目标系统,必须设计出组成这个系统的所有程序和文件,通常分为两个阶段完成,即()和过程设计.A.程序设计B.结构设计C.系统设计D.详细设计48. 通常程序中的一个模块完成一个适当的子功能,应该把模块组织成良好的()A.紧耦合系统B.松散系统C.层次系统D.系统结构49. 程序结构中矩形

38、表示()A.数据B.加工C.模块D.储存50. In the design phase of soft ware engineering, decomposition of the program into modulesshould follow the prin ciples of ()A. low cohesi on with coupli ngC. high cohesi on with coupli ng51. 划分模块时,一个模块的()A.作用应在其控制范围内C.作用范围与控制范围互不包含52. 结构化设计方法在软件开发中,用于(A.测试用例设计C.程序设计53. 软件结构图中,模

39、块匡之间若有直线连接A.调用C.连接54. Which is the strictest from of cohesion ?(A. logicalB. low cohesi on with high coupli ngD.high cohesi on with hing coupli ngB.控制范围应在其作用范围之内D.作用范围与控制范围不受任何限制 ).B.概要设计D.详细设计,表示它们之间存在着()关系.B.组成D.顺序执行)B. functionalD. coin cide ntalC. procedural55. 软件设计中划分模块的一个准则是(A ).两个模块之间的耦合方式 ,(

40、B )的耦合的耦合度最高,(C )的耦合度最低.一个模块内部的聚敛种类中 (D )内聚的内聚度最 高,(E )的内聚度最低可供选择的答案:A:1.低内聚低耦合2低内聚高耦合3.咼内聚低耦合4.高内聚高耦合B:1.数据2.非直线3.控制4.内容C:1.数据2.非直线3.控制4.内容D:1.偶然2.逻辑3.功能4.过程E:1.偶然2.逻辑3.功能4.过程56. 下列说法完全正确的是 ().A: HIPO图可以描述软件总得模块层次结构 IPO图B: HIPO图可以描述每个模块输入/输出数据,处理功能即模块调用详细情况-H图C: HIPO图是以模块分解的层次性以及模块内部输入,处理,输出三大基本部分为

41、基础建立的D. H图示以模块见的信息传递及模块内部的处理57. ()是数据说明,可执行语句等程序对象的集合,它是单独命名的而且可以通过名字访问.A.模块化C.精化B.抽象D.模块58.结构化设计的方法中使用的图形工具是().A.软件结构图B.数据结构图59.C.程序流程图软件概要设计结束后得到()D.实体联系图A.初始化的软件结构图B.优化的软件结构图C.模块详细的算法D.程序编码60.结构化设计是一种面向()的设计方法A.数据流B.数据结构C.数据库D.程序61.调用算法是解决问题的关键步骤之一.算法的计算工作量大小和实现算法所需的存储单元多少,分别称为计算的(A )和(B )编写程序时,(

42、C )和(D )是应采纳的原则 之一 .(E)是调试程序的重要工作之一.供选择的答案:A,B:2时间复杂度4困难度6计算有效性2程序越短越好4.尽可能减少注释行1可实现性3空间复杂度5高效性C:1.程序的结构化3.尽可能节省存储单元D:1.使用有实际意义的名字2使用长度短而无实际意义的名字3.表达式中尽量少用括号4尽量使用简化了的逻辑表达式E:1调度2.证明程序正确3.人员安排4.排错62()是指把一些关系密切的软件元素物理地址方的彼此靠近A隐藏B内聚C局部化D模块独立63模块()定义为受该模块内一个判断影响的所有模块集合A控制域B作用域64. Which of the followi ng

43、stateme nts is true?()A. The defi niti on phase results in the Software Requireme nt Specificati onB. Testing is optional in software life cycleC. CASE tools can only aid in the desig n phase of asoft ware life cycleD. A cha nge duri ng a later phase does n't requare the docume nt of all earlier

44、 phase to be updated65. 在软件结构设计完成后,对于下列说法,正确的是()A. 非单一功能模块的扇入数大比较好,说明本模块重用率高B. 单一功能的模块扇入高是应重新分解,以消除控制耦合的情况C. 一个模块的扇出太多,说明该模块过分复杂,缺少中间层D. 一个模块的扇入太多,说明该模块过分复杂,缺少中间层66. 偶然内聚是指()A. 个模块内的各处理元素之间没有任何联系B. 模块内执行几个逻辑上相似的功能,通过参数确定该模块完成哪一个功能C. 把需要同时执行的动作组合在一起形成的模块D. 模块内所有处理元素都在同一个数据结构上操作67. 面向数据流的设计方法把()映射成软件结

45、构A.数据流B.系统结构C.控制结构D.信息流68. 在进行软件结构设计时应该遵循的最主要的原理是()A.抽象B.模块化C.模块独立D.信息隐藏69. 设计软件结构一般不确定()A.模块的功能B.模块的接口C.模块内部的局部调整D.模块间的调用关系70. 交换流的DFD由三部分组成,不属于其中一部分的是()A.事务中心B.交换中心C.输入流D.输出流71.20世纪60年代后期,由Dijkstra提出的,用来增加程序设计的效率和质量的方法是()A.模块化程序设计B.并行化程序设计B. 标准化程序设计D.结构化程序设计72. 通过抽象,可以()A. 确定组成组件的过程实体B. 定义和实施对模块的过

46、程细节存取限制C. 定义和实施对局部数据结构的存取限制73. ()复审应该把重点放在系统的总体决购,模块化分,内部接口等方面A.详细设计B.系统设计C. 正式D.非正式74. 标记耦合指()A. 两个模块之间没有直接的关系,它们之间不传递任何信息B. 两个模块之间有调用关系,传递的是简单的数据值C. 两个模块之间传递的是数据结构D. 一个模块调用另一个模块时,传递的是控制变量75. 通信内聚是指()A. 把需要同时执行的动作组合在一起形成的模块B. 各处理使用相同的输入数据或者产生相同的输出数据C. 一个模块中各个处理元素都密切相关于同一功能且必须顺序执行D. 模块内所有元素共同完成一个功能,

47、缺一不可76. ()是程序中一个能逻辑的分开的部分,也就是离散的程序单位A.模块B.复合结构C.循环结构D.数据块77. ()应该考虑对模块相连和资源共享问题进行描述和制约A.系统设计B.详细设计C.接口设计D.结构化编辑设计78. 内部耦合指()A. 两个模块之间传递的是数据结构B. 一个模块调用另一个模块时,传递的是控制变量C. 通过一个公共数据环境相互作用的那些模块间的耦合D. 一个模块直接使用另一个模块的内部数据,或通过非正常入口而转入另一个模块块内部79下列说法错误的是()A. 变化型的DFD是由输入,变换(或称处理)和输出三部分组成B. 变换型数据处理的工作过程一般分三步:处理数据

48、,变换数据和处理数据送给主加C. 变换输入端的数据流为系统的逻辑输入,它将外部形式的数据变换成内部形式,工D. 变换输出端为逻辑输出,它把主加工产生的数据的内部形式转化为外部形式后物理输出523简答题1什么是软件概要设计?软件概要设计的基本任务是什么?2衡量模块独立的两个标准是什么?它们各表示什么含义?3什么是软件结构?结构图的主要内容有哪些?4什么是面向数据流的设计方法?它有哪些策略?5由IDEF0图导出初始软件结构图的方法有哪些?6通常采取哪些措施来降低模块间的耦合度?7如何设计软件系统结构?8概要设计文档主要包括那些文档?9软件设计的基本原理是什么?10. 数据库的设计主要进行哪些方面的

49、设计?11. 软件结构设计的优化准则是什么?12. 概要设计说明书要公开哪些内容?13画结构图应该注意的事项是什么?14面向数据流设计方法的过程是什么?15什么是耦合性?模块的耦合性有哪些内容?16结构图的形态特征有哪些?17.何谓模块独立性?18什么是模块?模块有哪些基本属性?19什么是模块的作用范围?什么是模块的控制范围?20什么是“变换流”?21. 影响公共耦合的复杂程度的因素是什么?公共耦合会引起什么问题?22. 模块的内聚性有哪几种?各表示什么含义?23. 什么是“事物流”?5.3参考答案一.填空题1接口,功能,逻辑,状态2概要设计说明书,数据库设计说明书,进一步补充的用户手册,修订

50、的测试计划3数据存储文件,概念设计,逻辑设计,物理设计4设计软件系统结构,数据结构及数据库设计,编写概要设计文档,评审5本质,共同,细节6模块,模板,层次结构7软件需求,软件表示,概要设计,详细设计8需求分析,概要设计,详细设计9逻辑模型,物理模型,设计规格说明书10功能,性能,可行性,正确性,有效性,一致性11.做什么,规格说明书,逻辑模型12.功能,状态,接口,逻辑13. 信息屏蔽,访问14. 开发工作量,开发成本,软件生产率,模块化15. 模块,功能,调用关系,接口16接口的复杂性,调用的方式,传递的信息17.模块化,子功能,组装18.独立的,最少且接口简单19偶然内聚,逻辑内聚,时间内

51、聚,通信内聚,顺序内聚,功能内聚20块间联系,各模块间,紧密,独立性21. 抽象,信息屏蔽22. 无直接接口,数据耦合,标记耦合,控制耦合,规格耦合,内容耦合23. 数据耦合,值传递24.标记耦合,这个数据结构的地址25强,一个功能,弱26.体系结构27. 模块,模块的控制关系,模块的信息传递28. 块间联系,功能联系,紧密29.耦合性,内聚性30.偶然内聚,差31.逻辑内聚,时间内聚32. 同一个数据结构,信息内聚,输入数据,输出数据33. 同一数据(或者数据结构),信息隐藏34. 同一功能,顺序执行,输出,输入35. 控制变量,该控制变量的值,调用模块36. 耦合性,内聚性,高,低,独立性

52、37. 内容耦合,内部数据,非正常入口38. 事务型,事务处理中心39.扇出,扇入40.功能模型,信息处理,软件结构41.合并,传递,公共区,分析,重复功能42. 个判定,模块本身,所有下属模块(直接或间接从属于它的模块)43. 方框,单向箭头,直线,上属,下属,统率,从属,空心圆,实心圆44. 输入,变换(或称处理),输出45.取得数据,变换数据,给出数据46. 存取限制47. 控制的层次,层数,一层中最大的模块个数48. 作用,控制,靠近49.软件结构,H图(层次图),IPO图50.公共数据环境,耦合模块的个数51.SD,变换,事务,变换52. 主加工,逻辑输入,逻辑输出,物理输入,物理输出53. 高,低,高54.变换型,事务型55. 树,网,结构图,SC56.比较松散的公共,紧密的数据57. 高,偶然,逻辑,时间,通信,顺序,功能58. 软件评审59公共耦合60结构化设计61. 通信内聚62. 软件结构图63. 概要设计64. 方框65. 受该模块内一个判定影响的所有模块66. 概要设计说明书,详

温馨提示

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

最新文档

评论

0/150

提交评论