重读《人件》Peopleware -(5)Ⅰ管理人力资源Ⅳ-质量—若时间允许
20世纪的心理学理论认为,人类的性格主要由少数几个基本本能所主导:生存、自尊、繁衍、领地等。这些本能直接嵌入大脑的“固件”中。我们可以在没有强烈情感的情况下理智地考虑这些本能(就像你现在正在做的那样),但当我们感受到它们时,总会伴随着激情。即使是对这些内在价值的轻微挑战,也可能令人感到不安。
每当强烈的情感被激起时,这通常意味着大脑中的某个本能价值受到了威胁。一个缺乏经验的管理者可能会认为工作可以完全不涉及人们的情绪而完成,但如果你有一定的管理经验,你就会知道情况恰恰相反。我们的工作为我们提供了大量表达情感的机会。很可能你能想到至少一个因纯粹的工作相关事务引发情绪波动的例子。现在试想一个例子,并问自己(可能是第N次):这些情绪究竟从何而来?在不了解你的具体事件的情况下,我们可以打赌,受到威胁的自尊心是一个因素。虽然个人生活中有许多不同的情感反应原因,但在职场上,引发情绪的主要因素是受到威胁的自尊心。
我们都倾向于将自尊与我们生产的产品质量紧密相连——不是产品的数量,而是质量。(不知为何,生产大量的平庸产品并不能带来多少满足感,尽管这有时正是某一情境所需。)任何可能危及产品质量的行动,都可能激起员工对你直接的负面情绪。
追求卓越的逃离
管理者通过设定无法达到的期限来危及产品质量。他们并不这样看待自己的行为;他们认为自己是在向员工抛出有趣的挑战,帮助他们追求卓越。然而,有经验的(或已变得世故的)员工却明白事情并非如此。他们知道,在紧迫的时间压力下,他们的努力会被过度限制。没有资源调整的空间以确保按时交付。他们既没有增加人手的选择,也没有减少功能的余地。唯一能妥协的就是质量。长期处于极端时间压力下的员工会开始牺牲质量。他们会把问题暂时搁置,留待日后处理或转嫁给最终用户。他们会交付不稳定且不完整的产品。他们会讨厌自己所做的这一切,但他们还能有什么选择呢?
有些管理者会强硬地回应这一切:“我的一些员工会在任务上无休止地修补,名义上是为了‘质量’。但市场并不在乎那么多的质量——它想要的是昨天就能交付的产品,即便状态粗糙也无所谓。”关于市场,你可能说的没错,但迫使人们交付不符合其自身质量标准的产品几乎总是个错误。
我们管理者往往将质量视为产品的另一个属性,可以根据市场需求提供不同程度的质量。它就像是倒在自制圣代上的巧克力酱:有人要多些,有人要少些。
建造者(执行者)对质量的看法则完全不同。由于他们的自尊与产品质量紧密相连,他们倾向于自行设定质量标准。最低限度也要达到他们过去所能实现的最佳水平。这通常是一个比市场要求和愿意支付的价格更高的标准。
“但市场不在乎那么多的质量。”读到这句话时,你应该感到心痛,因为这几乎总是真的。人们可能用美好的言辞谈论质量或对其缺失抱怨不已,但当真正需要为质量买单时,他们的实际价值观便显现出来。例如在一个软件项目中,你可以向用户展示这样的数据:“根据实证证据推断,目前该产品的平均故障间隔时间( MTBF,Mean Time Between Failure )为大约1.2小时。如果我们今天就交付,它的稳定性会很差。如果再给我们三周时间,我们可以预测平均故障间隔时间( MTBF )约为两千小时,这是一个相当不错的结果。”预计你会看到一些世界级的犹豫不决。用户会解释说他们与其他任何人一样重视质量,但三周时间就意味着真金白银^_^。
说到软件行业,它已经让客户习惯了接受内部开发的应用程序每百行代码有一到三个缺陷!讽刺的是,这一糟糕记录常常归咎于建造者(执行者)的低质量意识。也就是说,那些被指责为“为了‘质量’而无休止地修补程序”的人,当质量低下时也会受到责备。让我们把责任归到正确的地方。谁付钱给吹笛人,谁就在要求低质量的曲子。通过经常将开发过程置于极端的时间压力之下,并接受低质量的产品,软件用户社区显示了其真实的质量标准。
所有这一切听起来像是对软件用户以及市场标准的批判,但不必这样理解。我们必须假设支付我们工作费用的人有足够的理智来在质量和成本之间做出合理的权衡。这里的关键在于,客户对产品所需的质量感知往往不如建造者那么高。存在一种自然的冲突。降低产品质量可能会导致一些人不再购买,但由此产生的市场份额下降通常会被每个售出项目的利润增加所抵消。
允许买家而非建造者设定质量标准,这就是我们所说的“逃避卓越”。基于市场的质量标准似乎只有在忽略其对建造者态度和效率的影响时才有意义。
从长远来看,基于市场的质量成本更高。这里的教训是:
远超终端用户需求的质量是提高生产力的一种方式。

