人月神话读后感

人月神话读后感

ID:32370769

大小:53.91 KB

页数:7页

时间:2019-02-03

人月神话读后感_第1页
人月神话读后感_第2页
人月神话读后感_第3页
人月神话读后感_第4页
人月神话读后感_第5页
资源描述:

《人月神话读后感》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、人月神话读后感二十九年前(1975)﹐IBM大型电脑之父──FredBrooks出版一本书﹕"TheMythicalMan-Month"。收集了他在1960年代领导1000多人共同发展OS/360大型软件系统的心得和经验。该书是论文集﹐其中有一篇文章叫"TheMythicalMan-Month"﹐他就以此作为书名。在1956~1965之间﹐Brooks实际领导IBM360大型电脑的开发计划﹐包括硬体结构及庞大的OS/360作业系统在内﹐因之他具有IBM大型电脑之父的尊称。由于OS/360是多达1000位程式师共同合作的大

2、型软件开发工作﹐让他深刻了解到大型软件开发的技术和管理上所面临的种种困难和挑战。于是﹐他就将其领导开发OS/360软件系统的经验心得收集在这本书里。人们常拿Man-Month(多少人﹐做多少个月)来计算软件的工作量﹐但是Brooks发现软件的开发工作是需要人与人之间密切沟通的﹐使得设计工作不易分割﹐所以Man-Month为单位的计算方法是有问题的(mythical)。也就得出著名的Brooks法则──「对于进度已落后的软件开发计划而言﹐若再增加人力﹐只会让其更加落后。」(Addingmanpowertoalatesoft

3、wareprojectmakesitlater)这是该书名称的涵义。看完此书后,我发现人月神话无处不在,其实在我们做软件工程来说,此书已经渗透进去了。本书作者为人们管理复杂项目提供了颇具洞察力的见解,既有很多发人深省的观点,也有大量的软件工程实践。 本书对我触动最大的,一是保持设计的概念完整。无论对小软件还是大软件,都必须由一个设计师主导,最多两个人讨论来共同完成软件的整体设计。作为一个软件,一个系统,必须有一个清晰明确的概念模型,大家都在这个框架下工作,所有的创新发展都必须与基本的概念相吻合。具体的实现人员可以细化概念

4、,但只有总设计者才有否定与发展基本概念的权力。需要注意的一点是,即使是总设计师一直是同一个人,他脑海中所认为理所当然的规则或者概念,很可能由于没有明确的文档化,而没有成为所有开发者共同的概念。概念的完整性,对于很多小规模软件,由于开发人员不多,开发经理一般都能控制住所有的代码,概念完整性在组织层面就维持住了。但要注意以后的Bug修改,功能扩展的时候,也要时刻留意与最初的设计是否概念上相容。对于大规模的软件系统,则必须通过树状组织结构,层层控制,总设计师还是一到两人,每一层都有对下层的绝对把握能力。二是“一个拿2倍工资的人

5、,生产率可能是其他人的10倍。”不知道其他公司的程序员们如何看。我觉得,作为公司,应该给最好的人最好的待遇,或者说给比目前更高的待遇。组建一个团队,最好的就是那种精英团队。微软就是这种思路吧,把最聪明的人集中在一起,想不成功都难。三是进度落后与增加人力。记得当年看《C++编程思想》,Bruce说“十个妇女不能在一个月内生下小孩”(大意),于我心有戚戚焉。而本书作者Brooks得出的结论是对我是震撼性的:“向进度落后的项目中增加人手,只会使进度更加落后”。以前,增加人手基本是挽救进度落后项目的主要办法。这个办法行不通的话,

6、难道只有“加班”一条路了?如果不想加班,不想削减功能,不想推迟发布日期,那么。。。。。唯一的方法还是只有….加人。加足够的人。而且不要逐步加入,一定要一次性加入。要小心的是,新加入的人可能对原来的组织造成冲击,或者对原来的设计有不同意见(特别是加入的人中有比较强大的设计者)。那么,就当作,新组建了一个团队吧。交流,培训新人,就设计达成一致,继续向者目标前进。不同的社会经验,不同的思想状态,对读本书的心得也不一样。在此我说说书中许多非常好的观点。    1.外科手术队伍The Surgical Team    项目经理在项

7、目的初期必须清楚的估计项目的人月运作模式(时间、人力在项目各阶段的分配),例如什么时候需要出什么样成果,决定了什么时候需要什么样的人加入项目,这是项目经理的责任。    2.贵族专制,民主政治Aristocracy,Democracy,System    要获得概念的完整性,设计必须由一个人或具有共识的小组来完成。 3.画蛇添足The Second-System Effect    讲述的基本都是基于IBM 360操作系统以及编译程序等方面的经验,讲述如何避免开发第二个系统的风险,作者认为开发第二个系统的设计师设计出来的

8、系统是最危险的,因此要求他们自律。    4.贯彻执行Passing the word    印象比较深刻的是"体系结构设计人员必须为自己描述的任何特性准备一种实现方法,但他不应该支配具体的实现过程。"    5.巴比伦塔会失败Why did the Tower of Babel Fail?    讲述巴比伦塔会失败

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。