第一章 软件工程的概念

软件工程与实践导论 第一单元:软件工程的概念单元测验

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、复杂性
    B、不可见性
    C、易变性
    D、服从性

9、下列选项属于软件危机表现形式的有( )。
    A、对开发成本和开发进度难以进行准确地估计
    B、用户对软件产品不满意
    C、软件产品的质量难以保证
    D、软件开发效率的提高远远跟不上计算机应用快速普及的趋势

10、下列选项属于软件生命周期阶段的有( )。
    A、系统设计
    B、编码实现
    C、配置管理
    D、需求分析

11、文档是软件产品的一部分,没有文档的软件就不称其为软件。

12、软件具有产品和产品交付载体的双重作用。

13、当软件交付给用户使用后,软件生命周期就结束了。

14、软件工程的研究内容就是软件代码的编写技术。

15、风险管理不属于软件过程活动。

16、一本软件开发标准和规程宝典,可以提供需要了解的所有信息。只要照此宝典,就一定能开发出成功的软件产品。

17、如果我们未能按时完成开发计划,可以通过临时增加程序员人数而赶上进度。

18、对于一个成功的软件项目,可执行程序是唯一可交付的工作成果。

19、软件不会磨损。

20、软件工程是建立在计算机科学和管理科学的基础上的,所以我们可以说:软件工程=计算机科学+管理+工程。

21、构成一个完整计算机系统的两部分是硬件和( )。

22、软件与物质产品有很大的区别,软件是一种( )产品。

23、( )是解决软件危机的最有效方法。

24、软件是计算机系统中程序、数据和( )的总称。

25、一个通用的软件过程框架包含5个基本活动:沟通、策划、建模、( )、部署。

26、( )就是一系列指令的集合.

27、( )是指软件生命周期所涉及的一系列相关过程,它是在构建软件产品时所执行的一系列活动和任务的集合。

第一单元:软件工程的概念作业

1、列举你自己身边的常用软件名称,并做简单分类。

2、分析软件和硬件的区别。

第二章 软件过程

2.1软件工程的层次结构随堂测验

1、软件工程涉及到软件开发理论、软件开发过程、软件开发技术、以及软件开发工具等四个层次的研究和工程。()

2、软件开发工具不能贯穿软件开发各阶段。( )

3、软件开发的方法有结构化方法和面向对象方法。( )

4、软件工程就是软件开发,比如开发一个大型电子商务系统。( )

2.2软件过程的概念随堂测验

1、在软件开发中,结果比过程更重要,提交一个可运行的软件比什么都重要。( )

2、过程技术工具允许软件组织通过跳过不重要的活动来压缩进度。( )

3、软件开发过程定义软件开发每一完成项的前提条件和最终得到的结果。( )

4、那种“只看结果,不看过程。”的观点,在软件工程中是得不到认可的,软件工程中强调“好的过程产生好的结果”。 ( )

5、软件过程可以从预先存在的软件模式中构件,从而最好地满足软件项目的需求。( )

6、软件开发的任务不是一个具体的、有明确目标、能够产生结果的工作。( )

7、开发软件所开展的活动与软件的应用领域、软件的规模和复杂度等密切相关。( )

2.3软件过程框架随堂测验

1、每一个软件的开发,都有它自己的过程。( )

2、在软件工程中,软件过程框架和软件过程模型是一回事情。( )

3、通用的框架活动主要是面向管理的活动,一组保护性的辅助活动主要是面向技术方面的活动。( )

4、软件部署是在真实的使用环境下发布软件和文档。( )

5、软件过程框架定义了若干活动,基本涵盖了大部分软件开发的活动。( )

6、在软件开发中,软件过程是通用的,采用什么软件工程与具体开发的软件无关。 ( )

第二单元:软件过程单元测验

1、下面列出的哪一项不是软件工程的层次? 〔 〕
    A、软件开发工具
    B、软件开发方法
    C、软件生产制造
    D、软件开发过程

