Freigeben über


谁应对软件质量负责?

 

原文地址: Who Owns Quality?

作者:Alan Page, 微软卓越测试工程总监,How We Test Software at Microsoft (中文翻译为《微软的软件测试之道》)一书的作者之一。

翻译:樊聪、林俊彦

       应Adam Goucher的要求,再贴一篇《微软的软件测试之道》的文摘。顺便说一句,Adam写了一篇关于《微软的软件测试之道》的书评, 但Linda Wilkinson的书评以标题胜出(译者注:Linda比Adam早用了同样的书评标题)。

       这是第16章的一部分,有关于质量的。我对这部分内容深信不疑,也希望能够听到你的观点。

       多年前,当我提出“谁应对质量负责”这个问题的时候,得到的答案几乎都是“测试团队应该对质量负责”。现在我再问这个问题,答案通常是“每个人都应该对质量负责”。有些人或许觉得这是个不错的答案,然而软件工程研究所(SEI)的W.Mark Manduke曾这样写到“当质量被宣布成为每个人的责任时,就意味着没有人真正被指定为它负责,质量问题也就淹没在如今各种紧急情况之中,无人搭理了。”他得出结论:“当管理层真正确立了一个质量文化,每个人才会确确实实地对质量负责。” [1] 建立一个人人都真正对质量负责的体系需要一种质量文化。没有这样一种文化,所有团队都会在质量上作出牺牲。开发团队可能会为了节约时间而省略代码审查;项目管理团队可能会在需求规格说明书上偷工减料,或者对“完成”的定义敷衍了事;而测试团队可能在开发周期里更改他们对测试通过率和覆盖率的目标。不管在建立质量保证流程上花多少精力,工程团队总是习惯于在质量实施过程中制造一些例外,以便在最后期限到来时完成产品或者达成其他目的。为了赶上产品发布日或其它期限而灵活变通固然重要,但质量常常也因为没有明确的负责人而受到损害。

       整个测试团队可能负责质量保证的各个方面,但是在倡导或者影响整个组织接受质量文化上,他们不太会是最好人选。高级经理可以提倡重视质量,但他们有充分理由将重心放在团队管理、产品发布和业务运作上。虽然他们可能也把质量目标放在心上,却很难成为质量文化的倡导者。在大部分团队中,管理领导团队(通常是开发、测试和项目管理部门的领导者)承担着对质量负责的重任。这些部门领导负责并推动团队的软件工程,并且站在团队首要位置上评估和实施基于质量的工程实践。不幸的是,高质量软件和高质量软件开发工程实践看上去很少是他们在任何产品开发周期中的所关心的主要问题。

       有高级管理团队对质量文化的支持还不够。在质量文化中,每位员工都能对质量有影响。在制造业中,很多最重要的质量改进都来自工人的建议。比如在汽车制造业,日本的汽车工人平均一年提出28个建议,而其中80%都被采纳了[2]。

       理想情况下,微软中所有专业工程师都在提出如何提高产品质量的建议。一个没有质量文化的团队,这些建议非常少,其中得到采纳的更是凤毛麟角。对质量文化的淡漠也将影响团队成员在应对工作中其他挑战上的激情与投入。

 

 

[1] STQE Magazine. Nov/Dec 2003 (Vol. 5, Issue 6)

[2] The Visionary Leader, Wall, Solum, and Sobul