1/22一、选择题(每题2分,共40分)1.软件项目的可行性研究要进行一次(C)需求分析。A.详细的B.全面的C.简化的、压缩的D.彻底的2、系统流程图用于可行性分析中的(A)的描述。A.当前运行系统B.当前逻辑模型C.目标系统D.新系统3、程序的三种基本控制结构的共同特点是(D)A.不能嵌套使用B.只能用来写简单程序C.已经用硬件实现D.只有一个入口和一个出口4、维护中,因误删除一个标识符而引起的错误是(C)副作用。A.文档B.数据C.编码D.设计5、(D)是以提高软件质量为目的的技术活动。A.技术创新B.测试C.技术创造D.技术评审6、面向对象方法学的出发点和基本原则是尽可能模拟人类习惯的思维方式,分析、设计和实现一个软件系统的方法和过程,尽可能接近于人类认识世界解决问题的方法和过程。因此面向对象方法有许多特征,如软件系统是由对象组成的;(C);对象彼此之间仅能通过传递消息互相联系;层次结构的继承。A.开发过程基于功能分析和功能分解B.强调需求分析重要性C.把对象划分成类,每个对象类都定义一组数据和方法D.对既存类进行调整7、原型化方法是用户和设计者之间执行的一种交互构成,适用于(A)系统。A.需求不确定性高的B.需求确定的C.管理信息D.实时8、为了提高测试的效率,应该(D)。A.随机地选取测试数据B.取一切可能的输入数据作为测试数据C.在完成编码以后制定软件的测试计划D.选择发现错误可能性大的数据作为测试数据9、使用白盒测试方法时,确定测试数据应根据(A)和指定的覆盖标准。A.程序的内部逻辑B.程序的复杂结构C.使用说明书D.程序的功能10、开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做(C)A.软件工程B.软件周期C.软件危机D.软件产生11、软件按照设计的要求,在规定时间和条件下达到不出故障,持续运行的要求的质量特性称为(B)。A.可用性B.可靠性C.正确性D.完整性12、瀑布模型的关键不足在于(B)A.过于简单B.不能适应需求的动态变更C.过于灵活D.各个阶段需要进行评审13、软件维护的副作用主要有以下哪几种(C)A.编码副作用、数据副作用、测试副作用B.编码副作用、数据副作用、调试副作用C.编码副作用、数据副作用、文档副作用D.编码副作用、文档副作用、测试副作用14、在下面的软件开发方法中,哪一个对软件设计和开发人员的开发要求最高(B)。A、结构化方法B、原型化方法C、面向对象的方法D、控制流方法15、软件工程方法学的目的是:使软件生产规范化和工程化,而软件工程方法得以实施的主要保证是(C)。2/22A、硬件环境B、软件开发的环境C、软件开发工具和软件开发的环境D、开发人员的素质16、软件开发模型是指软件开发的全部过程、活动和任务的结构框架。主要的开发模型有瀑布模型、演化模型、螺旋模型、喷泉模型和智能模型。螺旋模型将瀑布模型和演化模型相结合,并增加了(1),它建立在(2)的基础上,沿着螺线自内向外每旋转一圈,就得到(2)的一个新版本。喷泉模型描述了(3)的开发模型,它体现了这种开发方法创建软件的过程所固有的(4)和(5)的特征。B(1)A、系统工程B、风险分析C、设计评审D、进度控制D(2)A、模块划分B、子程序分解C、设计;D、原型A(3)A、面向对象B、面向数据流C、面向数据结构D、面向事件驱动D(4)A、归纳B、推理C、迭代D、递归A(5)A、开发各阶段之间无“间隙”B、开发各阶段分界明显C、部分开发阶段分界明显D、开发过程不分段一、选择题:(每题1分,共20分)(将答案写在题号前的()中)1.软件是(C)。A.处理对象和处理规则的描述B.程序C.程序及其文档D.计算机系统2.软件需求规格说明的内容不应包括(B)。A.主要功能B.算法的详细描述C.用户界面及运行环境D.软件的性能3.程序的三种基本控制结构是(B)。A.过程、子程序和分程序B.顺序、选择和重复C.递归、迭代和回溯D.调用、返回和转移4.面向对象的分析方法主要是建立三类模型,即(D)。A)系统模型、ER模型、应用模型B)对象模型、动态模型、应用模型C)E-R模型、对象模型、功能模型D)对象模型、动态模型、功能模型5.在E-R模型中,包含以下基本成分(C)。A)数据、对象、实体B)控制、联系、对象C)实体、联系、属性D)实体、属性、操作6.各种软件维护的类型中最重要的是(A)。A)完善性维护B)纠错性维护C)适应性维护D)预防性维护7.软件测试的目标是(B)。A.证明软件是正确的B.发现错误、降低错误带来的风险C.排除软件中所有的错误D.与软件调试相同8.软件生命周期中所花费用最多的阶段是(D)A.详细设计B.软件编码C.软件测试D.软件维护9.若有一个计算类型的程序,它的输入量只有一个X,其范围是[-1.0,1.0],现从输入的角度考虑一组测试用例:-1.001,-1.0,1.0,1.001.设计这组测试用例的方法是(C)A.条件覆盖法B.等价分类法C.边界值分析法D.错误推测法10、详细设计的基本任务是确定每个模块的(D)设计A.功能B.调用关系C.输入输出数据D.算法11.设函数C(X)定义问题X的复杂程序,函数E(X)确定解决问题X需要的工作量(时间)。对于两个问题P1和P2,如果C(P1)C(P2)显然E(P1)E(P2),则得出结论E(P1+P2)E(P1)+E(P2)就是:(A)3/22A.模块化的根据B.逐步求精的根据C.抽象的根据D.信息隐藏和局部化的根据12.下面几种白箱测试技术,哪种是最强的覆盖准则(D)A.语句覆盖B.条件覆盖C.判定覆盖D.条件组合覆盖13.面向数据流的设计方法把(A)映射成软件结构。A.数据流B.系统结构C.控制结构D.信息流14.内聚程度最低的是(A)内聚A.偶然B.过程C.顺序D.时间15.确定测试计划是在(A)阶段制定的.A.总体设计B.详细设计C.编码D.测试16.需求分析的产品是(D)A.数据流程图案B.数据字典C.判定表D.需求规格说明书17.数据字典是软件需求分析阶段的最重要工具之一,其最基本的功能是(C)A.数据库设计B.数据通信C.数据定义D.数据维护18.(D)引入了“风险驱动”的思想,适用于大规模的内部开发项目。A.增量模型B.喷泉模型C.原型模型D.螺旋模型19.模块的内聚性最高的是(D)A.逻辑内聚B.时间内聚C.偶然内聚D.功能内聚20.提高测试的有效性非常重要,成功的测试是指(D)A.证明了被测试程序正确无误B.说明了被测试程序符合相应的要求C.未发现被测程序的错误D.发现了至今为止尚未发现的错误一、单项选择题每小题1分,共20分。1.在下列工具与环境中(C)属于较早期的CASE。A.基于信息工程CASEB.人工智能CASEC.结构的基于图形CASED.集成的CASE环境2.Putnam成本估算模型是一个(D)模型。A.静态单变量B.动态单变量C.静态多变量D.动态多变量3.在McCall软件质量度量模型中,(C)属于面向软件产品修改。A.可靠性B.可重用性C.适应性D.可移植性4.ISO的软件质量评价模型由3层组成,其中用于评价设计质量的准则是(D)A.SQICB.SQMCC.SQRCD.SQDC5.软件复杂性度量的参数包括(B)A.效率B.规模C.完整性D.容错性6.对象实现了数据和操作的结合,使数据和操作(C)于对象的统一体中。A.结合B.隐藏C.封装D.抽象7.软件调试技术包括(B)A.边界值分析B.演绎法C.循环覆盖D.集成测试8.瀑布模型的存在问题是(B)A.用户容易参与开发B.缺乏灵活性C.用户与开发者易沟通D.适用可变需求9.软件测试方法中的静态测试方法之一为(A)A.计算机辅助静态分析B.黑盒法C.路径覆盖D.边界值分析10.软件生命周期中所花费用最多的阶段是(D)4/22A.详细设计B.软件编码C.软件测试D.软件维护11.第一个体现结构化编程思想的程序设计语言是(B)A.FORTRAN语言B.Pascal语言C.C语言D.PL/1语言12.程序的三种基本控制结构是(B)A.过程、子程序和分程序B.顺序、选择和重复C.递归、堆栈和队列D.调用、返回和转移13.在详细设计阶段,经常采用的工具有(A)A.PADB.SAC.SCD.DFD14.详细设计的结果基本决定了最终程序的(C)A.代码的规模B.运行速度C.质量D.可维护性15.需求分析中开发人员要从用户那里了解(A)A.软件做什么B.用户使用界面C.输入的信息D.软件的规模16.结构化程序设计主要强调的是(D)A.程序的规模B.程序的效率C.程序设计语言的先进性D.程序易读性17.IDEF。图反映系统(D)A.怎么做B.对谁做C.何时做D.做什么18.经济可行性研究的范围包括(C)A.资源有效性B.管理制度C.效益分析D.开发风险19.可行性分析是在系统开发的早期所做的一项重要的论证工作,它是决定该系统是否开发的决策依据,因必须给出(B)的回答。A.确定B.行或不行C.正确D.无二义20.需求分析阶段的任务是确定(D)A.软件开发方法B.软件开发工具C.软件开发费D.软件系统的功能一,单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个选项中只有一个选项是符合题目要求的,请将正确选项前的字母填在题后的横线上。1.可行性研究要进行一次_____需求分析。参考答案为:CA.详细的B.全面的C.简化的、压缩的D.彻底的[解析]软件的可行性研究的目的就是用最小的代价在尽可能短的时间内确定该软件项目是否能够开发,是否值得去开发。其实质是要进行一次简化、压缩了的需求分析、设计过程,要在较高层次上以较抽象的方式进行需求分析和设计过程。因此答案为C。2.系统流程图用于可行性分析中的_____的描述。参考答案为:AA.当前运行系统B.当前逻辑模型C.目标系统D.新系统[解析]可行性研究首先要确定项目的规模和目标,然后就需要对当前运行的系统进行研究了,在考察系统的基础上,通过描绘现有系统的高层系统流程图,与有关人员一起审查该系统流程图是否正确。描述的对象是当前正在运行的系统,因此选择A。3.系统流程图是描述_____的工具。参考答案为:CA.逻辑系统B.程序系统C.体系结构D.物理系统[解析]系统流程图是用图形符号来表示系统中的各个元素,例如人工处理、数据库、设备等,流程图表达了系统中各个元素之间的信息流动情况。是描绘物理系统的传统工具。5/224._______工具在软件详细设计过程中不采用。参考答案为:DA.判定表B.IPO图C.PDLD.DFD图[解析]详细描述处理过程常用三种工具:图形、表格和语言。其中图形工具有结构化流程图、盒图和问题分析图三种,答案中的判定表是用来表示复杂的条件组合与应做的动作之间的对应关系。IPO图用来描述每个模块输入/输出数据、处理功能及模块调用的详细情况。PDL是过程设计语言的缩写,也称程序描述语言,用于描述模块算法设计和处理细节的语言,这三种都可以在软件详细设计过程中使用,而DFD图则是数据流图,是以图形的方式描绘数据在系统中流动和处理的过程,只反映系统必须完成的逻辑功能,所以它只是一种功能模型,不能在详细设计过程中使用。5.程序的三种基本控制结构是参考答案为:BA.过程、子程序和分程序B.顺序、选择和重复C.递归、堆栈和队列D.调用、返回和转移[解析]程序的三种基本控制结构是顺序、选择和循环(重复)。子程序只是程序设计一种方法,递归则是一种算法,都算不上是控制结构。6.程序的三种基本控制结构的共同特点是参考答案为:DA.不能嵌套使用B.只能用来写简单程序C.已经用硬件实现D.只有一个入口和一个出口[解析]程序的特点就是从一个入口开始,最终以一个出口结束,其间可以用顺序,选择和循环方式对程序的流向进行控制。三种结构可以写出非常复杂的程序,而且选择和循环都可以嵌套设计。7.产生软件维护的副作用,是指参考答案为:CA.开发时的错误B.隐含的错误C.因修改软件而造成的错误D.运行时误操作[解析]因修改软件而造成的错误或其他不希望出现