2、软件开发的形式化方法模型利用数学方法:( )
    A、为基于计算机的系统定义了规格说明
    B、开发无缺陷的计算机系统
    C、验证计算机系统的正确性
    D、以上所有

3、下列哪一个不是由软件开发统一过程模型定义的阶段名称?( )
    A、起始阶段
    B、细化阶段
    C、构建阶段
    D、验证阶段

4、软件过程框架定义软件开发的:( )
    A、活动和任务集
    B、活动的顺序和关系
    C、活动的完成要求
    D、活动的时间计划

5、1. 以下哪些属于5个软件过程框架活动?〔 〕
    A、分析,计划,设计,编程,测试
    B、分析,设计,编程,调试,维护
    C、沟通,风险管理,度量,生产,评估
    D、沟通,计划,建模,构造,部署

6、下面列出的哪些是评估软件过程的标准?( )
    A、SEI
    B、CMMI
    C、DevOps
    D、ISO 9001

7、软件行业内常采用的标准有:( )
    A、GB/GJB国家标准
    B、行业标准
    C、项目标准
    D、产品标准

8、软件开发过程主要研究和建议软件开发的:( )
    A、编程语言
    B、开发流程
    C、质量保证
    D、开发工具

9、软件开发的过程有: ( )
    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、项目管理
    B、项目跟踪
    C、项目控制
    D、以上都不是

16、软件开发过程主要研究软件开发的阶段划分、任务和活动、阶段性产出结果等。( )

17、人们普遍认为,一个软件产品不会同时拥有薄弱的软件过程和高质量的最终产品。( )

18、软件开发活动和任务之间的关系可以是顺序的、分支的、循环的。( )

19、软件过程框架具有通用性,适用于各类软件开发,无论项目的规模和复杂度。 ( )

20、风险管理是指为规避风险的发生而采取的一些列活动。( )

第三章 软件过程模型

第三单元:软件过程模型单元测验

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、线性、迭代、演化、并行4种
    B、瀑布式、原型法、螺旋模型、增量模型4种
    C、并行、串行、迭代、回归4钟
    D、规划、部署、设计、分析4种

8、在敏捷软件团队中,成员需要具备哪些特征?( )
    A、个人能力
    B、决策能力
    C、相互信任尊重
    D、以上所有

9、下列哪一个不是每个团队成员在每天的Scrum会议上要回答的关键问题?( )
    A、上次例会之后做了什么?
    B、遇到了什么困难?
    C、你遇到的困难的原因是什么?
    D、下次例会前计划做些什么?

10、以下哪些模型是迭代式的?( )
    A、V模型
    B、增量模型
    C、螺旋模型
    D、原型法

11、并发开发模型是:( )
    A、并发工程的另一个名字
    B、定义触发工程活动状态转变的事件
    C、仅用于开发并行或分布式系统
    D、在预料到有大量变更请求时使用

12、如何创建敏捷过程来管理不可预测性?( )
    A、需求采集必须非常仔细地实施
    B、风险分析必须在计划进行之前实施
    C、软件增量必须在短时间间隔内交付
    D、软件过程必须增量地适应改变

13、敏捷建模在下列哪些软件任务中为实践者提供指导?( )
    A、分析
    B、设计
    C、编码
    D、测试

14、瀑布式模型只适合于需求很明确的软件开发场景。( )

15、原型开发模型可以作为一种获取软件需求的工具。( )

16、螺旋模型是开发大型软件系统的理想方法。( )

17、在敏捷软件过程中,最高优先级是通过尽早、持续交付有价值的软件来使客户满意。( )

18、在敏捷开发中,构建满足用户当前需求的软件比担心将来可能需要的特性更为重要。( )

第四章 需求及建模

第4单元:需求及建模单元测验

1、需求管理只适用于需求分析阶段。( )
    A、正确
    B、错误
    C、空
    D、空

2、实体关系图代表了软件系统哪方面的模型?( )
    A、架构图
    B、信息
    C、功能
    D、行为

