阅读笔记(二)

同样是两年的工作经验下,优秀的程序员效率是较差的程序员10倍。

小型、精干队伍是最好的–思绪尽可能的少,少一点争执。

需要协作沟通的人员的数量影响着开发成本,因为成本的主要组成部分是相互的沟通和交流,以及更正沟通不当所引起的不良结果(系统调试)。

Mills建议大型项目的每一个部分由一个团队解决,但是该队伍以类似外科手术的方式组建,而并非一拥而上。

一位首席程序员、类似于外科手术队伍的团队架构提供了一种方法–既能获得由少数头脑产生的产品完整性,又能得到多位协助人员的总体生产率,还彻底地减少了沟通的工作量。

概念完整性是系统设计中最重要的考虑因素。

为了反映一系列连贯的设计思路,宁可省略一些不规则的特性和改进,也不提倡独立和无法整合的系统,哪怕它们其实包含着许多很好的设计。

同时,对于项目,体系结构的工作与具体实现相分离可以获得概念完整性;软件实现和硬件实现等可以并行。

同工作的水平分割相比,垂直划分从根本上大大减少了劳动量,结果是使交流彻底地简化,概念完整性得到大幅提高。

一种普遍倾向是过分地设计第二个系统,向系统添加很多修饰功能和想法,它们曾在第一个系统中被小心谨慎地推迟了。

实际情况中,尽早交流和持续沟通能使结构师有较好的成本意识,以及使开发人员获得对设计的信心,并且不会混淆各自的责任分工。

面对估算过高的难题,结构师有两个选择:削减设计或者建议成本更低的实现方法–挑战估算的结果

即使是大型的设计团队,设计结果也必须由一个或两个人来完成,以确保这些决定是一致的。

允许体系结构师对实现人员的询问做出电话应答解释是非常重要的,并且必须进行日志记录和整理发布。

对于存有疑问的实现人员,应鼓励他们打电话询问相应的结构师,而不是一边自行猜测一边工作,这是一项很基本的措施。

posted @ 2019-02-23 21:09  至尊小虾米  阅读(76)  评论(0)    收藏  举报