您好,欢迎访问三七文档
当前位置:首页 > 建筑/环境 > 设计及方案 > 软件工程第4章软件概要设计
第4章软件概要设计一、填空题1.在软件概要设计阶段,建立软件结构后,还应为每个模块写一份处理说明和(接口说明)。2.基于IDEF0图的设计也是结构化设计技术之一,它以系统的(功能模块)和信息结构为基础设计软件结构。3.结构化设计中以数据流图为基础的两种具体设计方法是(变换分析和事物分析)设计。4.两个模块都使用同一张表,模块的这种耦合称为(公共耦合)。5.一个模块内部各程序段都在同一张表上操作,这个模块的内聚性称为(通信内聚)。二、选择题1.设计软件结构一般不确定(C)。A.模块的功能B.模块的接口C.模块内的局部数据D.模块间的调用关系2.结构化设计方法是一种面向(A)的设计方法。A.数据流B.数据结构C.数据库D.程序3.软件概要设计结束后得到(B)。A.初始化的软件结构图B.优化后的软件结构图C.模块详细的算法D.程序编码4.为了提高模块的独立性,模块内部最好是(D)。A.公共耦合B.控制耦合C.内容耦合D.数据耦合5.为了提高模块的独立性,模块内部最好是(C)。A.逻辑内聚B.时间内聚C.功能内聚D.通信内聚三、应用题1.将第3章例题分析与解答中的图3-1“银行储蓄系统”的DFD设计成软件结构图。2将第3章例题分析与解答中的图3-2“成人自学考试考务管理系统”的DFD设计成软件结构图。答案:一、填空题1.接口说明2.功能模块3.变换分析与事物分析4.公共耦合5.通信内聚二、选择题1.C2.A3.B4.D5.C三、应用题1.2.主图:子图M2(考前处理):子图M3(考后处理):查询模块的功能比较简单,可以将准考证编号作为索引关键字查阅各科成绩,这里不再赘述,读者可自行设计。一、名词解释1.软件设计2.模块化3.信息隐蔽4.模块独立性5.耦合性6.内聚性7.模块的控制范围8.模块的作用范围9.软件结构二、填空题1.软件设计阶段产生的最重要的文档是__软件概要设计说明书____。2.软件结构是以___模块___为基础而组成的一种控制层次结构。3.反映软件结构的基本形态特征是__深度、宽度、扇入、扇出____。4.一个模块把数值作为参数送给另一个模块,这种耦合方式称为__数据耦合____。5.两个模块通过全程变量相互作用,这种耦合方式称为___公共耦合___。6.将与同一张年报表有关的所有程序段组成一个模块,该模块的内聚性为__通信耦合____。7.一个模块的作用范围指___受该模块内一个判定影响的所有模块___的集合。8.一个模块的控制范围指____模块本身以及其所有下属模块__的集合。9.结构化设计以__数据流图____为基础映射成软件结构。10.为了防止软件概要设计的错误传播到开发的后续阶段,在概要设计文档完成以后,要进行__软件评审____。三、选择题1.结构化设计方法在软件开发中,用于(B)。A.测试用例设计B.软件概要设计C.程序设计D.软件详细设计2.软件结构使用的图形工具,一般采用(C)图。A.DFDB.PADC.SCD.ER3.软件结构图中,模块框之间若有直线连接,表示它们之间存在着(A)关系。A.调用B.组成C.链接D.顺序执行4.在软件概要设计中,不使用的图形工具是(D)图。A.SCB.IPOC.IDEF0D.PAD5.划分模块时,一个模块的(A)。A.作用范围应在其控制范围之内B.控制范围应在其作用范围之内C.作用范围与控制范围互不包含D.作用范围与控制范围不受任何限制6.属于软件设计的基本原理是(D)。A.数据流分析设计B.变换流分析设计C.事务流分析设计D.模块化7.变换流的DFD由三部分组成,不属于其中一部分的是(A)。A.事务中心B.变换中心C.输入流D.输出流8.软件设计阶段一般又可分为(B)。A.逻辑设计与功能设计B.概要设计与详细设计C.概念设计与物理设计D.模型设计与程序设计9.好的软件结构应该是(B)。A.高耦合、高内聚B.低耦合、高内聚C.高耦合、低内聚D.低耦合、低内聚10.结构图中,不是其主要成分的是(C)。A.模块B.模块间传递的数据C.模块内部数据D.模块的控制关系四、简答题1.什么是软件概要设计,该阶段的基本任务是什么?2.软件设计的基本原理包括哪些内容?3.模块的耦合性、内聚性包括哪些种类?各表示什么含义?4.简述软件结构优化准则。5.变换分析设计与事务分析设计有什么区别?简述其设计步骤。五、应用题将第3章3.3节应用题中第1题的DFD转换成软件结构图。参考答案二、填空题1.软件概要设计说明书2.模块3.深度、宽度、扇入、扇出4.数据耦合5.公共耦合6.通信内聚7.受该模块内一个判定影响的所有模块8.模块本身以及其所有下属模块9.数据流图10.软件评审三、选择题1.B.2.C.3.A.4.D.5.A.6.D.7.A.8.B.9.B.10.C.五、应用题第四章仿真试题作者:不详来源:2006年9月1日发表评论进入社区1、软件设计一般分为总体设计和详细设计,它们之间的关系是(A)A、全局和局部B、抽象和具体C、总体和层次D、功能和结构2、在面向数据流的软件设计方法中,一般将信息流分为(A)A、变换流和事务流B、变换流和控制流C、事务流和控制流D、数据流和控制流3、软件设计中一般将用到图形工具,下列哪种(些)可用作设计的图形工具(C)a.结构图b.实体联系图c.IPO图d.层次图A、a和bB、c和dC、a,c,dD、全部4、软件设计将涉及软件的构造、过程和模块的设计,其中软件过程是指(B)A、模块间的关系B、模块的操作细节C、软件层次结构D、软件开发过程5.模块独立性是软件模块化所提出的要求,衡量模块独立性的度量标准则是模块的(C)A、抽象和信息隐蔽B、局部化和封装化C、内聚性和耦合性D、激活机制和控制方法6.模块的独立性是由内聚性和耦合性来度量的,其中内聚性是(B)A、模块间的联系程度B、模块的功能强度C、信息隐蔽程度D、接口的复杂程度7.软件结构是软件模块间关系的表示,下列术语中哪一个不属于对模块间关系的描述(D)A、调用关系B、从属关系C、嵌套关系D、主次关系8.软件设计中划分模块的一个准则是(1)。两个模块之间的耦合方式中,(2)耦合的耦合度最高,(3)耦合的耦合度最低。一个模块内部的内聚种类中(4)内聚的内聚度最高,(5)内聚的内聚度最低。(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、过程答案:1.A2.A3.C4.B5.C6.B7.D8.CDBDA《软件工程》习题参考答案4作者名:不详来源:网友提供06年6月8日第4章1.什么是软件概要设计?该阶段的基本任务是什么?把一个软件需求转换为软件表示时,首先设计出软件总的体系结构。称为概要设计或结构设计。基本任务:⑴设计软件系统结构,具体为:采用某种设计方法,将一个复杂的系统按功能划分为模块。确定每个模块的功能。确定模块之间的调用关系。确定模块之间的接口(模块之间传递的信息)评价模块的结构质量⑵进行数据结构及数据库的设计⑶编写概要设计的文档主要内容有:概要设计说明书,数据库说明书(DBMS的简介,概念模型,逻辑设计,结果)用户手册,修订测试计划(测试的策略﹑方法﹑步骤)⑷评审:是否完整地实现了规定的功能﹑性能要求。设计方案是否可行。关键的处理及内部接口定义的正确性,有效性,各部分的一致性。2.软件设计的基本原理包括哪些内容?⑴模块化:模块是软件的组成部分,是具有独立功能且可命名的一段程序,所有模块组成整体,可以满足问题的要求。模块化即按照一定的原则,将软件划分成若干个模块,每个模块完成一个特定的功能,然后把这些模块按照某种方法组装成一个软件系统。(可降低复杂度、减少工作量)模块具有以下几种特性:接口:模块的输入输出。功能:指模块实现什么功能。逻辑:描述模块内部如何实现要求及所需的数据。状态:该模块的运行环境,模块间调用与被调用关系。⑵抽象:认识复杂现象过程所使用权的工具,只考虑事物本质的共同特性,忽略细节和其它因素。通过抽象确定组成软件的过程实体。⑶信息隐蔽:将模块实现自身功能的细节与数据隐蔽起来。模块间仅交换为完成系统功能所必须的信息。⑷模块独立性:每个模块只完成系统要求的独立的子功能。3.衡量模块独立性的两个标准是什么?各表示什么含义?内聚和耦合内聚:又称为块内联系,指模块内部各成分之间相互关联的程度,以高内聚为设计目标。耦合:也称块间联系,模块之间相互联系程度的度量,联系越紧密,耦合性越强,独立性越差,以低耦合为设计目标。4.模块的耦合性有哪几种?各表示什么含义?⑴内容耦合:一个模块直接操作或修改另一模块的数据,或者不通过正常入口直接转入另一模块⑵公共耦合:两个或多个模块通过共同引用一个全局数据环境相互作用⑶控制耦合:模块之间通过传递控制信息相互作用⑷标记耦合:两个模块之间通过传递公共指针或地址相互作用的耦合⑸数据耦合:模块之间通过传递数据交换信息⑹无耦合:模块间无任何关系,独立工作5.模块的内聚性有哪几种?各表示什么含义?⑴偶然内聚:一个模块各个成分之间毫无关系⑵逻辑内聚:将几个逻辑上相关的功能放在同一个模块中⑶时间内聚:一个模块完成的功能在同一时间执行⑷过程内聚:一个模块内部的处理成分是相关的,而且必须以特定的次序执行⑸通信内聚:一个模块的所有成分都集中在同一个数据结构上⑹顺序内聚:一个模块的各个成分同一个功能密切相关,而且一个成分的输出,作为另外一个成分的输入⑺功能内聚:模块内的所有成分属于一个整体,完成单一的功能。(内聚最高)6.什么是软件结构?简述软件结构设计的优化准则。⑴改进软件结构,提高模块独立性首先设计出软件初始结构,评价该结构,通过模块分解或合并,力求降低耦合提高内聚。⑵模块的规模应该适中⑶模块结构的深度、宽度、扇出和扇入应适中深度:软件结构中控制的层数宽度:软件结构中同一层次上最大模块总数扇入:某一模块有多少直接调用它的上级模块数目(越大越好)扇出:一个模块直接控制(调用)下级模块的数目。(越少越好,3,4个为宜,不超过9个,顶层扇出较高,中间扇出较少,底层模块高扇入多⑷一个模块的作用域(范围),应处在这个模块的控制域(范围)之内模块的作用域:受该模块内一个判定影响的所有模块的集合模块的控制域:这个模块本身以及所有直接或间接从属于它的模块的集合7.什么是模块的影响范围?什么是软件的控制范围?它们之间应建立什么关系?模块的影响范围(作用域):受该模块内一个判定影响的所有模块的集合模块的控制范围(控制域):这个模块本身以及所有直接或间接从属于它的模块的集合一个模块的影响范围(作用域),应处在这个模块的模块的控制范围(控制域)内。8.什么样是事物流?什么是变换流?试将相应形式的数据流图转换为软件结构图数据流图(DFD)一般可分为变换流,事物流两种。变换流:由输入﹑输出﹑变换(或称处理)三部分组成,是一顺序结构。事物流:它的某个加工,分离成许多发散的数据流,形成许多加工路径,并且根据输入值选择其中一个路径来执行。(这人加工称为事务处理中心)9.试述变换分析﹑事物分析设计步骤。变换分析设计步骤:⑴确定变换中心,逻辑输入和输出。⑵设计软件结构的顶层和第一层--变换结构:顶层的功能是完成所有模块的控制(名称应是系统名,以体现完成整个系统功能)第一层至少有三种功能模块:输入﹑输出和变换模块⑶设计中﹑下层模块,对第一层的模块自顶向下分解。输入模块由两部分组成:接收数据﹑转换成调用模块所需信息。输出模块由两部分组成:将数据转换成下属模块所需的形式﹑发送数据变换模块:对每个基本加工建立一功能模块⑷设计的优化:输入部分求精,每个物理输入设置专门模块,以体现系统的外部接口。其它输入模块与转换数据模块都很简单时,可将它们合并。输出部分求精:每个物理输出设置专门模块,其它也可适当合并。变换部分求精:根据设计准则,对模块适当合并。事务分析的设计步骤:⑴确定事务中心和加工路径⑵设计顶层(事务机构)和
本文标题:软件工程第4章软件概要设计
链接地址:https://www.777doc.com/doc-2011570 .html