如果认真考虑生产出优质产品,您会面临两个问题:
-
您如何得知何时产品达到满意质量?
-
如果产品未达到满意质量,您如何确保该产品的项目干系人得知该信息?
第一个问题的回答让您可以发布产品。第二个问题的回答可帮助您避免发布劣质产品。
您可能会想:“我不想仅限于提供令人满意的产品;我想提供优质产品!”让我们来探讨一下。当您告诉合作者、经理或投资者您有高质量标准并计划提供优质产品时,会发生什么呢?如果是在项目周期的早期,他们可能会点头微笑。每个人都喜欢高质量。但是,如果是在项目周期的晚期,为完成项目,您就要承担巨大的压力。创造优质产品可能要求您执行广泛的测试、修正大量问题(甚至细微的问题)、添加特性或甚至舍弃并重新编写大部分代码。您还必须解决关于优质的不同理念的争论。实现优质并非易事。十全十美就更加困难!最终,控制项目的人员会到您跟前说:“十全十美尽管很好,但是我们必须讲究实际。我们是在做生意。高质量固然好,但不是为了高质量
不惜任何代价。您也知道,所有的软件都有错误。”
优质可作为一个起激励作用的目标。它能引发您对工作的自豪感。但是如果使用“若某个质量很好,那么更多质量必须更好”这一观念来作为追求优质的理由,就存在问题。首先,作出这样的论调可反映您是一个质量狂热者,而不是一个平衡的思考者。其次,它忽略了成本因素。BMW
是一辆好车,但是它比 Saturn 的价格高出很多。Saturn
也许不能提供最佳的驾驶体验,但是它的价格却很适宜。不考虑成本的话,更多质量更好这个论调还忽视了回报的缩减。产品质量越好,就越难找出进一步改进的必要性。当您努力为产品的某个方面镀金时,出于必要性,您必须忽略产品的其他方面,甚至忽略另一项目所带来的潜在机会。每天,企业都必须为其资源的最佳使用作出决策。除质量之外,还存在其他必须考虑的因素。
满意质量概念(GEQ)是更多质量更好的相反的、更有效的论调,因为它提供可达到或者不可达到的目标,这样它就成为取消还是重包项目的实际论调。
大多数企业对它们的产品作出某种形式的满意质量解释。那些仅剩的不作解释的企业都是出于相信它们已经达到十全十美,因为它们缺乏想象力和技能来找出它们的产品可如何改进。
以下是已经过尝试的满意质量的一些模型。根据具体情形,它们中的一些会比另一些更有效:
-
不是太糟糕(“我们还没有倒闭”)- 我们的质量只需要足够满意,这样我们可以继续在商业圈中生存。使产品达到满意质量,我们可避免被成功起诉。
-
正面无谬误(“我们所做的任何事都是好的”)- 我们的组织是全世界最好的。我们是如此优秀,所以我们所做的任何事自然都是好的。只考虑成功。不考虑失败,因为“负面”思考会造成品质低劣。
-
正当的竭尽全力(“十全十美或倒闭”)-
产品没有满意质量的说法,总以投入的努力衡量。只有我们竭尽全力才表示投入了足够满意的努力。我们并不关心业务问题。我们尽我们所能使产品十全十美。因为我们永不停止改进,所以有人如果想要产品,就必须过来从我们的手下抢走产品。这样他们(而不是我们)将为所有质量问题承担责任。
-
客户始终是正确的(“客户似乎喜欢它”)-
如果客户喜欢它,它就一定达到了满意质量。当然,您无法始终使每个人都满意。并且如果当前客户或潜在客户不喜欢这种产品,是他们决定是否告诉我们。我们可不知道他们的想法。
-
已规定的流程(“我们遵循良好的流程”)- 质量源于我们生产产品的流程。我们规定了流程,并且认为它是一个良好的流程。因此,只要我们遵循流程,必然会生产出满意质量的产品。
-
静态需求(“我们满足需求”)- 我们根据客观的、可计量的、无争议的目标规定了质量。如果达到了这些目标,那么无论可能提出什么样的其他主观、不可计量、有争议的目标,我们的产品都达到了满意质量。
-
责任(“我们兑现承诺”)- 质量是由合同规定的。我们承诺将做出一定的努力,达到一定的目标。如果我们履行了合同,那就满意了。
-
提倡(“我们作出最大程度的合理努力”)- 我们提倡优质。我们在整个项目中寻求方法来避免问题以及找出并修正无法避免的问题。如果我们一丝不苟地向优质迈进,那就满意了。
-
动态权衡(“我们权衡很多因素”)-
谈到我们的任务和目前的环境,当产品有足够的好处而没有关键的问题、产品好处大大超出产品的非关键性问题并且如果继续改进产品会导致损害大于益处时,产品就达到了满意质量。
依靠流程、技能、技术、工具、环境和文化等大量因素,您也许可以在相同的成本条件下生产出质量高很多的产品。一个可测试性和可维护性更高的产品所需的改进成本较低,而其他成本与低劣品质明确相关,例如支持成本和客户成本。
质量成本是一个非常复杂的问题,很难作出广泛的总结。但是,您可以肯定地说:您始终可以花费更多的时间来执行更好的测试、更多的错误处理以及更多的、对产品每个部分的修正或重写。无论您做到有多好,总会有成本。
并且如果您认为作不出更多的改进,更可能的是您已经达到想象力的极限,而不是质量无法再提高。
在软件行业中,更多地将 GEQ
作为某个特定成本(而非任何其他)的应付措施:不立即发布产品的成本。对市场期限的忧虑或外部的截止期限在我们无法解决时间问题时就会给我们带来损失。这就是为什么在项目结尾时总经常会特点性地狂乱抓工作重点。如果想了解组织真正相信什么是满意质量,以及他们为之所做的准备程度如何,就去看看任何六月期软件项目的最后三天。看看在最后一天报告出新问题时会发生什么。
将质量缩减成一个数字,然后设置一个数字阈值来代表满意质量,这种做法很吸引人。这存在问题,因为您只能对与质量相关的因素进行评估。您无法评估质量本身。部分原因是由于“质量”这个词仅仅是人和物之间的关系的标注。“这是一件高质量的产品”不过是“某人认为该产品有价值”的另外一种说法。这是关于产品的叙述,也是关于人和周围的环境的叙述。即使产品保持不变,人和情景也会变化,所以不存在单一的、静态的、
所谓正确的质量评估。
您可以使用很多评估来了解质量,即使您无法完整、客观地评估它。虽然如此,关于什么样的质量是满意质量的问题仍需要复杂的判断。您无法逃避这样一个事实:最终,人们必须考虑清楚然后作出判断。对于简单的产品,判断可能较为简单。对于复杂的、高投入的产品,就很难判断。
为帮助您评估产品质量,为 RUP 中包含的大多数工作产品提供以下类型的信息:
-
工作产品指南和核对表:关于如何开发、评估和使用工作产品的信息。
-
模板:工作产品“模型”或原型,为内容提供结构和指导信息。
关于其他信息,请参阅技术:评估质量和概念:工件、工件指南和检查点。
|