随着敏捷开发的普及,各类敏捷管理⽅法已被业界充分实践。但是在数百人或千人级别的研发团队进行协作时,简单的复制小团队的敏捷方法却会遇到诸多问题。SAFe 作为⽀持⼤型研发团队敏捷落地的一种方式,重新定义了可扩展的敏捷框架模型,同时也降低⼤型团队管理的复杂性。给大家分享在 ONES 发展过程中,我们的产品研发团队对于敏捷和 SAFe 的应用。

当我们是几个人的小团队时,用简单的物理看板就解决了大部分的管理协作问题,然后团队人数继续增长,我们引入了 Scrum,一直保持着多个 Scrum Team + 矩阵式架构的模式。

但是团队规模还在继续增长,简单复制 Scrum Team 的模式也不可避免的出现了一些弊端:

  • 部门内,组员不清楚整体的大目标,容易出现局部改进;而从决策者角度,需要保证业务价值最大
  • 部门间,因角度不同,各个部门对同一问题很容易出现分歧
  • 团队规模增长,不能再简单地拍脑袋做产品改进,迫切需要数据支撑,但是缺少度量的手段和方法,导致改进没有方向

基于以上这些问题,我们团队梳理出了大型团队的管理需求:

  • 各个敏捷小组需要定期的沟通整体业务目标
  • 业务、产品、技术等各类任务需要统一制定优先级标准,业务效率优先,兼顾职能效率
  • 有效的量化方法

为了满足这些需求,我们团队做了五件事:

引入 PI(项目群增量)会议和 PI 回顾会议

所谓的 PI 会议,其实就是包括4个角色的人参与的,每个月或者每个季度召开的会议。开这个会的主要目的有两个,一是确定出统一的优先级,二是解决部门间对齐和沟通问题。

参加会议的4个角色包括:

  • BO:最终负责人,可以简单理解为 PO 的直接上级,他不是管一个两个迭代,而是在多个迭代一起去做的时候,关注业务目标问题
  • 所有小组的 PO(产品负责人)
  • SA 小组,也就是架构小组,他们主要是负责表达技术的改进需求
  • 利益相关者,主要是指外部的业务部门或是客户

为什么是这4个角色呢?一是因为这4个角色加起来可以涵盖我们平时做规划时的所有角度,二来也可以解决部门间的沟通问题。

在确定优先级时,我们采用的是 SAFe 框架里的 WSFJ(加权最短作业优先)

WSFJ 的衡量方法,分子是产出,分母是成本,但是官方维度和国内的国情不太一样,我们在采用的时候,从我们的角度稍微地改进了一下。

对于产出部分,我们定了两个指标,一个是延迟成本,另一个是产品/技术价值/故事点。

举个栗子解释一下什么是延迟成本,假设一个需求,现在把它做了,我们服务到的客户可以为我们赚50万,如果我下个月再做,有一部分客户会流失,有一部分客户可以等,那下个月再做出来的收益是20万,这中间的差距30万就是延迟成本。

在做 WSFJ 还有几点需要注意的事项:

  • 在做估算的时候应该要根据实际情况调整加权计算内容
  • 工作项的规模相差的不应该太大,不能一个需求是一两周可以做完的,而另一个需求是三个月才能做完
  • 对于一些无法直接量化的内容,可以采用「敏捷估算」的方法确定数值

「敏捷估算」是基于Delphi估算的一种估算方法,可以简单地理解为,通过一次又一次的沟通,最后达到一个相对大家统一认可的结果。

引入 PI(项目群增量)回顾会议,获取反馈

在我们引入一个计划会议的同时还引入了一个回顾会议,目的是为了总结计划的执行情况。PI 回顾会议类似于敏捷中的迭代回顾,需要演示已完成的功能、收集反馈并将问题加入到 Backlog 中在下一次 PI 会议讨论。

加入新角色,调整组织架构

刚开始提到过,我们团队之前是矩阵式的一个架构,可以从图中看到,有一组、二组、三组,每一个小组都是一个五脏俱全的迭代小组,也会有一些职能组。

新的组织架构里,出现了新的4个角色。业务负责人(BO)是前面提到的,管理着所有的 PO;流程管理(RTE),负责搭起所有的流程;产品管理(PMgmt)类似于产品总监,负责所有产品的规划;系统架构(SA)类似于技术总监,负责的是性能上的、大的结构上面的改进。这种架构的改变,实质上是由矩阵式的结构变成了树状的发散结构。

度量,需要使用工具结构化数据

在度量方法上,我们采用工具结构化地存储工作数据,然后像运营一样去观察,然后想改进办法去执行,执行完再观察,形成一个闭环。

经过我们的实践总结,ONES 主要关注的度量维度是:端到端数据,比如客户满意度(业务部门满意度)、特性前置时间、软件发布质量。

DevOps 自动化

DevOps的概念非常大,我们目前着重的是自动化建设。我们有两个原则,第一是能够尽早发现问题,这也是我们在选择很多东西时所秉承的原则,它也能降低复杂度;第二是流程固化到工具里,让工具、软件建构工作复杂度。

关于自动化测试,一个非常重要的,也是 ONES 受益非常大的一个实践——质量内建。质量内建要求我们做好软件开发每个环节,尽早预防,以降低缺陷出现后的修复成本,要减少对创可贴式的补丁(hotfix)的依赖。

