理解自组织:敏捷里的自组织团队都是骗人的

引子

当他们说,实施敏捷需要自组织团队的时候,我没有做声。

当他们说,敏捷里的自组织团队不需要管理者的时候,我也没有做声。

当他们说,敏捷里的自组织团队没有明确角色,每一个人都自我管理、具备跨职能技能的时候,我依然没做声。

现在,当我想说,敏捷里的自组织团队都是骗人的。这时,他们也不做声。

正文

在敏捷宣言的十二条原则中有这样一条:“最好的架构、需求和设计出自自组织团队。”在目前的敏捷大潮中,人们更关注的始终还是各种实践,这一条往往只有在敏捷实施失败的时候才被人提到:“自组织团队太难建设了,敏捷对人的要求太高了。”

在大多数人的理解中,敏捷里的自组织团队是这样的。这只团队是自治的,无需额外管理,他们自我管理,没有明显的角色分工,每个人都具备高超技能。简言之,这种自组织团队就是由一小撮特种兵组成的特种部队,他们攻城拔寨,无所不能。诸多敏捷大佬,敏捷相关文章都异口同声这样表述,成功案例的背后往往也都有这样的自组织团队存在,这似乎无需证明。

最初,我也是这么理解的。而且,我还有亲身经历。当时我们在实施Scrum,我是团队的一员,在前期我们经历了信任、沟通等方式的折磨,也遭遇了技术业务的挑战。当我们战胜了这所有困难后,这只团队确实是自我管理、相互信任尊重补位的自组织团队,就和大家理解的自组织团队特别相似。当然,我忽略了其中的小小差异,那就是这些人在开始的时候与其他人没有什么不同,在过程中也有各种纠结折磨,可最后我们变成了理想的状态。毕竟被称作精英的机会不多,谁会跳出来说自己不是精英呢。

然而,当我变换了角色成为了管理者的时候,我开始理解到人们的痛苦。这样的自组织对人要求实在是太高了,你几乎不可能在真实环境中找到具备这样价值观、技能的一群人。而且,当时我以管理者身份推动的各种敏捷实践(注意,我还没有推行全套的敏捷)也大多以失败告终。

回想起我之前的经历,我不禁对敏捷里的自组织团队产生了一丝怀疑。这里说的自组织团队是实施敏捷的结果还是实施敏捷的先决条件?在人员素质达不到的情况下,实施敏捷有可能成功吗?请教练是唯一有帮助的方法吗,教练是怎么带领团队走向成功的,教练走了怎么办?我没有答案。

无解的状况持续了相当长的时间。直到有一天,我一抖手查了一下维基,我被惊呆了,原来自组织和我们想象中的“自组织”完全不同,背后有其庞大的理论体系。于是我开始一边学习,一边在管理中尝试。在对不同规模的团队进行改变后,我可以确认的是,理想中的自组织团队其实是一个结果,而不是先决条件。你可以从几乎任何程度的团队开始,利用自组织团队理念、利用敏捷实践从头打造自组织团队,增加成功的几率。

敏捷里的自组织团队其实是敏捷的结果,不是先决条件,实施敏捷的过程也是打造自组织团队的过程。为此,我再次翻看了敏捷宣言。其英文原文是:“The best architectures, requirements, and designs emerge fromself-organizing teams.”建议的翻译是:“最好的架构、需求和设计从自组织的团队中涌现。”其中的涌现、自组织团队都有其特殊的意义。

后记

稍稍有点标题党,是希望能够把对自组织团队的认识介绍给更多人。愿意自学的同学可以自行查阅维基中的自组织理论和自组织,也推荐书籍《复杂》《失控》。有耐心的同学可以等待我慢慢写来,想快速了解可以找我面对面交流。

理解自组织:敏捷里的自组织团队都是骗人的,布布扣,bubuko.com

时间: 2024-08-02 17:27:30

理解自组织:敏捷里的自组织团队都是骗人的的相关文章

敏捷中的自组织团队

敏捷中的自组织团队,其“自组织”一词,可能不是太准确,不太符合关于“组织”一词的定义,因此有时也用“自指导团队”一词.敏捷中的自组织团队,肯定是由外部创建的,而非自发组织在一起的一个团队.它是一个由外部创建,然后给与授权,然后自行决定行动纲领的一个团队.这个团队接受外部给与的任务和约束条件,自行决定如何完成任务.在这个团队中,不存在外部指定的领导者,而是由团队成员自己决定,是“民主”,还是“集权”,由大家说了算.可能在不同的阶段,会有不同的“英雄”站出来,带领大家迎接各种挑战.也许正是没有指定的

我理解的敏捷价值观

2001年2月11日到13日,十七位软件开发领域的领军人物聚集在美国犹他州的滑雪胜地Snowbird雪场.经过两天的讨论,敏捷(Agile)这个词为全体聚会者所接受,用来概括一套全新的软件开发价值观.这套价值观,通过一份简明扼要的<敏捷宣言>,传递给世界,宣告了敏捷开发运动的开始.宣言内容如下: 我们通过身体力行和帮助他人来揭示更好的软件开发方式.经由这项工作,我们形成了如下的价值观: 个体和交互 胜过 过程和工具 可以工作的软件 胜过 完备的文档 客户合作 胜过 合同谈判 响应变化 胜过 遵

