ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

人月神话札记:时间和人力

2021-06-22 14:57:36  阅读:271  来源: 互联网

标签:蛋糕 神话 人员 进度 测试 人力 增加 时间 札记


前言:美食的烹饪需要时间,那么稍等片刻,你将享用更多的美味。缺乏合理的进度安排是造成项目滞后的重要原因,因素有以下内容:
- 对估算技术缺乏有效的研究
- 进度和工作量混淆,就是说人员和时间可以转换
- 对自己的估算缺乏信心
- 缺乏信心
- 对进度缺少跟踪和监督,所以站立会和燃尽图至关重要
- 意识到进度偏移时,第一个反应是增加人力,而这时大多数情况如同火上浇油,火越来越大,需要的汽油却越来越多


乐观主义

书中说,编程人员都是乐观主义者,我想,在国内,需求者比编程人员更“乐观”,他们引导设计者和架构师走上极端的左倾主义。我存有一种愿景就是,希望未来需求者能够考虑足够的风险,树立一种观念就是每一项任务不仅仅是花费它“应该”花费的时间。
对于创造者来说,只有在实现的过程中,才能发现构思的不完整性和不一致性。也就是说,我们去做1.0版,意义重大,1.0版能够帮助我们更好的去反思我们的设计。
作为我们程序员来说,“一切都会完美的运行”几乎是不可能的,从我们自身来说,当我们写完代码后,必须要抱着怀疑的态度,去检查我们创造的代码,减少bug。

人月

人员和时间不能在所有场所内进行替换。

  • 对于像割小麦的任务中,人员和时间可以相互转换,增加人手,必定能减少割麦子的时间。
  • 对于像母亲孕育孩子的过程中,必须要经历10月怀胎,这是无法进行分解的。
  • 对于需要沟通可以分解的任务,其人员和时间的关系图,在人员增加到一定程度上时,需要的时间不会再减少
  • 对于关系错综复杂的任务,其人员的增加在一定程度上还会增加时间的投入,这个是最可怕的。

从实际的开发经验中,可以得出,软件开发是错综复杂的过程,那么没有弄清楚效率降低、进度延迟的真正原因时,盲目的追求人员的增加会让事情更糟。

系统测试

系统测试的时间在大多数的软件开发中,系统测试被开发团队忽略,往往很多时候,开发人员做完自己的代码后,就将测试工作丢给测试人员,这种现象我之前有所描述,见小型团队的测试该何去何从这篇文章中,我介绍了这个可怕的现象,而其解决办法竟然是增加人员。
没有合理的规划系统测试时间的话,就会带来可怕的后果,因为系统测试往往是在产品发布之前,这个时候再出现延误,代价太高。

空泛的估算

大多数情况下,产品经理或者项目经理和客户的关系就如同蛋糕师和顾客的关系,蛋糕的烹制过程会受到顾客紧迫程度的影响。假如顾客催促蛋糕师,那么蛋糕师可能做出两种选择,第一个就是继续按照自己的进度,让顾客等待,这样可能失去顾客;第二个是加大火力,这样蛋糕就可能出现问题。

重复产生的进度灾难

当任务没有按照原定计划执行时,就出现延期,假如出现在项目进展的第一个阶段,项目经理发现了进度延缓的问题,那么假如说他盲目的增加人手来试图缩短产品研发时间的话,就必然会重复进入到灾难的陷阱中。
增加人手会带来严重的问题,原来的开发人员需要拿掉开发的时间来培训新的人员,这样同时又将原来的进度延缓,假如再增加人手,就会进入到万劫不复的灾难中

作者有如下结论“Adding manpower to a late sofeware project makes it latter.”

那么我们该如何正确做出改变呢?

  • 重新安排进度,也就是说分配充足的时间,来确保完整的解决项目。
  • 削减任务,如果项目延期导致的二次开发成本非常高,那么这是必要的。
  • 然而增加人手,这个决策是可怕的。

总结:项目的时间依赖于顺序上的限制,而人员的最大数量依赖于独立子任务的数量。如何把握人员数量和进度之间的关系是至关重要的。

标签:蛋糕,神话,人员,进度,测试,人力,增加,时间,札记
来源: https://blog.51cto.com/u_2324584/2937178

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有