软件工程考试题

合集下载

软件工程师考试题及答案

软件工程师考试题及答案

软件工程师考试题及答案1. 以下哪个选项是面向对象编程的核心概念?A. 函数B. 过程C. 封装D. 模块化答案:C2. 在数据库设计中,为了提高数据的一致性和减少数据冗余,通常采用哪种范式?A. 第一范式(1NF)B. 第二范式(2NF)C. 第三范式(3NF)D. BCNF范式答案:C3. 在软件开发过程中,哪种测试是在软件开发周期的早期阶段进行的,目的是验证软件需求?A. 单元测试B. 集成测试C. 系统测试D. 验收测试答案:D4. 以下哪个算法是用于解决图论中的最短路径问题?A. 快速排序B. 深度优先搜索C. 迪杰斯特拉算法D. 堆排序答案:C5. 在敏捷开发方法中,以下哪个实践是用于促进团队成员之间的沟通和协作?A. 持续集成B. 代码审查C. 每日站立会议D. 功能驱动开发答案:C6. 在编程语言中,多态性允许什么?A. 一个类继承多个父类B. 一个方法有多个不同的实现C. 一个变量可以存储不同类型的数据D. 一个接口有多个不同的实现答案:B7. 在软件工程中,软件维护的哪个阶段涉及到对现有代码的改进,以提高性能或增加新功能?A. 纠错性维护B. 适应性维护C. 完善性维护D. 预防性维护答案:C8. 在关系数据库中,哪个SQL命令用于从数据库中检索数据?A. INSERTB. UPDATEC. DELETED. SELECT答案:D9. 在软件开发中,设计模式是什么?A. 一组最佳实践B. 一组预先定义的软件架构解决方案C. 一组编程语言的集合D. 一组软件测试工具答案:B10. 在Web开发中,以下哪个技术用于在客户端和服务器端之间进行数据交换?A. AJAXB. SOAPC. RESTD. 以上都是答案:D。

《软件工程》期末考试题及答案

《软件工程》期末考试题及答案

《软件工程》期末考试题及答案一、选择题(每题2分,共20分)1. 以下哪个不属于软件工程的三个基本活动?A. 软件规格B. 软件设计C. 软件编码D. 软件测试答案:D2. 以下哪种编程范式主要用于降低软件复杂性?A. 面向对象编程B. 过程式编程C. 函数式编程D. 逻辑编程答案:A3. 以下哪个不属于软件工程的基本原则?A. 分而治之B. 信息隐藏C. 模块化D. 编码规范答案:D4. 以下哪个不是软件工程的四大支柱?A. 软件需求B. 软件设计C. 软件验证D. 软件项目管理答案:C5. 以下哪种软件过程模型是迭代和增量的?A. 瀑布模型B. 快速应用开发C. 敏捷开发D. 原型模型答案:C6. 以下哪个不是软件测试的级别?A. 单元测试B. 集成测试C. 系统测试D. 需求测试答案:D7. 以下哪种软件维护类型是最常见的?A. 更正性维护B. 适应性维护C. 完善性维护D. 预防性维护答案:A8. 以下哪个不属于软件项目的风险管理策略?A. 风险避免B. 风险转移C. 风险减轻D. 风险接受答案:B9. 以下哪个不属于软件需求分类?A. 功能需求B. 性能需求C. 可用性需求D. 测试需求答案:D10. 以下哪个不属于软件设计的准则?A. 模块化B. 信息隐藏C. 功能耦合D. 数据抽象答案:C二、填空题(每题2分,共20分)11. 软件工程的主要目标是提高软件的__________和降低软件的__________。

答案:可维护性、成本12. 软件开发的三个基本阶段是:__________、__________、__________。

答案:需求分析、设计、实现13. 软件过程模型分为__________模型和__________模型。

答案:预测性、适应性14. 软件测试的四个基本级别是:__________、__________、__________、__________。

答案:单元测试、集成测试、系统测试、验收测试15. 软件维护的四种类型是:__________、__________、__________、__________。

软件工程考试题及答案

软件工程考试题及答案

