软件开发者。并给大家介绍了因此会给组织和个人带来的价值和好处。但是这里还有一个关键问题还需要解决,否则把软件质量责任人转换为软件开发者的这个改革就会变的无法实施。
工作效率,辅助他保障质量,而不是让他一个人孤军奋战。当然如果你的团队都是精英开发者,个人战斗力极强,孤军奋战也没有问题,那么就无需为他们提供开发效率提升和质量保障方面的支撑。
那么软件开发者增加了质量保障的职责后,需要增加哪些对应的资源以支撑他们可以在质量保障与功能实现的职责间获得平衡。
测试方法
2: 减少开发者自验证测试的时间成本和复杂度
3: 提供帮助开发者提高开发效率的开发工具和开发框架
4: 让开发者的编译速度更快减少编译等待时间
5: 通过有效的方法提高开发人员评审需求和设计的效率
6: 减少开发人员分析定位bug的时间
当你的开发人员能得到以上部分资源的支持时,他们才能挤出时间来思考如何能在设计和开发阶段保障自己输出的质量。
谷歌,他们的组织结构中有一个叫EP(Engine Productive)的团队,这个团队与广告技术团队、搜索算法团队、架构设计团队、性能团队的定位一样,是谷歌的长线建设的领域技术团队。该团队的成员有:
测试开发工程师、工具开发工程师、测试工程师组成。测试工程师工作的目标变为了:帮助产品快速地达到质量目标,而不是作为质量保障的主体。
测试技术支持和测试资源外,还负责帮助开发人员提升工作效率,优化一切可以提升工作效率的工作环节。例如:开发人员更有效的测试,更合理的测试投入,减少与业务实现无关的工作耗时,帮他们更好地做好开发阶段的质量保障工作。在谷歌有些团队能达到10:1的开发测试人员比,除了这位测试人员能力超群外,开发人员的专业能力和开发人员的质量保障目标都是关键的决定因素。如果只有一位超级测试人员,没有开发人员作为质量责任主体和专业技能优秀的开发人员,那么10:1的配置下这位超级测试人员则会被各种软件问题铺天盖地淹没掉。
测试团队只关注质量。于是测试团队规模越来越大,产品的进度总是与质量目标矛盾重重。如果应用新模式,则赋予开发团队更大的权利和责任,进度和质量都是由开发团队说了算,当开发团队因缺乏资源完成进度和质量目标时,开发团队可以通过EP团队的临时支援协助达成目标。
开发团队与EP团队之间的合作模式,还应该是开发团队有需求时拉上EP团队来共同工作。而不应该是EP团队去推动开发团队,开发团队被动使用EP团队资源来共同工作。如果开发团队被动的被EP团队推动去提升工作效率和工作质量,则很可能会同时伤害到开发团队和EP团队的士气,EP团队去推动开发团队会受到很多阻力,感觉不到自我存在的价值,士气受影响。开发团队则被动的被服务,觉得自己的工作节奏受到了影响,影响自己的工作进度,心里也是不舒服的,影响士气。