柔性结构是职能结构和矩阵结构的混合形态,在职能结构的基础上建立了 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 工作随成熟度等级的动态分布
文章来源于领测软件测试网 https://www.ltesting.net/