Gang of Four or Gang of Three?

mittermeyer说得很有道理,我的帖子实际上偏离了前面讨论的问题,所以我在这里单独贴出来,以引起更多人的重视,另外也方便大家讨论。 Gang of Four即四人帮,其实《设计模式》一书的作者就是四个博士生,他们自称是Gang of Four。许多人认为开发一个软件要至少要四个人,其实三个人有时反倒有更高的效率。经过检验的三人的合作模式有下面两种: 1、一人做分析、设计,一人编码,一人测试,完全将不同性质的工作分开,这种模式依赖于单兵作战的能力,技术上对个人要求比较高,最好每人都是某一方面的高手,好处在于每个人可以集中精力于一方面上。在团队协作中,要求的是信任,当把工作交付给一个人时,必须完全相信他能做好,即使没有做好,也不要太执着于找人的原因,而应当从项目的实际情况中或是别的方面找问题。 2、在分析、设计阶段,三人以一人为核心进行,到编码阶段,由于编码、测试的同步性,先前做分析、设计的主力这时转为辅助其他两人工作。这种模式特点在于合作性更强,要求人员有非常好的团队意识,甘于当配角,如果一个人总是想主导一切,这种模式是无法施行的。优点是,对个人能力的要求不是很高,出现问题可以共同解决。缺陷在于,由于没有专门从事分析、设计工作的人员,所以到后期,当分析、设计工作需要改变时,常会出现忙乱的情况,而克服这种情况的途径之一就是靠团队的默契。 以上两种合作模式,在商业软件开发中并不知道是否有效,但是在学院进行项目开发、课题研究、竞赛合作中是广泛应用的,并且也发挥了一定的效力。比较通常的模式是,一个导师带至少三个博士生,每个博士生带几个研究生,每个研究生带几个本科生。如此形成一个庞大的组织,而形成的过程却是很自然的。一个大项目分到下面就变为了很小的课题。 PS:我能写出这些东西,是因为我长期在学院里生活工作的关系,对于商业软件接触倒是不多,但在我参加峰会期间和一些企业老总接触的经历来看,说得不好听一点,许多老总自己的专业素质实在差了一点,但是却往往握有对项目的生杀大权,软件行业毕竟是一个技术性含量比较高的行业。为了软件业的发展,我在这里奉劝这些人不妨从一些基础重新学起。许多老总可能不喜欢听,一提到学院派的东西就不屑一顾,认为是理论,不实用。但是不要忘记CMM是学院派的理论,《设计模式》其实也是出自学院派的。《系统分析与设计》一书是国外软件学院用来培训系统分析员的教材,还有《实践者的方法》等等,而在推进软件工程发展方面,学院派的贡献更是不可磨灭,由于这篇帖子的重点不在这里,所以这里不再多说。当然国内的教材陈旧、落后,要学习还是看国外的影印版或是一些比较好的译本来得好。学会吸收优秀观点、见解的人是比较聪明的。最后我想说的是:我写这些可能会招来不少嘲笑、讥讽和不理解甚至怨恨,但是只要一万个人中有一人能认同我的观点,我的目的就达到了

posted on 2006-11-27 15:07 健忘猪 阅读(117) 评论(0) 编辑 收藏