
软件工程复习试题有答案版.pdf
21页一、单选题可行性分析研究的目的是(B)A.争取项目 B. 项目值得开发否 C.开发项目 D.规划项目具有风险分析的软件生存周期模型是(C)A.瀑布模型 B.喷泉模型C.螺旋模型 D. 增量模型需求分析阶段的任务是确定(D)A软件开发方法 B软件开发工具 C软件开发 D软件系统的功能数据字典是用来定义(D )中的各个成份的具体含义的A流程图 B功能结构图 C系统结构图 D数据流图程序的三种基本控制结构的共同特点是(C )A只能用来描述简单程序 B不能嵌套使用C单入口,单出口 D仅用于自动控制系统软件设计的方法有多种, (A )方法不属于面向数据流的设计方法A基于 Jackson 图的设计 B基于 IDEF0图的设计C交换分析设计 D事务分析设计为高质量地开发软件项目,在软件结构设计时,必须遵循(A )原则A信息隐蔽 B 质量控制 C程序优化 D数据共享软件复杂性主要体现在(B)A.数据的复杂性B.程序的复杂性 C.控制的复杂性 D. 问题的复杂性为了提高软件的可维护性,在编码阶段应注意(D)A.保存测试用例和数据 B.提高模块的独立性C.文档的副作用D.养成好的程序设计风格面向对象的特征之一是(A )A、对象的唯一性B.抽象 C.封装性 D.共享性当一个模块直接使用另一个模块的内部数据,这种模块之间的耦合为 (D )A数据耦合 B公共耦合 C标记耦合D内容耦合需求规格说明书的作用不包括(C )A软件验收的依据 B用户与开发人员对软件要做什么的共同理解C软件可行性研究的依据 D软件设计的依据为使得开发人员对软件产品的各个阶段工作都进行周密的思考,从而减少返工,所以( C )的编制是很重要的。
A、需求说明 B、概要说明 C、软件文档 D、测试计划软件部件的内部实现与外部可访问性的分离,是指软件的( C ) A、继承性 B、共享性 C 、封装性 D、抽象性单元测试是发现编码错误, 集成测试是发现模块的接口错误,确认测试是为了发现功能错误 ,那么系统测试是为了发现( C )的错误A、接口错误 B、编码错误 C、性能、质量不合要求D、功能错误软件工程管理对软件项目的开发管理,即对整个软件 ( D )的一切活动的管理A、软件项目 B、生存期 C、软件开发计划 D、软件开发软件测试中根据测试用例设计的方法的不同可分为黑盒测试和白盒测试两种,它们(D )A前者属于静态测试,后者属于动态测试 B都属于静态测试C前者属于动态测试,后者属于静态测试D都属于动态测试软件工程管理的具体内容不包括对(D )管理A开发人员 B 组织机构 C控制 D 设备软件调试技术包括(C)A.错误推断 B. 集成测试 C. 回溯法 D. 边界值分析ISO的软件质量评价模型由3 层组成,其中用于评价设计质量的准则是( D )ASQIC BSQMC CSQRC D SQDC 软件复杂性度量的参数包括(B)A效率 B规模 C完整性 D容错性模块的耦合性最强的是 ( D ) A.数据耦合B.控制耦合 C.公共耦合D.内容耦合在 SD方法中全面指导模块划分的最重要的原则是( D ) A.程序模块化B.模块高内聚 C.模块低耦合D.模块独立性软件详细设计主要采用的方法是( C ) A.模块设计B.结构化设计 C.PDL 语言 D. 结构化程序设计黑盒测试在设计测试用例时,主要需要研究( A ) A.需求规格说明与概要设计说明B.详细设计说明C.项目开发计划D.概要设计说明与详细设计说明若有一个计算类型的程序,它的输入量只有一个X,其范围是 -1.0 ,1.0 ,现从输入的角度考虑一组测试用例:-1.001 ,-1.0 ,1.0 ,1.001。
设计这组测试用例的方法是 ( C ) A.条件覆盖法B.等价分类法C.边界值分析法D.错误推测法下列属于维护阶段的文档是( D ) A.软件规格说明 B. 用户操作手册 C.软件问题报告D.软件测试分析报告快速原型模型的主要特点之一是( D ) A.开发完毕才见到产品B.及早提供全部完整的软件产品C.开发完毕后才见到工作软件D.及早提供工作软件因计算机硬件和软件环境的变化而作出的修改软件的过程称为( B ) A.教正性维护B.适应性维护 C. 完善性维护D.预防性维护软件按照设计的要求, 在规定时间和条件下达到不出故障,持续运行的要求的质量特性称为 ( B ) A.可用性B.可靠性 C.正确性 D.完整性下列文档与维护人员有关的有( C ) A.软件需求说明书 B.项目开发计划C.概要设计说明书 D. 操作手册下列模型属于成本估算方法的有( A ) A.COCOMO模型 B.McCall模型 C.McCabe度量法 D.时 间估算法对象实现了数据和操作的结合,使数据和操作( C )于对象的统一体中第九章)A结合 B隐藏C 封装 D抽象软件调试技术包括( B )A边界值分析 B 演绎法 C循环覆盖 D集成测试概要设计是软件系统结构的总体设计,以下选项中不属于概要设计的是( D )A.把软件划分成模块 B.确定模块之间的调用关系C.确定各个模块的功能D.设计每个模块的伪代码软件生命周期中所花费用最多的阶段是( D )A详细设计 B软件编码 C软件测试D 软件维护“软件危机”是指 ( C) A.计算机病毒的出现 B.利用计算机进行经济犯罪活动C.软件开发和维护中出现的一系列问题 D.人们过分迷恋计算机系统确认软件的功能是否与需求规格说明书中所要求的功能相符的测试属于( C )A、集成测试 B、恢复测试 C、验收测试 D、单元测试盒图( N-S图)为( A )提供了有力的工具。
A、系统分析 B、软件的自动化生成C 、自动分析数据 D 、测试软件程序的三种基本控制结构是( B )A、过程、子程序和分程序B、顺序、选择和重复C、递归、堆栈和队列D、调用、返回和转移具有风险分析的软件生存周期模型是(C )A.瀑布模型 B.喷泉模型C.螺旋模型 D.增量模型下列有关软件工程的标准,属于行业标准的是(D ) A.GB B.DIN C.ISOD.IEEE DFD 中的每个加工至少需要 ( D ) A.一个输入流 B.一个输出流C.一个输入或输出流 D.一个输入流和一个输出流为了提高模块的独立性,模块之间最好是( D ) A.控制耦合 B.公共耦合C.内容耦合 D.数据耦合软件设计的方法有多种,(A )方法不属于面向数据流的设计方法A基于 Jackson 图的设计B基于 IDEF0图的设计C交换分析设计 D 事务分析设计当一个模块直接使用另一个模块的内部数据,这种模块之间的耦合为(D)A数据耦合B公共耦合 C标记耦合D 内容耦合详细设计与概要设计衔接的图形工具是( D ) A.DFD 图 B.程序图 C.PAD图 D.SC图测试的关键问题是 ( D ) A.如何组织对软件的评审 B.如何验证程序的正确性C.如何采用综合策略D.如何选择测试用例开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做(C ) A. 软件工程B.软件周期C.软件危机D.软件产生模块的内聚性最高的是 ( D ) A.逻辑内聚B.时间内聚 C.偶然内聚D.功能内聚软件详细设计主要采用的方法是( C ) A.模块设计B.结构化设计 C.PDL 语言 D.结 构 化 程 序设计结构化程序设计主要强调的是( D )A程序的规模 B程序的效率C程序设计语言的先进性 D程序易读性下列关于功能性注释不正确的说法是( B ) A. 功能性注释嵌在源程序中,用于说明程序段或语句的功能以及数据的状态B. 注释用来说明程序段,需要在每一行都要加注释C. 可使用空行或缩进,以便很容易区分注释和程序D. 修改程序也应修改注释下列关于效率的说法不正确的是( D ) A. 效率是一个性能要求,其目标应该在需求分析时给出B. 提高程序效率的根本途径在于选择良好的设计方法,数据结构与算法C. 效率主要指处理机时间和存储器容量两个方面D. 程序的效率与程序的简单性无关可维护性的特性中,相互矛盾的是( B ) A. 可理解性与可测试性B. 效率与可修改性C. 可修改性和可理解性 D.可理解性与可读性快速原型是利用原型辅助软件开发的一种新思想,它是在研究( A )的方法和技术中产生的。
A. 需求阶段 B.设计阶段 C.测试阶段 D.软件开发的各个阶段从目前情况来看,增量模型存在的主要问题是(C) A. 用户很难适应这种系统开发方法B. 该方法的成功率很低C. 缺乏丰富而强有力的软件工具和开发环境D. 缺乏对开发过程中的问题和错误具有应付变化的机制可行性分析研究的目的是(A )A.项目是否值得开发 B .争取项目 C.开发项目 D.规划项目描述复杂系统时,最好采用( B )的描绘方法A.按系统流程描述 B.分层次 C.分阶段 D.对系统数据分类下述方法中,属于形式化说明方法的是( A )A. Petri网 B. 数据流图 C. PDL D. PAD图需求分析阶段的基本任务是准确地回答( D )A. 系统的规模有多大 B. 系统如何实现C. 系统有些什么输入信息D. 系统必须做什么在软件结构设计时,下面哪一项不是应该遵循(C )的原则A信息隐蔽 B抽象 C 数据共享 D 逐步求精软件详细设计的主要任务是确定每个模块的( A )A、算法和使用的数据结构B、外部接口 C、功能 D、编程软件是一种( C )A、程序 B、数据 C、逻辑产品 D 、物理产品研究开发所需要的成本和资源是属于可行性研究中的( B )研究的一方面。
A.技术可行性B.经济可行性 C.社会可行性 D.法律可行性中级结构性成本模型COCOMO是一个 ( C ) A、静态单变量模型 B、动态单变量模型C、静态多变量模型D 、动态多变量模型PAD图为( 详细设计)提供了有力的工具在软件结构设计完成后,对于下列说法,正确的是( C )A软件层数过多,可能是因为各管理子模块功能过于复杂的原因B对软件宽度影响最大的因素是扇入C一个模块的扇出太多,说明该模块过分复杂,缺少中间层D一个模块的扇入太多,说明该模块过分复杂,缺少中间层源程序的效率与 ( D )阶段确定的算法的效率直接有关A概要设计B. 总体设计 C. 单元设计D. 详细设计关于软件测试,下面说法正确的是( C ) A软件测试只能依靠手工进行B子模块并入系统时,只要此子模块是经过单元测试,且没有问题的,就不用再对系统进行测试了C软件不能进行“穷举”测试D测试计划是在软件测试开始之初制定的关于白盒法覆盖程度的论述中正确的是( A )A语句覆盖:选择测试用例使程序中每条语句至少被执行一次B条件覆盖:选择测试用例使每个条件都满足C判定覆盖:选择测试用例使程序中每个判定和判定中的条件至少都获得一次“真”值和一次“假”值。
D条件组合覆盖:将所有的判定条件都组合起来执行黑盒测试着重测试软件的( C)A设计B. 模块 C. 功能D. 数据( B )发现错误能力最弱A判定覆盖B.语句覆盖 C. 条件覆盖D. 条件组合覆盖在进行软件测试时,首先应当进行( D ),然后再进行组装测试,最后再进行有效性测试A组织测试 B集成测试 C确认测试D单元测试由软件预发行的最终客户们在一个或多个客户场所对软件进行的测试,称为 (D ) A测试 B集成测试 C平行运行D测试以下说法正确的是( B )A等价划分法是一种有效的白盒测试方法B在等价划分法中,为了提高测试效率,一个测试用例可以覆盖多个有效等价类C等价划分法的关键是按照用例来确定等价类D设计测试方案时,要么采用等价划分法,要么采用边界值分析法从现存的程序代码中抽取有关数据、体现结构和处理过程的设计信息,以便恢复设计结果的过程,称为(B)A代码重构B逆向工程 C数据重构 D正向工程决定软件可维护性的因素有5 个,即可理解性、 ( C )、可修改性、可移植性、可重用性A 完备性 B 安全性C 可测试性 D 灵活性软件维护工作过程中,第一步是先确认( B )A维护环境 B维护类型 C 维护要求 D 维护者以下哪种不属于用。












