软件工程复习题
一、单选题(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.需求分析 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.TURBO PASCAL是()软件。
A.系统软件 B.人工智能 C.事务软件 D.应用软件
15、选择结构的复杂性比顺序结构的复杂性要()。
A.小 B.大 C.相等 D.无法比较
16、模块内聚度越高,说明模块内各成分彼此结合的程度越()。
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.继承
第二组:
1.“软件工程的概念是为解决软件危机而提出的”这句话的意思是()
A.强调软件工程成功解决了软件危机的问题
B.说明软件危机的存在总是使软件开发不像传统工程项目那样容易管理
C.说明软件工程这门学科的形成是软件发展的需要
D.说明软件工程的概念,即:工程的原则、思想、方法可解决当时软件开发和维护存在的问题
2.瀑布模型的主要特点是()
A.将开发过程严格地划分为一系列有序的活动 B.将开发过程分解为阶段
C.提供了有效的管理模式 D.缺乏灵活性
3.在软件工程的需求分析阶段,不属于问题识别内容的是()
A.功能需求 B.性能需求 C.环境需求 D.输入/输出需求
4.画某系统的数据流图时,顶层图有()
A.0张 B.1张 C.2张 D.3张及其以上
5.软件模块内聚性最强的是()
A.功能内聚 B.通信内聚 C.偶然内聚 D.逻辑内聚
6.最早提出软件系统维护问题的阶段是()
A.可行性分析 B.需求分析 C.概要设计 D.详细设计
7.SD(结构化设计)方法设计的结果是()
A.模块 B.模块结构图 C.模块的算法 D.数据流图
8.在进行软件测试时,首先应当进行以下哪项测试,然后再进行组装测试,最后再进行有效性测试()
A.单元测试 B.系统测试 C.集成测试 D.确认测试
9.软件详细设计阶段的任务是( )
A.算法与数据结构设计 B.功能设计 C.调用关系设计 D.输入/输出设计
10.下列属于静态测试方法的是()
A.黑盒法 B.路径覆盖 C.白盒法 D.人工检测
11.Fortran语言主要作为以下哪个方面的语言()
A.科学工程计算 B.系统软件 C.事务处理 D.人工智能
12.用结构化语言来描述加工逻辑的外层结构时,以下不属于基本结构的是()
A.顺序结构 B.选择结构 C.嵌套结构 D.重复结构
l3.可维护软件的主要特性包括()
A.可理解性、可修改性、可移植性 B.可使用性
C.可维护性、可使用性、可靠性 D.可测试性
14.程序设计语言不具有的特性是()
A.心理特性 B.工程特性 C.应用特性 D.技术特性
15.下列不属于项目进度安排主要方法的是()
A.工程网络图 B.Gantt图 C.进度结构图 D.任务资源表
16.下列不属于通常冗余技术的是()
A.结构冗余 B.信息冗余 C.时间冗余 D.代码冗余
17.下列工具中,属于需求追踪工具的是()
A.在DBMS上的应用运行工具 B.追踪和状态报告
C.访问和版本控制机构 D.文件和修改管理
18.关于软件测试的目的,下面观点错误的是()
A.为了发现错误而执行程序的过程 B.一个好的测试用例能够发现至今尚未发现的错误
C.证明程序是正确、没有错误的 D.一个成功的测试用例是发现了至今尚未发现的错误的测试
19.在制定项目开发计划文档时,不包含的内容是()
A.项目概述 B.实施计划 C.测试计划 D.交付期限
20.面向对象的开发方法中,以下哪种方法原是面向Ada语言的,并处于面向对象开发方法的奠基性地位()
A.Booch方法 B.Coad方法 C.UML语言 D.OMT方法
二、判断题(10分)
1.文档是软件产品的一部分,没有文档的软件就不称其为软件。()
2.在需求分析过程中,分析员要从用户那里解决的最重要的问题是给该软件提供哪些信息。()
3.需求规格说明书在软件开发中具有重要的作用,它也可以作为软件可行性分析的依据。()
4.数据流图建立系统的功能模型,它由数据流、加工和数据存贮组成。()
5.好的测试是用少量的测试用例运行程序,发现被测程序尽可能多的错误。()
6.面向对象的分析是面向计算机系统建立软件系统的对象模型。(
7.不完善的系统定义往往是导致软件项目失败的主要原因。()
8.一个成功的项目唯一提交的就是运行程序。()
9.只有质量差的软件产品才需要维护。()
10.一个好的测试用例在于能发现至今未发现的错误。()
11.软件工作的考虑范围主要是程序设计和实现。()
12.在项目计划发生延迟的情况下,增加更多的程序员一定会加快进度。()
13.软件错误可能出现在开发过程的早期,越早修改越好。()
14.在软件开发的过程中,若能推迟暴露其中的错误,则为修复和改正错误所花费的代价就
会降低。(W)
15.模型是对现实的简化,建模是为了更好地理解所开发的系统。()
16.好的测试用例应能证明软件是正确的。()
17.白盒测试仅与程序的内部结构有关,完全可以不考虑程序的功能要求。()
三、填空题(10分)
1.软件生命周期可划分为定义、开发和维护三个时期,通常把这三个时期再细分为8个阶段,它们是问题定义、可行性研究、需求分析、总体设计、编码和单元测试、综合测试和维护,其中维护阶段的工作量是8个中最大的。
2.可行性研究的任务是从技术、经济和操作三个方面研究软件项目的可行性。
3.至少应该从一致性、现实性、完整性和有效性四个方面验证软件需求的正确性,其中完整性和有效性这两个方面的正确性必须有用户的积极参与才能验证,而且为了验证这两个方面的正确性往往需要开发原型系统。
4.软件总体设计时应该遵循模块化、抽象、逐步求精、信息隐藏、局部化和模块独立6条基本原理。详细设计通常以结构程序设计为技术为逻辑基础,因为从软件工程观点看,可理解性是软件最重要的质量标准之一。
5.软件测试的目的是发现错误,通常把测试方法分为黑盒测试和白盒测试两大类。因为通常不可能穷尽测试,所以精心设计测试方案是保证达到测试目的所必需的。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论