软件测试中QA活动的理解与实施(2)

发表于:2011-07-18来源:未知作者:领测软件测试网采编点击数: 标签:QA;软件测试
由上面的区别可知,QC进行质量控制,向管理层反馈质量信息;QA则确保QC和过程实施者按照过程进行质量控制活动,按照过程将检查结果向管理层汇报。软

  由上面的区别可知,QC进行质量控制,向管理层反馈质量信息;QA则确保QC和过程实施者按照过程进行质量控制活动,按照过程将检查结果向管理层汇报。软件开发过程和的QC工作通常就是对软件工作产品的技术评审(如同行评审等)。

  在这样的原则下,简单而言QA只要检查项目按照过程进行了某项活动没有,产出了某个产品没有;而QC来检查产品是否符合质量要求。

  3.2 QA与测试

  下图显示了一个企业的开发过程、支持过程的关系。

  从现代软件工程的观点来看,测试应是软件生命周期过程的一个不可缺少的阶段,是确保规定的需求得以满足,上图的流程模型体现了这一点。而QA活动则是贯穿于整个软件生命周期过程及其支持过程,包括培训、采购等活动,以确保所策划的过程得以实施。QA活动和测试过程可能同时关注同一个产品,但是关注的角度不同。

  应该在项目的早期阶段开始QA过程,以便确定有益于项目的计划、过程、标准和规程并且满足项目需求和组织方针。从事质量保证的人要参加计划、过程、标准和规程的确定,以确保它们适合于项目的需要和适合于进行质量保证评价。

  4 实施QA活动的方法

  4.1 QA的工作流程

  图4描述了QA的一般工作流程。

  图4 QA的工作流程

  应指定在生存周期中将进行评价的特定过程和产品。可以根据抽样方式或客观准则进行指定;这些准则要与组织的方针和项目需求以及需要一致。

  识别出不符合问题后,首先是在项目内部处理,如果可能,就地加以解决。任何不能在项目组内部解决的不符合问题,要逐级上报适当的管理者予以解决。

  在过程中,QA一般比较注重的是过程是否符合规范?测试是否合理、充分?评审是否及时、有效等,这些是重要的“检验”过程,可以列为重点。过程是否符合规范,一般要看过程有没有计划,计划详细与否,可行与否,工作量评估是否可行(主要是检查评估方法)?日常管理是否可行?配置管理是否可行?过程遵循那些标准?实施什么样的裁减,等等。

  在整个QA过程的评审活动中,QA需要具备一定的数据意识,要不断的收集各种数据,尤其是质量数据。最好具备一定的项目管理经验,要不然,只能是一种边缘参与,是进入不了项目的。QA最好能帮助PM将问题分析清楚。PM会思考要将问题做成什么样子,而QA可以思考如何去做,这样就可以达到一种配合的效果。

  其次还要注意一点,就是QA以什么心态去监控项目组,我们公司提出的是“质量服务”,也就是说,项目组是我们的客户,我们是为他们提供质量服务的。

  4.2 最佳实践

  实施QA活动的最佳实践应该根据不同的企业情况而不同,但以下几条是实施过程改进活动中总结出来的,具有一般意义。

  1) QA人员要求

  服务精神:QA应定位为教练、服务的角色,而不是警察的角色。

  了解过程:熟悉过程规范。

  了解开发:如果QA有过开发经验,则可更好地实施评审活动。

  沟通技巧:通过好的沟通技巧发现问题,解决问题。

  专门培训:QA人员最好经过专门的培训,以提高评审技巧。

  2) 制定QA计划

  计划中可能包含以下内容:

  质量目标(与度量的数据相关联)

  人员安排

  时间

  检查工具(检查表)

  检查对象(活动和产品)

  检查点及频次

  3) 编制检查表

  检查表是QA人员进行评审活动的工具。编制检查表时应考虑以下问题:

  何时需要检查表

  检查表包括什么内容

  如何使用检查表

  如何调整检查表

  4) 形成QA报告

  QA应对检查的结果形成报告,以便跟踪、解决、关闭所发现的问题。形成QA报告时应考虑:

  报告目的

  报告内容

  问题沟通

  问题跟踪

  问题上报

  5) 几个参见问题

  QA价值开始不被项目组认可

  一个全职的QA可以同时兼任多少个项目的QA工作

  QA与项目组的关系难处理

  项目组有了QA,可是需求文档和设计文档的质量还是不高

  5 结束语

  总之,QA活动对于过程改进具有重要的意义,这是由人治到法治的一个必经阶段。所以,只要国内IT及软件企业能够认真贯彻CMMI模型规范的要求,持之以恒,随时解决实施中发现的问题,就会体会到QA活动的巨大效益。 

原文转自:http://www.ltesting.net