认可(recognition) - 在敏捷软件开发中的作用

Page content

在一次和滕振宇、Michael James的cotrain过程中,讲到开发团队的职责时,碰到一个很有趣的讨论结果。当时讨论的问题是:

日常工作中,什么时候你的心情会很好?

最后有3组同学都提到了“认可(recognition)”这个词。但更有趣的是,虽然都说认可,不过认可的程度是不一样的。下面我就认可在敏捷软件开发中的作用展开谈一下。

  • 自我认可
  • 团队的认可
  • 管理层的认可
  • 客户的认可
1. 自我认可。

你有没有做完一件事情后发现,哇,时间过的这么快!好有成就感啊,又搞定了一个问题!一般这样的情景发生在什么样的事情上呢,或者什么时间呢?这个现象叫做Flow(心流)。

还记得在Dan Pink的《驱动力》(参见我的读书笔记)一书中,提到驱动力3.0的概念(1.0和2.0大家去买一本书自行脑补哈)。在驱动力3.0中(即内在驱动),Dan提到3个关键因素:自主(autonomy),专精(mastery)和目的(purpose)。要达到Flow,上述的3个因素是很关键的。首先是自主,人们可以决定自己做什么,怎么做,什么时候做,在哪儿做。其次是专精,每个人都有一颗专精的心,什么事情都想精益求精,做的更好。刻意的练习,是一条通往专精的康庄大道。最后是目的,不论做什么事情要有明确的目的,可以参考SMART原则。

2. 团队的认可

在Scrum中提倡的是团队绩效,团队的结果。但不代表Scrum就不鼓励个人,最常用的方法是激励卡或感谢卡(为什么采用这种方式呢?给大家留个问题)。Scrum中团队被认可是很关键的,怎么实现呢?进展(progress)很关键,也就是说通过Sprint review来评审潜在可交付的产品增量。每个Sprint都会产出一些结果,因此管理层或客户能感受到实际的内容,也会基于这些内容提供一些反馈。

3. 管理层的认可

管理层的认可,这个问题稍微复杂一点。作为管理层,常常关注在KPI,度量结果。度量本身是一个非常复杂且庞大的问题。根据度量的目的和意义,可以把度量划分为两类:A.如果度量对于团队和个人具有正向激励作用,这就是一个好的度量。 B.如果度量对于团队或个人具有负面的作用,这就不是一个好的度量。所以为了得到管理层的认可,ScrumMaster和团队要一起思考我们需要度量什么指标,怎么度量以满足管理层的需要。

4. 客户的认可

软件开发的最终目的是什么?我认为是让客户高兴,即得到客户的认可。想要得到客户的认可,就需要共情(Empathy),可以换位思考,想其所想,真正解决客户的问题。这里可以参考设计思维(Design Thinking),就不展开论述了。

总结

Scrum中,认可是一个奇妙的事情。人的内心总是渴望认可,不论个体或团队。认可同时也是内在驱动的动力之一。内在驱动还有很多其他类型的动力,详情可以参见《管理3.0》(如好奇心,自主,目标,荣誉,专精,秩序,影响力,人脉,职位等等)