3、软件系统的行为模型包括( )
    A、数据流图
    B、实体关系图
    C、用例图
    D、状态图

4、UML需求分析模型中代表系统和外界交互关系的模型是( )
    A、用例图
    B、活动图
    C、时序图
    D、状态图

5、从用例场景中识别分析类主要用什么方法?( )
    A、介词筛选
    B、动词筛选
    C、名词筛选
    D、形容词筛选

6、UML支持的需求分析模型中表示用例场景主要活动过程的模型是( )
    A、用例图
    B、活动图
    C、时序图
    D、状态图

7、下面各选项属于软件共利益者(stakeholder)的是( )
    A、客户
    B、用户
    C、软件销售员
    D、软件开发人员

8、软件需求分类一般可以分为( )
    A、性能需求
    B、功能性需求
    C、设计约束
    D、非功能性需求

9、下面需求属于非功能性需求的有( )
    A、安全性需求
    B、易用性需求
    C、7X24服务
    D、数据库需求

10、下面活动属于需求工程任务的有( )
    A、协商
    B、导出
    C、规格说明
    D、确认

11、下面属于需求收集方法的有( )
    A、客户面谈
    B、问卷
    C、观察
    D、协作的需求收集会议

12、软件系统的分析模型类别包括( )
    A、架构图
    B、信息
    C、功能
    D、行为

13、属于软件系统的功能模型的有( )
    A、数据流图(DFD)
    B、实体关系图
    C、状态图
    D、用例模型

14、需求模型要素包括( )
    A、基于场景的要素
    B、流模型
    C、类模型
    D、行为模型

15、UML支持需求分析建模的模型有( )
    A、用例图
    B、活动图
    C、时序图
    D、状态图

16、UML需求分析模型中代表系统行为模型的是( )
    A、用例图
    B、活动图
    C、时序图
    D、状态图

17、软件系统的功能性需求可以用哪些模型表示?( )
    A、用例图
    B、活动图
    C、实体关系图
    D、状态图

18、类的基本构成包括( )
    A、类名
    B、属性
    C、方法
    D、状态

19、为分析类分配方法可以借助什么模型?( )
    A、用例图
    B、状态图
    C、时序图
    D、协作图

20、主流的需求建模分析方法包括( )
    A、特征驱动的分析
    B、结构化分析(SA)
    C、面向对象分析(OOA)
    D、面向服务的分析

21、需求决定了软件所有后续的开发活动。

22、客户只需参与需求阶段的活动,后续阶段不需要参与。

23、需求管理只能在需求阶段进行。

24、客户需求只需要收集功能性需求,其他需求可以不考虑。

25、设计约束也是一种需求,会对软件设计人员选择设计方案形成制约。

26、界面交互的友好性是一种非功能性需求。

27、非功能性需求就是质量属性需求。

28、软件7X24的服务需求是一种非功能性需求。

29、对信息的增删改查操作是典型的功能性需求。

30、需求工程包括了初启、导出、精化、协商、规格说明、确认六个任务和需求管理。

31、需求工程的协商只需要争取自己的利益,不管客户的利益。

32、.需求的确认必须由客户或客户方的代表认可。

33、需求管理是对变化需求的导出、编档、组织和跟踪。

34、需求分析必须借助一些需求模型来更好的表示客户的需求。

35、需求分析模型可以分为信息、功能和行为三大类。

36、UML的模型用于分析建模的只有用例图。

37、用例图表示的是系统和外界的交互关系。

38、活动图主要根据用例场景进行构建。

39、状态图代表了系统的行为需求。

40、时序图和协作图都是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、可以使软件程序的结构更清晰;
    B、使开发工作更易于规划、更容易阅读和理解;
    C、更容易实施变更、也更容易有效的开展测试和调试;
    D、可以方便的定义和交付软件增量;

