导引:软件的内建质量管理体系
本模块介绍了什么是内建质量管理体系,及其产生的动机和收益,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. 质量度量指标:覆盖率
课程背景:这是一个外界急剧变化的时代,更是一个自身加速进化的时代。面对这样的时代大潮,如果不想被拍死在前滩上,就只能比对手跑得更快更灵活。所以我们需要主动求变,打造应对变化的能力。在这样的飞速变化的环境下,还要避免犯错以保证产品的质量,更加难上加难。项目管理的铁三角中,范围,时间和成本都有可能变化,唯独质量是不容妥协的。要保证质量,必须从顶层设计系统化的质量管理体系。治病于未然,在产品交付之前就把质量问题解决掉,需要转变单纯依靠事后检测的传统思路,在产品的开发过程中就把质量举措嵌入进去,这就是内建质量管理的方法论体系的核心思想。从组织,流程,产品 和工具等4个角度落地实施,加上科学的质量度量体系作为指引方向的仪表盘,才能贯彻内建质量的理念,实现在敏捷开发模式下的质量控制。