软件工程考试题及答案一、选择题1. 下列哪个不是软件工程的基本原则?A. 持续集成B. 形式化表示C. 高内聚低耦合D. 可重用性答案:B. 形式化表示2. 软件的可靠性是指什么?A. 软件的正确性B. 软件的可维护性C. 软件的效率D. 软件的稳定性答案:D. 软件的稳定性3. 下列哪个不是软件测试的目标?A. 发现软件中的错误和缺陷B. 验证软件是否满足用户需求C. 评估软件的质量D. 在短时间内完成软件开发答案:D. 在短时间内完成软件开发二、判断题1. 软件工程是一门工程学科,其目标是通过系统化的、规范化的方法对软件进行开发、运行和维护。

答案:正确2. “高内聚低耦合”是软件工程中的重要原则,指的是模块之间的独立性和模块之间的依赖程度。

答案:正确3. 软件需求分析是软件开发过程中的最后一步,最终确定软件系统的功能和性能。

答案:错误三、简答题1. 什么是软件工程?答:软件工程是一门工程学科,通过系统化的、规范化的方法对软件进行开发、运行和维护。

它涉及软件开发的各个阶段,包括需求分析、设计、编码、测试和维护等,并注重管理和团队合作,以提高软件质量、降低开发成本和加快开发进度。

2. 软件测试的目的是什么?答:软件测试的目的是发现软件中的错误和缺陷,验证软件是否满足用户需求,并评估软件的质量。

通过测试,可以提高软件的可靠性和稳定性,减少软件在使用过程中的风险。

3. 请简述软件开发生命周期中的各个阶段。

答:软件开发生命周期包括需求分析、设计、编码、测试和维护等阶段。

- 需求分析阶段:确定软件系统的功能、性能和约束条件,明确用户需求。

- 设计阶段:根据需求分析结果设计软件系统的结构和模块,确定软件的整体框架。

- 编码阶段:根据设计阶段的文档编写程序代码,实现软件系统的各个功能。

- 测试阶段:对软件进行各种测试,包括单元测试、集成测试和系统测试,以发现错误和缺陷。

- 维护阶段:根据用户反馈和需求变化,对软件进行修复和更新,确保其持续稳定运行。

软件工程期末考试A卷及答案

软件工程期末考试A卷及答案

软件工程期末考试A卷及答案一、单项选择题(每题2分,共20分)1. 软件工程的三要素包括()。

A. 工具、方法和过程B. 工具、方法和环境C. 方法、过程和环境D. 方法、工具和环境答案:C2. 软件需求分析阶段的主要任务是()。

A. 确定软件的功能需求B. 确定软件的非功能需求C. 确定软件的界面需求D. 确定软件的性能需求答案:A3. 在软件开发过程中,需求变更是不可避免的,以下哪项不是需求变更的原因()。

A. 客户对需求理解的不完整B. 客户对需求理解的不准确C. 客户对需求理解的不清晰D. 客户对需求理解的完全正确答案:D4. 软件测试的目的是()。

A. 证明软件是正确的B. 发现软件中的错误C. 证明软件没有错误D. 证明软件是完美的答案:B5. 以下哪项不是软件维护的类型()。

A. 纠错性维护B. 适应性维护C. 完善性维护D. 创新性维护答案:D6. 在面向对象方法中,类的实例称为()。

A. 对象B. 实体C. 组件D. 模块答案:A7. 以下哪项不是软件工程中的项目管理活动()。

A. 风险管理B. 配置管理C. 需求管理D. 系统分析答案:D8. 软件工程中的“软件危机”主要指的是()。

A. 软件成本过高B. 软件质量低下C. 软件进度延误D. 以上都是答案:D9. 以下哪项不是软件复用的优点()。

A. 提高开发效率B. 降低开发成本C. 增加软件复杂性D. 提高软件质量答案:C10. 在敏捷开发方法中,以下哪项不是其核心价值()。

A. 个体和互动高于流程和工具B. 可工作的软件高于详尽的文档C. 客户合作高于合同谈判D. 遵循计划高于适应变化答案:D二、多项选择题(每题3分,共15分)1. 软件工程的主要目标包括()。

