“ The best architectures, requirements, and designs emerge from self-organising teams”
引言是敏捷宣言中的12原则之一,说明了敏捷自组织团队的重要性。
01
—
自组织的前提
团队的自组织,是有前提的。自组织不代表团队可以随心所欲的做任何事,不用考虑任何的后果和受到任何约束。所以自组织团队的一个前提是:
团队目标与公司目标对齐。
在最早引入scrum这个词的文章《New New Product Development Game》里,作者Hirotaka Takeuchi 和Ikujiro Nonaka这么写道
Although project teams are largely on their own,they are not uncontrolled. Management establishes enough checkpoints to prevent instability, ambiguity, and tension from turning into chaos. At the same time, management avoids the kind of rigid control that impairs creativity and spontaneity.
这句话说明了管理在敏捷团队中的作用,自组织不代表放弃控制,而是控制与自主的平衡。管理者需要做的是:帮助团队设立与公司目标对齐的目标,创造一个让团队可以自我调整,自我探索最佳目标实现方式的环境,在适当的时机提供指导和帮助。
02
—
影响团队自组织的几个因素
文化。公司的文化在创建自组织中起到一个不可忽视的重大影响。
开放 <--> 封闭
平等 <--> 官僚
容错 <--> 严厉惩错
鼓励持续学习 <--> 追求项目产出
团队协作 <--> 个人英雄主义
鼓励创新 <--> 拒绝新事物
鼓励百家争鸣 <--> 模式化运作
...
这些种种看不见的东西,就像是时时刻刻弥漫在空气中添加剂,公司里所有人,所有团队,都无时无刻收到这些添加剂的影响。没有合适的调料和养分,是孕育不出自组织的团队的。
组织结构。
组织结构直接决定了团队组成方式。很多大公司都是层级化的职能结构,这样的结构使得开发团队是跨职能组成的,每个人来自于不同的职能部门,汇报于不同的老板。这是常见的矩阵型组织。
矩阵型组织对于自组织团队的阻碍在于,每个团队成员要同时对两条线汇报和负责,这使得团队成员对项目团队的投入,使命,归属收到影响。尤其是在团队组成不稳定经常发生调动的情况下,使得自组织难上加难。
另外,组织的层级越多,决策路径越长。一个决定,假如需要多级老板的签名审批,团队等待的时间就会很长,效率低下。要提高效率,就要在层级中间增加决策的节点,给节点授权,并且加以监督。公司内的自组织依赖于合理的授权和完善的监督。项目团队的自组织,很大程度上取决于对项目团队的授权。假如在一个项目中,任何的决定都需要管理层的同意和批准,那么团队就无法自组织。
团队组织方式。
Richard hackman的60-30-10法则中指出
60% team effectiveness is related to team design
30% team effectiveness is related to team launch
这个法则说的是,团队的效率,绝大部分在团队组织方式和启动中就已经得到了决定。那到底怎么做,才能从这个方面来促成一个自组织团队。
我们可以先看一下CDE模型:Containers(容器),differences(差异),exchanges(交换)。
什么是CDE模型:
CDE model explains the 3 system conditions influence the speed, path and direction of self-organize system
CDE模型来自Glenda Eoyang的论文《Facilitating Organizational Change: Lessons from Complexity Science》,而后来Mike Cohn在《Succeeding with Agile: Software Development Using Scrum》用这个模型阐述了怎样影响和领导自组织团队。
CDE模型中,C是容器,就是把一个系统“结合”在一起的东西;D是差异,是系统中的变化,在系统中施加压力,产生能量和变