1、软件工程习题及答案一、选择题:1. 为了提高测试的效率,应该 。A、随机地选取测试数据B、取一切可能的输入数据作为测试数据C、在完成编码后制定软件的测试计划D、选择发现错误可能性大的数据作为测试数据2. 与设计测试数据无关的文档是 。A、需求说明书 B、设计说明书 C、源程序 D、项目开发设计3. 结构设计是一种应用最广泛的系统设计方法,是以 为基础、自顶向下、逐步求精和模块化的过程。A、数据流 B、数据流图 C、数据库 D、数据结构4. 概要设计的结果是提供一份 。A、模块说明书 B、框图 C、程序 D、数据结构5. 需求分析是由分析员经了解用户的要求,认真细致地调研、分析,最终应建立目标系
2、统的逻辑模型并写出 。A、模块说明书 B、软件规格说明书 C、项目开发计划 D、合同文档6. 注释是提高程序可读性的有效手段,好的程序注释占到程序总量的 。A、1/6 B、1/5 C、1/4 D、1/37. 变换型和事务型是程序结构的标准形式。从某处获得数据,再对这些数据作处理,然后将结果送出是属于 。A、变换型 B、事务型8. PAD(Problem Analysis Diagram)图是一种 工具。A、系统描述 B、详细设计 C、测试 D、编程辅助9. 分层数据流图是一种比较严格又易于理解的描述方式,它的顶层描绘了系统的 。A、总貌 B、细节 C、抽象 D、软件的作者10. 数据流图中,当
3、数据流向或流自文件时, 。A、数据流要命名,文件不必命名B、数据流不必命名,有文件名就足够了C、数据流和文件均要命名,因为流出和流进数据流是不同的D、数据流和文件均不要命名,通过加工可自然反映出11. 分析员是 。A、用户中系统的直接使用者 B、用户和软件人员的中间人C、软件的编程人员 D、用户和软件人员的领导12. 在软件开发中,有利于发挥集体智慧的一种做法是 。A、设计评审 B、模块化 C、主程序员制 D、进度控制13. 在开发软件时, 可用来提高程序员的工作效率。A、程序开发环境 B、操作系统的作业管理功能C、编译程序的优化功能 D、并行运算的大型计算机14. 结构化程序设计主要强调程序
4、的 。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、判定
5、表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、有规则 GOTO23.
6、源程序的版面文档要求应有变量说明、适当注释和 。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、指计算机辅助
7、软件工程28. 软件(结构)设计阶段文档是 。A、系统模型说明书 B、程序流程图C、系统功能说明书 D、模块结构图和模块说明书29. 软件的维护指的是 。A、对软件的改进、适应和完善 B、维护正常运行C、配置新软件 D、软件开发期的一个阶段30. 逆向工程在软件工程中主要用于 阶段。A、分析 B、设计 C、编码 D、维护31. 软件工程中,只根据程序的功能说明而不关心程序内部逻辑的测试方法,称为 测试。A、白盒法 B、灰盒法 C、黑盒法 D、综合法32. 阶段是软件生命期中花费最多,持续时间最长的阶段。A、需求分析 B、维护 C、设计 D、测试33. 在可行性研究阶段,对系统所要求的功能、性能
8、以及限制条件进行分析,确定是否能够构成一个满足要求的系统,这称为 可行性。A、经济 B、技术 C、法律 D、操作34. 结构化系统分析所得到的系统需求说明书中包含一组小说明。小说明是指对 作进一步说明。A、数据流 B、数据存储(文件) C、处理(加工) D、外部项(源点终点)35. 分层的数据流图中,父图与子图的平衡是指 的平衡。A、处理 B、数据存储 C、外部项 D、数据流36. 数据流图中,当数据流向或流自数据存储时, 。A、数据流要命名,数据存储不必命名B、数据流不必命名,数据存储要命名C、数据流和数据存储均应命名,因流进和流出的数据流可能不同D、数据流和数据存储都不必命名,因为从处理上
9、可自然反映出来37. 结构化系统设计阶段的目的是 。A、获得良好的软件结构 B、获得可读性好的程序C、获得满足用户需求的数据流图 D、获得高效的算法38. 要减少两模块之间的联系,则 。A、两模块之间的调用次数要尽量少B、两模块之间直接传递的信息要尽量少C、两模块应使用尽可能相同的全局变量D、两模块应尽量共享相同的数据结构39. 在集成(联合)测试中,测试的主要目的是发现 阶段的错误。A、软件计划 B、需求分析 C、设计 D、编码40. 在验收测试时,测试所依据的文档是 。A、可行性报告 B、系统(需求)说明书 C、模块说明书 D、用户手册41. 在软件生存期的维护阶段,继续诊断和修正错误的过
10、程称为 。A、完善性维护 B、适应性维护 C、预防性维护 D、改正性维护42. 软件的可移植性是衡量软件质量的重要标准之一。它指的是 。A、一个软件版本升级的容易程度B、一个软件与其他软件交换信息的容易程度C、一个软件对软硬件环境要求得到满足的容易程度D、一个软件从一个计算机系统或环境转移到另一个计算机系统或环境的容易程度43. 软件生存周期是指 阶段。A、软件开始使用到用户要求修改为止B、软件开始使用到被淘汰为止C、从开始编写程序到不能再使用为止D、从立项制定计划,进行需求分析到不能再使用为止44. 可行性研究的目的是用最小的代价,在最短的时间内确定问题是否可能解决和值得去解决,主要从 三个
11、方面进行。A、技术可行性、费用可行性、效益可行性B、经济可行性、技术可行性、机器可行性C、技术可行性、操作可行性、经济可行性D、费用可行性、机器可行性、操作可行性45. 数据流图是一种描述数据及其变换的图形表示,在数据流图上不允许出现 。A、数据流 B、控制流 C、文件 D、加工46. 数据字典是软件需求分析阶段的重要工具之一,它的基本功能是 。A、数据定义 B、数据维护 C、数据通讯 D、数据库设计47. 事务型结构数据流图的特点是,将某一个加工的输入分解成并行的数据流,通过 执行后面的加工。A、变换 B、选择 C、合并 D、联接48. 如果一个模块要调用另一个模块,在下列几种方式中,采用
12、方式的块间联系小。A、过程调用,传递控制参数 B、过程调用,传递数据参数C、直接引用,共用控制信息 D、直接引用,共用数据信息49. 软件的结构化设计方法是以 为依据的模块结构设计方法。A、系统数据要求 B、数据结构 C、数据流图 D、数据流50. 结构化设计(SD)是软件开发中常用的方法,使用 SD 方法可以得到 。A、程序流程图 B、编程语言的源程序 C、分层数据流图和数据字典 D、模块结构图51. 在测试层次结构的大型软件时,有一种方法是从上层模块开始,自顶向下进行测试,此时有必要用 替代尚未测试过的下层模块。A、主模块 B、桩模块 C、驱动模块 D、输出模块52. 联合(集成)测试可以
13、由 两种方式进行。A、模块测试、系统测试 B、条件测试、非条件测试C、渐增式测试、非渐增式测试 D、分析测试、验收测试53. 由于更新了操作系统而对软件进行的修改工作属于 。A、修正性维护 B、适应性维护 C、完善性维护 D、预防性维护54. 为保证软件质量,在软件生存周期的每个阶段结束之前,都需要进行 工作。A、制定计划 B、测试 C、审查 D、交接55. 模块内部联系最大的是 。A、顺序内聚 B、功能内聚 C、通信内聚 D、时间内聚56. 将以下 3 种耦合性由弱到强的顺序排列,正确的是 。A、控制耦合 数据耦合 公共耦合 B、数据耦合 公共耦合 控制耦合C、公共耦合 数据耦合 控制耦合
14、D、数据耦合 控制耦合 公共耦合57. 对某程序进行测试时,选择足够多的测试用例,使程序的每个判定中条件的各种可能组合都至少出现一次,这称为 覆盖法。A、判定 B、判定/条件 C、条件 D、条件组合58. 数据字典是对数据流图中出现的组成元素定义的集合,它不包括 条目。A、文件 B、数据流 C、加工 D、I/O 参数59. 软件需求分析的内容是 。A、确定开发的软件应有哪些功能,应达到什么性能 B、确定软件的开发成本C、制定软件开发的进度表 D、确定软件的总体结构60. 在软件的设计阶段应提供的文档是 。A、软件需求规格说明书 B、概要设计规格说明书和详细设计规格说明书C、数据字典及数据流图
15、D、源程序以及源程序的说明书61. 软件测试时,正确的测试次序是 。A、模块测试,组装测试,确认测试 B、模块测试,确认测试,组装测试C、组装测试,模块测试,确认测试 D、确认测试,模块测试,组装测试62. 在软件维护阶段,若用户要求在程序中增加一个原来没有的联机帮助功能是属于 。A、改正维护 B、适应性维护 C、完善性维护 D、改正并适应性维护63. 程序流程图、N-S 图和 PAD 图是 使用的算法表达工具。A、设计阶段的概要设计 B、设计阶段的详细设计 C、编码阶段 D、测试阶段64.软件的可维护性是指 。A、软件的可理解程度,修改的难易程度B、软件文档修改的难易程度C、程序修改的难易程
16、度D、使用维护工具进行维护的难易程度65.月收入800 元者免税,现用输入数 800 元和 801 元测试程序,则采用的是 方法。A、边缘值分析 B、条件覆盖 C、错误推测 D、等价类66.采用黑盒法测试程序是根据 。A、程序的逻辑 B、程序的功能说明 C、程序中的语句 D、程序中的数据67.数据流图的小说明中描述的最基本部分是 。A、激发条件 B、加工逻辑 C、优先级 D、执行频率68.系统的健壮性是指 。A、系统能够正确地完成预期的功能 B、系统能有效地使用计算机资源C、在有干扰或输入数据不合理等意外情况下,系统仍能进行适当的工作D、在任何情况下,系统均具有错误自修复功能69.软件工程学是
17、应用科学理论和工程上的技术指导软件开发的学科,其目的是 。A、引入新技术提高空间利用率 B、用较少的投资获得高质量的软件C、缩短研制周期扩大软件功能 D、硬软件结合使系统面向应用70.不适于作为数据流图处理(加工)框名称的是 。A、人工校核工资数据 B、工资支票数据 C、打印工资支票 D、计算职工工资71.如果模块中所有成分引用共同的数据,该模块内的联系类型是 。A、顺序内聚 B、功能内聚 C、通信内聚 D、过程内聚72.某模块的功能是打印录取通知书或不录取通知书,调用模块可通过向此模块传递布尔标志信息决定本次调用执行哪种通知书的打印。这种模块间的耦合称为 。A、数据耦合 B、混合耦合 C、公
18、共耦合 D、控制耦合73.适应性维护的含义是 所进行的维护。A、为使软件在改变了的环境下仍能使用B、为改正在开发期产生、测试阶段没有发现、运行时出现的错误C、为改善系统性能、扩充功能 D、为软件的正常执行74.采用白盒法测试模块(程序),应根据 。A、内部逻辑结构 B、算法复杂度 C、外部功能特性 D、支撑环境75.下列关于软件工程方面的叙述中,正确的说法是 。A、软件的质量标准中,某些因素是不可兼得的B、数据词典包括数据流、文件、模块调用关系等三种条目C、测试过程即调试D、白盒法测试用例中,满足条件覆盖的一定满足判定覆盖76.程序编写(实现)阶段完成的文档有 。A、详细设计说明书、模块开发宗
19、卷 B、详细设计说明书、用户手册C、模块开发宗卷、操作手册 D、用户手册、操作手册77.软件总体结构的内容应在 文档中阐明。A、软件需求规格说明书 B、概要设计规格说明书C、详细设计规格说明书 D、数据要求规格说明书78.使用结构化分析方法时,采用的基本手段是 。A、分解和抽象 B、分解和综合 C、归纳与推导 D、试探与回溯79.系统需求分析阶段的任务是分析系统的 。A、数据要求 B、功能要求 C、性能要求 D、A,B,C 三方面80.决定软件可维护性的主要因素可概括为 。A、可测试性、可理解性、可修改性 B、一致性、结构性、自我描述性C、可计测性、可访内性、可通讯性 D、可扩充性、简洁性、结
20、构性81.要减少两个模块之间的耦合,则必须 。A、两个模块间的调用次数要少 B、模块间传递的参数要少C、模块间传递的参数要少且不传递开关型参数D、模块间传递的参数要少且不传递开关型参数以及两模块不引用同样的全局变量82.软件开发中系统分析阶段产生的文档是 。A、数据流图 B、系统说明书 C、模块结构图和模块说明书 D、数据字典83.初始化模块和结束模块从块内联系看,被称为 模块。A、过程内聚 B、功能内聚 C、时间内聚 D、逻辑内聚84.系统分析阶段的主要任务是分析系统的综合要求,其中对系统需要的存储量、健壮性、完全性和联机系统的响应时间等方面的要求属于 。A、环境要求 B、功能要求 C、性能
21、要求 D、运行要求85.结构化设计方法采用变换分析和事务分析技术实现 。A、从数据结构导出程序结构 B、从模块结构导出程序结构C、从模块结构导出数据结构 D、从数据流图导出初始结构图86.在软件测试中,确认(验收)测试主要用于发现 阶段的错误。A、软件计划 B、需求分析 C、软件设计 D、编码87.软件维护阶段是软件生存周期中持续时间最长的阶段,它从 时算起。A、产生可执行程序 B、组装测试通过C、软件交付使用 D、用户提出第一份维护报告88.结构化系统分析主要是通过 进行分析的。A、算法分解 B、控制结构分解 C、数据结构分解 D、处理功能分解89.结构化设计方法是面向 的设计方法。A、过程
22、 B、对象 C、数据流 D、数据结构90.在结构化系统分析中,判定表和判定树常用于表达数据流图中的 。A、加工 B、数据流 C、数据存储 D、外部项91.下列耦合度表示中,最弱的耦合形式是 。A、特征耦合 B、公共耦合 C、数据耦合 D、控制耦合92.为软件系统今后的改进和发展打好基础而进行的维护工作称为 。A、改正性维护 B、适应性维护 C、完善性维护 D、预防性维护93.系统开发的需求分析阶段的重要工作之一是 。A、数据定义 B、数据库设计 C、数据维护 D、数据结构实现94.一个模块直接控制(调用)的下层模块的数目称为模块的 。A、扇人数 B、扇出数 C、宽度 D、作用域95.下列所述的
23、测试原则中,错误的是 。A、应设计非法输入的测试用例 B、测试用例要给出测试的预期结果C、因维护修改程序后需回归测试 D、开发小组应与测试小组合并96.某应用系统为今后的发展将单用户系统改为多用户系统,并形成新的应用软件,由此进行的维护工作称为 。A、改正性维护和预防性维护 B、适应性维护和完善性维护C、完善性维护和改正性维护 D、预防性维护和适应性维护97.需求分析说明书不能作为 。A、可行性研究的依据 B、用户和开发人员之间的合同C、系统概要设计的依据 D、软件验收测试的依据98.如果 ,则称该模块具有功能内聚。A、模块包括单一功能B、模块包括若干功能,但所有功能相互紧密相关C、每个模块有
24、单入口、单出口D、模块中每个处理成分对应一个功能,它们紧密结合99.如果一个排序程序所设定的测试用例为(1)表空(2)表中只有一个元素(3)元素均有相同的关键字值(4)元素已排序则此测试方法称为 。A、等价分类法 B、边缘值分析法 C、因果图法 D、错误推测法100.维护机构接受维护申请后,接下来的工作是 。A、回归测试 B、评价申请 C、执行维护 D、组织复审101.软件重用概念是指一个程序 。A、被多次使用 B、被循环使用C、被多个其他软件调用 D、在不同环境下的多次重复使用102.面向对象分析时,所标识的对象为 是错误的。A、与目标系统有关的物理实体 B、与目标系统发生作用的人或组织的角
25、色C、目标系统运行中需记忆的事件 D、目标系统中环境场所的状态103.在维护请求后进行的维护过程中,应先 ,然后对维护要求进行评估并分别处理。A、确定维护类型 B、安排维护优先次序C、组织人员维护 D、分析软件错误的严重程序104.划分软件生存周期的阶段时所应遵循的基本原则是 。A、各阶段的任务尽可能相关 B、各阶段的任务尽可能相对独立C、各阶段的任务在时间上连续 D、各阶段的任务在时间上相对独立105.OOA 模型规定了一组对象如何协同才能完成软件系统所指定的工作。这种协同在模型中是以表明对象通信方式的一组 连接来表示的。A、消息 B、记录 C、数据 D、属性106.用黑盒法设计测试用例时采
26、用的方法包括 。A、判定覆盖法 B、条件覆盖法 C、因果图法 D、路径分析法107.软件维护过程中, 将会引起维护副作用。A、修改代码或数据后未作测试 B、进行改正性维护时错误未全部改正C、进行完善性、适应性或预防性维护时考虑因素不全面D、维护过程中发生系统运行错误108.Jackson 程序设计方法是一种面向 的设计方法。A、数据结构 B、数据流图 C、IPO 图 D、系统流程图109.下面所列的性质中, 不属于面向对象程序设计的特性。A、继承性 B、重用性 C、封装性 D、可视化110.一般来说,在管理软件中,软件生存周期各个阶段的工作量以 所占的比例最大。A、需求分析与设计阶段 B、编码
27、实现阶段 C、测试阶段 D、维护阶段111.结构化系统分析中,处理逻辑可用 描述。A、数据字典 B、数据流图 C、结构图 D、结构化语言112.系统开发人员使用系统流程图或其他工具描述系统,估计每种方案的成本和效益的工作是在 阶段进行的。A、需求分析 B、总体设计 C、详细设计 D、编码阶段113.结构化设计方法采用变换分析和事务分析技术实现 。A、从数据结构导出程序结构 B、从数据流图导出初始结构图C、从模块结构导出数据结构 D、从模块结构导程序结构114.设一模块内部的处理动作为:成分 A 的输出是成分 B 的输入,则该模块的聚合性称为 。A、顺序聚合 B、功能聚合 C、过程聚合 D、通信聚合