如何量化技术治理、代码质量的效果?

首先得明确做公共的工作是一定要量化的,只有品味甚至情怀是走不远的。技术的沉淀往往是一步步来的,但是业务的目标却通常很短而且易变,比如先做DAC上升,后面又强调马上GMV上升。DORA (Developer Operations Responsibility Agreement)定义的四个关键指标:

  • 变更前置时间
  • 部署频率
  • 平均恢复时间 (MTTR)
  • 变更失败率

下面是建议的一些基本衡量原则:

  • 衡量团队效率,而不是个人绩效。
  • 衡量成效而不是产出。
  • 查看随时间推移的趋势,而不是比较不同团队的绝对值。
  • 用看板的数据开启对话,而不是就此结束。
  • 衡量有用的东西,而不是容易衡量的东西。
    • 工单数
    • 测试bug数
    • 测试bug 性质

Scrum

在我的理解里,scrum 希望达到的是小团队战斗力最强的模式,那么其实一个有价值的项目还是应该拆成各个任务,然后大家都参与。这样做有助于知识在团队中间的传递。 那最后绩效怎么评判呢? 或许代码是一个判断标准,但也会出现趋同性。代码或者技术的判断本身不够准确,有时也缺乏说服力,比如其实架构设计,技术调研占了很大比重。阿里没有推广scrum,可能和361制度以及对应相差巨大的待遇有关。 我看了一些讲scrum评判绩效的文章。总结来说, 理想的scrum团队是自组织,自驱动,团队,理论上没有上下级之分,也没有绩效评估。在实际践行scrum中,相比考核每个人被分配任务的交付绩效 转变为考核每个成员对自己承诺的已经有共识的工作履约的符合性。