如果你对此表示怀疑,想象这样一个思想实验:询问一百位路人哪个组织、文化或国家以高质量著称。我们预测超过半数的人会回答:“日本。”现在再问不同的百人,哪个组织、文化或国家以高生产力著称。同样,多数人会提到“日本”。这个公认的高质量领导者同时也以其高生产力闻名。
等等,高品质与高生产力共存怎么可能?这违背了普遍的观点,即增加产品的质量意味着你需要花费更多来建造它。对于这个现象的一个线索,可以参考田岛和松原两位最受尊敬的评论家对日本现象的描述:
在日本,价格和质量之间的权衡并不存在。反而,高质量能够降低成本的观点被广泛接受。

质量是免费的,但...
菲利普·克罗斯比在他的著作《质量是免费的》(1979年出版)中提出了同样的概念。在这本书中,克罗斯比给出了许多例子和一个合理的理由,证明让建造者设定自己满意的质量标准会导致生产力提升,足以抵消改善质量的成本。
我们有一种不太好的预感,克罗斯比的书在工业界带来的负面影响大于正面影响。问题是,大多数管理者并没有阅读过这本书,但每个人都听说过它的标题。标题成为了全部的信息。各地的管理者都在热情洋溢地谈论质量:“质量的上限是天空,我们要尽可能多地获得免费的质量!”这种态度与克罗斯比倡导的内容恰恰相反。
真正关于质量和生产力相互关联的效果信息需要用稍微不同的术语来表述:
质量是免费的,但这只适用于那些愿意为此付出高昂代价的人。

