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

下载本文档

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

文档简介

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

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

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

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

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

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

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

8、扇出应适当。软件结构从形态上看,应是顶层扇出数较高一些,中间层扇出数较底一些,低层扇入数较高一些。(4) 模块的接口准则。模块的接口要简单、清晰及含义明确,便于理解,易于实现、测试与维护。5.1.5 面向数据流的设计方法结构化设计是以结构化分析产生的数据图为基础,将数据流图按一定的步骤映射成软件结构,因此又称结构化设计(Structured Design ,简称SD)。1 。数据流的类型 在各种软件系统中,不论数据流图如何庞大与复杂,根据数据流的特性,一般可分为变换型数据流图和事物型数据流图两类。1) 变换的型数据流是由输入、变换(或称处理)和输出三部分组成。变换型数据处理的工作过程一般分为取

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

10、值选择其中一个路径来执行,这种特征的数据流图称为事物型的数据流图,这个加工称为事务处理中心。一个大型的软件系统的数据流图,可能既具有变换型的特征,又具有事务型的特征。例如事务型数据流图中的某个加工可能是变换型。2. SD方法设计过程 (1) 精化数据流图:把数据流图转换成软件结构图前,设计人员要参照规范说明书,仔细地研究分析数据流图并参照数据字典,认真理解其中的有关元素,检查有无遗漏或不合理之处,进行必要的修改。(2) 确定数据流图类型:如果是变换型,确定变换中心和逻辑输入、逻辑输出的界线,映射为变换结构的顶层和第一层;如果是事务中心和加工路径,映射为事务结构的顶层和第一层。(3) 分解上层模

11、块,设计中下层模块结构。(4) 根据;优化准则对软件结构求精。(5) 描述模块功能、接口及全局数据结构。(6) 复查,如果有错,转(2)修改完善,否则进入详细设计。3. 变换分析设计 当数据流图具有较明显的变换特征时,则按照下列步骤设计。(1) 确定数据流图中的变换中心、逻辑输入和逻辑设计。(2) 设计软件结构的顶层和第一层变换结构。(3) 设计中、下层模块。对第一层的输入、变换及输出模块自顶向下、逐层分解。1. 输入模块的下属模块的设计。输入输出下属模块的输入模块的功能是向它的调用模块提供数据,所以必须要有数据来源。这样输入模块应由接收输入数据和数据转换调用模块所需信息两部分组成。 因此,每

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

13、的输出数据流时,该加工就是事务中心。从事务中心辐射出去的数据流为各个加工路径。(2) 设计软件结构的顶层和第一层事务结构。首先设计一个顶层模块,它是一个主模块,有两个功能,一是接受数据,二是根据事务类型调度相应的处理模块。事务型软件结构应包括接收分支和发送分支两个部分。 1 接收分支:负责接收数据,它的设计与变换型数据流图的输入部分设计方法相同.2 发送分支:通常包含一个调度模块,它控制管理所有的下层的事物处理模块.当事物类型不多时,调度模块可与主模块合并. (3)事务结构中,下层模块的设计与优化等工作同变换结构.5.1.6 IDEFO图设计方法 基于IDEFO图的设计也是结构化设计技术之一,

14、它以系统的功能模型和信息结构为基础设计系统的软件结构.由于IDEFO图按照自顶向下逐层对系统进行分解,并且对系统的每一功能的输入,输出,约束和机制都进行饿全面的描述.因此,在系统总体设计时,一般按照IDEFO图的分解层次,逐层将其转换成软件结构图.5.1.7 表示软件结构的另一种图形工具-HIPO图 HIPO图既可以描述软件总的模块层次结构-H图(层次图),又可以描述每个模块输入/输出数据,处理功能及模块调用的详细情况-IPO图.HIPO图是以模块分解的层次性以及模块内部输入,处理及输出三大基本部分为基础建立的.5.2 单元练习5.2.1 填空题1.在软件系统结构中,模块是可组合,分解和更换的

15、单元.模块具有_,_,_,和_等属性.2概要设计文档主要有:_,_,_,_.3数据库的设计指_的设计,主要进行以下几方面的设计:_,_,_.4.软件设计基本任务包括_,_,_,_四个方面.5抽象是认识复杂现象过程中使用的思维工具,即抽出事物_的,_的特性而不考虑它的_,不考虑其他因素.6.软件结构的设计是以_为基础的,以需求分析的结果为依据,从实现的角度进一步分化为_,并组成模块的_.7.软件设计是一个把_转换为_的过程,包括_和_.8在大型数据处理系统的功能分析和设计中,同时要进行数据分析和数据设计.数据库的概念设计与逻辑设计分别对应于系统开发中的_与_,而数据库的物理设计与模块的_相对应.

