【人月神话】02 各司其职与规则

人月神话(二)外科手术队伍、贵族专制、民主政治和系统设计 外科手术队伍的成员与运作、概念的完整性、获得概念的完整性、贵族专制统治和民主政治、在等待时,实现人员应该做什么 阅读详情

在这里插入图片描述
一、外科手术队伍

在接手一个大型项目时,该如何分配你的资源?例如OS/360,Exec 8 、TSS 这样的产品。

软件经理很早就认识到这个问题。从人员角度上,他们认为优秀程序员和较差程序员之间的生产率的差异,但实际测量出的差异令人吃惊。

有人曾对一组具有经验的程序员进行测试,发现最好和最差的表现在生产率上平均比例为10:1,在编程速度和空间上具有5:1。为什么开发成本会如此差别巨大?很关键的一个问题是协作沟通问题。Books常常重复这样的观点:需要协作沟通的人员数量影响着开发成本,因为成本的主要组成部分是相互的沟通和交流,以及更正沟通不当所引发的不良结果,如系统调试。

一拥而上的开发方法是高成本、速度缓慢且低效的。例如,在OS/360项目中,当项目进行到顶峰时,有超过1000人在为它工作,其中包含了程序员、文档编制人员、秘书、管理人员、支持小组、操作人员等等,从1963年到1966年,用在设计、编码、文档上话费了大约5000个人年。而用人月进行等量置换,你会发现这尽然需要25年。那么,一个产品在其最初设计的25年后才出现,你还会对其感兴趣吗?

那么如何处理这样的处境呢?

Mills建议大型项目的每个部分由一个团队专门负责,然后由该团队的每一个成员负责该部分中的某个部分。这就像一场外科手术,每个人各司其职,进行专业化分工。

二、贵族专制、民主政治和系统设计

概念完整性

在欧洲大教堂的建设设计上,不同时期、不同建筑师的风格均存在差异,更甚者,后来还加入了个性化的设计元素。例如,美剧《硅谷第五季》你看到设计字体的某某设计师,将自己的署名刻在他为“互利”设计的字体作品上。

对于计算机系统而言,绝大数系统体现出的概念差异和不一致性远远超过了欧洲大教堂。这通常并不是因为它由不同时代的设计师们开发,而是由于设计被分成了若干人完成的若干任务。

那么,让每位设计师独立的完成会有什么问题呢?

在系统设计中,概念完整性是需要给予重要性考虑的因素。为了反映一系列连贯的设计思路,宁可省略一些不规则的特性和改进,也不提倡独立和无法整合的系统,哪怕他们其实包含着许多好的设计。

获取概念完整性

编程的目的是使计算机更加容易使用。虽然计算机为此装备了语言和各种工具,但是使用这些工具是有代价的:会造成用户很难进行选择,并且用户要记住太多的选项和格式。

只有当这些功能说明节约下来的时间,比花费在学习、记忆和搜索手册上的时间要多时,易用性才会得到提高。现代编程系统节省的时间的确超过了花费的时间,但是近年来,随着越来越多复杂功能的添加,节省和花费的比率正在逐渐减小。

由于目标是易用性,功能与理解上复杂程度的比值才是系统设计的最终测试标准。单是功能本身或者简洁都无法成为一个好的设计评判标准。可是你一定常常见到,这样的标准过去一直被用来作为衡量设计人员工作的出色程度。

要表达意见待完成的事情,常常需要对基本元素进行意料不到的复杂组合。而且,仅仅了解基本要素和组合规则还不够,还需要学习惯用的用法,以及在实际工作中如何进行组合。简洁和直白来自概念的完整性。每个部分必须反映相同的原理需求的一致平衡。语法上,每个部分应使用相同的技巧,语义上,应具有同样的相似性。

因此,易用性实际上需要设计的一致性和概念上的完整性。

贵族专制统治和民主政治

首先,我们先来了解一下什么是“系统体系结构”。

系统的体系结构指的是完整和详细的用户接口说明。对于计算机,它是编程手册;对于编译器,它是语言手册;对于控制程序,它是语言和函数调用手册;对于整个系统,它是用户要完成自己全部所需参考的手册的集合。因此,系统的架构师,犹如建筑设计师,是用户的代言人。架构师的工作,是运用专业技术知识来支持用户的真正利益,而不是维护销售人员、制作者所鼓吹的利益。

但是,你要注意,体系结构必须同具体的实现区分开来。体系结构陈述的是发生了什么,而实现描述的是如何实现。就像一盘时钟,它额结构包括表盘、指针、发条按钮等等。当小孩知道了时钟的外表结构,他能很容易地从手表或教堂上的时钟辨认时间。而时钟的实现,描述了表壳中的事物,如动力、精度控制。

