第一章一、判断题1.SWEBOKV3分两大类,共有15个知识域。(Y)2.软件工程的提出起源于软件危机,其目的是最终解决软件的生产工程化。(Y)3.软件工程学一般包括软件开发技术和软件工程管理两方面的内容,软件开发方法学和软件工程环境属于软件开发技术的内容,软件工程经济学属于软件工程管理。(N)4.软件开发中的最大问题不是管理问题,而是技术问题。(N)5.XP(eXtremeProgramming,极限编程)是由KentBeck提出的一套针对业务需求和软件开发实践的规则,包括13个核心实践。(Y)二、选择题1.下列所述不是敏捷生存期模型的是(C)。A.ScrumB.XPC.V模型D.OPENUP2.软件工程的出现主要是由于(C)。A.程序设计方法学的影响C.软件危机的出现B.其他工程学科的影响D.计算机的发展3.以下(C)不是软件危机的表现形式。A.开发的软件不满足用户的需要B.开发的软件可维护性差C.开发的软件价格便宜D.开发的软件可靠性差4.以下不是SWEBOKV3的软件工程实践中的知识域的是(B)。A.软件需求B.工程基础C.软件构造D.软件设计5.下列所述不是软件组成的是(D)。A.程序B.数据C.界面D.文档6.下列对“计算机软件”描述正确的是(A)。A.是计算机系统的组成部分B.不能作为商品参加交易C.是在计算机硬件设备生产过程中生产出来的D.之存在语计算机系统工作时7.软件工程方法的提出源于软件危机,其目的应该是最终解决软件的(D)问题。A.软件危机B.质量保证C.开发效率D.生产工程化8.软件工程设计软件开发技术和项目管理等方面内容,下述内容中(D)不属于开发技术的范畴。A.软件开发方法B.软件开发工具C.软件工程环境D.软件工程经济第二章一、判断题1.面向对象开发过程是多次重复和迭代的演化过程,(需要补充:面向对象开发方法是)在概念和表示方法是的一致性保证了各项开发活动之间的平滑过渡。(N)2.基于构件软件工程开发的整个过程从需求开始,在完成体系结构设计后,并不立即开始详细设计,而是确定哪些部分可由构件组装而成。(Y)3.软件逆向工程是根据对软件需求的分析恢复其设计和软件代码(软件代码改为需求)的过程。(N)二、选择题1.结构化分析方法是面向(B)的自顶向下逐步求精的分析方法。A.目标B.数据流C功能D.对象2.结构化的概要设计是以(B)技术为基础的软件设计方法。A.抽象B模块化C.自上而下D信息屏蔽3.在结构化分析方法中,常用的描述软件功能需求的工具是(C)。A.业务流程图、处理说明C.数据流程图、数据字典B.软件流程图、模块说明D.系统流程图、程序编码4.(A)不是UML的图示。A.流程图B.用例图C.活动图D.序列图第三章一、判断题1.系统流程图表达了系统中各个元素之间信息的流动情况。(Y)2.用例需求分析方法采用的是一种结构化的情景分析方法,即是一种基于场景建模的方法。(N)3.面向对象的分析方法认为系统是对象的集合,是以功能和数据为基础的。(Y)4.结构化分析方法适合于数据处理类型软件的需求分析。(Y)5.需求变更管理是需求管理过程中很重要的过程。(Y)6.软件需求规格说明的内容包括算法的详细描述。(N)(课本P41)二、选择题1、软件开发过程中,需求活动的主要任务是(B)。A.给出软件解决方案C.定义模块算法B.定义需求并建立系统模型D.给出系统模块结构2、软件需求规格说明文档中包括多方面的内容,下述(D)不是软件需求规格说明文档中应包括的内容。A.安全描述B.功能描述C.性能描述D.软件代码3.软件需求分析一般应确定的是用户对软件的(D)。A功能需求B非功能需求C性能需求D功能需求和非功能需求4.结构化分析方法中,描述软件功能需求的常用工具有(C)。A.业务图,数据字典B.软件流程图,模块说明C.用例图,数据字典D.系统流程图,程序编码5.软件需求分析阶段建立原型的主要目的是(D)。A.确定系统的功能和性能要求C.确定系统是否满足用户要求B.确定系统的性能要求D.确定系统是否满足开发人员需要6.在需求分析阶段,需求分析人员需要了解用户的需求,认真仔细地调研、分析,最终应建立目标系统的逻辑模型并写出(B)。A.模块说明书B.需求规格说明书C.项目开发设计D.合同文档7.软件需求阶段需要解决的问题是(A)。A.软件做什么C.软件采用什么结构B.软件提供哪些信息D.软件怎样做8.软件需求管理过程包括需求获取、需求分析、需求规格说明编写、需求验证以及(D)。A.用户参与B.需求变更C.总结D.都不正确9.在原型法中开发人员根据(A)需求不断修改原型,直到满足用户要求为止。A.用户B.开发人员C.系统分析员D.程序员10.结构化分析方法以数据流图、(D)和加工说明等描述工具,即用直观的图和简介的怨言来描述软件系统模型。A.DFD图B.PAD图C.HIPO图D.数据字典第四章一、判断题1、软件设计是软件工程的重要阶段,是一个把软件需求转换为软件代码的过程。(N)2、软件设计说明书是软件概要设计的主要成果。(Y)3、软件设计中设计复审和设计本身一样重要,其主要作用是避免后期付出高代价。(Y)4、应用程序框架结构是一个可以重复使用的、大致完成的应用程序,可以通过对其进行定制,开发成一个客户需要的真正的应用程序。(Y)5、面向对象的设计(OOD)是将面向对象分析(OOA)的模型转换为设计模型的过程。(Y)6、在进行概要设计时应加强模块间的联系。(N)7、复用原则也是软件设计的一个重要原则。(Y)8、以对象、类、继承和通信为基础的面向对象设计方法也是常见的软件概要设计方法之一。(N)二、选择题1.内聚是从功能角度来度量模块内的凉席,按照特定次序执行元素的模块属于(C)。A.逻辑内聚B.时间内聚C.过程内聚D.顺序内聚2.概要设计是软件工程中很重要的技术活动,下列不是概要设计任务的是(B)。A.设计软件系统的结构C.数据结构和数据库设计B.编写测试报告D.编写概要设计文档3.数据字典是定义(A)中的数据的工具。A.数据流图B.系统流程图C.程序流程图D.软件结构图4.耦合是软件各个模块间连接的一种度量。一组模块都访问同意数据结构应属于(B)。A.内容耦合B.公共耦合C.外部耦合D.控制耦合5.面向数据流的软件设计方法中,一般是把数据流图中的数据流分为(B)两种流,在将数据流图映射为软件结构A.数据流与事物流B.交换流和事务流C.信息流与控制流D.交换流和数据流6.软件设计是一个将(B)转换为软件表示的过程。A.代码设计B软件需求C.详细设计D.系统分析7.数据存储和数据流都是(D),仅仅是所处的状态不同。A.分析结果B.事件C.动作D.数据8.模块本身的内聚是模块独立性的重要度量因素之一,在7类内聚中,具有最强内聚的一类是(D)。A顺序性内聚B过程性内聚C逻辑性内聚D功能性内聚9.面向数据流的设计方法把(A)映射成软件结构。A数据流B系统结构C控制结构D信息流10.下列关于软件设计准则的描述,错误的是(C)。A.提高模块的独立性B.体现统一的风格C.是模块结构的作用语在该模块的控制域外D.结构应该尽可能满足变更的要求11.软件的结构化设计方法是以(C)为依据的模块结构设计方法。A.系统数据要求B.数据结构C.数据流图D.数据流12.下面不是数据库设计的阶段的是(C)。A.概念结构设计阶段C.模块划分B.逻辑结构设计阶段D.物理结构设计阶段第五章一、判断题1、JSD(Jackson)方法的原理与Warnier方法的原理类似,也是从数据结构出发设计程序,但后者的逻辑要求更严格。(Y)2、软件的详细设计也称模块设计,他要求设计人员为每一个程序模块确定所使用的算法、数据结构、接口细节和输入输出数据等。(Y)3、伪代码可以被直接编译,它体现了设计的程序的框架或者代表了一个程序流程图。(N)4、在详细设计阶段,一种历史最悠久、使用最广泛的描述程序逻辑结构的工具是程序流程图。(Y)5、PAD是一种改进的图形描述方式,优点是能够反映和描述自顶向下的历史和过程。(Y)6、详细设计阶段的任务还不是具体地编写程序,而是要设计出程序的“蓝图”,以后程序员根据这个蓝图编写实际的代码。(Y)7、过程设计的描述工具包括程序流程图、N-S图、PAD图、PDL伪代码等。(Y)二、选择题1.Jackson设计方法是由Jackson所提出的,它是一种面向(C)的软件设计方法。A.对象B.数据流C.数据结构D.控制结构2.数据元素组成数据的方式基本类型是(D)。A.顺序的B.选择的C.循环的D.以上全部3.程序流程图中的箭头代表的是(B)。A.数据流B.控制流C.用关系D.组成关系4.伪码又称为过程设计语言(PDL),一种典型的PDL是仿照(C)编写的。A.FortranB.汇编语言C.Pascal语言D.Cobol语言5.伪码作为详细设计的工具,缺点在于(B)。A.每个符号对应与源程序的一行代码,对于提高系统的可理解性作用很小B.不如其他图形工具直观,描述复杂的条件组合与动作间的对应关系不够明C.容易使程序不受任何约束,随意转移控制D.不支持逐步求精,是程序员不去烤炉系统的全局结构6.结构化程序流程图中一般包括3种基本结构,下述结构中(D)不属于其基本结构。A.顺序结构B.条件结构C.选择结构D.嵌套结构7.在详细设计阶段,一种二维树形结构并可自动生成程序代码的描述工具是(A)。A.PADB.PDLC.IPOD.判定树8.软件详细设计的主要任务是确定每个模块的(A)。A.算法和使用的数据结构B.外部接口C.功能D.编程9.为了提高模块的独立性,模块之间最好是(D)。A.公共耦合B.控制耦合C.内容耦合D.数据耦合10.为了提高模块的独立性,模块内部最好是(C)。A.逻辑内聚B.时间内聚C.功能内聚D.通信内聚11.软件设计中,可应用于详细设计的工具有(D)。A.数据流程图、PAD图、N-S图B.业务流程图、N-S图、伪码C.数据流程图、PAD图、N-S图和伪码D.顺序流程图、PAD图、N-S图和伪码(详细设计:程序流程图、PAD图、方框图、伪码;软件分析:数据流程图、业务流程图、结构图)第六章一、判断题1.在树状结构中,位于最上面的根部是顶层模块。(Y)(他是程序主模式)2.应该尽量使用机器语言编写代码,提高程序运行效率,而减少高级语言的使用。(N)二、选择题1.结构化程序设计要求程序由顺序、循环和(A)三种结构组成。A.分支B.单入口C.单出口D.随意跳转2.软件调试的目的是(B)。A.发现错误B.改正错误C.改善软件的性能D.挖掘软件的潜能3.将每个模块的控制结构转换成计算机可接受的程序代码时(A)阶段的任务。A.编码B.需求分析C.详细设计D.测试4.编码高效率原则包括提高运行效率、提高储存效率和提高(A)。A.输入/输出效率B.开发效率C.测试效率D.维护效率5.下列伪代码中,A=14,B=20,则X的值是(B)。STARTINPUT(A,B)X=0IFA10THENX=10ENDIFIFB20THENX=X+100ENDIFPRINT(X)STOPA.0B.10C.110D.1006.下面是一段求最大值的程序,其中datalist是数据表,n是数据表的长度,则其McCabe环路复杂性为(C)。intGetMax(intn,intdatalist[]){intk=0;for(intj=1;jn;j++)if(datalist[j]datalist[k])k=j;returnk;}A.1B.2C.3D.4第七章一、判断题1.回归测试是纠错性维护中最常运用的方法。(Y)2.软件测试的目的是尽可能多地发现软件中存在的错误,将它作为纠错的依据。(Y)3.回归测试是指在单元测试基础上将所有模块按照设计要求组装成一个完整的系统进行的测试。(N)4.白盒测试主要以程序的内部逻辑为基础设计测试用例。(Y)5.软件测试的目的是证明软件是正确的。(N)二、选择题1.集成测试主要是针对(C)阶段的错误。A.编码B.详细设计C.概要设计D.需求