在已经延误的项目中,什么情况下添加程序员实际上会加速开发进度?
在已经延误的项目中,什么情况下添加程序员实际上会加速开发进度?
我认为将人员添加到团队中可能比将他们添加到项目本身中更能加快项目的进展。
我经常遇到有太多并发项目的问题。如果我能专注于单个项目,那么任何一个项目都可以更快地完成。通过增加团队成员,我可以从其他项目中转移出来。
当然,这假设你已经雇用了有能力、自我激励的开发人员,他们能够继承大型项目并独立学习。 :-)
如果额外的资源可以补充您现有的团队,那就是理想的。例如,如果您即将设置生产硬件并验证数据库实际上已经调整好,而不仅仅是返回良好结果(您的团队作为领域专家知道的),从在您项目旁边工作的优秀DBA那里借用时间可以加速团队进展,而不需要太多培训成本。
主要是考虑让它们不受当前正在开发的人的影响。我同意“神话般的人月”,但我也认为每个规则都有例外。
当新增开发人员的生产力超过培训和管理这些开发人员所失去的生产力时,增加开发人员是有意义的。
如果一个团队已经习惯了结对编程,那么添加另一个已经擅长结对编程的开发人员可能不会减慢项目的进度,特别是如果开发是以TDD风格进行。
随着他们对代码库的理解越来越深入,新开发人员会逐渐变得更加高效,任何误解都会在他们的合作伙伴或每次提交之前运行的测试套件中尽早发现(最好每十分钟至少提交一次)。
然而,额外的沟通成本需要考虑在内。重要的是不要过多稀释项目现有的知识。