一个只愿意为质量预算零美元零美分的组织,永远会得到它应得的质量。一项“质量——若时间允许”的政策将确保没有任何质量进入产品。
惠普公司长期以来一直是通过高质标准提高生产力而受益的典范。从创立之初,该公司就把质量奉为一种文化。在这种环境中,很少听到开发者声称需要更多时间和金钱来生产高质量产品。结果是,开发者们知道自己属于一个提供超出客户需求质量的文化中的一部分。
否决权的力量
在日本的一些公司中,特别是日立软件和富士通的部分部门,项目团队对交付他们认为尚未准备好的产品拥有有效的否决权。即便客户愿意接受次品,团队也可以坚持等到符合自身标准后再交付。当然,项目经理在那里承受的压力与我们这里并无二致:他们被催促着尽快交付任何成果。但是,这些日本管理者已经建立了一种足够强大的质量文化,深知不应该逼迫员工接受较低的质量标准。
你能赋予你的团队对交付的否决权吗?当然,这需要钢铁般的意志,至少在第一次实施时是如此。你最担心的可能是帕金森定律会对你不利——这是一个重要到足以单独成章的话题。
赋予团队这样的权力并不容易。首先,它挑战了传统的管理思维,即尽可能快地向市场推出产品。其次,它可能引发对帕金森定律(即工作会膨胀至占满所有可用时间)的担忧,导致项目拖延。因此,要成功实施这一策略,管理层必须建立起坚定的信任和支持体系,并且准备好面对初期可能出现的时间和成本上的不确定性。
此外,这种做法还反映了对长期利益的重视。虽然短期内可能会因为追求高质量而延迟交付,但从长远来看,高品质的产品能够增强公司的声誉和客户的忠诚度,最终带来更大的商业成功。因此,赋予团队否决权不仅仅是对产品质量的一种承诺,也是对企业文化和价值观念的一次深刻变革。
相关文章:
重读《人件》Peopleware -(5)Ⅰ管理人力资源Ⅳ-质量—若时间允许
20世纪的心理学理论认为,人类的性格主要由少数几个基本本能所主导:生存、自尊、繁衍、领地等。这些本能直接嵌入大脑的“固件”中。我们可以在没有强烈情感的情况下理智地考虑这些本能(就像你现在正在做的那样),但当我…...
文献总结:AAAI2025-UniV2X-End-to-end autonomous driving through V2X cooperation
UniV2X 一、文章基本信息二、文章背景三、UniV2X框架1. 车路协同自动驾驶问题定义2. 稀疏-密集混合形态数据3. 交叉视图数据融合(智能体融合)4. 交叉视图数据融合(车道融合)5. 交叉视图数据融合(占用融合)6…...
制造一只电子喵 (qwen2.5:0.5b 微调 LoRA 使用 llama-factory)
AI (神经网络模型) 可以认为是计算机的一种新的 “编程” 方式. 为了充分利用计算机, 只学习传统的编程 (编程语言/代码) 是不够的, 我们还要掌握 AI. 本文以 qwen2.5 和 llama-factory 举栗, 介绍语言模型 (LLM) 的微调 (LoRA SFT). 为了方便上手, 此处选择使用小模型 (qwen2…...
如何查询node inode上限是多少?
在 Linux 系统中,inode 上限由文件系统的类型和格式化时的参数决定。不同文件系统(如 ext4、XFS)有不同的查询方法。以下是详细操作步骤: 1. 确认文件系统类型 首先确定目标磁盘分区的文件系统类型(如 ext4、XFS&…...
Redis核心功能实现
前言 学习是个输入的过程,在进行输入之后再进行一些输出,比如写写文章,笔记,或者做一些技术串讲,虽然需要花费不少时间,但是好处很多,首先是能通过输出给自己的输入带来一些动力,然…...
驱动学习专栏--字符设备驱动篇--1_chrdevbase
字符设备驱动简介 字符设备是 Linux 驱动中最基本的一类设备驱动,字符设备就是一个一个字节,按照字节 流进行读写操作的设备,读写数据是分先后顺序的。比如我们最常见的点灯、按键、 IIC 、 SPI , LCD 等等都是字符设备&…...
Python及C++中的列表
一、Python中的列表(List) Python的列表是动态数组,内置于语言中,功能强大且易用,非常适合算法竞赛。 1. 基本概念 定义:列表是一个有序、可变的序列,可以存储任意类型的元素(整数…...
Oracle DROP、TRUNCATE 和 DELETE 原理
在 Oracle 11g 中,DROP、TRUNCATE 和 DELETE 是三种不同的数据清理操作,它们的底层原理和适用场景有显著差异 1. DELETE 的原理 类型:DML(数据操作语言) 功能:逐行删除表中符合条件的数据,保留…...
ida 使用记录
文章目录 伪代码-汇编hexstring快捷键 伪代码-汇编 流程图界面——F5——伪代码界面——再点Tab——流程图界面——再按空格——汇编界面流程图界面——空格——汇编界面 hex view - open subviews - hex dump string view - open subviews - string快捷键: sh…...
【连载3】基础智能体的进展与挑战综述
基础智能体的进展与挑战综述 从类脑智能到具备可进化性、协作性和安全性的系统 【翻译团队】刘军(liujunbupt.edu.cn) 钱雨欣玥 冯梓哲 李正博 李冠谕 朱宇晗 张霄天 孙大壮 黄若溪 2. 认知 人类认知是一种复杂的信息处理系统,它通过多个专门的神经回路协调运行…...
MacOs java环境配置+maven环境配置踩坑实录
oracl官网下载jdk 1.8的安装包 注意可能需要注册!!! 下载链接:下载地址点击 注意晚上就不要下载了 报错400 !!! 1.点击安装嘛 2.配置环境变量 export JAVA_HOME/Library/Java/Java…...
【Git】--- 企业级开发流程
Welcome to 9ilks Code World (๑•́ ₃ •̀๑) 个人主页: 9ilk (๑•́ ₃ •̀๑) 文章专栏: Git 本篇博客我们讲解Git在企业开发中的整体流程,理解Git在实际企业开发中的高效设计。 🏠 企业级开发流程 一个软件从零开始到最…...
SAP系统客户可回收包材库存管理
问题:客户可回收包材库存管理 现象:回收瓶无库存管理,在库数量以及在客户的库存数量没有统计,管理混乱。 解决方法: 客户可回收包装材料在SAP有标准的解决方案,在集团尚未启用该业务,首先…...
蓝桥杯嵌入式历年省赛客观题
一.第十五届客观题 第十四届省赛 十三届 十二届...
JDK的卸载与安装
卸载JDK 删除java的1安装目录 卸载JAVA_HOME 删除path下关于java的路径 java -version查看 安装JDK 百度搜索JDK,找到下载地址 同意协议 下载电脑对应版本 双击安装 记住安装路径 配置环境变量 我的电脑–>右键–>属性–>高级系统设置 环境变…...
八股系列(分布式与微服务)持续更新!
八股系列(分布式与微服务) 分布式系统的概念 分布式系统是由多个节点组成,节点之间通过网络协议传递数据,对外表现为一个统一的整体,一个节点可以是一台机器或一个进程;分布式系统的核心功能 资源共享&…...
【源码】Mybatis源码
引言 MyBatis 作为 Java 开发中广泛使用的持久层框架,其高效且灵活的数据库操作能力备受开发者青睐。在日常开发中,我们熟练运用 MyBatis 的各种功能来实现数据持久化,但深入探究其源码,能让我们更透彻地理解它的工作原理&#…...
解决2080Ti使用节点ComfyUI-PuLID-Flux-Enhanced中遇到的问题
使用蓝大的工作流《一键同时换头、换脸、发型、发色之双pulid技巧》 刚开始遇到的是不支持bf16的错误 根据《bf16 is only supported on A100 GPUs #33》中提到,修改pulidflux.py中的dtype 为 dtype torch.float16 后,出现新的错误,这个…...
LabVIEW驱动开发的解决思路
在科研项目中,常面临将其他语言开发的定制采集设备驱动转换为 LabVIEW 适用形式的难题。特别是当原驱动支持匮乏、开发人员技术支持不足时,如何抉择解决路径成为关键。以下提供具体解决思路,助力高效解决问题。 一、评估现有驱动死磕的可…...
[英语] abominable、detestable、despicable、odious、contemptible的区别
关于 abominable 与其他近义词的辨析 abominable 的核心含义是“因极端恶劣或违背道德而令人憎恶”,其情感强度较高,常带有道德批判意味。以下是其与常见近义词的区别及典型用法: 1. abominable vs. detestable abominable:强调…...
七、Qt框架编写的多线程应用程序
一、大纲 学习内容:使用两个线程,分别点击两个按钮,触发两个不同的效果 所需控件:两个button、三个label 涉及知识点:多线程、Qt的connect机制、定时器、互斥锁 需求: 1,多线程定时计数&#x…...
MATLAB求和∑怎么用?
MATLAB求和∑怎么用? 一:题目:求下列方程的和 二、代码如下 1.syms函数 (方法一) 代码如下(示例): 1. syms x 2. symsum((x.^22*x).^3,1,100) 3. 2.直接用循环 (方法二) 代码如下&am…...
项目二 使用miniedit创建拓扑
一、项目需求分析: 1. 在ubuntu的桌面环境中运行Mininet的图形化界面2. Mininet图形化界面中搭建拓扑并设置相关的设备和链路属性3. Floodlight中查看拓扑4. 完成Mininet的测试 二、项目实施步骤 1. 运行Mininet图形化界面 在“~/mininet/examples”目录下有一m…...
Docker 镜像 的常用命令介绍
拉取镜像 $ docker pull imageName[:tag][:tag] tag 不写时,拉取的 是 latest 的镜像查看镜像 查看所有本地镜像 docker images or docker images -a查看完整的镜像的数字签名 docker images --digests查看完整的镜像ID docker images --no-trunc只查看所有的…...
0x02.Redis 集群的实现原理是什么?
回答重点 Redis 集群(Redis cluster)是通过多个 Redis 实例组成的,每个主节点实例负责存储部分的数据,并且可以有一个或多个从节点作为备份。 具体是采用哈希槽(Hash Slot)机制来分配数据,将整…...
浏览器多开
使用浏览器的用户功能,创建多个用户即可完成浏览器多开的需求,插件等相对独立 需要命名 然后就可以通过多个用户切换来实现多开了,不同任务选择不同用户...
Python中NumPy的逻辑和比较
在数据科学和科学计算领域,NumPy是一个不可或缺的Python库。它提供了高效的多维数组对象以及丰富的数组操作函数,其中逻辑和比较操作是NumPy的核心功能之一。通过灵活运用这些操作,我们可以轻松实现数据筛选、条件判断和复杂的数据处理任务。…...
20250412_代码笔记_CVRProblemDef
文章目录 前言一、get_random_problems 函数分析二、augment_xy_data_by_8_fold 函数分析代码 前言 该笔记分析代码的功能是生成随机VRP问题的数据,包含仓库坐标、节点坐标和节点需求。 对该代码进行改进 20250412-代码改进-拟蒙特卡洛 一、get_random_problems 函…...
机器学习(3)——决策树
文章目录 1. 决策树基本原理1.1. 什么是决策树?1.2. 决策树的基本构成:1.3. 核心思想 2. 决策树的构建过程2.1. 特征选择2.1.1. 信息增益(ID3)2.1.2. 基尼不纯度(CART)2.1.3. 均方误差(MSE&…...
Redis常用数据结构和应用场景
一、前言 Redis提供了多种数据结构,每种结构对应不同的应用场景。本文对部分常用的核心数据结构和典型使用场景作出介绍。 二、String(字符串) 特点:二进制安全,可存储文本、数字、序列化对象等。场景: 缓…...
