关于“敏捷软件测试”,小编也是刚刚开始了解,在阅读了关于敏捷测试的一些文章后,关于敏捷团队构成的几个概念,小编觉得很有意义,整理后分享一下,也欢迎各位大神留言讨论~
【关于团队构成】测试人员应该与程序员一起工作,而不是独立的质量保证团队
一般传统的项目中,测试团队和开发团队是分离的两个团队,虽然职责会更清晰,但这也可能导致团队间的摩擦、竞争和敌对的态度,比如:
-
程序员和测试人员没有共同的目标:项目经理和开发组为进度负责,测试为质量负责,当两者发生矛盾时,可能站在各自的立场上,从而导致沟通不畅。
-
沟通成本的增加。比如:重复的会议
所以,敏捷团队结构中,建议把测试人员整合到敏捷项目中,使测试人员与开发人员一起工作。这样的优势在于:
-
整合后的项目团队拥有共同的目标:只有一个预算和一个进度安排。即:如果没有完成所有的功能,则不会减少“测试”时间;如果没有时间测试新的功能特性,可能不会开发这个功能
-
程序员和测试人员的结对能促进关于产品质量的交流。比如:
① 测试人员与开发人员坐在一起重现问题比他们尝试在缺陷报告中记录步 骤更容易和快速
② 测试人员与开发人员更多的交流,会更方便测试人员了解实现逻辑、发 现质量问题
-
测试任务和其他任务一样得到重视,确保测试任务在每个迭代及发布的末期完成
【关于人员分布】敏捷团队人员应分布在开放的环境中,方便交流沟通
在敏捷价值和原则中,当团队成员可以随时接触到所有其他团队成员、易于获得所有项目进度图标、在鼓励交流的环境中时,团队可以更好的工作,所以应该提供促进交流的机会,比如:
-
提供一个所有团队成员坐在一起的空间
-
提供方便团队交流的工具或方式。例如:电话会议、视频会议、每日站立会议等
【关于人力资源】与其关注测试人员/开发人员的比例,团队更应该估计需要的测试技能并找到合适的资源
如上图所示,敏捷项目是整体团队运作的方式,可能会让团队中的专业人员突破他们的技术领域,投入到其他的活动中。所以负责测试的团队可以根据项目状态持续的估计需要拥有的测试技能、测试人数。