衡量无法衡量的事物





0/5 (0投票)
本文讨论了评分细则(rubrics)对于软件产品的重要性——这些软件体验的集合,以及需求和缺陷计数,都可以用于提高产品的整体质量。
衡量无法衡量的事物
在这个混乱的软件世界里,您是否曾停下来思考,是什么造就了一次令人难忘的用餐体验?是的,我说的就是用餐体验。您可能会问,软件和美食之间可能有什么联系呢?嗯,让我们看看。
是什么让一顿饭令人愉快和难忘?也许厨师是天才,拥有一群才华横溢的年轻烹饪学徒,他们都热切地追求在最严格的标准下创造和执行最巧妙的食谱。假设厨房是现代的辉煌典范。最先进的电器和所有最好的厨具,在对的人手中,肯定会增加您享用美餐的机会。也许餐厅本身很特别,有着足够的魅力和氛围,让您想搬进这家餐厅。服务是否及时周到?这总是很重要。最好的食材当然是必不可少的。所有这些以及更多因素共同造就了在您最喜欢的餐厅度过一个难忘的夜晚。此外,如果客户的期望未能得到满足,您体验的乐趣就会大打折扣,您将不太可能再次光顾。
我相信,软件也大致如此。在最好的世界里,人们不仅仅是使用软件,他们是在体验软件。
在软件行业,我们将质量感等同于我们发现的缺陷数量和严重程度。我们发现和修复的缺陷越多、越严重,我们就越有信心我们软件的质量。这是一个合理的想法,因为高缺陷数量和严重程度几乎肯定会降低我们的销量。因此,我们在项目生命周期中衡量缺陷的数量和严重程度,并相信这两者越低,我们的软件质量就越高。但这信心的前提是,我们理解客户想要什么,并且已经根据这种理解彻底地测试了我们的软件。这种理解由我们设定的需求来定义。应该说,需求来自于对我们客户期望,甚至是潜在客户期望的成熟、深入的了解。但在现实中,需求往往是与客户部分或完全隔离设定的,或者以某种方式不完整、过于肤浅,甚至被视为必须在真正的工作开始前摆脱的必要之恶。
继续我们的美食类比,软件界的优秀厨师们往往会做出复杂、精美的菜肴,味道很棒,但却提供给那些期待略有不同的人。也许他们想要配菜而没有得到,或者某些味道毁了本已很棒的菜肴。有时,厨师会在菜肴中添加一些东西,虽然很巧妙,但完全不必要,更糟糕的是,它会干扰整顿饭的体验。即使这些情况并非如此,而且大多数情况下,软件需求都是通过大量客户和潜在客户的参与,彻底而完整地编写的,并且被虔诚地遵循,但仍然会缺少一些东西。正如一顿美餐的体验不仅仅在于一本写得好的食谱,软件的体验也不仅仅在于完善的需求。需求很重要,但它们只提供了一部分画面。如果我们希望我们的客户不仅仅是使用我们的软件,而是体验它,并且如果我们明白要做到这一点,我们需要的不仅仅是一本写得好且被遵循的食谱,那么我们就必须得出结论:软件质量不仅仅是计算缺陷。我们中的任何一个人都可能辨别出美味的炒蛋和糟糕的炒蛋,但仅凭这些知识并不能告诉您制作它的餐厅是否会成功。
假设两个不同的软件团队为同一组目的和同一组客户创建了两款独立的软件。现在想象一下,这两款软件都按照相同、定义完善的需求进行了充分的测试,并且都受到了同等的严苛对待,没有发现任何缺陷。此外,想象一下客户可以自由选择他们想要使用的软件,并且这两款软件都对所有客户免费提供且同样易于访问。假设经过一段时间,发现大多数客户使用的软件比另一款软件更频繁。我们不关心两者拥有完全相同支持者的情况,因为我们想生产比竞争对手更受欢迎的软件。那么,较不受欢迎的软件出了什么问题?
只有两种结论:
- 这两款软件是相同的,因此选择其中一款是纯粹的偶然,或者
- 两款软件之间的差异全部或部分原因导致了大多数用户选择其中一款。
这两款软件不可能是相同的,尽管它们是根据完全相同的需求构建的。如果它们是相同的,那就意味着构建它们的需求已经被如此彻底和清晰地传达,以至于两个不同的软件团队别无选择,只能制造出相同的产品。对于任何真正复杂的软件来说,这是不可能的。解释总会影响结果,而且不一定总是错误地影响。一定存在一些差异,会使更多人倾向于选择其中一款,而这些需求捕获中的差异并不总是由缺陷计数或严重程度来表示。当我们放宽思想实验的非现实限制时,这个结论只会变得更强——在现实世界中它变得更真实。
这个思想实验是一个极端的例子。但它简化了每个软件公司面临竞争对手的视角。是什么让客户在软件体验上选择一款而不是另一款?令人不安的是,缺陷计数和遵循良好的需求可能不足以帮助我们找出答案。我们接下来该怎么办?
作为工程师和技术型人士,通过培训和经验,我们知道如果没有测量量,我们就无法充分应对一种情况。这就是为什么我们如此紧密地依赖缺陷计数,而且并非没有充分的理由。它是一个可衡量的数值——上升和下降的反馈,引导我们并显示我们在哪里需要纠正方向。如果我们承认,即使有了完善的书面需求,充分解决针对这些需求发现的缺陷,也不能单独保证我们软件的成功,那么我们该怎么办?如果仅仅依靠缺陷和需求还不够,我们应该以何种测量为指导?要真正理解如何制作出色的软件,我们必须学会如何衡量并认真对待整个软件体验。
软件体验,就像用餐体验一样,是非常主观的。虽然确实没有一款软件能吸引所有人,但在许多情况下,某些软件会受到绝大多数人的青睐,原因也各不相同。正是这种现象如此难以通过简单的需求来捕捉。对于最成功的软件,大多数客户都有积极的体验,但他们的体验并不总是完全相同。作为优秀软件的生产者,我们如何衡量客户使用我们软件的体验,并利用这些测量结果以积极的方式改进我们的软件,当软件体验本身如此主观时?
在许多餐厅的餐桌上,甚至在餐桌本身上,顾客可能会找到小调查卡,邀请他们评价用餐体验。这些卡通常由顾客填写,然后交给服务员,或放入指定的容器中。对于大型连锁餐厅,用餐体验评估通常采取邀请参与在线或电话调查的形式。理想情况下,餐厅管理层会仔细审查这些用餐体验信息,以持续努力改善所有人的用餐体验。餐厅希望留住客户并吸引更多客户。这是简单的商业道理。然而,他们知道您作为客户的满意度不仅仅取决于您的食物,而这种理解总是体现在您被问到的问题类型中:服务的及时性、餐费、餐厅的清洁度等。总之,您与餐厅的整体体验。对于每个评估项目,您通常都会得到一组值来对应您在该领域的满意度水平。您不认为这些信息会被计算、排序、关联,即被测量吗?事实上,这是衡量大量主观体验并将其转化为可操作改进项目的一个绝佳方法。
我知道这听起来很简单,近乎简单化,但为什么软件公司不这样做呢?如果建立一份关于软件体验的精心且周密设计的调查问卷,并让您的许多客户填写,这难道不会在超越单纯的需求或缺陷的基础上,帮助您走向制作出色软件的道路吗?
在您回答之前,请考虑以下几点。在学术界,这种技术多年来一直被用作将主观评价转化为可操作的量化指标,并从幼儿园到研究生院建立学生课程的标准评价方法。我们迄今为止所确定的体验调查类型,在学术界实际上被称为“评分细则”(rubric)。评分细则用于以公平透明的方式评估论文、项目和演示文稿。学生可以使用评分细则准确地找出他们需要改进的地方以及改进的程度。教师使用评分细则来确保,对于需要主观评价的作业,每个人的工作都以相同的标准和方式进行衡量。这是一种将主观评价转化为公平、可操作测量值的广泛接受的方法。
评分细则是什么样的?它可以有多种形式,但最常见的是一个网格,其中行代表评估领域,列代表每个评估领域的评估分数。每个评估领域的单个分数可以根据评估者的看法,根据评分细则的制定方式进行总计、平均甚至加权。软件也可以使用这种类似的东西。事实上,它已经在使用中了。
IBM Rational Performance Tester 测试团队与其开发团队合作,制定了一项评分细则,用于衡量他们和他们的客户对 IBM Rational Performance Tester 的体验。