A. 提高软件生产率B. 提高软件质量C. 降低软件成本D. 提高软件的可维护性答案:ABCD2. 软件需求分析阶段的输出包括()。

A. 需求规格说明书B. 用户手册C. 系统设计说明书D. 数据字典答案:AD3. 软件测试的类型包括()。

软件工程考试试题及答案

软件工程考试试题及答案

软件工程考试试题及答案一、单选题1. 软件需求分析是软件工程的哪个阶段?a. 需求分析与定义b. 软件设计c. 软件测试d. 软件维护答案:a. 需求分析与定义2. 下列哪项不是软件工程的基本原则?a. 可复用性b. 高效性c. 可维护性d. 可理解性答案:b. 高效性3. 下列哪项不是软件质量保证的措施?a. 程序员的自我质量保证b. 审计c. 代码复用d. 测试答案:c. 代码复用4. 下列哪个是软件生命周期模型?a. 瀑布模型b. 程序开发模型c. 螺旋模型d. 增量模型答案:a. 瀑布模型5. 在软件工程中,什么是软件配置管理?a. 设计和开发软件的过程b. 管理软件的版本和更改c. 测试软件的过程d. 分配和调度任务的过程答案:b. 管理软件的版本和更改二、多选题1. 下列哪些是软件需求规格说明的内容?(多选)a. 需求的功能描述b. 系统性能要求c. 用户界面设计d. 软件的安装要求答案:a. 需求的功能描述、b. 系统性能要求、d. 软件的安装要求2. 软件测试的目的是什么?(多选)a. 发现软件中的错误b. 确保软件满足需求c. 评估软件的质量d. 提高软件的可维护性答案:a. 发现软件中的错误、b. 确保软件满足需求、c. 评估软件的质量3. 下列哪些是软件维护的类型?(多选)a. 纠错性维护b. 适应性维护c. 完善性维护d. 增量性维护答案:a. 纠错性维护、b. 适应性维护、c. 完善性维护、d. 增量性维护三、判断题1. 软件工程是一门工程学科,它包括对软件进行开发、测试、维护和管理等方面的知识。

(正确/错误)答案:正确2. 软件需求分析是软件开发的最后一步。

(正确/错误)答案:错误3. 软件测试的目的是为了证明软件是没有错误的。

(正确/错误)答案:错误四、简答题1. 简述软件生命周期模型中的瀑布模型。

答案:瀑布模型是软件生命周期模型中最早的模型之一。

它将软件开发过程分为需求分析、系统设计、详细设计、编码、测试和维护等阶段,并按照顺序执行。

头歌软件工程考试题及答案

头歌软件工程考试题及答案

头歌软件工程考试题及答案一、单项选择题(每题2分,共20分)1. 软件工程的主要目标是()。

A. 提高软件的生产率B. 提高软件的可维护性C. 提高软件的可重用性D. 提高软件的质量答案:D2. 软件需求分析阶段不包括以下哪项活动?()A. 需求收集B. 需求分析C. 需求规格说明D. 软件设计答案:D3. 软件设计阶段的主要任务是()。

A. 确定软件的功能B. 确定软件的外部行为C. 确定软件的内部结构D. 确定软件的测试计划答案:C4. 以下哪项不是软件测试的目的?()A. 发现软件中的缺陷B. 验证软件的功能C. 评估软件的性能D. 改进软件的设计答案:D5. 软件维护不包括以下哪项活动?()A. 纠错性维护B. 适应性维护C. 完善性维护D. 软件设计答案:D6. 以下哪项不是软件项目管理的内容?()A. 时间管理B. 质量管理C. 人员管理D. 软件编码答案:D7. 面向对象方法中,对象的三要素是()。

A. 属性、操作、状态B. 属性、操作、消息C. 属性、状态、消息D. 状态、操作、消息答案:B8. 以下哪项不是软件工程的基本原理?()A. 抽象B. 模块化C. 逐步求精D. 重复使用答案:D9. 软件工程中的“软件危机”主要表现为()。