但是,你可能也会认为架构师是贵族,他们通过指定制度来告诉你该怎样工作。可是,是否所有的创造性活动都被这些精英单独占有,而实现人员当当只是机器中的齿轮?我的观点很简单,我不会认为只有架构师才有好的创意。新的概念经常来自实现人员或用户。但是,你必须考虑到如果出现很多非常重要但不兼容的构想,就应该抛弃原来的设计,对不同基本概念进行合并,在合并后的系统上重新开始。

而架构师是否是专制的呢?

如果回答“是”呢?如果你想让系统达成概念上的完整性,你必须回答是。因为需要有人来控制这些概念。架构师长期处在解决用户问题上,实现用户的核心地位。所以,有时候我们可以把这种肯定的看法认为是一种善意的专制。

其实,无论回答是与否,纪律和规则是对行业有益的。记住,“没有规矩,不成方圆”。

CH569 USBSS库函数分析 CH569 USB3.0 解析 阅读详情

相关推荐

RTX4090上跑CenterNet训练

参考实现 url=https://github.com/xingyizhou/CenterNet.git commit_id=5b1a490a52da57d3580e80b8bb4bbead9ef2af96

遗失的神庙 1621

《人月神话》阅读笔记之——第四章:贵族专制、民主政治和系统设计

概念完整性是系统设计中最重要的考虑因素。 功能与理解上的复杂程度的比值才是系统设计的最终最终测试目标,而不仅仅是功能。这意味着保持概念完整性其实也是增加产品的易用性。 如果要得到系统概念上的完整性,就必须有人控制这些概念。这实际上是一种无需任何歉意的贵族专制统治。 项目维护是一个墒增的过程,提出修改意见的人,提出需求的人通常都不是当初做出设计的那批人,如果没有概念完整性作为后续维护的指导原则,项目很快就会混乱不堪。 ...

秋收的博客 488

泛微E9表单建模查询列表勾选后带入流程明细表中

注意:参照下图各项配置,否则会有问题。

泛微二次开发后端知识总结 5307

《人月神话》贵族专制、民主政治和系统设计

引子: 先来看一组法国城市兰斯教堂的图片,整体的风格,给你的第一感觉应该是一致的,尖尖的顶,弧形的窗。 再看一组哥特式教堂,分割线------------------------- 上图中的哥特式教堂,每一代人都增加了自己的创意,整体风格给你的第一感觉很不一致,有些杂乱。 为什么兰斯教堂经过几个世纪的迭代,还能保持一致的风格?因为设计师们在几代人的传承中,保持了设计...

Java技术博文 788

DMA学习笔记

DMA(direct memory access,直接内存访问),是一种避开CPU,可以直接对外设和内存进行访问的技术,可以实现外设与内存、内存之间、外设之间的数据的访问和搬移。

weixin_46220498的博客 3111

如何用AP525 测试输入信号的相位,频响,延时,Pop和卡顿

假设信号不是从AP输出,是功放或者其他的播放设备输出的信号,接入到AP525的输入端。

帮助100万人颠覆负面潜意识,实现人生蜕变,培养1万名潜意识开发导师 2397

《人月神话》(The Mythical Man-Month)4概念一致性:专制、民主和系统设计(System Design)...

主题:概念一致性 (Conceptual Integrity)4. 专制、民主和系统设计(System Design)Chapter 4. Aristocracy, Democracy, and System Design大教堂是艺术史上无与伦比的成就。它的原则既不乏味也不混乱……真正达到了风格上的极致,完成这件作品的艺术家们,完全领会和吸收了以往的成功经验,也完全掌握了他们那个时代的技术,而且在...

AI天才研究院 1万+

2021年全国职业院校技能大赛高职组网络系统管理赛项

S1 Ruijie(config)#switch virtual domain 1 Ruijie(config-vs-domain)#switch 1 Ruijie(config-vs-domain)#switch 1 priority 150 Ruijie(config-vs-domain)#switch 1 description S1 Ruijie(config-vs-domain)#exit Ruijie(config)#vsl-port Ruijie(config-vsl-port)#po

bfq05234214的博客 1133

《人月神话》之贵族专制,民主政治

要获得概念的完整性,设计必须由一个人或具有共识的小组来完成。 有四个问题: 1 。如何得到概念的完整性 2 。是否要有一位杰出的精英,或者说是结构设计师的贵族专制 ….. 3. 如何避免结构设计师产出无法实现或代价高昂的技术规格说明,使大家陷入困境。 4 。如何才能与实现人员就技术说明的琐碎细节充分沟通,以确保设计被正确地理解,并精确地整合到产品中。 转载...

