今天我阅读了人月神话的第五章到第十章的内容。第五章画蛇添足主要讲了结构师的相关内容,尽早交流和持续沟通能使结构师有较好的成本意识,使开发人员获得对设计的信心,并且不会混淆各自的责任分工。一个成功的结构师,需要牢记:牢记是开发人员承担创造性和发明性的实现责任,所以结构师只能建议而不能支配;时刻准备着为所指定的说明建议一种实现的方法,同样准备接受其他任何能达到目 标的方法;对上述的建议保持低调和平静;准备放弃坚持所作的改进建议;通过这个章节我知道了一个项目经理如何避免画蛇添足。
第六章贯彻执行主要介绍了一个项目经理如何确保每个人听从,理解并实现结构师的决策,手册、形式化定义、直接整合、会议和大会、多重实现、电话日志、产品测试是项目经理的主要手段。一个项目能否成功,执行力是很关键的部分,如果领导下发的命令不能得到很好地执行,方向不统一,那么这个项目失败的可能性是非常大的。就像是篮球的NBA,曾有些队伍组成了明星球队,队伍中每个人单拿出来都是佼佼者,但是这样的团队往往不能取得太好的成绩。我认为本章最重要的一句话是项目经理最好的朋友就是他每天要面对的敌人——独立的产品测试机构/小组。
第七章为什么巴比伦塔会失败是以巴比伦塔的失败为例引出交流、组织的重要性,通过本章,我知道了如何进行交流并实现组织。在一个大型团队中,成员可以通过非正常途径、会议、工作手册等方式进行交流。组织同样重要,团队组织的目的是减少不必要交流和合作的数量,减少交流的方法是人力划分和限定职责范围,因此树状编程队伍便出现了,为了保证队伍的有效性,每颗子树所必须具备的基本要素为:任务、产品负责人、技术主管和结构师、进度、人力的划分、各部分之间的接口定义。根据队伍的不同,产品负责人和技术总管有三种关系:产品负责人和技术主管是同一个人;产品负责人作为总指挥,技术主管充当其左右手;技术主管作为总指挥,产品负责人充当其左右手。
第八章胸有成竹主要讲了成产率的问题,在本章作者提供了4个数据来表述生产率的数值和收到什么因素的影响。其中构件独立小程序的数据不适合编程系统,程序开发随着规模的大量增长而增长,在基本的语句级别的话,生产率是一个常数,使用适当的高级语言,编程的生产率可以提高5倍,这让我想起老师的一句话:“语言没有好坏,只有适不适合。”
第九章削足适履里主要讲的是程序的空间成本、规模等问题,开销主要有两种:一种是时间上的,一种是空间上的开销。对项目经理而言,规模控制既是技术工作的一部分,也是管理工作的一部分,规模预算必须与分配的功能相关联,指明模块大小的同时,确切定义模块的作用,规模预算不仅仅是在内存方面要明确,还要指明对磁盘的访问次数。
第十章提纲挈领讲了文档的重要性,文档的跟踪维护是项目监督和预警的机制,文档本身可以作为检 查列表、状态控制,也可以作为汇报的数据基础。对于计算机硬件开发项目,关键文档是目标、手册、进度、预算、组织机构图、空间分配以及机器本身的报价、预测和价格。对于大学科系,关键文档类似于目标、课程描述、学位要求、研究报告、课程表和课程的安排、预算、教室的分配、教师和研究生助手的分配。对于软件项目,要求是相同的:目标、用户手册、内部文档、进度、预算、组织机构图和工作空间分配。为什么要有正式的文档?首先,书面记录决策是必要的;第二,文档能够作为同其他人的沟通渠道;最后,项目经理的文档可以作为数据基础和检查列表。
今天阅读的内容大部分是在教导如何管理好一个团队以及如何当好一个项目经理,通过今天的阅读,我知道了想要成为一名优秀的项目经理需要具备哪些能力,在平常工作中需要注意哪些方面。