第2章软件测试模型
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
•
软件开发生命周期模型
• 大爆炸模型 • 简单 •
模式特点
最终产品
或
?
大爆炸模式是最简单的软件开发模式
大爆炸模型 • 大爆炸式几乎没有测试,如果有也挤在产品
发布前进行
• 软件已经完成,不可能修复wenku.baidu.com仅仅是报告发现
的问题,让客户知道
12
• 边写边改模型
• 项目小组在未刻意采用其他开发模式时默认
的开发模式。这是在大爆炸模式基础上更进了一 步,典型至的少非正考规虑说明到书了产品需求。
V模型问题
• 测试是开发之后的一个阶段。
• 测试的对象就是程序本身。
• 实际应用中容易导致需求阶段的错误一直到最
后系统测试阶段才被发现。
• 整个软件产品的过程质量保证完全依赖于开发
人员的能力和对工作的责任心,而且上一步的 结果必须是充分和正确的,如果任何一个环节 出了问题,则必将严重的影响整个工程的质量 和预期进度
本章内容
• 软件工程 • 软件开发生命周期模型 • 软件测试过程模型 • 测试需求 • 需求概要 • 需求类型 • 需求评审 • 测试过程 • 使用
内容进度
编程大师的话
• 编程大师说:“任何一个程序,无论它多么小,总存在着错误。” • 初学者不相信大师的话,他问:“如果一个程序小得只执行一个简单
软件测试技术
• 第2章 软件测试模型
上一章内容回顾
• 软件测试概述 • 软件测试的概念、目的、意义 • 软件质量保证同软件测试的区别 • 软件测试原则 • 软件测试行业概述 • 软件测试工程师要求 • 微软公司软件测试简介
• 软件工程 • 软件开发生命周期模型 • 软件测试过程模型 • 测试需求 • 需求概要 • 需求类型 • 需求评审 • 测试过程 • 使用
,用户就会想让那个程序做一件不同的事,这件事也是一个错误。”
软件工程的定义
• 软件工程 • 软件工程( ,简称为)是一门研究用工程化
方法构建和维护有效的、实用的和高质量的 软件的科学。它涉及到程序设计语言,数据 库,软件开发工具,系统平台,标准,设计 模式等方面。
1983年给出的定义是 :软件工程是开发、运 行、维护和修复软件的 系统方法。
• H模型
• 1、H模型建立
• 为了解决V模型和W模型存在的问题,有
专家提出了H模型。它将测试活动完全独立 出来,形成一个完全独立的流程,将测试准 备活动和测试执行活动侵袭地体现出来
• 2、H模型应用
•
• 软件测试是一个独立的流程,贯穿产品整个生命周期,与其他流程并发地进行 • 软件测试要尽早准备,尽早执行 • 软件测试是根据被测物的不同而分层次进行的。不同层次的测试活动可以是按
瀑布模型 原型模型 螺旋模型 敏捷开发模型
• 软件工程 • 软件工程的定义 • 软件工程的目标 • 软件开发生命周期模型 • 软件测试过程模型 • 测试需求 • 需求概要 • 需求类型 • 需求评审 • 测试过程 • 使用
内容进度
• 4种常用模式 • 大爆炸模式 • 边写边改模式 • 瀑布模式 • 螺旋模式 • 敏捷软件开发
W模型
1.测试程序,需求,功能,设计 2.无法迭代
W模型
• 相对于V模型,W模型增加了软件各开发阶段中应
同步进行的验证和确认活动。W模型由两个V字型 模型组成,分别代表测试与开发过程,图中明确表 示出了测试与开发的并行关系。
• W模型强调:测试伴随着整个软件开发周期,而
且测试的对象不仅仅是程序,需求、设计等同样要 测试,也就是说,测试与开发是同步进行的。
编码,修改,反复直到? 最终产品 快速做好,做好就扔的小项目
• 瀑布模型 •
• 三点特别强调内容 • 1、强调产品的定义 • 2、各步骤是分立的、没有交叉 • 3、无法回溯 •
• 螺旋模型 • 开始不必详细定义所有细节 • 6个步骤: • 确定目标/方案和限制条件; • 明确并化解风险; • 评估可选方案; • 当前阶段开发和测试; • 计划下一阶段; • 确定进入下一阶段的方法。
• W模型有利于尽早地全面的发现问题。但W模型也
存在局限性。在W模型中,需求、设计、编码等活 动被视为串行的,同时,测试和开发活动也保持着 一种线性的前后关系,上一阶段完全结束,才可正 式开始下一个阶段工作。这样就无法支持迭代的开 发模型。对于当前软件开发复杂多变的情况,W模 型并不能解除测试管理面临着困惑。
• 敏捷软件开发
• 有一种开发过程,受到许多软件公司的喜爱,叫做
敏捷软件开发( )。我们也许听说过它的另外一些 名称,如快速原型、极限编程或进化开发等。
• 敏捷软件开发的目的是:
• 每个开发活动都有相应的测试活动 • 每个测试级别都有其特有的测试目标 • 每个测试级别都有测试分析和设计 • 开发周期中,在文档初期稿阶段就应该参与文档的评审
照某个次序先后进行的,但也可能是反复的
H模型
• H模型揭示了一个原理:软件测试是一个独
立的流程,贯穿产品整个生命周期,与其他 流程并发地进行。H模型指出软件测试要尽 早准备,尽早执行。不同的测试活动可以是 按照某个次序先后进行的,但也可能是反复 的,只要某个测试达到准备就绪点,测试执 行活动就可以开展。
软件工程的主要环节
• 软件工程的主要环节有:人员管理、项目管理、可
行性与需求分析、系统设计、程序设计、测试、维 护等。
人员管理
项目管理
可行性与 需求分析
系统设计
程序设计
测试
维护
软件开发模型
• 基本概念 • 软件开发全部过程、活动和任务的结构框架
。它能清晰、直观地表达软件开发全过程, 明确规定了要完成的主要活动和任务。
• 软件工程 • 软件工程的定义 • 软件工程的目标 • 软件开发生命周期模型 • 软件测试过程模型 • 测试需求 • 需求概要 • 需求类型 • 需求评审 • 测试过程 • 使用
内容进度
V模型
“V”的左端表示传统的瀑布开发模型,而“V”的右端表明相应的测试阶 段
V模型是最具有代表意义的测试模型 。
的功能,那会怎样?”
• “这样的一个程序没有意义,”大师说,“但如果这样的程序存在的
话,操作系统最后将失效,产生一个错误。”
• 但初学者不满足,他问:“如果操作系统不失效,那么会怎样?” • “没有不失效的操作系统,”大师说,“但如果这样的操作系统存在
的话,硬件最后将失效,产生一个错误。”
• 初学者仍不满足,再问:“如果硬件不失效,那么会怎样?” • 大师长叹一声道:“没有不失效的硬件。但如果这样的硬件存在的话
软件开发生命周期模型
• 大爆炸模型 • 简单 •
模式特点
最终产品
或
?
大爆炸模式是最简单的软件开发模式
大爆炸模型 • 大爆炸式几乎没有测试,如果有也挤在产品
发布前进行
• 软件已经完成,不可能修复wenku.baidu.com仅仅是报告发现
的问题,让客户知道
12
• 边写边改模型
• 项目小组在未刻意采用其他开发模式时默认
的开发模式。这是在大爆炸模式基础上更进了一 步,典型至的少非正考规虑说明到书了产品需求。
V模型问题
• 测试是开发之后的一个阶段。
• 测试的对象就是程序本身。
• 实际应用中容易导致需求阶段的错误一直到最
后系统测试阶段才被发现。
• 整个软件产品的过程质量保证完全依赖于开发
人员的能力和对工作的责任心,而且上一步的 结果必须是充分和正确的,如果任何一个环节 出了问题,则必将严重的影响整个工程的质量 和预期进度
本章内容
• 软件工程 • 软件开发生命周期模型 • 软件测试过程模型 • 测试需求 • 需求概要 • 需求类型 • 需求评审 • 测试过程 • 使用
内容进度
编程大师的话
• 编程大师说:“任何一个程序,无论它多么小,总存在着错误。” • 初学者不相信大师的话,他问:“如果一个程序小得只执行一个简单
软件测试技术
• 第2章 软件测试模型
上一章内容回顾
• 软件测试概述 • 软件测试的概念、目的、意义 • 软件质量保证同软件测试的区别 • 软件测试原则 • 软件测试行业概述 • 软件测试工程师要求 • 微软公司软件测试简介
• 软件工程 • 软件开发生命周期模型 • 软件测试过程模型 • 测试需求 • 需求概要 • 需求类型 • 需求评审 • 测试过程 • 使用
,用户就会想让那个程序做一件不同的事,这件事也是一个错误。”
软件工程的定义
• 软件工程 • 软件工程( ,简称为)是一门研究用工程化
方法构建和维护有效的、实用的和高质量的 软件的科学。它涉及到程序设计语言,数据 库,软件开发工具,系统平台,标准,设计 模式等方面。
1983年给出的定义是 :软件工程是开发、运 行、维护和修复软件的 系统方法。
• H模型
• 1、H模型建立
• 为了解决V模型和W模型存在的问题,有
专家提出了H模型。它将测试活动完全独立 出来,形成一个完全独立的流程,将测试准 备活动和测试执行活动侵袭地体现出来
• 2、H模型应用
•
• 软件测试是一个独立的流程,贯穿产品整个生命周期,与其他流程并发地进行 • 软件测试要尽早准备,尽早执行 • 软件测试是根据被测物的不同而分层次进行的。不同层次的测试活动可以是按
瀑布模型 原型模型 螺旋模型 敏捷开发模型
• 软件工程 • 软件工程的定义 • 软件工程的目标 • 软件开发生命周期模型 • 软件测试过程模型 • 测试需求 • 需求概要 • 需求类型 • 需求评审 • 测试过程 • 使用
内容进度
• 4种常用模式 • 大爆炸模式 • 边写边改模式 • 瀑布模式 • 螺旋模式 • 敏捷软件开发
W模型
1.测试程序,需求,功能,设计 2.无法迭代
W模型
• 相对于V模型,W模型增加了软件各开发阶段中应
同步进行的验证和确认活动。W模型由两个V字型 模型组成,分别代表测试与开发过程,图中明确表 示出了测试与开发的并行关系。
• W模型强调:测试伴随着整个软件开发周期,而
且测试的对象不仅仅是程序,需求、设计等同样要 测试,也就是说,测试与开发是同步进行的。
编码,修改,反复直到? 最终产品 快速做好,做好就扔的小项目
• 瀑布模型 •
• 三点特别强调内容 • 1、强调产品的定义 • 2、各步骤是分立的、没有交叉 • 3、无法回溯 •
• 螺旋模型 • 开始不必详细定义所有细节 • 6个步骤: • 确定目标/方案和限制条件; • 明确并化解风险; • 评估可选方案; • 当前阶段开发和测试; • 计划下一阶段; • 确定进入下一阶段的方法。
• W模型有利于尽早地全面的发现问题。但W模型也
存在局限性。在W模型中,需求、设计、编码等活 动被视为串行的,同时,测试和开发活动也保持着 一种线性的前后关系,上一阶段完全结束,才可正 式开始下一个阶段工作。这样就无法支持迭代的开 发模型。对于当前软件开发复杂多变的情况,W模 型并不能解除测试管理面临着困惑。
• 敏捷软件开发
• 有一种开发过程,受到许多软件公司的喜爱,叫做
敏捷软件开发( )。我们也许听说过它的另外一些 名称,如快速原型、极限编程或进化开发等。
• 敏捷软件开发的目的是:
• 每个开发活动都有相应的测试活动 • 每个测试级别都有其特有的测试目标 • 每个测试级别都有测试分析和设计 • 开发周期中,在文档初期稿阶段就应该参与文档的评审
照某个次序先后进行的,但也可能是反复的
H模型
• H模型揭示了一个原理:软件测试是一个独
立的流程,贯穿产品整个生命周期,与其他 流程并发地进行。H模型指出软件测试要尽 早准备,尽早执行。不同的测试活动可以是 按照某个次序先后进行的,但也可能是反复 的,只要某个测试达到准备就绪点,测试执 行活动就可以开展。
软件工程的主要环节
• 软件工程的主要环节有:人员管理、项目管理、可
行性与需求分析、系统设计、程序设计、测试、维 护等。
人员管理
项目管理
可行性与 需求分析
系统设计
程序设计
测试
维护
软件开发模型
• 基本概念 • 软件开发全部过程、活动和任务的结构框架
。它能清晰、直观地表达软件开发全过程, 明确规定了要完成的主要活动和任务。
• 软件工程 • 软件工程的定义 • 软件工程的目标 • 软件开发生命周期模型 • 软件测试过程模型 • 测试需求 • 需求概要 • 需求类型 • 需求评审 • 测试过程 • 使用
内容进度
V模型
“V”的左端表示传统的瀑布开发模型,而“V”的右端表明相应的测试阶 段
V模型是最具有代表意义的测试模型 。
的功能,那会怎样?”
• “这样的一个程序没有意义,”大师说,“但如果这样的程序存在的
话,操作系统最后将失效,产生一个错误。”
• 但初学者不满足,他问:“如果操作系统不失效,那么会怎样?” • “没有不失效的操作系统,”大师说,“但如果这样的操作系统存在
的话,硬件最后将失效,产生一个错误。”
• 初学者仍不满足,再问:“如果硬件不失效,那么会怎样?” • 大师长叹一声道:“没有不失效的硬件。但如果这样的硬件存在的话