敏捷测试的指导性原则
- 2022-04-11 17:00:54
- 林冰玉
- 转贴:
- Thoughtworks
- 3974
这是我们测试人员听到的最多的质问,也是传统的测试人员对质量把关的常见认识。
但是,事实上,就像著名质量管理专家戴明指出的那样:软件的质量不是测出来的,测试人员没法控制软件质量的好坏。尤其是在敏捷开发模式下,特别强调的核心是质量内建,而要做好质量内建,需要团队全员的参与,需要团队整体对质量负责,这是敏捷测试的指导性原则,我们在敏捷测试宣言里也有强调。
团队整体对质量负责,这是个说起来容易做起来难的事情,很少有团队能够做的特别好。
那么,为什么这么难呢?在我看来,多半情况是因为不是团队所有成员都清楚质量到底是什么,没有明确的质量目标,所以也就没法很好的对质量负责,要实现团队整体对质量负责,首先得搞清楚下面三个问题:
- 敏捷里的质量是什么?
- 通常容易忽视的质量有哪些?
- 团队不同角色怎么为质量负责?
二、敏捷团队需要专职QA吗
既然团队整体对质量负责,肯定有人会有疑问:那敏捷团队还需要专职QA吗?这是个有意思的问题,业界对于“去QA化”的讨论也是一波又一波的。甚至很多QA听到这个很是担心,觉得自己前途渺茫了。
其实,并没有必要那么纠结是否需要专职的QA,因为QA在团队所需要做的事情始终都是要做的,不管是不是有专职的QA,从团队的角度来讲,有人做那些事情不就ok了?我们可以把QA理解成一定帽子,不管哪个角色的人戴上这顶帽子,能完成QA的工作就可以了。但是,是 不是什么角色的人都换个帽子戴上就能做QA的事情了呢?这个我相信大家还是比较清楚的,术业有专攻,肯定是专业的QA会做的更好。如果没有专职QA,对团队其他角色的要求就要高很多,不是每个团队都可以做到的。
因此,作为QA的我们,并不用担心是否“去QA化”真的会发生,倒是好好提升自己,多发挥应有的价值才是正道。
除了前面讲到的清晰的质量目标、注意容易忽视的质量、团队成员的充分合作,要做到团队整体对质量负责对团队本身也是有要求的。从我的经验来看,能够整体对质量负责的团队通常有如下特征:
1、信息共享
团队成员要能够为质量负责,首先得知道质量和质量目标是什么,而质量目标会受到众多因素的影响,每个项目每个阶段都会有不同的目标,及时将一些重要的信息分享给团队的每个人是至关重要的,包括客户的业务动态、生产环境系统的状态、终端用户的反馈、团队的工作重心、持续改进的状态、交付的压力和进度等等。信息共享,有利于团队成员更好的发挥主观能动性,更好的真正为质量负责,这是健康团队最关键最重要的一个特征。
2、反馈机制
对于软件系统的质量,我们提倡持续集成、持续测试以获取及时的反馈;为了团队的健康,需要不断优化团队成员间的沟通与合作,同样需要有相应的反馈机制或渠道。团队需要营造反馈的文化,成员间应是平等的关系,任何人可以对任何人或事提供相应的反馈。自动化测试提供的反馈有助于软件系统更加健壮,团队内的反馈机制则可以促进团队的健康发展,有助于团队整体对质量负责。
3、回顾会议
回顾会议是敏捷软件开发中非常有价值的一个实践,但有些团队的回顾会议流于形式,并没有带来什么效果。好的回顾会议应该做到对事不对人,大家都能就日常工作中的事情发表自己的意见,做得好的方面继续发扬,需要改进的方面共同商讨应对策略,持续改进。对于回顾会议讨论出的改进行动,一定要是可落地执行的,并且有相应的人员负责跟踪,不能光有行动的想法,但是并没有实际行动发生。
4、仪式感
“仪式感就是使某一天与其他日子不同,使某一时刻与其他时刻不同。” 日复一日的例行工作需要仪式感来适当的刺激,以增加团队成员的动力。项目顺利上线、质量提高了一个档次、某事受到客户的表扬、解决了一个极为关键的生产环境故障等,都可以有一些庆祝的仪式让团队所有成员共享喜悦。
5、团队活动
除了有仪式感,团队还需要有定期的团队活动。这种团队活动的目的主要是为了增进成员的凝聚力,一定要是轻松、愉快的形式。
四、小结
团队整体对质量负责是敏捷测试的指导性原则,要做到这个,需要:
- 明确质量目标,并且确保团队所有成员理解清楚各自需要为哪些质量负责;
- 软件开发生命周期的每个环节都需要多角色的合作,发挥各角色所长,取得最佳效果;
- 重视团队建设,组建健康的团队。
文章分类
联系我们
- 联系人:阿道
- 联系方式: 17762006160
- 地址:青岛市黄岛区长江西路118号青铁广场18楼
投稿邀请
如果您有优秀的原创文章,欢迎添加联系人直接与我们联系,或通过下方邮箱发送投稿文章,一经采用,我们会付以一定的稿件报酬。
- 投稿邮箱: yanruiyu@easycorp.ltd
- 投稿标题:向 [敏捷开发] 网站投稿
- 稿件要求:与敏捷开发相关的任何内容
更多投稿相关请点击 更多进行了解~