转:软件测试与质量保证的区别

软件测试和软件质量保证是软件质量工程的两个不同层面的工作。软件测试只是软件质量保证工作的一个重要环节。

  质量保证(QA)的工作是通过预防、检查和改进来保证软件质量。QA采取的方法主要是按照“全面质量管理”和“过程管理并改进”的原来展开工作。在质量保证的工作中会掺入一些测试活动,但它所关注的是软件质量的检查和测量。因此,其主要工作是着眼于软件开发活动中的过程、步骤和产物,并不是对软件进行剖析,找出问题和评估。

  测试虽然也与开发过程紧密相关,但它所关心的不是过程的活动,相对的是关心结果。测试人员要对过程中的产物(开发文档和源代码)进行静态审核,运行软件,找出问题,报告质量甚至评估,而不是为了验证软件的正确性。当然,测试的目的是为了去证明软件有错,否则就违背了测试人员的本职了。因此,测试虽然对提高软件质量起了关键的作用,但它只是软件质量保证中的一个重要环节。

  很少有人从非技术角度去分析这两者的区别,但我总结后认为,从公司业务出发,QA的工作是相对前置的,并可能含有某种公关性质的;而软件测试相对后置,是内部层面的工作。这也同样验证了两者的本质区别,即:“ 软件测试和软件质量保证是软件质量工程的两个不同层面的工作。软件测试只是软件质量保证工作的一个重要环节。”
 
*****************************************************
 
质量保证的主要工作范围为:
指导并监督项目按照过程实施。
对项目进行度量、分析,增加项目的可视性。
审核工作产品,评价工作产品和过程质量目标的符合度。
进行缺陷分析,缺陷预防活动,发现过程的缺陷,提供决策参考,促进过程改进。

质量保证和测试的关系:
SQA从流程方面保证软件的质量
测试从技术方面保证软件的质量
 
 
 

猜你喜欢

转载自www.cnblogs.com/it-deepinmind/p/13198322.html