软件质量的层次划分可以从多个维度进行,以下是综合不同模型和标准的主要层次划分方式:
一、按质量属性划分(ISO/IEC 9126模型)
ISO/IEC 9126将软件质量分为三个层次:
质量特性 包括功能性、可靠性、易用性、效率、可维护性和可移植性等基本属性。
- 功能性:
满足明确和隐含需求的能力
- 可靠性:在规定条件和时间内维持性能水平的能力
- 易用性:用户操作便捷性、学习成本等
- 效率:资源利用优化程度
- 可维护性:可测试性、可理解性、可修改性
- 可移植性:软件适应不同环境的能力
质量子特性 功能性下细分为适合性、准确性、互操作性、安全保密性等子特性。
量度指标
为质量特性和子特性提供量化评估标准,如缺陷密度、响应时间等。
二、按开发过程划分(MBA模型)
MBA将软件开发质量分为三个层次:
质量
满足规定或潜在需求的固有特性总和,包括内在特性(如可靠性)和外在特性(如用户界面)。
过程
软件开发过程的规范性和有效性,包括需求管理、设计、编码、测试等环节。
产品
最终软件产品的质量表现,需通过功能测试、性能测试等验证。
三、其他常见划分方式
基础级、标准级、高级级
- 基础级: 功能完整、稳定可靠(适用于个人项目) - 标准级
- 高级级:优化用户体验,支持扩展和升级
三要素模型 - 功能性:
功能实现程度
- 可靠性:故障恢复能力
- 易用性:用户操作便捷性
四、其他质量模型补充
Boehm质量模型:从易用性、可维护性、可移植性三个维度量化软件质量
McCall质量模型:侧重软件的可靠性、安全性、效率等属性
总结
软件质量的层次划分需结合具体应用场景和评价目标。ISO/IEC 9126模型因通用性强,常作为基础参考框架;MBA模型则更侧重开发过程管理。实际应用中,通常需要从多个维度综合评估软件质量。