软件工程期末考试题含答案
一、选择题 1.瀑布模型把软件生命周期划分为八个阶段: 可行性研究、软 问题的定义、 件需求分析、系统总体设计、详细设计、编码、测试和运行、维护。 八个阶段又 可归纳为三个大的阶段:计划阶段、开发阶段和_。( C ), A .详细计划B .可行性分析C .运行阶段D. 测试与排错 2.在结构化的瀑布模型中, 哪一个阶段定义的标准将成为软件 测试年勺系统 测试阶段的目标(A) A .需求分析阶段B .详细设计阶段C.概要设计阶段D . 可 行性研究阶段, 3.软件工程的出现主要是由于(C ) , A.程序设计方法学的影响 C.软件危机的出现 B.其它工程科学的影响 D.计算机的发展, 4.软件工程方法学的目的是: 范化和工程化,而软件工程方法 使软件生产规 得以实旅的主要保证是(C) A.硬件环境B.软件开发的环境 C.软件开发工具和软件开发的环境D.开发人员的素质 5.软件开发常使用的两种基本方法是结构化和原型化方法,在实 际的应用中, 它们之间的关系表现为(B) A.相互排斥B相互补充C独立使用D.交替使用 6.UML是软件开发中的一个重要工具, 要应用于哪种软件开发方法(C) A.基于瀑布模型的结构化方法 方法 C.基于对象的面向对象的方法 它主 B.基于需求动态定义的原型化 D.基于数据的数据流开发方法 7.在下面的软件开发方法中, 哪一个对软件设计和开发人员的 开发要求最高 ( 8) A.结构化方法B原型化方法C面向对象的方法D.控制流方法 8.结构化分析方法是一个预先严格定义需求的方法, 它在实施时 强调的是分 析对象的(B) A.控制流B.数据流C.程序流D.指令流 9.软件开发的结构化生命周期方法将软件生命周期划分成(A) A.计划阶段 程阶段.测试阶段 .开发阶段.运行阶段B.计划阶段.编 C.总体设计.详细设计.编程调试D.需 求分析.功能定义.系统设计 10.软件开发的瀑布模型,一般都将开发过程划分为:分析、设 计、编码和 测试等阶段,一般认为可能占用人员最多的阶段是(C) A.分析阶段B.设计阶段C.编码阶段D.测试阶段 11. 法学的软件生存周期模型是( A.瀑布模型 适合于面向对象方 B) B.喷泉模型C.螺旋模型D.增量模型 12.从结构化的瀑布模型看,在它的生命周期中的八个阶段中, 下面的几个 选项中哪个环节出错,对软件的影响最大的是(C) A.详细设计阶段B.概要设计阶段C.需求分析阶 段D.测试和运行阶段 13. 据规范化在大多数场合选用第 A.1 14. 15. A.逻辑内聚 B.2C.3 从实用角度看,数 ___范式。 (C) D.5 D.功能内聚 可行性分析研究的目的是(A) 模块的内聚性最高的是(D) B.时间内聚C.偶然内聚D.功能内聚 A.项目值得开发否B.争取项目C.开发项目 16.开发软件所需高成本和产品的低质量之间有着尖锐的矛盾, 这种现象称 ( 8) A.软件工程 17. B.软件危机C.软件周期D.软件产生 需求分析阶段的任务是确定(D) A.软件开发方法B.软件开发工具C.软件开发 费D.软件系统的功能 18. (B) A.IPO图 完整的软件结构通常用图来表示。 B.HIPO图C.PAD图D.DFD图 19. ___是最弱的覆盖标准。 A.语句B.路径 在白盒法技术测试用例的设计中 (A) C.条件组合D.判定 20.软件开发中常采用的结构化生命周期方法, 于其特征而一般称其为(A) A.瀑布模型B.对象模型C.螺旋模型 由 D.层次模型 二、填空题 1.系统流程图是描述物理模型的传统工具, 用图形符号表示系统 中各个元素 表达了系统中各种元素之间的__信息流动__情况。 2.成本效益分析的目的是从__经济___角度评价开发一个项目 是否可行。 3.自顶向下结合的渐增式测试法, 模块时有两种组合策略;深度优先 在组合 策略和_宽度优先策略. 4.独立路径是指包括一组以前没有处理的语句或条件的一条路 径。从程序图 来看,一条独立路径是至少包含有一条_________________________ 其他独立路径中从未有过的的边 的路径。 5.汇编语言是面向__机器___的,可以完成高级语言无法完成 的特殊功能。 如与外部设备之间的一些接口工作。 6.单元测试一般以白盒测试为主,_黑盒___测试为辅。 7.详细设计的任务是确定每个模块的内部特性,即模块的算法、 _使用的数 8.所有软件维护申请报告要按规定方式提出,该报告也称 _____ 软件问题报 9.有两类维护技术:在开发阶段使用来减少错误、提高软件可维 护性的面 向维护的技术; 来提高维护的效率和质量的 技术。 在维护阶段用 __维护支援__ 10.科学工程计算需要大量的标准库函数,以便处理复杂的数值 计算,可供 选择的语言有:FORTRA语言、N__PASCAL语 言___、C语言和PL/1语言。 1L目前使用最广泛的软件工程学方法分别是传统方法学和_面向 对象方法 12. 个方面__经济 可 可行性研究主要集中在以下四 可行性、__技术 性、法律可行性和抉择。 13.常见的软件概要设计方法有3大 类:以数据流图为基础构造模块结构的 __结构化设计方法 为基础构造模块的__Jackson方法 ___, 以数据结构 , 为基础的___面向对象的设计方法__。 14.___数据流图___和__数据字典___共同构成系 统的逻辑模型。 15.单元测试一般以 黑盒___测试为辅。 ___白盒___测试为主,___ 三、判断题 1.软件的开发与运行经常受到硬件的限制和制约。(T) 2.模块内的髙内聚往往意味着模块间的松耦合。(T) 3.Jackson图只能表达程序结构,不能表达数据结构。(F) 4.软件生命周期中需我进行需求分析,再进行可行性研究。 (F) 5.软件的质量好坏主要由验收人员负责,其他开发人员不必关 心。(F) 6.判定覆盖不一定包含条件覆盖,条件覆盖也不一定包含判定覆 盖。(T) 7.应该尽量使用机器语言编写代码,提髙程序运行 效率,而减少高级语言的 使用。 (F) 8.UML只能应用于软件系统模型的建立。 (F) 9.容错就是每个程序采用两种不同的算法F) 编写。 10. 是为了无一遗漏的找出所有的错误。 11. 模块间的联系。 软件测试的目的 (F) 在进行总体设计时应加强 (F) 12.系统结构图是精确表达程序结构的图形表示法。因此,有时 也可以将系 统结构图当作系统流程图使用。 (F) 13. 试时,测试用例是根据程序内部逻辑设计的。 14. 时,找出错误的位置和性质比改正该错误更难。 15. 继承和通信为基础的面向对象设计方法( 用黑盒法测 (F) 在程序调试 (T) 以对象、类、 00D)也是常 如果通过软 (F) 快速原型模型 (T) 见的软件概要设计方法之一。 (T) 16. 件测试没有发现错误,则说明软件是正确的。 17. 可以有效地适应用户需求的动态变化。 18.模块化,信息隐藏,抽象和逐步求精的软件设计原则有助于 得到髙 内聚,低耦合度的软件产品(T) 19. (F) 集成测试主要由用户来完成。 20.软件危机完全是由硬件问题引起的。 (F) 四、