weixin_33841722的博客 156

Android 10.0 kenel中修改rom系统内部存储的大小

在10.0的系统rom产品开发定制中,在对一些产品开发中的配置需求方面,由于在产品后续订单中,有些产品是出口的,但是硬件方面已经定板,时间比较仓促,所以 就需要软件方面在rom内部存储的大小方面作假,修改rom真实的大小容量,所以就需要在kenel驱动部分来修改这部分的值最好了,接下来分析下计算rom容量的 相关代码,然后做出修改

安卓兼职framework和app工程师的博客 1403

TI单芯片毫米波雷达1642demo代码走读(一)

今天我们来实际看下代码。 首先使用CCS软件导入demo工程,工程有两个,一个是ARM的工程,工程名是mmw_mss_16xx;另一个是DSP的工程,工程名为mmw_dss_16xx。我们将这两个工程的主函数打开,分别位于mss_main.c和dss_main.c文件中。 先看mss的主函数,代码如下。我为每行代码都加了中文注释和自己的理解。 int main (void) { Task_Params taskPara...

1万+

《人月神话》:人月神话

在众多软件项目中,缺乏合理的时间进度是造成项目滞后的主要原因,它比其他所有因素加起来还大。   我们不禁要问导致这种普遍性灾难的原因是什么呢?   FrederickP.Brooks.Jr给出了以下几个原因: 1)估算技术缺乏有效的研究,隐含地假设一切都运行良好 2)将进度和工作量相互混淆,隐含地假设人和月可以互换 3)对估算缺乏信息,导致不会有耐心地持续地进行估算这项工作 ...

Java技术博文 1万+

Open3D 点云数学形态学滤波(Python版本)

Open3D 点云数学形态学滤波(Python版本)

dayuhaitang1的博客 1394

【人月神话】01 人月神话

这部写于1974年的软件工程管理经典著作,至今已有43年历史。但是可惜的是,这样的著作至今少之又少,今天我们重温这部经典。或许它已成为一个时代,但依然给当下人之深思。—imagineXie 一、焦油坑 编程系统产品的演进: 程序要转变成编程产品,可以被任何人运行、测试、修复和扩展的程序,在多种平台上运行,程序必须要按照普遍认可的风格来编写,特别是输入的范围和形式必须广泛地适用于所有...

前端进阶之路 | 中大厂、外企、国企内推 | 面试培训 | 简历修改 715

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

关于《人月神话》的读后感

关于《人月神话》的读后感 基本情况: 书名:人月神话 作者:布鲁克斯(FrederickP.Brooks.Jr.) 页数:369 全书字数:316000 出版社:清华大学出版社 出版日期:2002年11月 阅读日期:2020年9月 一、主要内容: 针对每个章节的内容简单地进行了一些总结: 1.焦油坑 将大型的系统开发比喻成史前时代的焦油坑,在开发中不断出现的问题犹如剪不断,理还乱的毛线团,令人在其中痛苦挣扎,而又当从中挣脱一部分时,其中的乐趣远大于苦恼。这本书的价值也就在于提供一些开发的指导意见,

@ZhengLan的博客 1058

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

人月神话心得

人月神话心得 《人月神话》这本书是我大学图书馆借的最后一本书了,是一本it项目管理的书。一直想看,但一拖再拖,其实书不厚。我看的都是40周年纪念版,也是两三天看完了,所以也记一些读书心得吧。 这一本书的一些观念在40年后的今天,使我还是有一点收获的。我读这本书其实很多地方是没有看懂的,但一些观点还是很大地启发了我。特别是《没有银弹》的这一章,更是对以前的一些编程疑惑有了一些答案,明白了人工智能...

ferris_chan 2048

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

人月神话-学习记录

大型软件项目管理面临概念完整性缺失、进度估算失准等核心挑战。本文揭示了"焦油坑"现象:看似独立的问题相互纠缠导致团队效率低下。通过分析程序、编程产品、编程系统和编程系统产品的成本差异(高达9倍),指出人月神话的误区——盲目增员反致进度延迟(Brooks法则)。提出外科手术团队模式:由首席程序员(外科医生)主导,配合专业分工的10人团队,既能保持设计一致性,又能降低沟通成本。测试应占总周期1/4,而编码仅需1/6,颠覆传统认知。该研究为大型软件工程管理提供了量化框架和实践范式。

fansv587的博客 1261

《人月神话》浅读一下吧(上)