A. 软件成本超支B. 软件进度延期C. 软件质量低下D. 以上都是答案:D10. 软件工程中的“软件工程环境”是指()。

A. 软件的开发环境B. 软件的运行环境C. 支持软件工程过程的环境D. 软件的测试环境答案:C二、多项选择题(每题3分,共15分)1. 软件需求分析阶段的主要任务包括()。

A. 需求收集B. 需求分析C. 需求规格说明D. 软件设计答案:ABC2. 软件测试的类型包括()。

A. 单元测试B. 集成测试C. 系统测试D. 验收测试答案:ABCD3. 软件维护的类型包括()。

A. 纠错性维护B. 适应性维护C. 完善性维护D. 预防性维护答案:ABCD4. 软件项目管理的内容主要包括()。

软件工程题库(含答案)

软件工程题库(含答案)

软件工程题库(含答案)一、单选题(共60题,每题1分,共60分)1、软件按照设计的要求,在规定时间和条件下达到不出故障,持续运行的要求的质量特性称为( )A、可用性B、正确性C、完整性D、可靠性正确答案:D2、软件特性中,软件从一个计算机系统或环境移植到另一个上去的难易程度指的是( ).A、可移植性B、可理解性C、可重用性D、可修改性正确答案:A3、在软件质量要素的评价准则中,操作该软件的难易程度指的是( )。

A、容错性B、检测性C、可操作性D、安全性正确答案:C4、下列属于维护阶段的文档是( )A、软件问题报告B、用户操作手册C、软件测试分析报告D、软件规格说明正确答案:B5、快速原型模型的主要特点之一是( )A、及早提供工作软件B、开发完毕才见到产品C、及早提供全部完整的软件产品D、开发完毕后才见到工作软件正确答案:C6、可维护性通常包括( )。

A、可用性和可理解性B、可修改性、数据独立性和数据一致性C、可理解性、可修改性和可测试性D、可测试性和稳定性正确答案:C7、软件的可修改性支持软件的( )。

A、可互操作性B、可维护性C、可追踪性D、有效性正确答案:B8、数据字典是软件需求分析阶段的最重要工具之一,其最基本的功能是( )A、数据通信B、数据定义C、数据维护D、数据库设计正确答案:B9、软件特性中,多个软件元素相互通讯并协同完成任务的能力指的是( )。

A、可追踪性B、可理解性C、可互操作性D、可维护性正确答案:C10、可维护性的特性中相互促进的是( )A、效率和可移植性B、可理解性和可测试性C、效率和结构好D、效率和可修改性正确答案:B11、在软件质量特性中,( )是指在规定的一段时间和条件下,与软件维持其性能水平的能力有关的一组属性。

A、可靠性B、易使用性C、正确性D、准确性正确答案:A12、设函数C(X)定义问题X的复杂程序,函数E(X)确定解决问题X 需要的工作量(时间)。

对于两个问题P1和P2,如果C(P1)>C(P2)显然E(P1)>E(P2),则得出结论E(P1+P2)>E(P1)+E(P2)就是:( )A、信息隐藏和局部化的根据B、逐步求精的根据C、抽象的根据D、模块化的根据正确答案:D13、下列说法中,不正确的是( )。

软件工程考试题及答案

软件工程考试题及答案

软件工程考试题及答案一、选择题(每题2分,共20分)1. 软件工程中的需求分析阶段的主要任务是什么?A. 确定软件的功能需求B. 设计软件的架构C. 编写软件的详细设计文档D. 进行软件的编码实现答案:A2. 在软件开发过程中,哪个阶段是进行风险评估的?A. 需求分析B. 设计C. 编码D. 测试答案:B3. 软件测试中的黑盒测试通常是基于什么进行的?A. 程序源代码B. 程序的内部逻辑C. 程序的功能需求D. 程序的运行环境答案:C4. 敏捷开发方法论中,哪个活动是迭代的核心?A. 需求收集B. 编码实现C. 测试D. 回顾会议答案:B5. 在软件维护中,哪种类型的维护是最常见的?A. 纠错性维护B. 适应性维护C. 完善性维护D. 预防性维护答案:A二、填空题(每空1分,共10分)6. 软件工程的生命周期包括需求分析、________、编码、测试和维护等阶段。