最左列中的每一行都定义了感兴趣的区域。每个项目的相应体验评级向右延伸,从最积极到最不积极。每个评级都关联一个数值,并根据其关联项的重要性进行加权。每个项目的数值被平均,并计算出分数。

Rational Performance Tester 测试团队开发了一个 Web 工具,用于收集这些主观数据。任何测试人员、开发人员或到访的客户都可以访问该网页,并根据他们当时对产品的体验填写评分细则。还可以记录有关体验的日期、时间、性质以及用户对每个项目可能提出的任何评论。通常,每位测试人员在完成测试场景后,都会根据他们对产品的最新体验填写一份评分细则。

在任何时候,已填写的评分细则的集合都可以被汇总,并构成在特定时间范围内测试团队及其他人对产品体验的总体衡量。任何一份单独填写的评分细则不如它们集合起来的价值大。数据可以以一种显示需要改进或超出预期的产品体验领域的方式呈现。通过这种方式,软件体验的整个集合,以及需求和缺陷计数,都可以用来提高产品的整体质量。
当测试人员在产品中遇到一些问题时,这些问题并不完全违反书面需求,或者以其他方式难以用简单的缺陷报告来表述,但仍然会产生负面的产品体验,评分细则评估就成为捕获那些模糊且主观的信息并使其更有用的理想方式。
创建评分细则还有一个超越捕获主观数据的额外好处。IBM Rational Performance Tester 团队在为每个版本的评分细则付出努力的过程中,这是一个协作过程。测试人员和开发人员齐聚一堂,不仅讨论具体需求,还讨论客户体验的全部期望。他们对开发人员和测试人员对客户体验的期望和想要的东西有了更清晰、更全面的理解;不仅仅是特定功能的详细技术细节,而是真实的体验。这种联系和相互理解本身,就足以弥补制作评分细则的努力,即使最终版本从未被任何人填写。
我鼓励您与您的团队一起制作一份评分细则。如果可能,请从广泛的利益相关者那里获得意见,尤其是客户。使用您的书面需求是一个好的起点,但请尝试超越这一点,去考虑整个客户体验。所以开始使用评分细则,找出您的客户渴望什么——更多地了解整体体验,而不要只专注于食谱。使用评分细则来衡量无形之物,不要只品尝您正在烹饪的食物,请坐在餐厅里体验它。
延伸阅读
尽管我发现的大多数书籍、论文和文章都只讨论了在学术环境中使用评分细则,但以下内容可能有助于您对评分细则和基于评分细则的评估提供有趣的阅读。
- Goodrich Andrade, Heidi. Understanding Rubrics [http://learnweb.harvard.edu/ALPS/thinking/docs/rubricar.htm]。(理解评分细则)
- Moskal, Barbara M. Scoring Rubrics Part I: What and When. [http://www.ericdigests.org/2001-2/scoring.html]。(评分细则第一部分:是什么以及何时使用)
- Wikipedia article on academic rubrics [http://en.wikipedia.org/wiki/Rubric_%28academic%29]。(关于学术评分细则的维基百科文章)