16、9.进入了设计阶段,要把软件做什么的_变换为怎么做的_,即着手实现软件的需求,并将设计的结果反映在_文档中.10.概要设计评价是对设计部分是否完整实现了需求中规定的_,_等要求,设计反感的_,关键的处理及内外部接口定义_,_,各部分之间的_等等一一都进行评审.11.在软件需求分析阶段,已经搞清楚了软件_的问题,并把这些需求通过_描述出来,这也是目标系统的_.12.在一个模块中,_,_,和_反映模块的外部特性,_反映它的内部特性.13._是指在设计和确定模块时,使得一个模块内包含的信息(过程和数据),对于不需要这些信息的其他模块来说,是不能_的.14.开发一个大而复杂的软件系统,将它进行适当的分

17、解,不但可降低它其复杂性,还可减少_,从而降低_,提高_,这就是_的依据.15.设计软件结构,具体为:(1)采用某设计方法,将一个复杂的系统按功能划分为_.(2)确定每个模块的_.(3)确定模块间的_.(4)确定模块之间的_,即模块之间传递的信息.(5)评价模块结构的质量.16.模块间耦合高低取决于模块间_,_及_.17._是指解决一个复杂问题时自顶向下逐层把软件系统划分成若干模块的过程.每个模块完成特定的_,所有的模块按某方法_起来,成为一个整体,完成整个系统所要求的功能.18.模块独立性中每个模块只完成问题要求的_子功能,并且与其他模块的联系_.19.内聚性有六种类型:_,_,_,_,_,

18、_.20耦合性也称_,它是指软件系统结构中_互相联系紧密程度的一种度量.模块之间联系越_,其耦合性越强.模块的_则越差.21.通过_,可以确定组成软件的过程实体,通过_,它可以定义和实施对模块的过程细节和局部数据结构的存取限制.22.模块的耦合性分为六种_,_,_,_,_,_.23._指两个模块之间有调用关系,传递的是简单的数据值,相当于高级语言中的_.24._指两个模块之间传递的是数据结构,如高级语言中的数足名,记录名,文件名等这些名字即为标记,其实传递的是_.25功能元素是内聚程度最_的内聚,指模块内所有元素共同完成_,缺一不可.功能内聚的模块与其他模块的耦合是_的.26.概要设计主要是把

19、各项功能需求转换成系统的_.27.结构图的主要内容有_,_,_.28.内聚性又称_.指模块的_的度量,即一个模块内部各个元素彼此结合的紧密程度的度量.若一个模块内各元素(语句之间,程序段之间)的联系越_,则它的内聚性越高.29.衡量模块独立性的两个定向的度量标准是_和_.30._指一个模块内的各处理元素之间没有任何联系.这是内聚程度最_的内聚.31._指模块内执行几个逻辑上相似的功能,通过参数确定该模块完成哪一个功能.把需要同时执行的动作组合在一起形成的模块称为_的模块.32.通信内聚是指模块内所有处理元素都在_上操作,有时称之为_,或者指各处使用相同的 或者产生相同的 。33通信内聚的模块各

20、部分都紧密相关于 ,所以可以把某一数据结构、文件、设备等操作都放在一个模块内,可达到 。34顺序内聚是指一个模块中各个处理元素都密切相关于 且必须 。前一功能元素的 就是下一功能元素的 。35控制耦合中一个模块调用另一个模块时,传递的是 (如开关、标志等),被调模块通过 有选择的执行块内某一功能。因此被调模块内应具有多个功能,哪个起作用受其 的控制。36 与 是模块独立性的两个定性标准,将软件系统划分模块时,尽量作到 内聚、 耦合,提高模块的 ,为设计高质量的软件奠定基础。37 是最高程度的耦合。 这种耦合出现在当一个模块直接使用另一个模块的 ,和通过 转入另一个模块的内部。38若某个加工将它

21、的输入流分离成许多发散的数据流,形成许多加工路径,并根据输入的值来选择其中一个路径来执行,这种特征的DFD称为 的数据流图,这个加工称为 。39模块的 指一个模块直接下属模块的个数, 指一个模块直接上属模块的个数。40基于IDEF0图的设计也是结构化设计技术之一,它以系统的 和 为基础设计系统的 。41如果若干模块之间耦合强度过高,每个模块内功能不复杂,可将它们 ,以减少信息的 和 的引用。若有多个相关模块,应该对它们的功能进行 ,消去 。42一个模块的作用范围是指受该模块内 影响的所有的模块的集合,一个模块的控制范围是指 及其 的集合。43在结构图中,模块用 来表示,并用模块标示该模块。两个

