在软件测试领域,恐怕没有哪个概念比“质量”更具争议性了。我曾认真考虑过就此写一本书,但最终意识到那可能是个比写这篇文章更大的错误。值得庆幸的是,我并没有动笔,而这篇博客,希望是我关于这个话题的最后一篇文章。
下面,我想提出一个关于质量的思考模型。
质量 = 工程化 + 体验化
上周,我在 LinkedIn 上发表了一个颇具争议的观点:我不相信“质量工程”是可行的。这篇文章旨在更详细地阐述我的立场。你可以不同意,但请先听我把话说完。
我将以一支钢笔为例,来解释我如何理解“质量工程”。
钢笔的架构

一支钢笔的每个部件都必须经过恰当的工程设计和制造,否则整支笔可能无法正常工作。其中某些部件尤为关键:例如,如果笔尖损坏,整支笔就报废了;但如果笔帽只是轻微开裂,你依然可以正常书写。
我认为,那些自称为“质量工程师”的人,关注的重点正在于此。他们致力于确保软件架构中的每个部分都能良好运行,同时也着眼于整体。他们因此有信心宣称自己的软件质量优良,因为他们审视了他们认为所有相关的质量属性,并采取措施对这些属性进行“工程化”,直到达到他们满意的标准。
当然,他们也会考虑用户满意度,但这并不妨碍他们坚信“质量”是可以被工程化的。
而我永远无法认同这一点。对我来说,这种想法感觉就是错的。我无法在软件开发完成后,就断言其质量“足够好”。我们对自己产品的了解实在有限,根本不足以做出如此绝对的论断。
质量的体验
软件作为一个整体,其表现往往不尽如人意。科技行业的历史记录,并不足以支撑“我们可以工程化质量”这一论断。
要求软件达到“中性质量”都已是一种奢望,糟糕的软件才是常态。 作为测试社区,我们未能让软件变得更好。同样,开发人员也未能做到。我们同舟共济。
我坚信,大多数软件开发团队的成员都在竭尽全力创造更好的产品。
体验化
这就引出了我模型中的下一个部分:质量是被体验的。
再以钢笔为例。你可以制造一支在技术上完美无瑕的钢笔,但它仍可能被某些人所厌恶。这是因为使用钢笔是一种高度主观的体验。你喜欢哪支笔,取决于你的心情、个人偏好以及对该品牌的其他体验。
我有一支日本笔(Sailor Pro Gear),它的笔尖带有独特的“刮纸感”。这是钢笔爱好者中一个颇具争议的特性。有时我喜欢这种感觉,有时则不然。有些人根本不喜欢刮纸的笔尖,对他们而言,大多数日本笔都会感觉“有问题”。
还有些人会完全避开某些品牌,可能是因为其奇怪的营销策略(例如 Lamy 推出哈利·波特联名款,导致一些消费者不再购买其产品)。对于这些人来说,Lamy 能否工程化出高质量的笔并不重要;在他们心中,这个品牌本身就与“质量”背道而驰。
读到此处,你或许赞同,或许反对。我确信有些人会对“质量是被体验的且无法被工程化”这一观点嗤之以鼻,并认为:既然这超出控制,何必在意?但对我而言,这恰恰是质量等式中更为重要的一环!
我并非极端到会说一支技术精良但不符合我当下心情的笔就是“质量差”。我只是想说,这是质量故事中不可或缺的一部分,而你无法通过工程手段控制它。这一点至关重要。
测试的焦点
我可以接受“质量体验在很大程度上不受我控制”这一事实。我并不觉得有必要掌控一切。
作为一名测试人员,我的核心工作是发现那些威胁产品价值的问题。我所做的许多工作,或许都可以归入“质量工程”的范畴,但我只是不选择这个标签。测试作为一个角色、一份职业,本身并无问题。
质量涅槃
最后,我用这个质量模型绘制了一张维恩图。如果一个产品既工程精良,又体验愉悦,你会称之为什么?质量涅槃吗?
这种情况发生过吗?你在软件中体验过吗?

然而,现实情况或许更接近下图:

大多数软件都很糟糕。即使有测试人员或质量工程师(无论你如何称呼)参与其中。
质量并非来自工程化;天哪,甚至可以说大多数软件几乎毫无质量可言。对多数公司而言,这甚至不是重点。
当然,他们声称自己关心质量,但行动胜于雄辩。他们只关心利润,并专注于在短期内实现最大化。
结论
恐怕在晚期资本主义的框架下,真正的“质量工程”并不多见。只有少数人,在一个大体上已不再关心质量的世界里,依然坚持做着有益的工作。所以,不,如果你自称质量工程师,我并非对你生气;我只是觉得,这或许有些一厢情愿。
好了,这就是本周的文章。我要回去用我的钢笔写作了,这无疑让我置身于自己的“质量涅槃”之中。干杯。
