软件质量保证与软件测试PPT课件
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Q&A
.
软件工程
软件工程 (Software Engineering,简称为SE) 是一门研究用工程化方法构建和维护有效的、 实用的和高质量的软件的学科。它涉及到程序 设计语言,数据库,软件开发工具,系统平台, 标准,设计模式等方面。
.
软件质量管理
质量与质量管理的概念
质量:是“反映实体满足明确和隐含需要的能力和特性综 合”。因此,质量是一种需要,“是一组固有特性满足要 求的程度”。
.
软件开发模式(续)
2、边写边改法
采用边写边改法的软件开发通常只是有了比较粗略的想法 就开始进行简单的设计、然后进行较长的反复编写、测试 与修复这样一个循环的过程。在认为无法更精细的描述软 件产品要求时,就发布产品。
优点:能够较为迅速的展现成果,适合需要快速制作而且 用完就扔的小项目,如示范程序、演示程序等。
缺点:其编码和测试可能将是长期的循环往复的过程。
.
软件开发模式(续)
产品 说明 书
最终产品
代码编制、测试、修复
.
软件开发模式(续)
瀑布法 瀑布模式是将软件生命周期的各项活动,规定为按照固定
顺序相连的若干个阶段性工作,形如瀑布流水,最终得到 软件产品。 优点:易于理解;调研开发的阶段性;强调早期计划及需 求调查;确定何时能够交付产品及何时进行评审与测试。 缺点:需求调查分析只进行一次,不能适应需求变化;顺 序的开发流程,使得开发中的经验教训不能反馈到该项目 的开发中去;不能反映出软件开发过程的反复与迭代性; 没有包含任何类型的风险评估;开发中出现的问题直到开 发后期才能够显露,因此失去及早纠正的机会。
.
Tip
SQA:从流程和标准上来控制开发过程,从而 提高软件质量。
SQC:通过测试发现软件的问题并确保问题被 解决,从而提高软件质量
.
思考
质量是做出来的还是管出来的?
.
软件开发模式
1、大棒开发法 源于能量爆发创造宇宙,万物都由能量和物质积聚而成的
理论,但如果不是遵循某种正确的排列和组合,形成的将 不是预先期望的事物。大棒模式与上述理论一样:一大堆 能量(这里指开发软件所需的人力和物力)放在一起,巨 大的能量进行释放,通常的结果可能是产生了优秀的软件 产品或成为一堆“废品”(不成功的软件)。 优点:思路简单, 通常可能是开发者的“突发奇想” 缺点:开发过程是非工程化的,随意性大 关于测试:有的较简单,有的则非常困难
.
软件质量管理
从质量管理理论的发展历史可以看出: ——质量管理从单纯的对产品质量进行检验发展 到对产品形成过程进行控制 ——控制方法从静态发展到动态的、持续的过程 改进
质量管理理论发展到今天: ——其核心思想已表现为对过程的策划、控制和 过程能力的持续改进
.
软件质量保证
是软件工程领域中的一部分 为了确保软件开发过程和结果符合预期的
软件质量保证与软件测试
北京唯英时代信息技术有限公司
.
方修广
开场白
世界上不存在没有缺陷的软件。 可以通过两种途径开发出没有错误的软件:
在一开始就防止引入错误。 识别潜藏在代码中的错误,找到并消灭它们。
.
大纲
软件工程 软件质量保证 软件测试
• 基础知识 • 常用技能 • 职业发展 • 团队管理
.
软件质量管理
质量管理体系:它是质量管理的运作实体,由组织结构、 程序、过程、资源4个基本部分组成。
质量策划:它是“确定质量以及采用质量管理体系要素和 要求的活动”,包括产品策划、质量管理体系管理和运作 策划、编制质量计划。
质量控制:为达到质量要求所采取的作业技术和活动。质 量控制的对象是过程。
.
软件开发模式(续)
定义阶段
开发阶段 维护阶段
问题定义 分析研究 需求分析 软件设计 编码
测试 维护
图1-7 瀑布开发模式
.
软件开发模式(续)
累计成本
制定计划
风险分析
风险分析
风险分析
提交线
原型1 需求计划
开发计划 集成与测试 评估方案
需求 确定
设计 确定
实现
原型2
软件 需求
原型3
可运行 原型
软件产品 详细设计
要求,而建立的一系列规程,以及依照规 程和计划采取的一系列活动及其结果评价 软件开发过程是按照计划和规范实施的 软件开发结果包括完整的软件和文档,
并且符合可预期的目标和检验标准
.
源自文库
软件测试
软件测试就是在软件投入运行前,对软件需求分 析、设计规格说明和编码实现的最终审查,它是 软件质量保证的关键步骤。通常对软件测试的定 义有两种描述: 定义1:软件测试是为了发现错误而执行程序的过 程。 定义2:软件测试是根据软件开发各阶段的规格说 明和程序的内部结构而精心设计的一批测试用例, 并利用这些测试用例运行程序以及发现错误的过 程,即执行测试步骤。
设计
编码
单元测试
集成测试 验收测试
图1-9 螺旋开发模式
.
软件开发与软件测试的关系
需求 分析 说明书
概要 设计 说明书
质量保证:是为了提供足够的信任证据,证明组织有关的 各类实体有能力满足质量要求所实施并在必要时进行证实 的有计划、有系统的活动。
质量改进:是为了向组织的所有受益者提供更多的收益所 采用的提高质量过程和效率的各种措施 。
.
软件质量管理
质量管理的发展阶段
(1)产品质量检验阶段:这个时期特征是对产品的质量进 行检验。产品质量的检验只是一种事后的检查,不能预防 不合格品的产生。
(2)统计质量管理阶段:它是运用概率论和数理统计的原 理,提出控制生产过程,预防不合格产品的思想和方法。 即通过小部分样品测试,推测和控制全体产品或工艺过程 的质量状况。
(3)全面质量管理阶段:从以质量管理专业人员为核心进 行质量管理,发展到管理者推动、组织各部门的人员都来 进行学习和实行质量管理。
质量管理:质量管理是指以组织为质量中心、企业全员参 与为基础,为追求客户满意和组织所有受益者满意而建立 和形成的一整套质量方针、目标和体系。质量管理通过质 量策划设定组织的质量目标,并规定必要的过程和相关资 源;通过质量控制监视内部质量过程,排除质量控制过程 中可能存在的缺陷隐患;通过质量改进提高内部的质量管 理能力,改善组织内部的质量过程;通过质量保证提供足 够的信任证据,表明组织有能力满足客户的质量要求。
.
软件工程
软件工程 (Software Engineering,简称为SE) 是一门研究用工程化方法构建和维护有效的、 实用的和高质量的软件的学科。它涉及到程序 设计语言,数据库,软件开发工具,系统平台, 标准,设计模式等方面。
.
软件质量管理
质量与质量管理的概念
质量:是“反映实体满足明确和隐含需要的能力和特性综 合”。因此,质量是一种需要,“是一组固有特性满足要 求的程度”。
.
软件开发模式(续)
2、边写边改法
采用边写边改法的软件开发通常只是有了比较粗略的想法 就开始进行简单的设计、然后进行较长的反复编写、测试 与修复这样一个循环的过程。在认为无法更精细的描述软 件产品要求时,就发布产品。
优点:能够较为迅速的展现成果,适合需要快速制作而且 用完就扔的小项目,如示范程序、演示程序等。
缺点:其编码和测试可能将是长期的循环往复的过程。
.
软件开发模式(续)
产品 说明 书
最终产品
代码编制、测试、修复
.
软件开发模式(续)
瀑布法 瀑布模式是将软件生命周期的各项活动,规定为按照固定
顺序相连的若干个阶段性工作,形如瀑布流水,最终得到 软件产品。 优点:易于理解;调研开发的阶段性;强调早期计划及需 求调查;确定何时能够交付产品及何时进行评审与测试。 缺点:需求调查分析只进行一次,不能适应需求变化;顺 序的开发流程,使得开发中的经验教训不能反馈到该项目 的开发中去;不能反映出软件开发过程的反复与迭代性; 没有包含任何类型的风险评估;开发中出现的问题直到开 发后期才能够显露,因此失去及早纠正的机会。
.
Tip
SQA:从流程和标准上来控制开发过程,从而 提高软件质量。
SQC:通过测试发现软件的问题并确保问题被 解决,从而提高软件质量
.
思考
质量是做出来的还是管出来的?
.
软件开发模式
1、大棒开发法 源于能量爆发创造宇宙,万物都由能量和物质积聚而成的
理论,但如果不是遵循某种正确的排列和组合,形成的将 不是预先期望的事物。大棒模式与上述理论一样:一大堆 能量(这里指开发软件所需的人力和物力)放在一起,巨 大的能量进行释放,通常的结果可能是产生了优秀的软件 产品或成为一堆“废品”(不成功的软件)。 优点:思路简单, 通常可能是开发者的“突发奇想” 缺点:开发过程是非工程化的,随意性大 关于测试:有的较简单,有的则非常困难
.
软件质量管理
从质量管理理论的发展历史可以看出: ——质量管理从单纯的对产品质量进行检验发展 到对产品形成过程进行控制 ——控制方法从静态发展到动态的、持续的过程 改进
质量管理理论发展到今天: ——其核心思想已表现为对过程的策划、控制和 过程能力的持续改进
.
软件质量保证
是软件工程领域中的一部分 为了确保软件开发过程和结果符合预期的
软件质量保证与软件测试
北京唯英时代信息技术有限公司
.
方修广
开场白
世界上不存在没有缺陷的软件。 可以通过两种途径开发出没有错误的软件:
在一开始就防止引入错误。 识别潜藏在代码中的错误,找到并消灭它们。
.
大纲
软件工程 软件质量保证 软件测试
• 基础知识 • 常用技能 • 职业发展 • 团队管理
.
软件质量管理
质量管理体系:它是质量管理的运作实体,由组织结构、 程序、过程、资源4个基本部分组成。
质量策划:它是“确定质量以及采用质量管理体系要素和 要求的活动”,包括产品策划、质量管理体系管理和运作 策划、编制质量计划。
质量控制:为达到质量要求所采取的作业技术和活动。质 量控制的对象是过程。
.
软件开发模式(续)
定义阶段
开发阶段 维护阶段
问题定义 分析研究 需求分析 软件设计 编码
测试 维护
图1-7 瀑布开发模式
.
软件开发模式(续)
累计成本
制定计划
风险分析
风险分析
风险分析
提交线
原型1 需求计划
开发计划 集成与测试 评估方案
需求 确定
设计 确定
实现
原型2
软件 需求
原型3
可运行 原型
软件产品 详细设计
要求,而建立的一系列规程,以及依照规 程和计划采取的一系列活动及其结果评价 软件开发过程是按照计划和规范实施的 软件开发结果包括完整的软件和文档,
并且符合可预期的目标和检验标准
.
源自文库
软件测试
软件测试就是在软件投入运行前,对软件需求分 析、设计规格说明和编码实现的最终审查,它是 软件质量保证的关键步骤。通常对软件测试的定 义有两种描述: 定义1:软件测试是为了发现错误而执行程序的过 程。 定义2:软件测试是根据软件开发各阶段的规格说 明和程序的内部结构而精心设计的一批测试用例, 并利用这些测试用例运行程序以及发现错误的过 程,即执行测试步骤。
设计
编码
单元测试
集成测试 验收测试
图1-9 螺旋开发模式
.
软件开发与软件测试的关系
需求 分析 说明书
概要 设计 说明书
质量保证:是为了提供足够的信任证据,证明组织有关的 各类实体有能力满足质量要求所实施并在必要时进行证实 的有计划、有系统的活动。
质量改进:是为了向组织的所有受益者提供更多的收益所 采用的提高质量过程和效率的各种措施 。
.
软件质量管理
质量管理的发展阶段
(1)产品质量检验阶段:这个时期特征是对产品的质量进 行检验。产品质量的检验只是一种事后的检查,不能预防 不合格品的产生。
(2)统计质量管理阶段:它是运用概率论和数理统计的原 理,提出控制生产过程,预防不合格产品的思想和方法。 即通过小部分样品测试,推测和控制全体产品或工艺过程 的质量状况。
(3)全面质量管理阶段:从以质量管理专业人员为核心进 行质量管理,发展到管理者推动、组织各部门的人员都来 进行学习和实行质量管理。
质量管理:质量管理是指以组织为质量中心、企业全员参 与为基础,为追求客户满意和组织所有受益者满意而建立 和形成的一整套质量方针、目标和体系。质量管理通过质 量策划设定组织的质量目标,并规定必要的过程和相关资 源;通过质量控制监视内部质量过程,排除质量控制过程 中可能存在的缺陷隐患;通过质量改进提高内部的质量管 理能力,改善组织内部的质量过程;通过质量保证提供足 够的信任证据,表明组织有能力满足客户的质量要求。