柔性结构是职能结构和矩阵结构的混合形态,在职能结构的基础上建立了 QA 组。 QA 组是一个专业组,不是一个行政机构。 QAG Leader 可由质量管理部委派人员担任或由某业务部门的 QA 兼任。与职能机构一样, QA 直接对高层经理负责,但在业务上向项目经和 QAG Leader 汇报。柔性结构吸收了职能结构和矩阵结构的许多优点,既便于 QA 融入项目组,又便于部门之间经验的分享,还利于 QA 能力的提高。 QAG Leader 可以从各部门 QA 汇报中提取出各项目的共性问题,用于组织级过程的改进。企业还可以通过授予 QAG Leader 不同的权利,比如按照 20/80 原则与高级经理分配 QA 的管理,来促进 QA 专业研究与应用的结合。
图 3 柔性结构的 QA 组织
确定岗位职责
在 CMMI 中, QA 的主要工作是过程评审和产品审计。从实践经验来看, QA 只完成这两项工作很难体现出 QA 的价值。为了让 QA 组织的产出大于组织的投入,实现增值,就应该根据企业需要适当增加 QA 的职责,比如过程指导、过程度量和过程改进等。过程指导主要是项目前期辅助项目经理制定项目计划(包括辅助定义或修改项目过程和过程模型、协助项目估计、建立项目验收准则、设置质量目标等),对项目成员进行过程和规范的培训以及在过程中进行指导等。过程度量(包括产品度量)在 CMMI 中已经成为 CMMI ML2 级中一个单独的过程域,但却是对所有过程的一个共性要求。特别是成熟度越高,对度量的要求也越高,难度也越大。这就要求有专业的人员来负责, QA 就是一个很好的选择。主要职责包括收集、统计、分析度量数据,以支持管理信息需求。过程改进在 CMMI 中主要是 EPG 的职责。但事实上, QA 更接近于过程实施的环境,更了解过程运行的情况,也就更容易发现“木桶中最短的那块”。同时, QA 也是改进过程试施的重要推动力量。
在了解了 QA 的这些工作以后,是否认为每个企业的 QA 职责应该都一样或者差不多呢?目前国内不少企业的现状确实是这样,这也是 QA 整体效果低下的一个很重要的因素。我们在确定 QA 职责的时候应该考虑自身的需要和环境,主要包括业务需求、过程成熟度水平和企业文化。
业务需求主要是确定了 QA 需要完成哪些方面的工作,比如执行同行评审过程中, QA 可以协助评审和组织会议;在存在外包的情况下,可能需要 QA 在监控外包方方面发挥作用。
过程成熟度是影响 QA 职责分配很重要的因素,不同的成熟度等级所要求的 QA 工作分布是不同的,如图 4 所示。在低成熟度等级下,需要抽取各项目最佳实践来定义过程,并指导过程的试施, QA 在这方面的工作最多。随着过程的完善、制度化和实施, QA 的工作重点逐渐转向了过程评审和产品审计。当企业的过程成熟度达到 4 级或 5 级以后,对过程的遵守已经成为员工的一种习惯,过程和产品的审查需求减少,而度量和过程能力的优化又成为 QA 的工作重点。
图 4 QA 工作随成熟度等级的动态分布
企业文化对 QA 来说就像空气一样,看不见它,但却深深地被它影响。比如说,在一个氛围活跃、高技术、创新能力强的企业, QA 应该倾向于服务职责;而在一个强纪律、低技术、规章制度成熟的企业, QA 就应该倾向于监督职责。
配置岗位人员
在建立组织结构过程中设立了 QA 工作岗位,现在就需要为岗位配备足够的资源,特别是分派岗位人员。从大体上说, QA 人员的配备可根据企业特点分为两类:全职和兼职。
全职就是设置专门的 QA 人员, QA 的主要职责就是质量保证工作。在设置这类人员时,最重要的是考虑他的知识、技能和素质是否符合组织和岗位的规定和要求。这些要求是依据企业文化和成熟度的不同而有所侧重。比如说,对于一个协作意识较弱、官僚主义较浓的企业,沟通对 QA 来说可能是一个重要的素质要求;对于成熟度较低,还没有制度化标准过程的企业,对业务的了解和 QA 专业知识的精通可能是选择 QA 最重要的标准。
兼职就是将工程师分派到其它职能部门或项目中去兼任 QA 工作,每一位工程师都作为一名潜在的 QA 。这也是 QA 人员配置的一个可选方案,一般适宜于开放的、以质量为向导的文化,反过来也能对质量文化的建设起到很大的促进作用。但这种方案应小心地与组织制度结合,比如奖惩制度、成本制度等,否则容易引起利益冲突。
由于 QA 的概念引入国内不久, QA 人才相当缺乏。为了获得足够的资源来完成 QA 工作,也可以采取岗位轮换的方式。比如,允许项目经理在项目管理岗位和 QA 岗位上轮换,把一定的 QA 工作经历作为项目经理上岗的必备条件。采取岗位轮换的方式,一方面解决了 QA 资源的不足,另一方面还促进了轮岗人员把 QA 的思想和方法融会到开发和项目管理工作中,更大程度上提高产品质量。
从以上的分析我们可以知道,建立 QA 组织需要动态地考虑企业的文化、可获得的资源以及过程成熟度水平等因素,做到“因地制宜”,而不是生搬硬套。首先要建立一个适宜的组织结构,组织结构中确立了 QA 岗位和汇报渠道。接下来就是确定岗位职责,并根据岗位职责的要求配置合适的 QA 人员。只有在组织结构、岗位职责、岗位人员都设置和整合好以后,才能充分发挥 QA 的价值,确保通过过程的持续改进来带动产品质量的不断提高。
文章来源于领测软件测试网 https://www.ltesting.net/