再读《人月神话》有感

用了一天半的时间再读了Brooks的《人月神话》(英文名:The mythical man-month),这本经典的软件工程领域书籍。每次读都会有新的收获,但又感觉之前读时没什么收获似的。虽然读了好几遍,此次读最直接的感受是英语生词仍然很多,这是读其他英语原版书籍没遇到过的情况,显示了Brooks深厚的语言文化功底。

说到写读后感,我诚惶诚恐。读完该书后,我竟不知如何写起,因为书中涉及到了除技术外的几乎所有软工领域内容。Brooks结合自己开发IBM OS/360大型软件项目的经历,将自己的经验倾囊而出,给后继软件工程人员以方法论指导。

说其经典,是因为该书成书比较早,后续的许多软件工程书籍无不受其或大或小的影响,其也对软件工程实践产生了不小的影响。该书第一版成书于1975年,而后于1995年再版。我读的正是再版版本。1995年版本对第一版的许多观点做了评价和修正,给出了仍然成立的结论和需否定的结论,并对PC时代的到来及其对软件工程的影响、软件工程领域的发展趋势做了进一步的述评,显示了作者在软件工程领域持续不断地思考。第一版总结的是1975年前10年再靠前的经验。当时计算机才发明出来没多久,而作者作为软件工程领域最早的从业者、最早探索者,其给出的理论思考和实践总结自然成为软件工程领域的经典。

该书题目为《人月神话》,涉及到人,即从事软件项目开发的人;也涉及到月,即软件项目开发所用的时间。二者结合,就涉及到了软件项目的开发进度,进一步又可延伸到开发的生产率 (productivity)问题。如何提高软件的生产率?这是该书的一个主题。作者发现许多软件项目的失败大部分可归因于工期的延后。如何避免工期延后?又是该书的一个主题。上述两个问题(主题)是有关联的。围绕上述两个问题,作者分章节展开论述,辅以引用一些他人的研究数据。从怎样组建团队、怎样书写文档、怎样锐利所用工具、怎样避免每天一点点的延期、怎样保持概念完整性 (Conceptual integrity)、如何沟通和组织到如何增量开发、没有银弹等,详细而深入地阐述了软件工程领域除技术外的方方面面,重点是人和管理,当然也包括开发方法。虽然软件工程的技术更新迭代比较快,但本书的内容观点却具有普遍性和稳定性,从而能够一直流传下来,令人百读不厌。从网上到处看到的关于该书的评论和读后感可见一斑。在本书论述的众多内容中,最令人印象深刻的有3个:

  1. Brooks’s law.
  2. 第二系统效应 (The second-system effect)。
  3. 没有银弹。本内容引起了众多的讨论、争论。

多次阅读本书后,给我带来的收获包括:

  1. 对软件工程中的生产率、进度控制、团队安排、人员沟通等有了更深刻的认识;
  2. 增量开发模型是一个很有用的模型;
  3. 作者在书尾提到的4个学生分组完成教学项目的举例,增加了自己在教学中利用分组布置项目作业的自信;
  4. 对作者写作风格的佩服。书中利用大量贴切的举例词语,例如,焦油坑、外科手术团队、人狼、法国菜单、银弹等,从而一些抽象的概念得以形象的表达;
  5. 更加注重概念完整性。控制好概念完整性,才能让软件直白和易用。做到概念完整性,应让设计出自少数设计师之手。

总之,该书是一本经典书籍,推荐软件工程领域人员闲暇时阅读。

  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值