一.填空题1.软件生命周期分为、需求分析、概要设计、详细设计、软件实现、软件测试及运行维护7个阶段。2.是最早的软件生存周期开发模型,它将软件开发过程中的各项活动规定为依固定顺序连接的若干阶段工作,形如瀑布流水,最终得到软件系统或软件产品。3.是一种软件开发模型,在这种模型的每一个阶段,都要编码产生一个新的构件,并将新构件集成到先前已经构成的产品中并作为一个整体进行测试,直到满足用户需求为止。4.当没有足够的人员在规定的期限内开发完整的产品或者由于不可克服的客观原因而把交付期限规定的太短时应选用软件开发模型。5.是一种软件开发模型,由需求定义、风险分析、实施开发和计划评审4个部分组成,主要适用于大型软件项目开发。6.文档说明该软件开发项目的实现在技术上、经济上和社会因素上等方面的可行性,评述为了合理地达到开发目的可供选择的各种可能实施的方案,说明并论证所选定实施方案的理由。7.可行性分析的目的是。8.用于描述系统的物理模型,用物理符号以黑盒子的形式描绘系统里的每个部件,仅表达信息在系统个部件之间流动的情况。9.(一种图)可以用来进行项目进度管理。10.结构化分析与设计是一种面向的分析设计方法。11.常见的需求获取方式有、情景分析技术等。12.在结构化分析中,用于描述加工逻辑的工具主要有结构化语言、判定树和。13.数据字典中的条目主要有、数据流、文件和加工四种。14.结构化软件开发方法贯穿始终的八字方针为。15.在软件生命周期中的每一个阶段结束后必须进行,这是为了能尽早发现项目开发中的错误。16.是软件生命周期中重要的一步,是软件定义阶段的最后一个阶段,是关系到软件开发成败的关键步骤。17.数据流图分为变换型和两种类型。18.衡量不同模块彼此之间相互依赖的紧密程度。19.衡量不同模块彼此之间相互依赖的紧密程度。20.在软件模块设计时应该采取的设计原则是。21.内聚性与模块独立性的关系为内聚性越高,模块独立性越。22.概要设计阶段应产生的主要文档为,其中应包含对系统模块设计的结果。23.详细设计阶段生成的文档是,它是程序运行过程的描述。24.详细设计阶段常用的图示工具包括程序流程图、N-S图、及过程性设计语言。25.是编码的先导,这个阶段所产生的设计文档的质量将直接影响下一阶段程序的质量。26.除非对效率有特殊的要求,程序编写要做到第一,效率第二。27.软件从一个计算机系统或环境转移到另一个计算系统或环境的容易程度成为。28.RUP的全称为。29.软件项目的风险管理一般包括风险识别、风险分析、和风险监控4个过程。30.CMM的全称为。31.OOA的全称为。32.OOD的全称为。33.软件配置管理包括和两个方面。34.UML中的建模包括建模和建模两大类。35.在UML中,以反映类的结构(属性、操作)以及类之间的关系为主要目的,描述了软件系统的结构的模型是。36.UML中,参与者的外部用户所能观察到的系统功能的模型图是。37.UML中,的任务就是用来描述一个对象所处的可能状态以及状态之间的转移。38.UML中,是将活动图用线条分成一些纵向的矩形,每一个矩形属于一个特定的对象或部门的责任区。39.UML中,重点表示了对象之间传送消息的时间顺序。二.选择题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.客户评估6.系统流程图是一种传统工具,用于描绘系统的()。A.逻辑模型B.程序结构C.体系结构D.物理结构7.可行性分析研究的目的是()。A.争取项目B.项目值得开发否C.开发项目D.规划项目8.下列哪个软件可以用来进行项目进度管理。()A.VisualC++B.EclipseC.SVND.MicrosoftProject9.下列哪个选项不是项目计划中需要完成的任务。()A.项目成本估算B.项目进度安排C.项目资源分配D.系统结构设计10.在数据流图中,(圆圈)代表()。A.源点B.汇点C.加工D.文件11.软件需求分析阶段的工作可以分为四个方面:需求获取、需求分析、编写需求规格说明书以及()。A.用户B.需求评审C.总结D.可行性分析12.在数据流图中,(方块)代表()。A.源点B.数据流C.加工D.文件13.数据流图是一种传统工具,用于描绘系统的()。A.逻辑模型B.程序结构C.体系结构D.物理结构14.结构化分析方法的一个重要指导思想是()。A.自顶向下,逐步抽象B.自底向上,逐步抽象C.自顶向下,逐步分解D.自底向上,逐步分解15.下列哪个软件可以用来进行项目建模。()A.VisualC++B.EclipseC.SVND.MicrosoftViso16.软件需求分析阶段建立原型的主要目的是()A.确定系统的功能和性能要求B.确定系统的运行要求C.确定系统是否满足用户需求D.确定系统是否满足开发人员需求17.结构分析方法的常用描述工具不包括()。A.数据流图B.数据字典C.加工逻辑说明D.系统结构图18.数据流图示面向()分析方法的描述工具。A.数据结构B.数据流C.对象D.构件19.内聚是对模块功能强度的度量,下面四个选项中内聚性最强的是()。A.偶然内聚B.逻辑内聚C.功能内聚D.信息内聚20.内聚是对模块功能强度的度量,下面四个选项中内聚性最弱的是()。A.偶然内聚B.逻辑内聚C.功能内聚D.信息内聚21.下面四个选项中耦合性最强的是()。A.内容耦合B.外部耦合C.数据耦合D.标记耦合22.下面四个选项中耦合性最弱的是()。A.内容耦合B.外部耦合C.数据耦合D.标记耦合23.数据耦合、内容耦合、标记耦合、控制耦合的耦合性从低到高的顺序是()。A.数据、内容、标记、控制B.数据、标记、控制、内容C.控制、数据、标记、内容D.控制、数据、内容、标记24.功能内聚、顺序内聚、时间内聚、偶然内聚的内聚性从低到高的顺序是()。A.功能、顺序、时间、偶然B.偶然、功能、时间、顺序C.偶然、时间、顺序、功能D.顺序、偶然、功能、时间25.下面对系统模块化思想描述不正确的是()。A.有利于降低问题的复杂度B.有效地提高软件可测试性和可维护性C.提高软件的可靠性D.给项目组织管理带来了困难26.按照软件工程的原则,模块的作用域和模块的控制域之间的关系是()。A.模块的作用域应在模块的控制域之内B.模块的控制域应在模块的作用域之内C.模块的控制域与模块的作用域互相独立D.以上说法都不对27.下列不属于软件设计原则的是()。A.高内聚B.自底向上C.模块化D.低耦合28.概要设计是软件系统结构的总体设计,以下选项中不属于概要设计的是()。A.把软件划分成模块B.确定各个模块的功能C.确定模块之间的调用关系D.设计每个模块的伪代码29.模块中所有成分结合起来完成一项任务,该模块的内聚度是()。它具有简明的外部界面,由它构成的软件易于理解、测试和维护。偶然内聚B.逻辑内聚C.功能内聚D.信息内聚30.软件总体设计阶段的主要任务是()。A.算法设计B.数据结构设计C.软件模块结构设计D.输入/输出设计31.软件详细设计工具中,采用自左向右的二维图形结构描述算法的是()。A.N-SB.PADC.DDD.DFD32.软件详细设计阶段的主要任务是()。A.算法及数据结构设计B.功能模块设计C.数据库设计D.功能性能分析33.以下关于程序流程图说法不正确的是()。A.独立于任何一种程序设计语言B.比较直观、清晰,易于掌握C.不支持逐步求精D.容易表示程序的层次结构34.以下关于盒图(方块图)说法不正确的是()。A.控制的转移不能任意规定B.可以表示模块的层次结构C.很容易表现嵌套关系D.不符合结构化程序设计的要求35.在软件详细设计阶段,经常采用的工具是()。A.PADB.OOAC.DDD.DFD36.下面关于良好的程序设计风格说法正确的是()。A.使用括号以改善表达式的清晰性B.程序中的注释是可有可无的C.尽量多使用临时变量D.嵌套应尽可能多的使用37.下面关于良好的程序设计风格说法不正确的是()。A.尽可能多地使用GOTO语句B.程序的格式应有助于读者理解程序C.注解应占到整个程序的1/2—1/3D.使用有意义的变量名38.编制一个好的程序首先要确保它的正确性和可靠性,除此之外,通常更注重源程序的()。A.易使用性、易维护性和效率B.易使用性、易维护性和易移植性C.易使用性、易维护性和易修改性D.易理解性、安全性和效率39.良好的程序设计风格中选择标识符的名字时应考虑()。A.名字长度越短越好,以减少源程序的输入量B.多个变量共用一个名字,以减少变量名的数目C.选择含义明确的名字,以正确提示所代表的实体D.尽量以关键字作为名字,以使名字标准化40.为了形成良好的程序设计风格,在书写语句时应考虑()。A.把多个短的语句写在同一行中,以减少源程序的行数B.尽量使用标准文本以外的特殊功效的语句,以提高语句的功效C.尽量消除表达式中的括号,以简化表达式D.避免使用测试条件“非”,以提高程序的可读性41.下列属于维护阶段的文档是()。A.软件需求规格说明B.详细设计说明书C.软件维护申请报告D.软件测试分析报告42.在整个软件维护阶段所花费的全部工作中,()所占比例最大。A.改正性维护B.适应性维护C.完善性维护D.预防性维护43.根据引起软件维护的原因,软件维护阶段通常可分为四类,其中不包括()。A.改正性维护B.系统性维护C.完善性维护D.预防性维护44.下列叙述中不利于软件可维护性提高的是()。A.为了缩短源程序的程度应删去源程序中的注解B.尽可能在软件生产过过程中保证各阶段文件的正确性C.重视程序结构的设计,使程序具有较好的层次结构D.在进行需求分析时就应同时考虑维护性问题45.下面关于软件质量管理说法不正确的是()。A.软件质量,是贯穿软件生存期的一个极为重要的问题B.影响软件质量的要素包括软件的功能性、可移植性、可修改性等多个方面C.软件能力成熟度模型是用于评价软件承包商能力并帮助改善软件质量的方法D.在软件质量管理中不应该强调全面质量管理,应该是少数人对质量进行负责46.下面关于软件配置管理说法不正确的是()。A.现代软件开发复杂度高是提出软件配置管理的主要原因B.软件配置管理包含为两部分配置管理和变更控制管理C.软件配置管理有助于避免软件开发中混乱情况的发生D.软件配置管理是对开发过程中所需软硬件进行的管理47.下面关于软件风险管理说法不正确的是()。A.项目风险管理实际上就是贯穿在项目开发过程中的一系列管理步骤B.在开发初期就应该制定完善的风险管理策略C.在风险管理中应建立风险清单、制定解决方案及风险规避办法D.风险管理包括风险识别、风险评估两个阶段。48.下面说法不符合极限编程思想的是()。A.极限编程是一种敏捷开发方法B.极限编程推崇简单设计和小版本开发C.极限编程中测试是在编码完成之后才进行设计和实施的D.极限编程具有很高的灵活性和实践性,但也备受争议49.下面说法不符合极限编程思想的是()。A.极限编程是一种敏捷开发方法B.极限编程推崇复杂设计和大版本开发C.极限编程推崇测试先行,测试驱动开发D.极限编程具有很高的灵活性和实践性,但也备受争议50.UML图不包括()(A)用例图(B)类图(C)状态图(D)流程图51.在类图中,下面哪个符号表示继承关系()52.下面哪个视图属于UML语言的交互图()(A)行为图(B)状态图(C)实现图(D)顺序图53.RUP中有()个核心过程工作流。(A