软件测试与软件质量的关系

软件质量是指软件产品的特性可以满足用户的功能、性能需求的能力。软件过程是人们通常所说的软件生命周期中的活动,一般包括软件需求分析、软件设计、软件编码、软件测试、交付、安装和软件维护。随着软件过程的开始,软件质量也逐减建立起来。软件过程的优劣决定了软件质量的高低,好的过程是高效高质量的前提。人员和过程是决定软件质量的关键因素。高质量的人员和好的过程应该得到好的产品。

  软件系统的开发包括一系列生产活动,其中由人带来的错误因素非常多,错误可能出现在程序的最初需求分析阶段,设计目标可能是错误的或描述不完整,也可能在后期的设计和开发阶段,因为人员之间的交流不够,交流上有误解或者根本不进行交流,所以尽管人们在开发软件的过程中使用了许多保证软件质量的方法和技术,单开发出的软件中还会隐藏许多错误和缺陷。可见,只有通过严格的软件测试,才能很好的提高软件质量,而软件质量并不是依靠软件测试来保证的,软件的质量要靠不断的提高技术水平和改进软件开发过程来保证,软件测试只是一种有效的提高软件质量的技术手段,而不是软件质量的安全网。

  软件测试能够找出软件缺陷,确保软件产品满足需求。但是测试不是质量保证,二者并不等同。测试可以查找错误并进行修改,从而提高软件产品的质量。软件测试避免错误以求高质量,并且还有其他方面的措施以保证质量问题,如软件质量保证。

正规的软件测试系统主要包括:制定测试计划、测试设计、实施测试、建立和更新测试文档。而软件质量保证的工作主要为:制定软件质量要求、组织正式度量、软件测试管理、对软件的变更进行控制、对软件质量进行度量、对软件质量情况及时记录和报告。软件质量保证的职能是向管理层提供正确的可行信息,从而促进和辅助设计流程的改进。软件质量保证的职能还包括监督测试流程,这样测试工作就可以被客观地审查和评估,同时也有助于测试流程的改进。二者的不同之处在于软件质量保证工作侧重对软件开发流程中的各个过程进行管理与控制,杜绝软件缺陷的产生。而测试则是对已产生的软件缺陷进行修复。

相关推荐