9、下列关于内聚与耦合描述正确的是( )
    A、内聚与耦合是度量软件模块功能独立性的两个标准。
    B、一个模块与其他模块的耦合性越强,则该模块与其它模块的相互依赖性就越强。
    C、在程序结构中,各模块的内聚性越强,则耦合性越强。
    D、低内聚高耦合,是一个好的设计标准。

10、需求分析阶段已经解决了待开发软件究竟要“做什么”的问题,软件设计阶段开始着手解决“如何做”的问题。( )

11、从技术的角度看,软件设计通常分为概要设计、体系结构设计以及接口设计。( )

12、可以通过系统设计文档来评估软件质量。( )

13、软件系统设计的依据是软件需求规格说明书。( )

14、软件设计是一个迭代的过程。( )

15、信息隐藏是指每个模块的实现细节对于每个模块来说都是隐藏起来的、不可见的。( )

16、模块化就是采用分而治之的原则把一个复杂系统划分成若干个不同模块的过程。( )

17、抽象和精化是两个互补的设计原则。( )

18、概要设计也称为总体设计或接口设计。( )

19、在软件设计过程中,常用的抽象方法有过程抽象和数据抽象。( )

20、精化就是一个细化的过程,有助于设计人员在设计过程中揭示底层的细节。( )

21、功能独立是指软件系统中每个模块具有单一的功能,并与其它模块没有太多联系。( )

22、系统设计时,模块划分得越细越好,这样实现起来也就越简单。( )

第六章 系统设计方法

第6单元 系统设计方法单元测试

1、关于界面设计的“黄金规则”有:( )
    A、保持界面一致性。
    B、减少用户的记忆负担。
    C、用户操纵控制。
    D、“可以用”、“方便用”、“喜欢用”。

2、常见的体系结构模型有( )
    A、黑板模式
    B、管道-过滤器模式
    C、B/S结构
    D、增量模式

3、下列关于体系结构设计原则的描述正确的是( )
    A、体系结构应该满足软件的“功能性需求”和“非功能性需求”
    B、体系结构应在一定的时间内保持稳定。
    C、系统结构不可以复用。
    D、体系结构一旦确定,需求就不能变更。

4、传统构件作为软件体系结构中的一部分,它承担的重要角色包括:( )
    A、控制构件:协调问题域中所有其它构件的调用。
    B、问题域构件:实现客户需要的全部功能或部分功能。
    C、基础设施构件:负责完成问题域中所需支持处理的功能。
    D、接口构件:实现各个构件的相互协作。

5、下列适用于构件级设计的基本原则有( )。
    A、里氏替换原则
    B、依赖倒置原则
    C、接口分离原则
    D、“开闭 ” 原则

6、软件体系结构是具有一定形式的结构化元素的集合,具体包括( ).
    A、处理构件
    B、数据构
    C、连接构件
    D、人机界面构件

7、UI设计过程通常包含的框架活动有:( )
    A、界面分析与建模
    B、界面设计
    C、界面构造
    D、界面评估确认

8、下列属于系统设计阶段工作内容的是( )
    A、构件级设计
    B、体系结构设计
    C、UI设计
    D、需求建模

9、主程序-子程序体系结构属于调用-返回模式。( )

10、软件体系结构设计有助于对计算机系统开发感兴趣的各方利益相关者开展交流( )

11、软件系统的构件级设计是在详细设计阶段完成的工作。( )

12、在面向对象的软件工程环境中,构件的基本单位是函数。( )

13、一个设计良好的软件模块应该对扩展具有开放性,对修改具有封闭性。( )

14、设计软件人机交互界面的前提条件是美观、舒适。( )

15、用户界面分析和设计也是一个反复迭代、不断优化的过程。( )

16、依赖倒置原则强调的是“依赖具体实现,不要依赖抽象”。( )

17、在接口设计时,多个客户各自具备专用接口比共用一个通用接口要好。( )

18、里氏替换原则要求:父类应当可以替换子类并出现在子类能够出现的任何地方。( )

19、构件是计算机软件中的一个模块,它封装实现并暴露一组接口。( )