答案:设计7. 软件工程中的_______原则指的是高内聚低耦合。

答案:模块化8. 在软件开发中,_______ 是指软件在特定条件下使用时,能够达到预期功能、性能要求的能力。

答案:可靠性9. 软件项目管理中的_______ 是指在项目开发过程中,对项目进行监控和控制,确保项目按计划进行。

答案:监控10. 在软件测试中,_______ 是指测试用例设计得尽可能覆盖所有可能的执行路径。

答案:穷尽测试三、简答题(每题10分,共30分)11. 简述软件工程中的模块化设计原则及其优点。

答案:模块化设计原则是指将软件系统划分为多个模块,每个模块具有特定的功能,并且模块之间通过定义良好的接口进行交互。

其优点包括:- 易于管理:模块化使得软件更容易理解和维护。

- 可重用性:模块可以在不同的项目中重复使用。

- 并行开发:模块化允许多个团队并行开发不同的模块。

- 灵活性:模块化提高了软件的灵活性,便于扩展和修改。

12. 解释什么是软件的可维护性,并说明其重要性。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

选择题 1. 软件复杂性度量的参数包括( )(B) A.效率 B.规模 C.完整性 D.容错性

2. 软件测试方法中的静态测试方法之一为( )(A) A.计算机辅助静态分析 B.黑盒法 C.路径覆盖 D.边界值分析

3. 软件生命周期中所花费用最多的阶段是( )(D) A.详细设计 B.软件编码 C.软件测试 D.软件维护

4. 程序的三种基本控制结构是( )(B) A.过程、子程序和分程序 B.顺序、选择和重复 C.递归、堆栈和队列 D.调用、返回和转移

5. 需求分析阶段的任务是确定( )(D) A.软件开发方法 B.软件开发工具 C.软件开发费 D.软件系统的功能

6. 下列属于医疗信息系统非功能需求的是( )(A) A.在2分钟内给出季度统计报告 B.提供病历查询功能 C.提供病历信息录入 D.提供统计与打印功能

7. 项目管理的三要素是(C) A 成本 时间 质量 B 质量、进度和时间 C 风险 费用 进度 D 沟通 综合 范围

8. 项目范围定义经常 使用的工具是:(D) A工作分解结构 B需求分析 C 可行性分析 D 网络图

9. 任务的工期的最乐观时间是为3天,正常时间为6天, 最悲观时间为9天,此任务的预期工期是 (B) A 3 B 6 C 9 D 8 10. 在项目管理过程中,最严重的风险通常是出现在项目生命周期的哪个阶段(D) A 启动和计划阶段 B计划和实施阶段 C实施和收尾阶段 D 启动和收尾阶段

11. 项目整体管理的责任者是(B) A高级管理者 B 项目经理 C 职能经理 D项目团队

12. 与基于C/S架构的信息系统相比,基于B/S架构的信息系统()(C) A具备给那个强的事务处理能力,易于实现复杂的业务流程 B人机界面友好,具备更加快速的用户响应速度 C更容易部署和升级维护 D具备更高的安全性

13. 以下关于软件测试的描述,()是正确的 (C) A系统测试应尽可能在实际运行使用环境下进行 B软件测试是在编码阶段完成之后进行的一项活动 C专业测试人员通常采用白盒测试法检查程序的功能是否符合用户需求 D软件测试工作的好坏,取决于测试发现错误的数量

14. 软件的质量是指()(D) A软件的功能性、可靠性、易用性、效率、可维护性、可移植性 B软件的功能和性能 C用户需求的满意度 D软件特性的总合,以及满足规定和潜在用户需求的能力

15. 项目经理管理项目团队有时需要解决冲突,()属于解决冲突的范畴(A) A强制、妥协、撤退 B强制、求同存异、观察 C妥协、求同存异、增加权威 D妥协、撤退、预防

