软件质量控制:敏捷测试
课程背景:
这是一个外界急剧变化的时代,更是一个自身加速进化的时代。面对这样的时代大潮,如果不想被拍死在前滩上,就只能比对手跑得更快更灵活。所以我们需要主动求变,打造应对变化的能力。在这样的飞速变化的环境下,还要避免犯错以保证产品的质量,更加难上加难。项目管理的铁三角中,范围,时间和成本都有可能变化,唯独质量是不容妥协的。要保证质量,必须从顶层设计系统化的质量管理体系。
治病于未然,在产品交付之前就把质量问题解决掉,需要转变单纯依靠事后检测的传统思路,在产品的开发过程中就把质量举措嵌入进去,这就是内建质量管理的方法论体系的核心思想。从组织,流程,产品 和工具等4个角度落地实施,加上科学的质量度量体系作为指引方向的仪表盘,才能贯彻内建质量的理念,实现在敏捷开发模式下的质量控制。
课程收益:学完本课程,学员将会对以下软件质量控制的内容有一个清晰的认识:
● 为什么要在软件质量控制中采用内建质量的管理体系(Why)?什么是内建质量(What)?
1)时间紧,任务重,资源有限,如何保证交付项目的质量?
2)上线前大批量的集成和构建造成bug满天飞,如何应对集中交付的风险?
3)产品频繁迭代增量地交付大量版本,如何及时完成繁重的测试任务?
● 如何落地实施内建质量管理体系(How to do)?
1)如何设计质量管理团队的组织架构?
2)内建质量管理体系的流程是怎样的?
3)从产品的价值交付角度,如何内嵌质量流程进去?
4)如何通过工具落地质量管理流程?
课程时间:2天,6小时/天
课程对象:企业的软件质量管理和研发人员,有一定的质量控制管理经验
课程方式:沙盘模拟+量身定制+咨询案例
课程亮点:
沙盘模拟:本课程采用行动式学习方式,寓教于乐,课堂气氛活跃,引导进行主动学习,易于消化吸收
(学员分组,最多不超过6组,每组至少5人,不超过9人)
量身定制:本课程提炼总结了客户的常见工作场景,共性痛点问题和业界最佳实践。另外在此基础上,还可以根据客户具体的实际诉求,对内容和时长进行裁剪定制
咨询案例:本课程有强烈的“问题解决”咨询风格,欢迎学员带着工作中的实际问题参与课堂讨论。讲师以咨询顾问的身份参与了很多标杆企业的敏捷转型辅导工作,积累了大量咨询服务经验和(华为、平安等优秀代表的)实战案例,启发学员学以致用
课程框架:
课程大纲
课程的逻辑结构是内建质量体系的定义-四个维度的落地举措-PDCA闭环,将从企业质量管理的组织,流程,产品和工具等4个维度出发,分析每个维度中常见的Top3痛点问题,引导学员讨论解决方案,然后推荐业界最佳实践的方法和工具,采用行动式学习方式进行重点演练,最后根据讲师亲身参与的咨询服务实战经验,进行优秀标杆企业(比如华为和平安等)的案例分享。
导引:软件的内建质量管理体系
本模块介绍了什么是内建质量管理体系,及其产生的动机和收益,4大组成模块包括组织,流程,产品和工具。同时还探讨了测试前置到开发阶段以及需求阶段的场景和好处。
1. 内建质量框架
2. 测试前置
第一讲:组织架构
本模块从组织架构的角度出发,探讨如何打造内建质量管理的团队。重点介绍了QA的职责定位、技能地图、成长方向,以及在敏捷研发团队中,开发和测试的分工与合作,他们分别要做什么才能内建质量到开发过程中。
一、QA的职责定位
1. 传统:最后一道门的守门员
2. 敏捷:全员参与
二、QA的技能树
1. 业务:和客户相关的产品和业务能力
2. 技术:工程实施交付的能力
3. 管理:带队伍打仗的能力
三、职业发展方向
1. 功能测试:面向用户的端到端全流程验收测试
2. 测试开发:测试相关的工具平台的开发
3. 测试架构师:设计测试工具和平台的解决方案
4. 测试经理:带领测试团队,保证产品质量
5. 产品经理:决定产品的方向
四、全功能团队
1. 开发人员的自测责任
2. 测试人员的开发能力
第二讲:流程方法(敏捷测试4象限)
本模块以敏捷测试4象限为主,分别介绍了指导开发面向技术和业务、评价产品面向业务和技术这四个象限,分别详细探讨了有哪些测试方法可以用来保证质量。
一、指导开发面向技术
1. 单元测试
2. 接口测试
二、指导开发面向业务
1. 实例化需求
2. 验收测试
三、评价产品面向业务
1. 场景测试
2. 探索性测试
3. 可用性测试
四、评价产品面向技术
1. 非功能需求
2. 质量属性树
3. 技术债管理
第三讲:产品价值交付
本模块从产品价值交付的端到端视角,重点讨论如何以客户为中心的质量管理,包括业务验收测试、验证易用性的用户可用性测试,为了业务增长做的AB测试,以及如何在迭代交付中持续演进架构,这是把质量内建贯穿产品生命周期创造业务价值的全过程。
一、端到端业务验收测试
1. 客户视角
2. 用户可用性测试:用户体验
二、AB测试
——业务增长模型:AARRR
案例:微软Bing搜索引擎的AB Test
三、演进式架构设计
1. 迭代交付
2. 持续架构
第四讲:工具与自动化
本模块重点讨论如何使用工具来帮助保证质量,讨论了如何搭建测试自动化金字塔,建立分层质量防护网,同时还介绍了各阶段和质量相关的工具链。
一、测试自动化金字塔
——分层质量防护网
案例:行业标杆的测试分级体系
二、CI/CD工具链
1. 需求管理
2. 代码管理
3. 系统构建
4. 分层测试
5. 部署上线
6. 缺陷管理
案例:行业标杆的CI/CD工具链
第五讲:质量管理的PDCA
本模块讨论了质量管理的策划、执行、检查和改进的完整闭环过程,包括其中涉及的测试相关过程,最后还重点讨论了质量的度量指标体系。
1. 测试计划
2. 测试用例Test Case:Test Case的质量
3. 测试环境
4. 测试数据:集中管理
5. 缺陷报告
6. 测试人员的一个迭代
7. 质量度量指标:覆盖率