1、国家二级公共基础知识(软件工程基础)模拟试卷 6及答案与解析 一、选择题 下列各题 A、 B、 C、 D四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上。 1 软件是指 ( A)程序 ( B)程序和文档 ( C)算法加数据结构 ( D)程序、数据与相关文档的完整集合 2 软件按功能可以分为:应用软件、系统软件和支撑软件 (或工具软件 )。下面属于应用软件的是 ( A)学生成绩管理系统 ( B) C语言编译程序 ( C) UNIX操作系统 ( D)数据库管理系统 3 软件按功能可以分为:应用软 件、系统软件和支撑软件 (或工具软件 )。下面属于系统软件的是 ( A)编辑软件
2、( B)操作系统 ( C)教务管理系统 ( D)浏览器 4 下列关于软件工程的描述中正确的是 ( A)软件工程只是解决软件项目的管理问题 ( B)软件工程主要解决软件产品的生产率问题 ( C)软件工程的主要思想是强调在软件开发过程中需要应用工程化原则 ( D)软件工程只是解决软件开发中的技术问题 5 下面不属于软件工程过程的 4种基本活动 ( A)软件规格说明 ( B)软件开发 ( C)软件演进 ( D)软件测试 6 软 件生命周期中的活动不包括 ( A)市场调研 ( B)需求分析 ( C)软件测试 ( D)软件维护 7 下列选项中不属于软件生命周期开发阶段任务的是 ( A)软件测试 ( B)
3、概要设计 ( C)软件维护 ( D)详细设计 8 下列描述中正确的是 ( A)软件交付使用后还需要再进行维护 ( B)软件工具交付使用就不需要再进行维护 ( C)软件交付使用后其生命周期就结束 ( D)软件维护是指修复程序中被破坏的指令 9 下面不属于软件需求分析阶段主要工作的是 ( A)需求变更申请 ( B)需求分析 ( C)需求评审 ( D)需求获取 10 在软件生命周期中,能准确确定软件系统必须做什么和必须具备哪些功能的阶段是 ( A)概要设计 ( B)详细设计 ( C)可行性分析 ( D)需求分析 11 数据流图中带有箭头的线段表示的是 ( A)控制流 ( B)事件驱动 ( C)模块调
4、用 ( D)数据流 12 数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。下面图符名标识的图符不属于数据流图合法图符的是 ( A)控制流 ( B)加工 ( C)数据存储 ( D)源和潭 13 数据流程 图 (DFD图 )是 ( A)软件概要设计的工具 ( B)软件详细设计的工具 ( C)结构化方法的需求分析工具 ( D)面向对象方法的需求分析工具 14 下列关于数据库设计的叙述中,正确的是 ( A)在需求分析阶段建立数据字典 ( B)在概念设计阶段建立数据字典 ( C)在逻辑设计阶段建立数据字典 ( D)在物理设计阶段建立数据字典 15 软件需求规格说明书的作用不包括 (
5、 A)软件验收的依据 ( B)用户与开发人员对软件要做什么的共同理解 ( C)软件设计的依据 ( D)软件可行性研究的依据 16 从工程管理角度看,软件设计一般分为两步完成,它们是 ( A)概要设计与详细设计 ( B)数据设计与接口设计 ( C)软件结构设计与数据设计 ( D)过程设计与数据设计 17 软件设计中模块划分应遵循的准则是 ( A)低内聚低耦合 ( B)高内聚低耦合 ( C)低内聚高耦合 ( D)高内聚高耦合 18 两个或两个以上模块之间关联的紧密程度称为 ( A)耦合度 ( B)内聚度 ( C)复杂度 ( D)数据传输特性 19 下面不能作为结构化方法软件需求分析工具的是 ( A
6、)系统结构图 ( B)数据字 典 (DD) ( C)数据流程图 (DFD图 ) ( D)判定表 20 程序流程图中带有箭头的线段表示的是 ( A)图元关系 ( B)数据流 ( C)控制流 ( D)调用关系 21 软件测试的目的是 ( A)评估软件可靠性 ( B)发现并改正程序中的错误 ( C)改正程序中的错误 ( D)发现程序中的错误 22 下列描述中正确的是 ( A)软件测试的主要目的是发现程序中的错误 ( B)软件测试的主要目的是确定程序中错误的位置 ( C)为了提高软件测试的效率,最好由程序编制者自己来完成软件测试的工作 ( D)软件测试是证明软件没有错误 23 下列描述中正确的是 (
7、A)软件测试应该由程序开发者来完成 ( B)程序经调试后一般不需要再测试 ( C)软件维护只包括对程序代码的维护 ( D)以上三种说法都不对 24 下面属于黑盒测试方法的是 ( A)语句覆盖 ( B)逻辑覆盖 ( C)边界值分析 ( D)路径覆盖 25 下面不属于软件测试实施步骤的是 ( A)集成测试 ( B)回归测试 ( C)确认测试 ( D)单元测试 26 程序调试的任务是 ( A)设计测试用例 ( B)验证程序的正确性 ( C)发现程序中的错误 ( D)诊断和改正程序中的错误 国家二级公共基础知识(软件工程基础)模拟试卷 6答案与解析 一、选择题 下列各题 A、 B、 C、 D四个选项中
8、,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上。 1 【正确答案】 D 【试题解析】 计算机软件是计算机系统中与硬件相互依存的另一部分,是包括程序、数据与相关文档的完整集合。软件由两部分组成:一是机器可执行的程序和数据;二是机器不可执行的,与软件开发、运行、维护、使用等有关的文档。 【知识模块】 软件工程基础 2 【 正确答案】 A 【试题解析】 学生成绩管理系统为应用软件。 【知识模块】 软件工程基础 3 【正确答案】 B 【试题解析】 软件根据应用目标的不同,是多种多样的。软件按功能可以分为:应用软件、系统软件、支撑软件 (或工具软件 )。应用软件是为解决特定领域的应用而开发的
9、软件。系统软件是计算机,管理自身资源,提高计算机使用效率并为计算机用户提供各种服务的软件。支撑软件是介于系统软件和应用软件之间,协助用户开发软件的工具性软件,包括辅助和支持开发和维护应用软件的工具软件,还包括辅助管理人员控制开 发进程和项目管理的工具软件。 【知识模块】 软件工程基础 4 【正确答案】 C 【试题解析】 软件工程是建立并使用完善的工程化原则,以较经济的手段获得能在实际机器上有效运行的可靠软件的一系列方法。软件工程主要思想是强调在软件开发过程中需要应用工程化原则。 【知识模块】 软件工程基础 5 【正确答案】 D 【试题解析】 软件工程过程的 4种基本活动是:软件规格说明、软件开
10、发、软件确认、软件演进。 【知识模块】 软件工程基础 6 【正确答案】 A 【试题解析】 软件 的生命周期描述了软件从产生到最终消亡的全过程,生命周期中的活动包括焉求分析、软件设计 (分为概要设计和详细设计 )、软件实现、软件测试和软件维护 不包括市场调研。 【知识模块】 软件工程基础 7 【正确答案】 C 【试题解析】 软件生命周期是指软件产品从提出、实现、使用、维护到停止使用退役的过程。开发阶段包括概要设计、详细设计、实现和测试 4个阶段。软件维护属于维护阶段。 【知识模块】 软件工程基础 8 【正确答案】 A 【试题解析】 通常将软件产品从提出、实现、使用维护到停止使用退役的过程称为软件
11、生命周期。软件生命周期分为软件定义、软件开发及软件运行维护三个阶段。已交付的软件投入运行后,应在运行使用中不断地维护,根据新提出的需要进行必要而且可能的扩充和删改。 【知识模块】 软件工程基础 9 【正确答案】 A 【试题解析】 在软件开发的过程中,应该尽早的制定测试计划,其中在需求分析阶段制定系统测试计划,在概要设计阶段制定集成测试计划,在详细设计阶段制定单元测试计划。 【知识模块】 软件工程基础 10 【正确答案】 D 【试题解析】 软件需求是指用户对目标软件系统在功能、行为、设计约束等方面的期望。需求分析的任务是发现需求、求精、建模和定义需求的过程。 【知识模块】 软件工程基础 11 【
12、正确答案】 D 【试题解析】 数据流图是从数据传递和加工的角度,来刻画数据流从输入到输出的移动变换过程。其中带箭头的线段表示数据流,沿箭头方向传递数据的通道,一般在旁边标注数据流名。 【知识模块】 软件工程基础 12 【正确答案】 A 【试题解析】 数据流图中的主要图形元素有加 工 (转换 )、数据流、存储文件 (数据源 )、源和潭等。 【知识模块】 软件工程基础 13 【正确答案】 C 【试题解析】 本题考查数据流程图 DFD的概念。对于面向数据流的结构化分析方法,按照 DeMarco的定义, “结构化分析就是使用数据流图 (DFD)、数据字典(DD)、结构化英语、判定表和判定树等工具,来建
13、立一种新的、称为结构化规格说明的目标文档 ”。结构化分析方法的实质是着眼于数据流,自顶向下,逐层分解,建立系统的处理流程,以数据流图和数据字典为主要工具,建立系统的逻辑模犁。数据流图 (DFDData Flow Diagram)是描述数据处理过程的工具,是需求理解的逻辑模型的图形表示,它直接支持系统的功能建模。数据流图从数据传递和加工的角度,来刻画数据流从输入到输出的移动变换过程。由此可得数据流程图是结构化方法的需求分析工具。 【知识模块】 软件工程基础 14 【正确答案】 A 【试题解析】 数据库设计目前一般采用生命周期法,即将整个数据库应用系统的开发分解成目标独立的若干阶段。分别是:需求分
14、析阶段、概念设计阶段、逻辑设计阶段、物理设计阶段、编码阶段、测试阶段、运行阶段、进一步修 改阶段。数据字典是对系统中数据的详尽描述,是各类数据属性的清单。对数据设计来讲,数据字典是进行详细的数据收集和数据分析所获得的主要结果。 【知识模块】 软件工程基础 15 【正确答案】 D 【试题解析】 软件规格说明书主要有三个作用: 用户和软件开发人员之间的合同; 开发人员进行设计和编程的依据; 软件工程项目验收的依据。 【知识模块】 软件工程基础 16 【正确答案】 A 【试题解析】 软件设计是开发阶段最重要的步骤。从工程管理的角度来看可分为两步:概要设计和详细设计 。概要设计是将软件需求转化为软件体
15、系结构,确定系统级接口、全局数据结构或数据库模式;详细设计是指确立每个模块的实现算法和局部数据结构,用适应方法表示算法和数据结构的细节。从技术观点来看,软件设计包括软件结构设计 (定义软件系统各主要部件之间的关系 )、数据设计 (将分析时创建的模型转化为数据结构 )、接口设计 (描述软件内部、软件与协作系统之间以及软件与人之间如何通信 )、过程设计 (把系统结构部件转换成软件的过程 )四个步骤。 【知识模块】 软件工程基础 17 【正确答案】 B 【试题解析】 耦合性与内聚 性是模块独立性的两个定性标准。一般一个较优秀的软件设计应尽量做到高内聚,低耦合,即减弱模块之间的耦合性和提高模块内的内聚
16、性,有利于提高模块的独立性。 【知识模块】 软件工程基础 18 【正确答案】 A 【试题解析】 模块的独立性是指每个模块只完成系统要求的独立的子功能,并且与其他模块的联系较少且接口简单。衡量软件的模块独立性使用:内聚性和耦合性两个定性度量标准。内聚性是对一个模块内部各个元素彼此结合的紧密程度的度量;耦合性是对模块问互相连接的紧密程度的度量。一般较优秀的软件设计,应尽量做到高 内聚、低耦合,即减弱模块之间的耦合性和提高模块内的内聚性,有利于提高模块的独立性。 【知识模块】 软件工程基础 19 【正确答案】 A 【试题解析】 按照 DeMarco的定义, “结构化分析就是使用数据流图 (DFD图
17、)、数据字典 (DD)、结构化英语、判定表和判定树等工具,来建立一种新的、称为结构化规格说明的目标文档。 ”系统结构图不能作为结构化方法软件需求分析工具。 【知识模块】 软件工程基础 20 【正确答案】 C 【试题解析】 程序流程图是一种传统的、应用广泛的软件过程设计工 具,通常也称为程序框图。其中,用带箭头的线段表示控制流,用柜形表示加工步骤,用菱形表示逻辑条件。 【知识模块】 软件工程基础 21 【正确答案】 D 【试题解析】 软件测试的目的是为了发现程序中的错误,而软件调试是为了更正程序中的错误。 【知识模块】 软件工程基础 22 【正确答案】 A 【试题解析】 软件测试是为了发现错误而
18、执行程序的过程。一个好的测试用例是指很可能找到迄今为止尚未发现的错误的用例;一个成功的测试是发现了至今尚未发现的错误的测试。为了达到好的测试效果,应该由 独立的第三方来构造测试,程序员应尽量避免检查自己的程序。 【知识模块】 软件工程基础 23 【正确答案】 D 【试题解析】 为了达到好的测试效果,应该由独立的第三方进行测试工作。因为从心理学角度讲,程序人员或设计方在测试自己的程序时,要采取客观的态度是会不同程度地存在障碍的,所以选项 A)错误。在程序调试时,修改了一个错误的同时可能引入了新的错误,解决的办法是在修改了错误之后,必须进行回归测试,所以选项 B)错误。所谓软件维护,就是将交付的软
19、件投入运行,并在运行使用中不断地维护,根据新提出的需求 进行必要而且可能的扩充和删改,所以选项C)错误。 【知识模块】 软件工程基础 24 【正确答案】 C 【试题解析】 采用黑盒技术设计测试用例的方法有:等价类划分、边界值分析、错误推测、因果图和综合策略。 【知识模块】 软件工程基础 25 【正确答案】 B 【试题解析】 软件测试实施的步骤有单元测试、集成测试和确认测试。 【知识模块】 软件工程基础 26 【正确答案】 D 【试题解析】 程序调试的任务是诊断和改正程序中的错误。它与软件测试不同,软件测试是尽可能多 地发现软件中的错误。先要发现软件的错误,然后借助于一定的调试工具去执行并找出错误的具体位置。软件测试贯穿整个软件生命期,调试主要在开发阶段。 【知识模块】 软件工程基础