22、模块间用 或 连接表示它们的控制关系 ,模块和被调用模块的关系称为 与 的关系或者“ ”与“ ”的关系,模块间还经常用带注释的箭头表示模块调用过程中来回传递的信息。有时箭头尾部带 的表示传递的是数据,带 表示传递的是控制信息。44变换型DFD是由 、 和 三部分组成。45变换型数据处理的工作一般分为三步: 、 和 ,这三步体现了变换型DFD的基本思想。46通过信息隐藏,可定义和实施对模块的过程细节和局部数据结构的 。47结构图深度指结构图 ,也是模块的 ,结构宽度是指 。48一个模块的 范围应在其 范围之内,且判定所在的模块应与受其影响的模块在层次上应尽量 。49HIPO图是表示 的一种工具。

23、它使用 描述软件总的模块层次结构,使用 描述每个模块输入输出数据、处理功能及模块调用的详细情况。50公共耦合指通过一个 相互作用的那些模块间的耦合。公共耦合合的复杂程度随 的增加而增加。51结构化设计简称 。数据流图一般可分为 型和 型两类。 型的DFD是一个顺序结构。52在变换型DFD中,变换是系统的 ,变换输入端的数据流称为系统的 ,输出端的数据流为 。而直接从外部设备输入数据称为 ,直接从外部设备上输出的数据称为 。53软件结构从形态上总的考虑是:顶层扇出数较 一些,中间层扇出数较 一些,低层扇入数较 一些。54要把数据流图(DFD)转换成软件结构,首先必须研究DFD的类型。各种软件系统

24、,一般可分为 和 两类。55软件结构往往用 状或 结构的图形来表示。软件工程中,一般采用70年代中期美国Yourdon 等人提出的称为 简称 的工具来表示软件结构。56如果只有两个模块之间有公共数据环境,这种公共耦合有两种情况:一是一个模块只是给公共数据环境送数据,另一个模块只是从环境中取数据,这是 耦合,二是两个模块都既往公共数据环境送数据,又从里面取数据,这是 耦合。57一个模块内各元素联系的越紧密,则它的内聚性就 。按由低到高的顺序,模块的内聚类型有: 内聚、 内聚、 内聚、 内聚、 内聚、 内聚。58为了防止软件概要设计的错误传播到开发的后继阶段,在概要设计文档完成后,要进行 。59两

25、个模块通过全程变量相互作用,这种耦合方式称为 。60面向数据流的设计是以需求分析阶段产生的数据流图为基础,按一定的步骤映射成软件结构。因此又称 。61将与同一张年报表有关的所以程序组成一个模块,该模块的内聚性为 。62 是软件系统的模块层次结构,反映了整个系统的功能实现,即将来程序的控制层次体系。63软件结构的设计是 关键的一步,直接影响到下一阶段详细设计与编码的工作。64模块用 表示,并用名字标示该模块,名字应该体现该模块的功能。65一个模块的作用范围是指 的集合。66按国际GB857688的“计算机软件产品开发文件编制指南”规定,软件设计文档可分为“ ”、“ ”、“ ”。67两个模块间用

26、(或直线)连接表示它们的控制关系。68对于软件独立性的衡量,根据软件的内部特征和外部特征,提出了两个定性的度量标准,即: 和 。69软件结构的设计是以 为基础的,在分析设计阶段,已经把系统分解成层次结构。设计阶段,以需求分析的结果为依据,从实现的角度进一步划分模块,并组成模块的层次结构。70按由高到低的顺序,模块的耦合类型有: 耦合、 耦合、 耦合、 耦合、 耦合、 耦合。71. 模块间还经常用带注释的短箭头表示模块调用过程中来回传递的信息。有时箭头尾部带空心圆的表示传递的是_,带实心的表示传递的是_。72. 模块之间联系越紧密,其耦合性就越_,模块的独立性就越_。5.2.2 选择题1. 软件

27、设计一般分为总体设计和详细设计,它们之间的关系是( )。 A. 全局和局部 B 抽象和具体 C 总体和层次 D 功能和结构2 软件结构使用的图形工具,一般采用( )图。 A DFD B PAD C SC D ER3 属于软件设计的基本原理是( )。 A 数据流分析设计 B 变换流分析设计 C 事务流分析设计 D 模块化4 在软件结构的后处理中,下列说法错误的是( )。 A 为模块写的处理说明及接口说明可采用IPO图 B 数据结构的描述可用Warnier图或Jackson图 C 给出设计约束或限制。如数据的边界值,数据类型,格式,内存容量及时间的限制 D 在概要设计评审中,应着重评审软件需求是否

