第六周作业:《人月神话》对我做项目实践的启示(一)

《人月神话》这本书有两个老师都有给我们推荐,第一个老师推荐时不以为然,第二个老师也推荐时,自己感觉应该是挺重要的吧,于是去图书馆借了这本书来看,刚借回来时,总觉得时间不够、作业很多,也没来的及看,就一直搁置在了那里,直到上周,在我们的项目实践开始近三周,但进度却一直赶不上来的情况下,看到了这本书,才拿起来看。目前还没看完,先写一点儿领悟到的东西。

作者从焦油坑,提出项目失败的表现,把过去几十年的大型系统开发比作一个炼焦坑,各种团队一个个地淹没在焦油坑,他们都试图解决面对的问题,但他们都必须去了解问题的本质。

还有著名的Brooks法则——向进度落后的项目中增加人手,只会使进度更加落后,人们常拿人月来计算项目的工作量,但其实开发工作是需要人与人之间密切沟通的,使得设计工作不易分割。一般来说,一件复杂的工作大量的投入人力,会使工作完成的更快,更加出色,但读了《人月神话》的第二章节后,我发现这种观点是不对的,至少在软件开发上不对,当增加人力时,会导致一个可怕的后果,要么工作延迟,要么工作错误百出,从而导致项目的失败。

进度的可保证性和可控制性来源于项目计划的科学性,项目计划对进度预测的准确性又来源于估算的准确性,估算是否准确又涉及到项目规模,根据规模可以得到工作量,根据工作量和人力资源的投入和任务依赖约束可以得到最终的进度。当软件产品的规模增加的时候,复杂度成倍增长,从而导致这些要素之间不是单纯的线性关系,这是人月神话的启示之一;同时由于软件项目本身的生命周期模型和工序任务限制,导致对于一定规模的软件产品研发,无论投入多少的资源,都有一个最短工期的限制,在这个最短工期下投入再多的资源也没有用。

据此,我总结出我们小组进度较慢的原因如下:

1.在项目开始时,未对项目量进行明确的估算;

2.不了解小组人员所掌握的基础知识情况,对小组人员没有明确的分工和定位;

3.知识体系不够完善,做出的东西需要反复修改。

个人感觉,在做每项工作时,都必须要有一个牵头人(可以是除项目经理外的其他人),比如有人对文字撰写比较擅长,就可以让此人来写立项说明书、需求说明书、设计说明书等文档的大概框架,写好框架后按照小组人数将任务分配给每个小组成员,编程能力比较强的可以将项目中所需做的编码工作具体分工,并给编程能力弱的同学提供一个大概的方向,保证每个小组人员都能够按时完成自己的任务,同时,项目经理要保证任务分配的均衡性,并由能力强的带动能力弱的同学,以达到共同学习、共同进步的目的。

时间: 2024-08-02 02:44:07

第六周作业:《人月神话》对我做项目实践的启示(一)的相关文章

《人月神话》读书笔记 第六周

<人月神话>读书笔记 项目的延误是一件灾难性的事情,大多数人可能会认为延误的原因来自于某些灾难性因素,比如员工病倒,数据丢失等,但实际上,这些重大灾害往往是比较容易解决的,因位这些突发性事件往往与重大的压力,彻底的重组或者新技术的出现有关,这些都是项目组可以应对的.而真正可能毁灭整个项目的,大多数都是每天小小的进度延误.一天天的进度落后是难以识别,不容易防范,和难以拟补的,每一天都延误一点,在大家的严重或许没有太大的影响,因为每一天都有新的任务完成,这种成就感会让大家忽略这一点点的缺陷.然而到

人月神话有感2