20、主程序-子程序体系结构是调用-返回模式的典型代表。( )

21、C/S结构是B/S结构的一个具体应用。( )

第七章 系统实现

第7单元 系统实现单元测试

1、对一个软件产品或者一个软件工程项目来说,项目经理的主要职责包括:( )
    A、制定项目计划
    B、协调项目资源
    C、控制项目进度和产品质量
    D、控制客户期望值。

2、强调软件开发流程的目的是为了:( )
    A、提高软件开发效率
    B、提升用户满意度
    C、提升软件的可靠性和可维护性
    D、提高软件运营、维护的效率

3、作为一个合格的团队成员,应该做到:( )
    A、A. 严格遵守项目开发的规则,做好本职工作
    B、B. 及时与团队成员沟通、交流、获取和反馈项目开发中的信息。
    C、C. 站在项目整体立场上思考问题。
    D、D. 灵活控制项目时间进度,满足用户需求变更。

4、组建项目团队开始软件开发时应该注意的几个方面是:( )
    A、根据产品需求选择软件过程模型。
    B、确保团队成员都是合格的软件工程师。
    C、确定团队成员角色。
    D、根据项目特点选择团队模式。

5、遵循代码规范的好处有( )。
    A、规范的代码可以促进团队合作;
    B、规范的代码可以减少软件缺陷;
    C、规范的代码可以降低维护成本;
    D、养成代码规范的习惯,有助于程序员自身的成长;

6、组建项目团队的过程中,需要遵循的原则是( ).
    A、项目组尽量小型化、灵敏化
    B、项目成员数量尽量充足
    C、保证沟通顺畅和高效
    D、项目成本尽量低

7、代码审查可以发现软件中的所有缺陷。( )

8、采用一窝蜂模式的软件项目团队可以开发出高质量的软件产品。( )

9、瀑布开发模型比较适合的团队模式是爵士乐模式。( )

10、软件开发流程不光指团队的流程,还包括个人开发流程。( )

11、源代码是写给计算机看的。( )

12、测试人员介入项目的时机从理论上讲越早越好。( )

13、代码规范会降低开发效率。 ( )

14、团队应该是一个具有一致目标且成员分工明确、互相依赖合作完成目标的集体。( )

15、官僚模式因为沟通成本较高,容易导致跨组织的合作比较困难( )

16、当某个软件领域处于稳定成长阶段的时候,适合采用社区模式。( )

17、业余剧团模式适用于竞争性强烈、创造性要求高的团队。( )

18、组建项目团队时可以根据实际情况灵活设置项目成员角色。( )

19、开发人员可以完成部分测试测试工作。( )

20、一段代码能够通过机器的编译,而且能够正确的运行就是合格的。( )

21、测试人员不用编写代码。( )

22、需求分析不属于软件设计师的工作内容。( )

第八章 软件测试的概念

软件测试的概念单元测验

1、传统的集成测试策略有
    A、自顶向下集成
    B、自底向上集成
    C、基于线程的测试
    D、基于使用的测试
    E、回归测试
    F、冒烟测试

2、面向对象系统的集成测试策略有
    A、自顶向下集成
    B、自底向上集成
    C、基于线程的测试
    D、基于使用的测试
    E、回归测试
    F、冒烟测试

3、进行冒烟测试必须要包括活动是
    A、将已经转换为代码的软件构件集成到构建中
    B、编写驱动模块以确保完成每日对整个产品的测试
    C、编写桩模块以确保完成每日对整个产品的测试
    D、每天将该构建与其他构建及整个软件产品集成起来进行评估
    E、设计一系列测试以暴露影响构建正确性地完成其功能的错误

4、依据交互图设计测试用例,我们可参考采用的覆盖指标是
    A、类中各个方法被调用
    B、履行了规定的职责
    C、对应于客户定义用例的场景
    D、覆盖所有不同组件中的交互状态对