DevOps是敏捷在软件开发团队的另一应用

DevOps是敏捷在软件开发团队的另一应用.那么相比之下,哪个更胜一筹? 一边,有业界认可的scrum master,它的朋友极限编程者,以及由其衍生的 LeSS.SAFe.DAD等,是敏捷. 另一边,有精益文化机器,用代码持续交付其基础架构,它的名字左边是开发,右边是运维,合起来就是DevOps. 虽然我已尽我所能在普及这两个概念,但人们关于敏捷和DevOps的争论依然让它们听起来完全不同.更糟糕的是,尽管他们都已经有了各自的行业术语和口号,但两者的概念还是没办法准确定义.鉴于敏捷诞生早于De

面试题3:在一个长度为n的数组里的所有数字都在0到n-1的范围内。 数组中某些数字是重复的,但不知道有几个数字是重复的。也不知道每个数字重复几次。请找出数组中任意一个重复的数字。 例如,如果输入长度为7的数组{2,3,1,0,2,5,3},那么对应的输出是第一个重复的数字2。

package siweifasan_6_5; /** * @Description:在一个长度为n的数组里的所有数字都在0到n-1的范围内. * 数组中某些数字是重复的,但不知道有几个数字是重复的.也不知道每个数字重复几次. * 请找出数组中任意一个重复的数字. * 例如,如果输入长度为7的数组{2,3,1,0,2,5,3},那么对应的输出是第一个重复的数字2. * @Parameters: // Parameters: // numbers: an array of integers //

剑指offer(Java版)第一题:在一个长度为n的数组里的所有数字都在0到n-1的范围内。 数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。 *请找出数组中任意一个重复的数字。 *例如,如果输入长度为7的数组{2, 3, 1, 0, 2, 5, 3},那么对应的输出是重复的数字2或者3。

/*在一个长度为n的数组里的所有数字都在0到n-1的范围内. * 数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次. * 请找出数组中任意一个重复的数字. * 例如,如果输入长度为7的数组{2, 3, 1, 0, 2, 5, 3},那么对应的输出是重复的数字2或者3.*/ import java.util.*; public class Class1 { static class findRepeatedNumber{ public int findRepeatedN

数论之旅4---欧拉函数的证明及代码实现(我会证明都是骗人的╮( ̄▽ ̄)╭)

欧拉函数,用φ(n)表示 欧拉函数是求小于n的数中与n互质的数的数目 辣么,怎么求哩?~(-o ̄▽ ̄)-o 可以先在1到n-1中找到与n不互质的数,然后把他们减掉 比如φ(12) 把12质因数分解,12=2*2*3,其实就是得到了2和3两个质因数 然后把2的倍数和3的倍数都删掉 2的倍数:2,4,6,8,10,12 3的倍数:3,6,9,12 本来想直接用12 - 12/2 - 12/3 但是6和12重复减了 所以还要把即是2的倍数又是3的倍数的数加回来 (>﹏<) 所以这样写12 - 12/

深入理解javascript原型和闭包(1)--一切都是对象

原文来自http://www.cnblogs.com/wangfupeng1988/p/3977987.html 这是我非常感兴趣的东西,原型和闭包,当我看到标题后,我就迫不及待的点开了.今天我自己学习一下,顺便借花献佛,不理解的也可以再看一看. "一切都是对象"这句话的终点在于如何去理解"对象"这个概念.所谓Object,其实是所有对象的祖宗,这句话不难理解,而值的类型不是对象. 首先咱们还是看一看JavaScript中一个常用的函数 - typeof(). ty

谈谈我理解的敏捷开发

"敏捷开发" 几乎成了互联网家户喻晓的一个热门话题.每个人都在聊敏捷.Scrum.XP. 我对"敏捷"的认识还算是在一个正在探索的阶段.网上有非常多的资料,五花八门,对于初学者来说无形之中会设了很多的坎.刚好借此机会写个文章帮助自己进行知识的梳理和总结,另外一方面也希望对刚接触的人有所帮助. "敏捷开发" 知多少? 敏捷开发(Agile Development)是一种以人为核心.迭代.循序渐进的开发方式. 它并不是一门技术,而是一种开发方式,也就

理解Python语言里的异常(Exception)

Exception is as a sort of structured "super go to".异常是一种结构化的"超级goto". 作为一个数十年如一日地钟爱C语言的程序员(因为C程序员需要记忆的关键字很少,而且可以很惬意地玩内存),对于高级语言如Python里的异常(Exception)一直不甚理解,尤其是其实现机理.但读了<Learning Python>一书中上面这句话(尤其是goto关键字)后,忽然豁然开朗. 如果用C语言编写一个鲁棒性良