- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
质量保证和质量控制的区别
在软件项目中,不少技术人员经常混用QA(Quality Assurance 质量保证)和QC(Quality Control 质量控制)这两个术语;甚至一些实施培训的专业公司(Baidu和Oristand)也混淆了这两个概念。这种概念混淆,很不利于组织导入CMMI(软件能力成熟度模型)或ISO9000;更进一步说,也不利于提升软件项目管理水平。
实际上,这两个工作的性质明显不同,它们对从业人员的素质要求也很不相同。简单地说,QA(质量保证)是针对项目实施过程的管理手段,QC(质量控制)是针对项目产品的技术手段。
QA监督做事
QA致力于按照正确方法、在正确的时间做正确的事情:从做事方法上按照既定流程来保障产品质量,控制开发工作而不是解决具体存在的BUG。更贴切地说,QA并非"保证质量"而是"过程管理"(Process Management),以确保项目以一套成熟高效的做事方法开展和实施。依靠在QA制约下的开发过程,能够前瞻性地从制度上保障开发出好产品。因此,具有良好QA管理的企业,容易获得客户更多的信任。
在CMMI体系中,QA人员是独立于项目组的(不受项目经理管辖),他可以把项目经理不认错的QA缺陷上报给CCB(地位比PM更高的配置管理委员会)或高层经理裁决。
在一些大型企业的IT项目实施过程中,经常要成立甲乙方在一起协同工作的联合项目组。在这种情况下,甲方项目成员不仅要检测乙方的产品质量(QC),还要监督乙方开发过程中的做事方法(QA)。
一般地说,项目的QA人员要检查项目开发过程是否制定和贯彻了管理标准、过程(Process)、策略等正规要求,要提出完善改进的意见,指出过程是否有效、如何让过程更有效,并评估这些要求的效率、效果。
QA人员还要确保项目组成员理解这些要求。除了培训新员工理解组织过程,或培训老员工理解变更了的组织过程之外,他并不直接干预开发者的工作,而是在项目管理的最高层面上工作。他要与项目经理和CCB、配置管理员、QC人员打交道。
怎样才知道QA工作是正确的?它也是结果导向的:通过不断改进组织过程,更快、更低成本地制造出用户需要的产品。
例如,在一个大项目中,QA人员可以帮助项目经理制定项目计划,使项目按照有组织的规程推进;他要使项目组成员明白,应按照相应的报告、里程碑、文档等规定来开展自己的工作。随着项目的进展,QA人员可以适时导入"检查点"来查看哪里会发生新的风险。如,项目正在从事预定范围之外的工作,或项目有待加强管 理之处。这些检查点是确保合适的人在正确时间就位的一个机会。
上一篇:有关三层交换机的四个特性
下一篇:手机的各项性能测试