本文所指软件质量管理是从第三方角度对软件质量进行的分类,本文不是讨论软件生产者为确保软件质量如何进行管理活动。
软件包括程序和程序所衍生出来的文档和服务。程序是最直观的质量体现,对此,很多人把软件质量和程序质量混为一谈。软件更重要的在于程序以外的东西,笼统的说,就是服务。这些服务包括,程序升级、文档修正、客户帮助引导等等。不过程序质量最引人瞩目,那么先讨论程序质量的分类,程序质量从用户的角度来看,可以是以下特性的集合:可用性、兼容性、容错性。这些特性是从不同的角度对程序进行的观察。可用性,指的是程序是否能够达到设计者所宣称的能力,兼容性是指程序在与其他程序或者硬件共存和协作时是否能够保持可用性,容错性是指再发生故障时是否能够保持可用性或者可以进行恢复。对程序这三个方面的评价应当是客观的,而不是主观的。可用性是衡量其他性能的基础,采用的衡量方法可以是这样的,由设计者提供一份完整、详细的功能表,这些功能表应当足够详细,详细到输入输出(人机终端、服务器产品的其他输入输出方式,比如网络)的单次操作所产生的变化上。测试者逐条对宣称的功能进行测试。设计者还应当提供完成功能操作所需要环境(如数据范围等等)和步骤,测试者还要对每项功能进行超越环境和混乱步骤的测试以检验程序确实具有可用性。兼容性的测试,应当按照设计者所提供的不同软、硬件环境重复测试可用性步骤。容错性测试,应当按照设计者所提供的容错方案进行可用性测试步骤。上述测试每项功能只能是通过和不通过两种结论,并且按照通过率评价程序质量。可用性评价应当是最为基础的,合格的软件产品的程序可用性应当是100%。程序兼容性和容错性是柔性指标,可以作为软件质量的参考。
软件程序以外的质量可以用分类的方式衡量,不同的观察角度可以有不同的分类,软件的观察角度可以是服务、文档、公开性三方面。每个方面都有自己的分类。
服务的分类,可以是以下几种
A仅提供程序和联机帮助的(这应当是最基本的要求,所有的软件都应当具备)
B提供程序、联机帮助和升级、维护服务的
C提供程序、联机帮助、升级、维护服务和客户服务(客户培训和在线客户咨询)的
文档的角度观察可以分为以下几类
A无任何文档
B提供软件功能说明书的
C提供软件功能说明书和用户指南的
D提供软件功能说明书、用户指南和开发指南的
公开性的角度可以分成以下几类
A无任何公开
B提供开发文档的(比如需求说明书、软件概要设计)
C提供开发文档和有限提供源代码的
D提供开发文档和完全提供源代码的
E提供开发文档、源代码并且允许第三方修改的
软件程序以外的质量衡量是主观的,主要看软件是否达到分类所需的要求。不同的软件有不同的要求,一般家庭使用的商业应用软件应当在服务方面达到B类标准,文档方面A类,公开性方面A类就可以。政府部门使用的商业应用软件应当在服务方面达到B类,文档方面达到C类,公开性方面达到B类,而政府使用的商业操作系统软件应当在服务方面达到C类,文档方面达到D类,公开性方面达到C类。
本文没有把安全性的要求单独列举出来,作者认为这属于程序可用性方面的衡量,或者可以作为可用性中安全性功能单独列举,这不应当属于软件质量范畴。
软件质量管理
最新推荐文章于 2023-12-31 01:10:18 发布