ONES 内部的质量内建坚持两个准则,一是自动化测试,从接口测试入手,二是坚持自动化用例执行率100%才算完成。

注:本文中 WSFJ 属性估算等功能截图来自 ONES-企业级研发管理工具

大型研发团队敏捷实践落地 - 基于SAFe的大规模敏捷协作相关推荐

  1. 中小型研发团队架构实践:电商如何做企业总体架构?

    http://www.infoq.com/cn/articles/architecture-practice-09-enterprise-architecture?utm_source=infoq&a ...

  2. 中小型研发团队架构实践三要点--转

    来自微信公众号聊聊架构 作者|张辉清 编辑|雨多田光 如果你正好处在中小型研发团队-- 中小型研发团队很多,而社区在中小型研发团队架构实践方面的探讨却很少.中小型研发团队特别是 50 至 200 人的 ...

  3. 中小型研发团队架构实践三要点(转自原携程架构师张辉清)

    如果你正好处在中小型研发团队-- 中小型研发团队很多,而社区在中小型研发团队架构实践方面的探讨却很少.中小型研发团队特别是 50 至 200 人的研发团队,在早期的业务探索阶段,更多关注业务逻辑,快速 ...

  4. 中小型研发团队架构实践三要点

    如果你正好处在中小型研发团队-- 中小型研发团队很多,而社区在中小型研发团队架构实践方面的探讨却很少.中小型研发团队特别是 50 至 200 人的研发团队,在早期的业务探索阶段,更多关注业务逻辑,快速 ...

  5. .net 中小型研发团队架构实践三要点

    中小型研发团队很多,而社区在中小型研发团队架构实践方面的探讨却很少.中小型研发团队特别是 50 至 200 人的研发团队,在早期的业务探索阶段,更多关注业务逻辑,快速迭代以验证商业模式,很少去关注技术 ...

  6. 中小研发团队架构实践之开篇

    中小型研发团队很多,而社区在中小型研发团队架构实践方面的探讨却很少.中小型研发团队特别是50至200人的研发团队,在早期的业务探索阶段,更多关注业务逻辑,快速迭代以验证商业模式,很少去关注技术架构.这 ...

  7. 中小型研发团队架构实践:微服务架构

    http://www.infoq.com/cn/articles/architecture-practice-06-microservice-architect 一.MSA 简介 1.1.MSA 是什 ...

  8. 中小型研发团队架构实践:高效率、低风险,一键发布并测试的持续集成工具Jenkins...

    一.Jenkins 简介 \\ 当每月发布次数变得越来越多时,如超过 200 次,发布工作人员的工作量会翻倍,此时由人工发布操作失误引起的风险会变得越来越大.为了提高项目的发布效率,也为了降低由人工操 ...

  9. 敏捷开发“松结对编程”实践之六:大型团队篇|后记(大型研发团队,学习型团队,139团队,师徒制度,人员招聘,职业生涯规划)...

    本文是"松结对编程"系列的第六篇.(之一,之二,之三,之四,之五,之六,之七,之八) 松结对编程是小型团队的实践,大约运行在1个师傅+1-3个徒弟的尺度上,当面临更大尺度的时候,就 ...

最新文章

  1. 自动驾驶中多模态三维目标检测研究综述
  2. 静态方法是一种特殊的成员方法,它不属于类的某一个具体的实例。
  3. What is the purpose for IT Pro in Windows 10 Creators Update
  4. c语言课设报告河海大学,2020河海大学计算机学硕838经验贴
  5. CoSENT:特征式匹配与交互式匹配有多大差距?
  6. linux libpcap 效率,Linux ubuntu PF_RING+libpcap 极速捕获千兆网数据包,不丢包
  7. C# 特性(Attribute)入门教程
  8. calendar前推n天_Shell获取ES3天的索引列表进行迁移操作
  9. HTML textarea 标签
  10. asp.net页面的生存周期
  11. Mysql DBA 高级运维学习之路-DML语句之insert知识讲解
  12. [POJ3177]Redundant Paths
  13. 计算机cpu的型号与参数,怎么查看CPU型号和CPU核数
  14. 小程序云开发前端显示云存储的图片
  15. 头牌知产介绍速冻水饺商标属于哪一类
  16. Java简繁体转换分享
  17. 手把手让你实现开源企业级web高并发解决方案
  18. 算法训练 Cowboys(DP)
  19. 10个帮程序员减压放松的网站,爽!
  20. Nginx采用yum安装-Carr

热门文章

  1. 4k分辨率是多少(真4k与假4k区别)
  2. 王者荣耀主播(孤王)过度劳累猝死 曾被誉为国服第一辅助
  3. 图形使用计算机绘制的画面,本章练习优质课教学设计
  4. flutter和Android混编下出现“No implementation found for method xxxx on channel”错误
  5. Prometheus(十)Granfana 通过文件配置实现自动化
  6. Latex 的中文操作
  7. Faster-RCN训练和入门使用--Pytorch版本
  8. 数据类型与堆栈内存练习数据类型检测
  9. 数据类型、数组越界和宏定义引发的悲剧
  10. 数据库新技术前沿总结