关于研发效能提升的思考

  • 研发效能提升是最近比较热门的一个话题,本人根据这几年的工作心得,做了一些思考总结,由于个人深度有限,暂且抛转引入。
  • 三要素

  • 任何生产力的提升都离不开这三个因素:人、流程和工具,少了其中任何一个因素都无法实现。
  • 人,即思想,也就是古人说的“道”,道不同不相为谋,是制高点,也是高层建筑的基石。
  • 流程,即方法,也是古人说的“法”。研发效能的提升,也就是要提高投入产出比,既要增加产出,也要减少消耗。
  • 工具,即道具、器械,对应“器”。选对工具很重要,趁手的工具往往能起到事半功倍的效果。

  • 详细解释见下图:

 

  • 第一个要素:人

  • 思想的深度决定了生产力的高度。按照敏捷宣言,个体和交互胜过流程和工具,人的因素是最重要的,但人的思想在短期内又无法提升,需要长期不断投入。
  • 我们可以从两个方面着手,逐渐改进:
    • 工程素养
    • 做事方法
  • 工程素养

 

  • 做事方法
  • 研发同学要形成PDCA的思维,任何事情都要有始有终,形成闭环
  • 乔梁在《持续交付2.0》中提出的持续交付双环模型,我觉得是PDCA环的发展,可以应用到很多领域,比如流程改进

 

  • 持续交付双环在流程改进中的应用

 

  • 第二个要素:流程

  • 流程的引入并不是为了给团队增加束缚,而是提高研发效能,即必须起到减少浪费,促进价值产生的作用
  • 减少浪费

按照精益的思想,软件行业常见的浪费有以下几种:

浪费种类

浪费举例

减少浪费的措施

部分完成的功能

中途取消的需求、设计、BUG;

代码未及时合入导致引发后续更多同步工作量。

聚焦完成

拉式生产

时间盒

未应用功能

开发完成但没有被客户应用的功能。

快速反馈

故事地图

再次学习/重复投入

人员频繁流动导致经验不能积累,反复重新学习;

在多个环节移交时,接收信息者需要重新学习;

相同的功能多个项目同时在开发,重复投入;

拥有某领域的专家,但却没参与,由团队重新摸索。

自组织团队

结果为导向

传递

知识信息的传递总是伴随信息丢失,比如需求传递。

Scrum五会

任务切换

员工参与多个项目或杂事繁多,导致效率下降。

小迭代

延迟/等待

构建失败;测试阻塞;关联项目延迟。

看板方法

缺陷

 

解决缺陷活动本身就是浪费,而且缺陷越遗留到后端浪费越大。

TDD

自动化测试

  • 促进价值产生

流程必须促进价值的产生,即价值产生的催化剂

价值

详细解说

具体实践

明确分工

流程应该明确各职责的权利和责任,只有明确分工,才能防止扯皮

我们很难做到每个技能都掌握,只能充分发挥每个人的长处,实现整体产出最优化

专业的人做专业的事

RACI矩阵

响应变化

流程必须有利于快速响应变化,及时作出应对

流程本身也要响应变化,而不是一成不变

快速试错

提高协同效率

通过统一的标准,大家可以在同一个频度沟通

新成员通过流程的指引,可以快速进入状态

Scrum模式

暴露问题

流程必须能促进问题的暴露,而不是掩盖问题

当问题暴露出来时,可以通过解决机制快速解决

看板方法的应用

客户价值为导向

流程最终的目的也是要为客服服务,以客户价值为导向设计流程

用户故事

影响地图

学习型组织养成

促进学习型组织的养成,提高以上能力,并及时总结,形成良性循环

实践总结

实践分享

  • 流程改进
  • 流程改进一定要避免买椟还珠的行为,改进的目的是减少浪费,促进价值产生,而不是为了符合流程而走流程。

  • 如果流程已经阻碍到价值的交付,那么就要考虑优化流程。

  • 第三个要素:工具

  • 工具是三个因素中最容易实现的,可以购买现成的,也可以企业自己开发,比如业界常用的有Jira、TFS、禅道、Tembition等,可以根据自身需求导入。
  • 工具毕竟只是流程的载体,不能把心思都花在工具上,而忽略了人和流程,那就舍本逐末了。
  • 工具和人
  • 工具是人工作的道具,既要辅助人实现工作目标,也要把工作过程透明出来,方便干系人了解工作进展
  • 所以工具的选型需要考虑几个因素:
    • 组织复杂度
    • 工具维护成本
    • 是否能满足流程需要
    • 是否方便获取状态报告
  • 工具和流程
  • 工具是流程的载体,流程只有整合到工具中才能更高效率的被执行,尤其是流转的自动化
  • 正所谓术以载道,好的工具必须是符合企业文化,并能促进流程的自我改良的
  • 工具和度量
  • 度量是研发活动的镜子,只有完善的度量体系,才能清晰知道哪里存在弱项,哪里是我们改进的重点
  • 缺少度量,研发过程必然不可见,更谈不上如何提升研发效能

  • 而度量必须通过工具实现,否则度量的效率就会很低下,如果度量本身要花费大量工作,那就得不偿失
  • 度量原则
  • 度你所做,为优而量,这是度量的根本目标
  • 简单,减少度量工作量
  • 客观,不易受人为干涉
  • 尽量不与考核挂钩
  • 较完整的度量框架
  • 根据以往经验,及目前公司正在做的度量,梳理了一套较完整的端到端度量体系,可以参考

  • 如何考核
  • 既然说度量不与考核挂钩,那该如何采集考核数据?
  • 建议从几个客观指标着手(有部分借用阿里)

  • 团队互评
  • 也可以采用团队匿名互评的方法
  • 回顾会上,每个人给包括自己在内的所有人进行评价,包括:综合评分、做得好的、待改进点
  • 某项目团队互评结果

  • 当然,任何措施若涉及到个人利益,必然会有变味的行为(坏味道),即使现在很火的OKR一样有走歪的,只能看这个措施是否能引导团队往正确的方向走,是否利大于弊。

 

©️2020 CSDN 皮肤主题: 技术黑板 设计师:CSDN官方博客 返回首页