技术开发 频道

有效实施QA职能

【IT168 技术文章】

    一、 概述

   许多企业在建立研发管理体系时,尤其是实施CMMI时,都需要建立一个QA组织。但由于缺乏经验和指导,只能摸着石头过河,先从各个部门抽调一些新人和“闲人”成立一个部门,按照规范要求试试再说。这样尝试的结果,往往是走了弯路,一切回到原点。

    还有一些企业已经成立了QA部门,QA的职责就是保证过程体系一板一眼地得到严格执行。而研发人员却认为QA只会站在研发环节之外指手画脚,像警察一般指责研发人员的不是。而QA人员对此也相当委屈,“我是照章办事啊”,得罪了人不说,还可能对自己的工作内容感到迷惘。这样的QA部门,在其它部门的眼中“可有可无”,在老板的眼中是“白白增加了管理成本”。

    二、QA在不同组织结构中的组织形式

    质量体系的建设是一个系统工程,它存在的形式不仅是一套质量体系文件和质量管理部,它更体现为一个企业的质量文化和质量文化在企业的贯彻实施。软件企业在规划质量体系时往往会选择一个模型,如ISO9000、CMMI、XP等。具体选择何种模型,还要看企业的实际情况,充分协调人、技术、过程三者之间的关系,使质量体系能够充分发挥作用,促进企业生产力的发展。质量文化的形成和贯彻实施与QA组织的人员构成、角色定位有着密切的关系。同时,不同企业的各种组织结构也影响着QA组织的建立和作用。根据对一些企业实际情况的调查,以下分别介绍职能型组织结构和矩阵型组织结构中,QA组织的区别和各自的优缺点。

    1. 职能型组织结构中的QA组织

    在职能型组织结构中,各个职能部门可能会设立自己的QA岗位。QA独立于项目组,直接向部门主管报告,但在业务上也向项目经理进行汇报。如图1所示。在职能型组织结构下QA组织的优点是:因为同属于一个部门,QA人员容易深入项目组的具体工作,容易发现项目的实际问题,项目组对问题的处理也更快捷。缺点是各职能部门相对独立,部门之间缺乏经验的交流和共享。不同部门还可能重复进行过程、方法和工具的研究。而且,企业中普遍存在“重业务,轻过程”的现象,QA的工作与业务工作相比显得无足轻重,QA人员的职业发展更容易受到忽视,很难接受应有的培训和提升。

 
 图1 职能型组织结构下的QA组织

    2. 矩阵型组织结构中的QA组织

    在矩阵型组织结构中,企业设立了专门的质管部,QA人员由质管部指派到各个项目组。QA独立于项目组和职能部门,在行政上向QA经理报告,业务上向项目经理报告。如图2所示,在矩阵型组织结构中,项目经理对QA的工作绩效有建议权,但由QA部经理对QA进行直接考评,这既有利于保证QA工作的独立性和评价的客观性,也可以保证QA组织的长期利益与项目的短期利益之间的平衡。QA资源的分配是根据项目特点、工作量和进度而确定的,同时考虑项目优先级,对QA人员进行动态调配,保证更加充分地利用资源。一个软件QA通常可以负责5个左右的软件项目的质量保证工作,硬件QA可以负责2、3个项目的工作。

    此外,由于QA人员直接面对项目组开展工作,非常了解过程运行的情况,更容易发现过程改进的“短板”,所以QA是改进过程实施的重要推动力量。因此,许多企业的质管部还担负了组织级质量体系的优化、过程资产库和度量数据库的建立、维护和使用的职能。质管部甚至还可能包括了企业级IT系统规划、建立和推广实施的职能。这种情况下,质管部成为QA人员的资源池,一方面负责为项目输送QA人员,另一方面关注培养QA人员。可以有效避免职能型组织结构中不同部门重复投资于质量体系、忽视QA职业发展的问题。

    在矩阵型组织结构中也有一个问题,由于QA和项目组分别向不同的领导负责,因此相对而言,QA较难融入项目组深入发现问题,而且可能常常遇到QA与项目经理很难就一个问题是否成其为问题而达成共识的扯皮情况。对于这种情况,可以通过问题的“上报”机制来解决,即对于QA与项目组协商后仍不能解决的问题,QA可以直接报告职能部门主管和质管部经理,通过高层协商和协调资源来寻求问题的解决。

 
 图2 矩阵型组织结构下的QA组织


 
   三、QA的三大角色和职责

    1. QA的三大角色

    CMMI标准文件说,QA是高级经理的“ears and eyes”。研发人员眼中的QA往往也是“警察”, QA的作用似乎仅限于发现和报告项目的问题。其实,一个合格的QA在项目中会充当三种角色:

    角色1-老师,具备学习和培训的能力。

    角色2-医生,通过度量数据对项目过程进行诊断,帮助分析原因,开处方。

    角色3-警察,以企业流程为依据,但要告诉大家流程背后的原因;如果和项目组针对某些问题意见相左,可以直接汇报高层。

    典型的QA的职责包括了:过程指导、过程评审、产品审计、过程改进、过程度量。

    ◆ 老师的角色——在项目前期,QA辅助项目经理制定项目计划,包括根据质量体系中的标准过程裁剪得到项目定义的过程,帮助项目进行估算,设定质量目标等;对项目成员进行过程和规范的培训以及在过程中进行指导等。

    ◆ 警察的角色——在项目过程中,QA有选择性地参加项目的技术评审,定期对项目的工作产品和过程进行审计和评审。

    ◆ 医生的角色——在项目过程中,QA也可以承担收集、统计、分析度量数据的工作,用于支持管理决策。

    在CMMI中,度量分析是一个单独的过程域。CMMI成熟度等级越高,对度量分析提出的要求也越高,难度越大。相应地,QA人员应该具备的能力要求就更高。那么,在企业的实际操作中,QA到底是老师、医生还是警察?或者三者皆

    如果企业计划进行CMMI评估或者经过评估已经达到了某个成熟度等级,那么这些企业中的QA应该做到以上所列的所有工作,这是为了满足CMMI要求的必须。但如果仅从企业自身业务和管理的需要出发,考虑到企业文化,就不一定非得要求QA既当警察又当老师和医生了。例如,企业认为同行评审投入资源多,产生效益却不明显,QA应加强对同行评审过程的监控,因此QA可以承担同行评审会议的组织和协调工作。而有些企业则是由项目组按照流程自行组织同行评审,QA只是抽样参与评审过程进行审计。如果企业有外包业务,则QA应该作为外包过程和产品质量监控的主力。

0
相关文章