软件工程习题及答案
一、选择题:
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、1/6 B、1/5 C、1/4 D、1/3
7. 变换型和事务型是程序结构的标准形式。从某处获得数据,再对这些数据作处理,然后将结果送出是属于 。 A、变换型 B、事务型
8. PAD(Problem Analysis Diagram)图是一种 工具。
A、系统描述 B、详细设计 C、测试 D、编程辅助
9. 分层数据流图是一种比较严格又易于理解的描述方式,它的顶层描绘了系统的 。 A、总貌 B、细节 C、抽象 D、软件的作者 10. 数据流图中,当数据流向或流自文件时, 。 A、数据流要命名,文件不必命名
B、数据流不必命名,有文件名就足够了
C、数据流和文件均要命名,因为流出和流进数据流是不同的 D、数据流和文件均不要命名,通过加工可自然反映出
11. 分析员是 。 A、用户中系统的直接使用者 C、软件的编程人员
B、用户和软件人员的中间人 D、用户和软件人员的领导
12. 在软件开发中,有利于发挥集体智慧的一种做法是 。 A、设计评审 B、模块化 C、主程序员制 D、进度控制 13. 在开发软件时, 可用来提高程序员的工作效率。
A、程序开发环境 B、操作系统的作业管理功能 C、编译程序的优化功能 D、并行运算的大型计算机 14. 结构化程序设计主要强调程序的 。 A、效率 B、速度 C、可读性 D、大小
15. 开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称作 。 A、软件投机 B、软件危机 C、软件工程 D、软件产生
16. 瀑布模型把软件生存周期划分为软件定义、软件开发和 三个阶段,而每一阶段又可细分为若干更小的阶段。
A、详细设计 B、可行性分析 C、运行及维护 D、测试与排错 17. 软件的 设计又称为总体结构设计,其主要任务是建立软件系统的总体结构。 A、概要 B、抽象 C、逻辑 D、规划
18. 结构化分析SA是软件开发需求分析阶段所使用的方法, 不是SA所使用的工具。 A、DFD图 B、PAD图 C、结构化英语 D、判定表
19. 结构化分析方法以数据流图、 和加工说明等描述工具,即用直观的图和简洁的语言来描述软件系统模型。
A、DFD图 B、PAD图 C、IPO图 D、数据字典
20. 模块本身的内聚是模块独立性的重要度量因素之一,在七类内聚中,具有最强内聚的一类是 。
A、顺序性内聚 B、过程性内聚 C、逻辑性内聚 D、功能性内聚 21. Jackson设计方法是由英国的M.Jackson提出的,它是一种面向 的设计方法。 A、对象 B、数据流 C、数据结构 D、控制结构 22. 结构化程序设计思想的核心是要求程序只由顺序、循环和 三种结构组成。 A、分支 B、单入口 C、单出口 D、有规则GOTO 23. 源程序的版面文档要求应有变量说明、适当注释和 。 A、框图 B、统一书写格式 C、修改记录 D、编程日期
24. 在软件工程中,软件测试的目的是 。
A、试验性运行软件 B、发现软件错误 C、证明软件是正确的 D、找出软件中全部错误
25. 在软件工程中,当前用于保证软件质量的主要技术手段还是 。 A、正确性证明 B、测试 C、自动程序设计 D、符号证明 26. 在软件工程中,高质量的文档标准是完整性、一致性和 。 A、统一性 B、安全性 C、无二义性 D、组合性 27. 在软件研究过程中,CASE是 。 A、指计算机辅助系统工程 B、CAD和CAM技术的发展动力 C、正在实验室用的工具 D、指计算机辅助软件工程 28. 软件(结构)设计阶段文档是 。
A、系统模型说明书 B、程序流程图
C、系统功能说明书 D、模块结构图和模块说明书 29. 软件的维护指的是 。 A、对软件的改进、适应和完善 C、配置新软件
B、维护正常运行
D、软件开发期的一个阶段
30. 逆向工程在软件工程中主要用于 阶段。 A、分析 B、设计 C、编码
D、维护
31. 软件工程中,只根据程序的功能说明而不关心程序内部逻辑的测试方法,称为 测试。
A、白盒法 B、灰盒法 C、黑盒法 D、综合法 32. 阶段是软件生命期中花费最多,持续时间最长的阶段。 A、需求分析 B、维护 C、设计 D、测试
33. 在可行性研究阶段,对系统所要求的功能、性能以及限制条件进行分析,确定是否能够构成一个满足要求的系统,这称为 可行性。
A、经济 B、技术 C、法律 D、操作
34. 结构化系统分析所得到的系统需求说明书中包含一组小说明。小说明是指对 作进一步说明。 A、数据流 B、数据存储(文件) C、处理(加工) D、外部项(源点终点) 35. 分层的数据流图中,父图与子图的平衡是指 的平衡。 A、处理 B、数据存储 C、外部项 D、数据流 36. 数据流图中,当数据流向或流自数据存储时, 。 A、数据流要命名,数据存储不必命名 B、数据流不必命名,数据存储要命名
C、数据流和数据存储均应命名,因流进和流出的数据流可能不同 D、数据流和数据存储都不必命名,因为从处理上可自然反映出来
37. 结构化系统设计阶段的目的是 。
A、获得良好的软件结构 B、获得可读性好的程序 C、获得满足用户需求的数据流图 D、获得高效的算法 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. 结构化设计(SD)是软件开发中常用的方法,使用SD方法可以得到 。
A、程序流程图 B、编程语言的源程序 C、分层数据流图和数据字典 D、模块结构图 51. 在测试层次结构的大型软件时,有一种方法是从上层模块开始,自顶向下进行测试,此时有必要用 替代尚未测试过的下层模块。 A、主模块 B、桩模块 C、驱动模块 D、输出模块 52. 联合(集成)测试可以由 两种方式进行。
A、模块测试、系统测试 B、条件测试、非条件测试 C、渐增式测试、非渐增式测试 D、分析测试、验收测试 53. 由于更新了操作系统而对软件进行的修改工作属于 。 A、修正性维护 B、适应性维护 C、完善性维护
D、预防性维护
54. 为保证软件质量,在软件生存周期的每个阶段结束之前,都需要进行 工作。 A、制定计划 B、测试 C、审查 D、交接 55. 模块内部联系最大的是 。
A、顺序内聚 B、功能内聚 C、通信内聚
D、时间内聚
56. 将以下3种耦合性由弱到强的顺序排列,正确的是 。
A、控制耦合 数据耦合 公共耦合 B、数据耦合 公共耦合 控制耦合 C、公共耦合 数据耦合 控制耦合 D、数据耦合 控制耦合 公共耦合
57. 对某程序进行测试时,选择足够多的测试用例,使程序的每个判定中条件的各种可能组合都至少出现一次,这称为 覆盖法。
A、判定 B、判定/条件 C、条件 D、条件组合 58. 数据字典是对数据流图中出现的组成元素定义的集合,它不包括 条目。 A、文件 B、数据流 C、加工 D、I/O参数 59. 软件需求分析的内容是 。
A、确定开发的软件应有哪些功能,应达到什么性能 C、制定软件开发的进度表
B、确定软件的开发成本 D、确定软件的总体结构