简答题 1. 什么是软件生存周期?它有哪几个活动? 软件生存周期:一个软件从提出开发要求开始直到该软件报废为止的整个时期。 包括:可行性分析和项目开发计划,需求分析,概要设计,详细设计,编码,测试,维护。

2. 什么是软件开发方法?有哪些主要方法? 使用早已定义好的技术集及符号表示习惯来组织软件生产的过程。通过使用成功的软件开发方法,在规定的投资和时间内,开发出符合用户需求的高质量的软件。软件开发方法是克服软件危机的重要方面之一,对软件工程及软件包产业的发展起了不可估量的作用。 主要有:结构化方法,JACKSON方法,维也纳开发方法﹙VDM﹚,面向对象开发方法。 3. 软件可行性研究的任务是什么? 可行研究的任务:首先需要进行概要的分析研究,初步确定项目的规模,目标,约束和限制。分析员再进行简要的需求分析,抽象出项目的逻辑结构,建立逻辑模型。从逻辑模型出发,经过压缩的设计,探索出若干种可供选择的解决方法,对每种解决方法都要研究它的可行性。 主要从四个方面考虑: ⑴.技术可行性:一般要考虑的情况包括 开发的风险即设计出的系统能否达到要求的功能和性能;资源的有效性;相关技术的发展是否支持; ⑵.经济可行性:进行开发成本的估算以及了解取得效益的评估,确定要开发的项目是否值得投资。 ⑶.法律可行性:要开发的项目是否存在任何侵权问题。 (4).管理可行性:运行方式在用户组织内是否可行,现有管理制度﹑人员素质﹑操作方式是否可行。

4. 什么是数据流图? 数据流图(DFD):以图形的方式描述数据在系统中流动和处理的逻辑过程。只反映系统必须完成的逻辑功能,是一种功能模型。

5. 什么是数据字典? 数据字典(DD)用来定义数据库流图中的各个成分的具体含义。有以下四类条目:数据流,数据项,数据存储,基本加工。

6. 什么是系统流程图? 是概括地描绘物理系统的传统工具,表达的是数据在系统各部件之间流动的情况

7. 什么是需求分析?需求分析阶段的基本任务是什么? 需求分析:开发人员准确地理解用户的要求,进行细致的调查分析,将用户非形式的需求陈述转化为完整的需求定义,再由需求定义转换到相应的需求规格说明的过程。 基本任务: ⑴问题识别:双方确定对问题的综合需求,这些需求包括功能需求,性能需求,环境需求,用户界面需求。 ⑵分析与综合,导出软件的逻辑模型 。 ⑶编写文档:包括编写"需求规格说明书","初步用户使用手册","确认测试计划","修改完善软件开发计划" 。

8. 结构化分析方法通过哪些步骤来实现? ⑴ 解当前系统的工作流程,获得当前系统的物理模型。 ⑵抽象出当前系统的逻辑模型。 ⑶建立目标系统的逻辑模型。 ⑷作进一步补充和优化。

9. 从哪些方面验证软件需求的正确性 (1) 一致性:所有需求必须是一致的,任何一条需求不能和其他需求互相矛盾。 (2) 完整性:需求必须是完整的,规格说明书应该包括用户需要的每一个功能或性能。 (3) 现实性:指定的需求应该是用现有的硬件技术和软件技术基本上可以实现的。对硬件技术的进步可以做些预测,对软件技术的进步则很难做出预测,只能从现有技术水平出发判断需求的现实性。 (4) 有效性:必须证明需求是正确有效的,确实能解决用户面对的问题。

10. 什么是总体设计?总体设计的任务是什么? 总体设计又称为概要设计或初步设计。确定系统功能是实现。基本任务是:建立软件系统结构(划分模块、定义模块功能、模块间的调用关系、定义模块的接口、评价模块的质量)、数据结构和数据库的设计(数据结构设计、概念设计、逻辑设计、物理设计)、编写概要设计文档(概要设计说明书、用户手册、数据库设计说明书、修订测试计划)。

