码迷,mamicode.com
首页 > 其他好文 > 详细

人月神话

时间:2015-03-01 13:06:39      阅读:128      评论:0      收藏:0      [点我收藏+]

标签:

    

   读人月神话给我感受最深刻的是作者以焦油坑为例向我们抛出了大型系统开发的问题,简短的说出了作为程序员的乐趣与苦恼。人月即产品开发的人数和时间,文章指出了人月并不能衡量一项工作的规模,即人与月是不能相互转换的,在程序开发过程中在某个条件下可以通过增加人数来提高工作效率但到一定情况下再增加人数只会使效率越来越低同时给出了作者自身关于软件任务进度的安排1/3用于计划,1/6用于编码,1/4用于构件测试和早期系统测试,1/4用于系统测试,对于项目开发而言提前的计划非常重要会避免进度的拖延,对于一个进度落后的项目向其中增添人手只会使进度更加落后,所以缺乏合理的时间安排是造成项目滞后的主要原因。

  对于一个变成团队来说人数也不是说越多越好,坐着也指出了了一个优秀程序员与一名蹩脚程序员之间的差别,系统开发应有尽可能少的程序员来开发,然而小型的精简的团队对于真正意义上的大型系统来说太慢了所以对于效率和概念的完整性来说最好有少数干练的人员设计和开发,而对于大型系统则需要大量的人手一是产品在时间上满足要求,其中有人提出了一个调和上述矛盾的方法,以医生比喻建议大型项目的每一个部分有一个团队解决,但是该队伍以类似外科手术的方式组件,具体分工为:外科医生(首席程序员),副手,管理员,编辑,两个秘书,程序职员,工具维护人员,测试人员,语言专家

  本书中作者主张在系统设计中概念完整性应该是最重要的考虑因素,实现概念的完整性可以有两种解决办法第一种是仔细的区分设计方法和具体实现,一种是崭新的组件编程的开发团队的方法,在大型项目中将设计方法体系结构方面的工作与具体实现相分离识货的概念想的强有力的方法。当文章也对系统的体系结构进行了阐述,而体系结构同实现必须仔细的区分开来。作者指出系统概念的完整性决定了使用的容易程度。在项目的整个创造性活动中包括了三个独立的阶段:体系结构,设计实现,物理实现,在实际情况中他们往往可以同时开始和并发进行工作的垂直划分将从根本上大大减少劳动量是交流彻底简化概念完整性得到大幅的提高

  文章中作者提到了手册这一概念是结构师主要的工作产物并提出建立周会议和年会议制度从而使每个人对复杂约束和决策之家的相互关系有个更透彻的理解。

  大型变成项目中的交流也是必不可少的 ,那么团队之间可以通过电话沟通,定期会议,或者在项目开始阶段制定工作手册

  由于规模是软件系统产品用户成本中如此大的一个组成部分,开发人员必须设置规模的目标,控制规模,见小规模的方法同任何开销一样,规模本身不是坏事但不必要的规模是不可取的。我们应该知道仅对核心程序设定目标是不够的,必须把所有的方面都编入预算。此外控制程序所管理的缓冲区成为了用户空间的一部分在指定模块有多大的同时,确切定义模块的功能。在整个实现的过程期间系统结构是必须保持持续的警觉确保连贯的系统完整性 。在速度保持不变的情况下,更多的功能以为这需要更多的空间所以其中的一个技巧是用交换尺寸,第二个技巧是考虑空间-时间的这种。数据的表现形式是编程的根本

人月神话

标签:

原文地址:http://www.cnblogs.com/laozhanghahaha/p/4306869.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!