跳到主要内容

保存的文章

应用Brooks的法律

Dave Nicolette |领导敏捷
Dave Nicolette 高级顾问
阅读: 应用Brooks的法律

在一个亚博体育输光专业笔记后2014年,敏捷首席顾问Andrew Fuqua在约束理论的背景下考虑了布鲁克斯定律。布鲁克斯定律是一句格言向一个迟到的软件项目添加人力会使它变得更晚.Fuqua注意到,只有在许多工人之间划分任务时,布鲁克斯观察到的人“和几个月就是可互换的商品他们之间没有沟通.”

有效的沟通是任何项目的关键。当使用协作方法时,就像敏捷原则所指导的方法一样,工人之间的沟通水平高于传统方法。

使用传统方法的团队通常有一个层次结构。沟通线往往是垂直的,在经理或团队领导和团队成员之间。水平沟通发生在单个团队成员之间,当他们需要相互寻求帮助时,但总体上团队依赖于间接沟通(如文档)的大多数日常沟通。

使用协作方法的团队通常具有对等结构。文档用于捕获历史信息和静态数据。开发产品所需的动态沟通主要是直接的,所有团队成员全天都在与其他团队成员互动。

沟通渠道和团队规模

在过去的几年里,人们对团队效率这方面给予了很多关注。用谷歌搜索这个短语,沟通线和团队规模产生约4.12亿个结果。以下是一幅插图。灯塔):

布鲁克法沟通线

大型企业的大多数团队在10到20名成员之间。即使在该规模的低端,一支球队也有这么多的沟通方式,进展必然会很慢。

怪诞行为学管理

虽然布鲁克斯写道神话人为月份几十年前,经理已经了解了这一原则多年来,当一支球队落后时,违约响应是增加更多的人。为什么?

丹·艾瑞里在他的畅销书中解释了为什么人们会做出看似不理性的决定,可预测的非理性:塑造我们决定的隐藏力量.这种现象在IT领域是司空见惯的。老话说得好:“没有人会因为选择IBM而被解雇。”

经理将不会被解雇,以便将人员添加到晚期项目中。它给出了“做某事”的外观。如果项目崩溃和燃烧,经理可以安全地说明他/她确实“一切可能”拯救它,即使是转移资金和其他举措的人。

应用Brooks的法律

回到08年6月,前后一个季度,我是一个软件开发项目的团队领导。我们是一个8人的XP团队。我们进度落后了。

我的经理友好地向我解释了不能按时完成任务的后果。他问我还需要多少人。

我建议从小组里撤掉两个人。他很惊讶。他问是不是有些团队成员没有尽到自己的责任。这就是我们落后的原因吗?

我解释说,团队中的每个人都做得很好。问题不是任何人都没有拉力。问题是团队的通信开销。

如图所示,一个8人的团队有28条沟通线路。一个六人的团队有15条沟通线路。减少开销。

我的经理持怀疑态度。他告诉我如果这个想法没有工作,那么这就是我。他的警告并不像他的意图那样可怕,因为我理解布鲁克斯的法律和(显然)他没有。我知道他熟悉这本书,但显然他不相信。

有了一个6人而不是8人的团队,我们加快了交付的步伐,没有任何压力,并且我们在两个迭代中完成了backlog。

企业疯狂

如果一个经理是可以预见的不理性的,那么当你有成百上千的经理、成千上万的项目和成千上万的技术工人时,会发生什么呢?可以预见的是:彻底的疯狂。

我职业生涯到目前为止看到的每一个大型IT组织都有大型项目团队,几乎所有时间从事一个分类的沟通开销。这毫不夸张地说,这样的团队需要几个时间完成几分钟的实际工作。

对于进展缓慢的典型反应是向团队中添加越来越多的人员。就在最近,一个客户的团队已经太大了,无法完成很多工作,却落后于计划。管理层紧急请求批准让承包商参与进来以加快进度。现在,团队做实际工作的时间更少了,因为他们必须帮助新同事学习系统和程序。

这两支队伍不可能按时完成任务。但不用担心:经理们不会受到惩罚。毕竟,他们已经尽了“一切可能”来赶上进度。

结论

布鲁克斯定律是真实的。保持不可预测的理性:使用它。

下一个;高级软件开发人员作为导师

评论(1)

  1. 拉里Maccherone
    回复

    伟大的主题和帖子!两个想法:

    1.当我谈论这个主题时,我倾向于使用“协调成本”短语。多年来,软件工程前进的每一步都处于巨大减少的协调成本的结果。PCS允许开发人员在不安排大型机的情况下在自己身上工作。源代码管理使更多人员能够在同一代码库上工作。Git流量,然后GitHub流(非常不同)通过实现独立的进化进一步降低了成本。自动化测试可以被认为是协调减速器的成本。devops是这条路径的下一步。因此,我的观点是减少团队规模只是降低协调成本的一种方法。如果您可以在图中的各个线路的成本如此之低,那么它就会少有多少。是的,一个10人团队有14倍的3人团队的行。 But 14 times close to nothing is still not much.

    2.当你降低团队的平均规模时,你就增加了团队的数量。在每一行中,团队间的协调可能比团队内部的协调要昂贵得多。在我的研究中,预测工作是否会比预期花费更长时间的首要因素是跨团队协作的数量。影响这一点的因素有很多,但建筑和时区跨度是两个巨大的因素。降低团队规模的决定不是凭空做出的。您必须在团队内部和团队内部的协调成本之间进行权衡。

    回复

留下你的评论

您的电子邮件地址不会被公开。必需的地方已做标记