其他开发者的收益递减


10

是否有一个术语来描述在软件项目中增加更多开发人员将带来越来越少的回报的观点?

我认识到,从较高的层次看,要使项目达到生产能力的开发人员(项目的前/后状态,添加的开发人员的质量)要复杂得多,但是我想提出一种通过重复将其与非技术管理联系起来的方法。我基本上是在寻找一个能唤起诸如“终极速度”之类的强烈心理意象的术语,布鲁克定律除外。


2
我认为这一点称为“现在”。但是,认真地讲,您应该给他们展示一张图表,绘制添加一个/五个/十个新开发人员的时刻及其对项目时间表的影响(考虑由于现有成员的指导,新成员的错误和返工等而导致的生产力损失... )
奥德

14
“九个妇女在一个月内生下一个孩子”是一个常见的比喻,用于向管理人员解释资源与时间表的问题。
dasblinkenlight 2012年

2
@dasblinkenlight-“但是,如果让妇女轮班工作怎么办?” (典型的非技术管理回应)。
jfrankcarr 2012年

6
but senior management tends to view it as aggressively negative在您的情况下,高层管理人员的议程可能有两个方面:以任何可能的方式减少项目完成数据,并控制开发人员。任何与他们的先入为主的观点背道而驰的观点都将被视为否定,并取决于您尝试“说服”他们的积极程度,否则只会将您标记为“不是团队合作者”。管理层为无法控制的人说话。
maple_shaft

1
您是否在担心-进度,风险或美元,或这些的组合。找出他们最关心的问题,并解决为什么更多的开发人员无法解决该问题的原因(要认真对待,请提出替代解决方案)。通常,它比纯金钱或时间表更微妙。
mattnz

Answers:


7

您的问题包括答案:收益递减点。在这一点上,添加更多的资源要比这些资源的生产效果花费更多。这是一个基本的经济概念,因此希望您的管理层能内心地知道这一点。


3
您所描述的是经济学家所说的收益点-增加资源会使您的处境更糟。收益递减的点在于,增加资源仍然可以增加产量,但增加的数量较少。因此,添加资源会使您的生活更好一些,但比您预期的要少。
MarkJ 2012年

@MarkJ好点。我想我不一定要按规则寻找递减收益或负收益。我只是在寻找首席开发人员/项目经理拒绝更多资源的观点。不幸的是,这并不总是被割断和干燥。
smp7d 2012年

6

在一个较晚的软件项目中增加人力会使工作变得更晚。一个工作月的概念是工作单位与工作人数乘以工作时间成正比;布鲁克定律说这种关系是神话,因此,这是这本书的核心。 ”-资料来源:Wiki-Mythical_Man_Month


1
“我的高尔夫伙伴还管理着一家IT咨询公司,他说他有两个'黑带'程序员,他们现在都可以使用。他们都有计算机科学的硕士学位。您应该可以毫无问题地将他们带入对吧?也许您会学到一些有关如何更好地安排时间的知识。”
jfrankcarr 2012年

1
@kevincline-“我发现您不是团队合作者。我正在重新分配您,以维护我们具有14年历史的VB6应用程序。这是Who Moved My Cheese?的副本,供您阅读。”
jfrankcarr 2012年

3
“我认为您不是团队合作者。”:我也有此评论。我的回答是与足球进行比较:一个好的团队不会试图将自己塞进5平方米,而是试图占据整个领域,以便每个球员都能更有效。并且球员经常根据需要来回移动球。在团队中工作意味着团队成员可以协调他们的活动,但是要在项目的独立,不重叠的区域中工作。如果可能,您可以添加更多开发人员并提高生产率。
乔治

1
@kevin cline:也许这就是为什么最终将新开发人员添加到团队中变得毫无用处的原因。如果找不到与项目其余部分完全独立的区域,则可能应该停止添加新的开发人员。
乔治

2
团队的态度,项目的规模,状况如何,新成员的经验,要求的当前状态等都是这里要考虑的重要因素……
NoChance 2012年

4

注定要重复

可怜的弗雷德·布鲁克斯(Fred Brooks)就像荷马的《伊利亚特》中的卡桑德拉(Cassandra)。如果您读了电影《特洛伊》(Troy)来的那本书,那么她就是那个不在乎(Trojan)马的人。她准确地预测了未来,但直到预测发生之后,没人亲自相信她,他们才亲自看到了。

不抗击管理/被动抵抗或谨慎雇佣吗?

我的建议是,这可能不是个好日子,如果您的经理希望您雇用更多的员工,那就去做吧。建议一些参数,例如找一个有特定经验的人和使用快速筛选技术,将使搜索时间增加三倍,也许您会在破坏者到达之前达到最后期限。

减少您花在不太可能的候选人身上的时间将节省大量时间。例如,在简历的前1/3中没有您的前三名要求的任何简历都会被扔掉,应聘者必须经过30分钟的电话屏幕才能进行任何现场面试,而忽略了没有根据您的需求进行预筛选的招聘人员。其他技术比比皆是,请确保您使用的任何东西都是有效的。

控制新员工整合的负担

如果您确实在截止日期之前进行了录用,并且需要与新员工打交道,请从不在培训关键路径上的人员预算时间。让团队中的成员看到一个,然后做一个,然后再显示一个会很有帮助。如果您的团队成员具有中低经验,那么它将增强他们对您的流程,工具集和代码库的理解,以指导这些领域的新员工。

希望您有一些文档,因此指派新人员阅读可以帮助他们逐步发展的文档是一项不错的短期和长期投资。应该逐步将它们引入您的流程中,并应由可以阻止他们通过大胆但有害的变更推动项目发展的人员来审查他们的工作。

最佳和最差工作分配

如果您有单独的项目或某些技术开发,他们可以做准备在将来的项目中使用,这也可能是一个很大的好处。学习您的特定工具集,进行自己的本地构建,单元测试,可用性测试,文档以及参与审核,这些都是新员工的绝佳选择。新员工可能具有全新的观点,并且可以对您的团队学会生活并且不再可见的事情提供有价值的重要评论。

对新员工不利的使用可能包括与经理和非开发人员利益相关者进行团队会议,评估,要求和管理(除非他们在竞争对手工作后才是专家),专利,采访新候选人或以其他方式帮助人员。

保持团队和谐,设定未来期望

新员工优先事项仍然发挥作用。如果您的团队经历了组建,发展,规范,绩效的演变,则必须给新员工以期望,以期望他在团队中的表现和计划职责。您一定不能使新员工的工作比团队中其他角色的要求低。如果您的团队积极争取截止日期,那么新员工应该有办法证明他正在积极争取实现整合。


1

我不知道减少人力回报的标准术语。由于目标是说服人们,请尝试改写一个短语:

  • “可分解性的限制”对于中型项目可能尤其重要。
  • “通信开销障碍”唤起了大型项目的经典布鲁克定律。
  • “设计迭代需求”是一种奇特的说法,“如果您想要的东西不是废话,则需要花费一些时间才能正确地完成它。”

0

一个合理的近似术语是“ 弹性范围”:比喻为价格无弹性区域,当进一步降低价格不会增加您的销售额时,应与管理层保持警惕。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.