5、一个好的测试策略,必须解决下述哪些问题
    A、早在测试开始之前,就要以量化的方式规定产品需求
    B、明确的陈述测试目标
    C、了解软件的用户并为每一类用户建立用户描述
    D、测试之前,利用有效的正式评审技术作为过滤器

第九章 软件测试方法

软件测试方法的单元测验

1、以下给出了一个代码逻辑段,请问其环路复杂度V(G)是多少?( ) int a, b; int x=0; int y=0; if( a>b ){ x = a-b;} else { x = b-a; } while ( b<0 ) { y += b; b++; }
    A、2
    B、3
    C、4
    D、5

2、传统软件测试活动的组织顺序是什么?
    A、集成测试, 单元测试, 系统测试,确认测试
    B、单元测试, 集成测试, 系统测试,确认测试
    C、单元测试, 集成测试, 确认测试,系统测试
    D、系统测试, 确认测试, 集成测试,单元测试

3、自底向上集成测试的主要优势是什么?
    A、主要的决策点可提前测试。
    B、不需要编写驱动程序
    C、不需要编写桩
    D、不需要回归测试

4、需要设计测试用例来证明每个程序功能是可操作的测试技术是
    A、黑盒测试
    B、玻璃盒测试
    C、灰盒测试
    D、白盒测试

5、( )是一种测试用例设计理念,它根据组件级设计规约中的控制结构描述来派生测试用例.
    A、黑盒测试
    B、玻璃盒测试
    C、灰盒测试
    D、白盒测试

6、黑盒测试试图找到哪些缺陷? ( )
    A、不正确的或缺失的功能
    B、接口,尤其是用户界面错误
    C、A,B都是
    D、A,B都不是

7、软件测试员的目标是
    A、验证软件是正确的
    B、发现软件存在的问题
    C、尽可能早地找到软件缺陷,并确保其得以修复
    D、以上都是

8、广义的测试活动包括()
    A、需求评审和设计评审
    B、代码走查
    C、单元测试、集成测试、确认测试和集成测试
    D、以上都是

9、边界值分析作为一种测试技术的原因是()
    A、大量错误发生在输入域的边界处
    B、为了减少测试用例的数目
    C、对等价划分技术的补充
    D、以上都是

10、为什么将根本原因附加到缺陷报告中是十分重要的
    A、能够让缺陷被明明白白的解决、根除
    B、能够使后续版本或分支版本不至于残留该缺陷
    C、缺陷所涉各方如果能够汲取教训总结经验的话就能在以后的开发中避免此类错误、提高过程质量,保证技术的稳定发挥
    D、以上都是

11、边界值分析只能用于白盒测试

12、单元测试就是进行白盒测试

13、单元测试不需要驱动程序和桩,因为模块之间是独立测试的。

14、应根据软件规格说明进行测试。

15、在设计测试时,如果等价类选择得很好,就没有必要测试每个等价类所属区间的边界值了。

16、软件测试的目标是在交付给客户之前发现软件中的所有错误.

17、在程序“运行”之前,是没有办法评估它的质量的。

18、测试活动应及早的不断的进行。

19、评审不是测试活动。

20、评审和测试是软件验证和确认的两种有效手段。

第十章 测试实践

测试实践的单元测验

1、依据活动图设计测试用例时,我们多采用基本路径法,这时确立的覆盖指标是:
    A、100%路径覆盖
    B、100%语句覆盖和75%判定覆盖
    C、100%覆盖基本路径。
    D、100%判定/条件

2、以下给出了一个代码逻辑段,请问下列哪一组测试用例满足多条件覆盖要求 if (a>0 && c==1 ) { x = x+1; } if (b==3 || d<0 ) { y = 0; }
    A、a>0,c=1, b!=3, d<0;a<=0, c=1, b=3,d>=0;a>0, c!=1, b!=3,d<0;a<=0, c!=1, b!=3, d>=0
    B、a>=0,c=1, b=3, d<0;a<0, c=1, b=3,d>=0;a>0, c!=1, b!=3, d<0;a<=0, c!=1, b!=3, d>=0
    C、a>0,c=1, b=3, d<0;a<=0, c=1,b=3,d>=0;a>0, c!=1,b!=3, d<0;a<=0, c!=1, b!=3, d>=0
    D、a>0,c=1, b!=3, d<=0;a<=0, c=1, b=3,d>=0;a>0, c!=1, b!=3,d<0;a<=0, c!=1, b!=3, d>=0