28、得到满足及软件结构的质量等 设计的优化工作主要放在软件结构设计的后处理阶段5 在基于IDEF0图的设计方法中,下列说明错误的是( )。 A IDEF0图以系统的功能模型和信息结构为基础设计系统的软件结构 B IDEF0图按照自顶向下逐层对系统进行分解 C IDEF0图对系统每一功能的输入,输出,约束,机制都进行了全面的描述 D 在系统概要设计时,一般按照DFD图的分解层次,逐层将其转换成软件结构图6 将几个逻辑上相似的成分放在一个模块中,该模块的内聚度是( )的。 A 逻辑性 B 瞬时性 C 功能性 D 通信性7 模块内的某成分的输出是另一成分的输入,该模块的内聚度是( )的。 A 功能性 B

29、 顺序性 C 逻辑性 D 瞬时性8 在分层数据流图映射成软件结构的设计中,下列说法错误的是( )。 A 分层的数据流图映射成软件结构图也应该是分层的 B 软件结构图的物理收入与输出部分放在主图中较为合适 C 分层DFD图的映射方法:主图是变换型,子图是事务型;或主图是事务型,子图是变换型。 D 变换型通常用于高层数据流图的转换,而事务型通常用于较低层数据流图的转换9 软件设计阶段一般又可分为( )。 A 逻辑设计与功能设计 B 概要设计与详细设计 C 概念设计与物理设计 D 模型设计与程序设计10 模块中所有成分引用共同的数据,该模块的内聚度是( )的。 A 逻辑性 B 瞬时性 C 功能性 D

30、 通信性11 结构图中,不是其主要成分的是( )。 A 模块 B 模块间传递的数据 C 模块内部数据 D 模块的控制关系12 好的软件结构应该是( )。 A 高耦合,高内聚 B 低耦合,高内聚 C 高耦合,低内聚 D 低耦合,低内聚13 结构分析方法就是面向( )自顶向下逐步求精进行需求分析的方法。 A 目标 B 数据流 C 功能 D 对象14 程序内部的各个部分之间存在的联系,用结构图表达时,最关心的是模块的内聚性和( )。 A 独立性 B 有效性 C 耦合性 D 安全性15 程序内部的各个部分之间存在的联系,用结构图表达时,最关心的是模块的( )和耦合性。 A 一致性 B 作用域 C 嵌套

31、限制 D 内聚性16 一组语句在程序中多处出现,为了节省内存空间,把这些语句放在一个模块中,该模块的内聚度是( )的。 A 逻辑性 B 瞬时性 C 偶然性 D 通信性17 模块中的所有成分结合起来完成一项任务,该模块的内聚度是( )的。它具有简明的外部界面,由它构成的软件易于理解,测试和维护。 A 偶然性 B 顺序性 C 通信性 D 功能性18 软件设计中划分通常遵循的原则是要使模块间的耦合性尽可能( )。 A 强 B 弱 C 较强 D 适中19 一个模块把一个数值量作为参数传给另一模块。这两个模块之间的耦合是( )。 A 逻辑耦合 B 数据耦合 C 控制耦合 D 内容耦合20 下列几种耦合中

32、,( )的耦合性最强。 A 公共耦合 B 数据耦合C.控制耦合D.内容耦合21.一个模块直接引用另一模块中的数据,这两个模块之间的耦合是 ().A.公共耦合B.数据耦合C.控制耦合D.内容耦合22.一个模块把开关量作为参数传送给另一模块,这两个模块直接的耦合是 ().A.外部耦合B.数据耦合C.控制耦合D.内容耦合23.M.Jackson suggested the data structureoriented software design method Whick of the following structure can be introduced by using input/out

33、put 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.()着重反映的是模块间隶属关系,即模块间的调用关系和层次关系.A.程序流程图B.数据流图C.E

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

35、软件的结构,过程和模块的设计,其中软件工程是指().A.模块间的关系B.模块的操作细节C.软件层次结构D.软件开发过程33.模块(),则说明模块的独立性越强.A.耦合越强B.扇入数越高C.偶合越弱D.扇入数越低34.块间的信息可以作控制信息用,也可以作为()使用.A.控制流 B.数据结构C.控制结构D.数据35.在对数据流的分析中,主要是找到中心变换,这是从()导出结构图的关键.A.数据结构B.实体关系C.数据流图D.E-R图36.模块的独立性是软件模块化所提出的要求,衡量模块独立性的度量标准是模块的().A.抽象和信息隐蔽B.局部化和封装化C.内聚性和耦合性D.激活机制和控制方法37.为了

