《人月神话》读书笔记(五)

项目经理在面对估算过高时,可以选择削减需求或采用低成本实现。要成功推动低成本方案,需尊重开发人员的主导地位,提出建设性建议但保持低调。文章强调了在系统设计中避免画蛇添足的重要性,提出为每个功能分配价值以限制过度设计,并提醒结构师关注主要需求,防止在第二个系统中过度修饰。
摘要由CSDN通过智能技术生成

第五章 画蛇添足

估算和责任分工是制定计划很关键的一环。实际情况中,尽早交流和持续沟通能够使项目经理能有更好的成本意识,项目经理能及时改进他的估算或修订计划,使开发人员获得对设计的信心,并且不会混淆各自的分工。

面对估算过高的时候,项目经理有两个选择:削减设计(砍需求)或者采用成本更低的实现方法。若采取后者,项目经理则是在向开发人员的做事方式提出挑战,想要成功,必须:
(1)牢记开发人员承担主要的功能实现创造任务,所以项目经理只能建议其使用成本更低的方法,而不是支配;
(2)时刻准备着一种实现方法的建议,同样准备接受其他能够达到目标的方法
(3)对上述的建议保持低调和不公开
(4)准备放弃坚持所做的改进建议
一般开发人员会反对体系结构上的修改建议,因为涉及到架构、业务流程的特性修改,往往会造成意料不到的成本开销。

结构师设计的第二个系统是最危险的系统。因为在开发第一个系统时,结构师倾向于精炼和简介,由于对业务需求和任务的不够了解,所以会谨慎、仔细地工作。在面对不断产生的装饰和润色功能时,他会先搁置到一边,作为“下一个”项目的内容。当他着手开发第二个系统时,就会向系统里添加很多的修饰功能,往往就是过分地设计第二个系统。在开发第三个或者第四个系统时,这些系统之间的差异才能帮组他识别出系统中通用的特性。

结构师如何避免开发第二个系统画蛇添足呢?虽然他不能跳过第二个系统,但是他可以有意识地关注系统的主要需求,自我约束,避免一些过于修饰的功能。根据系统基本理念及目的变更,舍弃一些功能。

书中给到的一个建议是:
为每个小功能分配一个值:每次改进,功能x不超过m字节的内存和n微妙。这些值在一开始作为决策的向导,在物理实现期间充当指南和对所有人的警示。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值