3、给出了代码逻辑段如下:A&&(B||C),A,B,C分别取T或F。请问需要设计()组测试用例才能满足多条件覆盖条件。
    A、4
    B、8
    C、9
    D、6

4、给出了代码逻辑段如下,试求环路复杂度() if (a>0 && c==1) { x= x+1;} if (b==3 || d<0) { y=0; }
    A、2
    B、3
    C、4
    D、5

5、( )是测试的基准!
    A、源代码
    B、用例
    C、分析模型
    D、设计模型

6、测试设计步骤包括:
    A、获取测试对象的控制流规约。
    B、做过程分析,得到若干“测试路径”。针对每一条“测试路径”,获取与该路径相关的前提条件、输入参数、后续条件和输出参数等数据流的规约或定义。
    C、对输入参数做边界值分析,对前置条件作等价类划分,得到若干细化“测试路径”,或称“测试实例”。
    D、需要为每一实例化的测试路径分析输出变量和后置条件写出其“期望输出”
    E、根据事先确立的测试覆盖准则,迭代开发测试用例集。

7、黑盒测试试图发现以下哪些内容的缺陷:
    A、不正确或遗漏的功能
    B、接口错误
    C、数据结构或外部数据库访问错误
    D、行为或性能错误
    E、初始化和终止错误

8、依据状态图设计测试用例时,我们可参考采用的覆盖指标是:
    A、覆盖每个事件
    B、覆盖组件中的每个状态
    C、覆盖组件中的每个转移
    D、覆盖所有不同组件中的交互状态对
    E、覆盖对应于客户定义用例的场景

9、测试计划时,确立测试覆盖准则很重要。为什么
    A、因为测试数目是巨大的,需要在时间和经费的限制下有效进行测试
    B、因为需要将巨大甚至无限的测试数目减少到可控的范围内
    C、因为如果不确立测试覆盖准则,无从知道测试到底什么时候结束
    D、因为确立测试覆盖准则可以保证找到所有的缺陷

10、穷尽测试是不可能的。

11、测试可以产生质量。

12、一旦发生变更,我们需要回归测试。

13、测试是一组可以提前计划并系统地进行的活动。

14、如果好好设计系统测试可以捕获所有的缺陷,所以无需再冗余地进行单元测试。

15、因为单元测试可以捕获所有的缺陷,所以无需再冗余地进行系统测试。

16、直到程序开始运行,才能评估其质量。

17、测试计划时,确立测试覆盖准则很重要。

18、使用思维导图可以帮助我们可视化测试设计思路。

19、如果我们进行100%条件覆盖测试,则一定满足100%语句覆盖条件.

20、黑盒测试,又称( ),侧重于软件的( )

21、边界值分析是一种测试用例设计技术,是对( )的补充。边界值分析在等价类的边缘上选择测试用例。

22、技术评审被证明是最有效的软件质量保证机制之一,被称之为( ),是从项目启动时就可以开始实行了。

23、典型的技术评审活动包括( )、设计评审和代码走查。

第十一章 项目管理

第十一单元:项目管理单元测验

1、软件项目中常用的工作量估算单位不包括
    A、LOC
    B、功能点
    C、KLOC
    D、记录数

2、关于COCOMO II模型,说法不正确的是
    A、是一个基于先验,修正于后验参数化的模型
    B、充分考虑了项目类型的不同,项目所处阶段的不同
    C、考虑了类似项目经验、过程成熟度、人员能力和开发工具等的影响
    D、该模型主要采用了类比法