36、提高模块(),当修改和维护模块时减少把一个模块的错误扩散到其他模块中去的机会.A.耦合性B.独立性C.内聚性D.共享性38.在软件概要设计中,不使用的图形工具是()图.A.SC B.IPOC.IDEF D.PAD39.模块的独立性是由内聚性和耦合性来度量的,其中内聚性是().A.模块间的联系程度B.模块的功能强度C.信息隐蔽程度 D.接口的复杂程度40.结构化的设计方法(SD)与结构化的分析方法(SA)一样,遵循()模型,采用逐步求精技术,SD方法通常与SA相连,即依据数据流图设计程序的结构.A.试题模型B.原型C.抽象思维D.生命期41.()把已确定的软件需求转换成特定形式的设计表示,使其得

37、以实现.A.系统设计B.详细设计C.逻辑设计D.软件设计42.在软件结构中,如果两个矩形之间有直接相连,表示他们存在()关系.A.链接B.调用C.并列D.顺序执行43.The software structure is an expression of the relationship among software module,inthe following phrase.Which are not the relationship among module software module().44. 为了提高模块的独立性,模块内部最好是( ). A. 逻辑内聚 B. 时间内聚 C. 功能内

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

39、结构中矩形表示( )A. 数据B. 加工C. 模块D. 储存50. In the design phase of soft ware engineering, decomposition of the program into modules should follow the principles of ( )A. low cohesion with coupling B. low cohesion with high couplingC. high cohesion with couplingD.high cohesion with hing coupling51. 划分模块时,一个模块的

40、( )A. 作用应在其控制范围内B. 控制范围应在其作用范围之内C. 作用范围与控制范围互不包含D. 作用范围与控制范围不受任何限制52. 结构化设计方法在软件开发中, 用于( ).A. 测试用例设计B. 概要设计C. 程序设计D. 详细设计53. 软件结构图中, 模块匡之间若有直线连接, 表示它们之间存在着( )关系.A. 调用B. 组成C. 连接D. 顺序执行54. Which is the strictest from of cohesion ? ( )A. logicalB. functionalC. proceduralD. coincidental55. 软件设计中划分模块的一个准

41、则是( A ). 两个模块之间的耦合方式,( 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图是

42、以模块分解的层次性以及模块内部输入, 处理, 输出三大基本部分为基础建立的D. H图示以模块见的信息传递及模块内部的处理57. ( )是数据说明,可执行语句等程序对象的集合,它是单独命名的而且可以通过名字访问.A. 模块化B. 抽象C. 精化D. 模块58. 结构化设计的方法中使用的图形工具是( ).A. 软件结构图B. 数据结构图C. 程序流程图D. 实体联系图59. 软件概要设计结束后得到( )A. 初始化的软件结构图B.优化的软件结构图C. 模块详细的算法D. 程序编码60. 结构化设计是一种面向( )的设计方法.A. 数据流B. 数据结构C. 数据库D. 程序61. 调用算法是解决问题

43、的关键步骤之一. 算法的计算工作量大小和实现算法所需的存储单元多少,分别称为计算的( A )和( B ). 编写程序时, ( C )和( D )是应采纳的原则之一.( E )是调试程序的重要工作之一. 供选择的答案:A,B: 1.可实现性2.时间复杂度 3.空间复杂度4.困难度 5.高效性6.计算有效性C:1.程序的结构化2.程序越短越好 3.尽可能节省存储单元4.尽可能减少注释行D:1.使用有实际意义的名字 2.使用长度短而无实际意义的名字 3.表达式中尽量少用括号 4.尽量使用简化了的逻辑表达式E:1.调度2.证明程序正确 3.人员安排4.排错 62. ( )是指把一些关系密切的软件元素物

44、理地址方的彼此靠近 A.隐藏 B.内聚C.局部化D.模块独立63. 模块( )定义为受该模块内一个判断影响的所有模块集合A.控制域B.作用域C.宽度D.接口64. Which of the following statements is true?( )A.The definition phase results in the Software Requirement SpecificationB.Testing is optional in software life cycleC.CASE tools can only aid in the design phase of asoft wa

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

温馨提示

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

评论

0/150

提交评论