11. 什么是模块化?有何优点 是把程序划分成独立命名且可独立访问的模块,每个模块完成一个子功能,把这些模块集成起来构成一个整体,可以完成指定的功能满足用户的需求。其优点是:(1)模块化使软件容易测试和调试,因而有助于提高软件的可靠性。(2)模块化也有助于软件开发工程的组织管理。

12. 什么叫耦合?模块间的耦合有哪些? 指衡量不同模块彼此间互相依赖(连接)的紧密程度;有非直接耦合、标记耦合、数据耦合 、控制耦合 、外部耦合、公共耦合和内容耦合 。

13. 详细设计的基本任务是什么? 设计模块的数据结构、设计数据库的物理结构、设计模块的详细算法、其它(代码设计、输入/输出格式设计、人机对话设计)、编写详细设计说明书、评审。

14. 软件测试的目的是什么?软件测试中,应注意哪些原则? 答:软件测试的目的是为了发现软件的错误。 软件测试中应注意的原则有: (1)测试用例应由输入数据和预期的输出数据两部分组成。这样便 于对照检查,做到有的放矢。 (2)测试且例不仅选用合理输入数据,还要选择不合理的输入数据。这样能更多地发现错误,提高程序的可靠性。对于不合理的输入数据,程序应拒绝接受,并给出相应的提示。 (3)除了检查程序是否做了它应该做的事,还应该检查程序是否做了它不应该做的事。 (4)应制定测试计划并严格执行,排除随意性。 (5)长期保留测试用例。 (6)对发现错误较多的程序段,应进行更深入的测试。 (7)程序员应避免测试自己的程序。测试是一种"挑剔性"的行为,心理状态是测试自己程序的障碍。

15. 什么是白盒测试法? 答:白盒法测试法把测试对象看作一个打开的盒子,测试人员须了解程序内部结构和处理过程,以检查处理过程的细节为基础,对程序中尽可能多的逻辑路径进行测试,检验内部控制结构和数据结构是否有错,实际的运行状态与预期的状态是否一致。

16. 什么是黑盒测试法? 答:黑盒测试法把被测试对象看成是一个黑盒子,测试人员完全不考虑程序的内部结构和处理过程,只在软件接口处进行测试,依据需求规格说明书,检查程序是否满足功能要求。

17. 软件测试要经过哪些步骤?这些测试与软件开发各阶段之间有什么关系? 答:软件测试要经过的步骤是:单元测试→集成测试→确认测试→系统测试。  单元测试:对源程序中每一个程序单元进行测试,检查各个模块是否正确实现规定的功能,从而发现模块在编码中或算法中的错误。该阶段涉及编码和详细设计文档。  集成测试:是为了检查与设计相关的软件体系结构的有关问题,也就是检查概要设计是否合理有效。  确认测试:主要是检查已实现的软件是否满足需求规格说明书中确定了的各种需求。  系统测试:是把已确认的软件与其他系统元素(如硬件、其他支持软件、数据、人工等)结合在一起进行测试。以确定软件是否可以支付使用。

18. 软件维护有哪些内容? 答:(1)校正性维护。在软件交付使用后,一些隐含的错误在某些特定的使用环境下会暴露出来。为了识别和纠正错误,修改软件性能上的缺陷,应进行确定和修改错误的过程,这个过程就称为校正性维护。 (2)适应性维护。为了使应用软件适应计算机硬件、软件环境及数据环境的不断发生的变化而修改软件的过程称为适应性维护。 (3)完善性维护。为增加软件功能、增强软件性能、提高软件运行效率而进行的维护活动称为完善性维护。 (4)预防性维护。为了提高软件的可维护性和可靠性而对软件进行的修改称为预防性维护。

19. 软件维护的流程是什么? 答:软件维护的流程如下:提交维护申请报告、审查申请报告并批准、运行维护并做详细记录、复审。

20. 什么是软件可维护性?可维护性度量的特性是什么? 答:软件可维护性的定义:软件能够被理解、校正、适应及增强功能的容易程度。软件的可维护性可用以下七个质量特性来衡量,即可理解性、可测试性、可修改性、可靠性、可移植性、可使用性和效率。

相关文档
最新文档