焦油坑是作者用来形容大型系统开发的一个概念。史前时代,恐龙、猛犸象、剑齿虎这些大型食肉动物碰到焦油坑也是没有办法挣脱的,而且越用力就越容易被沉入坑底。而在项目中好像没有任何一个单独的问题会导致困难,每个问题都能获得解决,但是当他们相互纠缠和累计在一起的时候,团队的行动就会变得越来越慢。

weixin_47631612的博客 2133

《人月神话》笔记

人月神话(The Mythical Man-Month) 无论多少个母亲,孕育一个生命都需要十个月。

mattkang 4629

人月神话

读前,完全不知道应该从这章中会得到点什么. 缺乏合理的进度安排是造成项目滞后的最主要原因; 对技术缺乏有效的研究,”一切都将良好运行”的美好假设; 采用的估算技术隐含的假设人和月可以互换,错误的将进度和工作量相互混淆。不止人月,人和人互换的代价也是惨重的。 由于对自己的估算缺乏信心,软件经理通常不会有耐心持续的估算这项工作。说到痛点了。 对经度缺少跟踪和监督,理想中经度应该被跟踪程序应该被监督,通...

VinagerJoe的博客 387

人月神话(2)人月神话

人月神话(2)人月神话 思维导图 概要 造成项目滞后的主要原因:缺乏合理进度安排 五大原因导致进度安排的不合理 假设一切都将良好的运作 错误的认识人和月;进度和工作量的相互混淆 错误估算工作量 对于进度缺乏跟踪和监督 当进度发生偏移的时候,下意识增加人力 乐观主义 错误假设:一切都将运作良好,每一项任务只会花费它所“应该”花费的时候 创造性活动分为三个阶段:构思、实现和交流 计算机编程的介质,相对于其他创造性活动需要的介质更容易掌握所以我们期待实现过程中不会碰到困难。而且,我们在构思的时候就是有缺陷的

zxy5691419的专栏 652

读《人月神话》

人月神话的英文是 《Man-Month Mythical》,人月其实是软件工程管理工程量的单位,一个人每月的工作量,其实是想说明是使用人月的方式来估算大型项目是不靠谱的,只是一个神话的方式。而作者FrederickP.Brooks,Brooks被认为是“IBM360系统之父”,他担任了360系统的项目经理,以及360操作系统项目设计阶段的经理。凭借在上述项目的杰出贡献,他、Bo...

weixin_30762087的博客 156

《人月神话》之章节笔记

      初次听到“人月神话”这个词是在大二的时候,当时以为是人和月亮的故事,后来看到这本书的英文名(The Mythical Man—Month)时,才知道原来是月份的月,于是猜想,这可能是一本关于软件开发过程管理的书籍,讲的是软件开发人员与开发月份的适度安排问题,下面就每个章节本人的理解做小摘录和总结。      第1章:焦油坑       1.表面上看似单独可行的问题,当他们相互纠结和累积在一起的时候会触发预料之外的问题,最终导致软件不可交付。      2.单独的程序本身没有任何价值,有两种途径使

Code The Life 1006

《人月神话》读后

       当我捧起《人月神话》,马上就被深深的吸引了。书中很多细微之处都对我的思维造成了冲击。上一本给我类似感觉的书是那本四人帮的《设计模式》,已经很久没有看到这么好的书了,郑重推荐。       把感触比较深的几点记下来,顺便整理一下自己的思路,与大家分享。1,保持设计的概念完整。无论对小软件还是大软件,都必须由一个设计师主导,最多两个人讨论来共同完成软件的整体设计。作为一个软件,一

caton2的专栏 1095

读书笔记——《人月神话》

文章目录引言内容摘录第1章 焦油坑随笔第2章 人月神话随笔第3章 外科手术队伍随笔第4章 贵族专制、民主政治和系统统计资源分享 引言 这本书是一本传授软件工程项目管理的书籍,是Brooks在IBM公司任职System计算机系列以及其庞大软件系统OS项目经理时的实践经验总结。 这本书个人认为更适合具有一定项目经验、工作经验或者团队协作经验的人阅读,也适合创业人士阅读,不然很容易具有一种疏离感(别问我...

技术更新每天 615

《人月神话》读后感

为什么80%的码农都做不了架构师?>>> ...

weixin_33813128的博客 153
上一篇: 【人月神话】01 人月神话
下一篇: 【虚拟DOM】浅析 虚拟DOM
蟹蟹蟹风流
蟹蟹蟹风流 优质创作者: 编程框架技术领域 优质创作者: 编程框架技术领域 领域专家: 前端开发技术领域 领域专家: 前端开发技术领域
博客等级 码龄11年 3万+粉丝 396原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

蟹蟹蟹风流

期望和你分享一杯咖啡

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值