关于本书,即使很多没读过的人也能说出其中知名度最高的关于人月神话的观点.之前还在知乎上看过有人举了一个例子:一个人生孩子需要十个月,两个人去生孩子同样需要十个月.这一比喻虽不完全恰当,却也大致说出点内容.事实上,作者在书中这样来描述人月神话:软件开发项目常以人月来衡量工作量,这种度量暗示着人手和时间是可以互换的.这种"人多力量大"的想法是一种一厢情愿的虚妄神话,布鲁克斯法则:向滞后的软件项目追加人手会使得进度更迟缓(Adding manpower to a late software

《人月神话》阅读笔记(一)

阅读了<构建之法>,我又继续去了解了<人月神话>. 做为软件工程的相关书籍,这方面讲的东西,对于我来说起着一个了解和认知的过程. 没有相关的经验,我并没有什么多大的感触. 我只能讲讲自己的见解,以后有了更多的经验,我希望,我曾经读过的东西,能有着新的启发. 开篇讲了 焦油坑 这一比喻,它吞噬了成千上万个力大无穷的巨兽,好比今天的大型软件项目令无数庞大的开发团队陷入无从逃脱的窘境. 我从<构建之法>中了解了很多开发模式.根据软件程序的规模和目标不同,对开发过程的要求也有极

读《人月神话》所感所思

近日,读了老师推荐的<人月神话>,深感项目开发的艰辛.<人月神话>这本书最开始的版本是1975年的,四十年过去,当下看来书中有些观点依旧适用,而有些观念已经过时.以下列举看过这本书之后两个印象十分深刻的观点:  “人月是危险和带有欺骗性的神话,因为它暗示人员数量和时间是可以相互替换的.” 诚然,这个观点至今还是毋庸置疑的. 人月之所以是危险和带有欺骗性的,原因是人们混淆了工作量和项目进展.根据Brook 法则,向进度落后的项目中增加人手,只会使进度更加落后.向软件项目中增派人手从三

《人月神话》读书笔记 第五周

<人月神话>读书笔记 PB16060710 冯富禹 怎样编写程序才能尽可能的减少bug呢?这是每个程序员都最想要知道的问题,找到并修改bug是一件十分痛苦的事,它需要程序员不断地调试与细心的阅读,这会浪费巨大的时间和人力,也会让编程人员十分疲惫不堪.所以一个解决办法就是,在编写程序的时候就应该尽全力防范bug.因为系统各部分的开发者都会做出一些假设,而这些假设之间的不匹配是大多数致命的和难以察觉的bug.在编写任何代码之前,必须让测试小组的成员了解规格说明,了解检查说明的完整性和明确性,这样才

人月神话有感

初见书名时还在奇怪为什么老师要我们看一本这书,在我刚刚见到这本书时我以为说的是人类登上月球的书籍,后来明白了本书的名字并不是人类和月球之间的神话故事,而是软件工程的一些迷思,人月是一个人一个月的人力单位. 在这本书里作者提出软件工程中各个项目的比例应该如下: 1/3 planning 1/6 coding 1/4 component test and early system test 1/4 system test, all components in hand 初始时心中还在迷惑为什么编程的

读&lt;&lt;人月神话&gt;&gt;

这本书在软件领域知名度很高,每次看到年度推荐的文章里面都有这本书且强烈推荐.出版30年了,可谓经典. 但我在读的过程中并没有那么深的体会.书中很多章节都是基于大型项目或者大型系统的经验总结,至今为止我还没有参与大于30人的项目.只能说自己的境界还不够. 第一章,焦油坑 再也找不到一个词比焦油坑更能形容,软件开发的过程了.我们都在挣扎.计划,计划,不断计划,但还是拖延,拖延,拖延.... 职业的乐趣: 创造性,贡献助人为乐,过程的魅力或者解决问题的成就感或写代码的快感,持续学习新事物,驾驭感. 职

人月神话阅读笔记03

阅读了<人月神话>第10章 提纲掣领,里面提到的关于软件相关的开发文档的问题,使我受益颇深.以前每每写程序时,老师总会要求我们写一些需求分析,软件流程图,还有各种各样的日志文档,心里总是觉得烦不胜烦.明明程序已经写好了,文档写不写又有什么关系呢?这不是在浪费时间嘛.但是后来在写四则运算的编程题时,我就遇到了一些麻烦.刚开始我自己写又进行“翻新”的时候,我总是忘了自己之前是怎么想的,思路是怎么样的,很多时候不得不花上许多时间去重新阅读上次的代码,或者直接推翻重写.后来进行二人开发时,发现没有文档

人月神话读后感

书中应用焦油坑表示过去几十年的大型系统开发,很多大型和强壮的动物在其中剧烈挣扎.让我感觉到,软件开发过程中所遇到困难是多么的多,开发多么艰难.但是这本书同时告诉了我们软件的开发有苦也有乐,我们可以在编程过程中体会那份快乐.<人月神话>是为软件开发经验的天马行空总结.比<Beautiful code>更为有远见,把我从充实代码的清晰简介升华,拓展到软件开发的高层度, 一个周密,准确,明朗的开发需求分析,可行性研究,软件实现是软件开发的完美递进. 人与神话中讲述人力和时间并不体现线性关