3、优先网络活动图的节点中存在缓冲期,说法正确的是
    A、缓冲期即为最晚结束时间减去最晚开始时间
    B、同一路径上节点缓冲期存在共享性,当某个节点的活动用完自己的缓冲期后,其后续节点的缓冲期将受到影响
    C、节点的跨度越大,缓冲期就越多
    D、缓冲期隶属于某个节点,不在同路径相邻节点间共享

4、关于关键路径,说法不正确的是
    A、关键路径即为从开始到结束路径中所有任务缓冲期均为0的路径
    B、关键路径上的任何任务的延迟都将影响任务的结束时间
    C、关键路径即为从开始到结束路径中所有任务缓冲期均相等的路径
    D、关键路径上的任务的执行时间可以通过采取措施来缩短

5、关于风险评估,不正确的说法是
    A、评估每个风险发生的可能性和产生的影响
    B、风险评估在主要作用在于可以确定风险列表上哪些风险一定会发生,哪些一定不会发生
    C、对评估后的风险进行排序,在项目的监控和资源分配中优先考虑具有最高优先级的风险
    D、风险评估需要根据项目进度,不断更新

6、以下说法不正确的是
    A、在应对风险时,一定不能选择接受风险
    B、风险监督时会维护一个风险记录表,在项目管理过程中不断的评价和更新该表,直至该项风险可以被关闭
    C、挣值分析是比较常用的成本监控方法
    D、PERT技术可以用来评估任务的不确定性

7、软件项目的特点包括
    A、跨平台性
    B、不可见性
    C、复杂性
    D、灵活性

8、有效的软件项目管理活动集中于
    A、人员
    B、产品
    C、过程
    D、项目

9、常见的工作量估算技术包括
    A、专家判断法
    B、COCOM II
    C、类比法
    D、自底向上法

10、软件项目风险主要来源于
    A、项目自身
    B、技术
    C、商业
    D、合同

11、风险管理包括的步骤是
    A、风险识别
    B、风险评估
    C、风险策划
    D、风险监督

12、关于估算工作量的功能点法,以下说法正确的是
    A、功能点法的优势是与程序设计语言无关
    B、功能点法估算的工作量可以转化为某类程序语言对应的SLOC
    C、功能点法只适用于可行性分析阶段
    D、不同功能点,复杂度不同时,乘以的难度系数不同

13、软件项目一般具有一定规模,但本身不受技术和资源的约束

14、软件项目管理的目标是按时完成项目的约定功能。

15、根据项目技术复杂度和管理复杂度的不同,项目管理侧重点不同,管理过程可以相应裁剪。

16、使用类比法估算工作量,需要以历史数据中类似的项目的数据作为评价基础,之后不需要再做任何调整。

17、使用由底向上法估算工作量,需要先推导出系统中的软件模块数量和类型,并为每个模块标识所需要的SLOC,在这个过程中需要专业资深人士的参与。

18、甘特图以类似日历的方式显示任务的计划。

19、和甘特图相比,优先网络图可以显示子任务间的部分相互依赖关系。

20、软件项目计划的目标是提供一个能使管理人员对资源、成本及进度做出合理策划的框架,计划一旦制定,便需要团队遵守,不再修改,从而确保如期完成项目。

21、使用PERT对各个子任务做时间周期评估时,需要进行悲观、最可能和乐观三次估计。

22、项目风险指“不确定的事件或情况,一旦出现,将会对项目的目标产生积极或消极的影响”,风险管理更侧重于防范造成消极影响的风险。

第十一单元:项目管理单元作业

1、学习网络图绘制。完成一项活动的策划(参考课堂例子,但不能雷同),活动子任务的数目推荐大于等于6,路径数目大于等于3为佳,任选以下方法之一即可。 方法1:用微软的Project 软件,用该软件请先完成甘特图,再转化为网络图,提交2个图的截图。 方法2:参考授课内容,完成项目计划表格,绘制优先网络,提交表格和网络图。

2、请查阅资料,完成COCOMO II 模型的概述。