软件质量模型经历了从 ISO/IEC 9126(六大特性)到 ISO/IEC 25010(八大特性)的演进。目前通用的“八大质量特性”主要依据 ISO/IEC 25010:2011 及中国的 GB/T 25000.10—2016,包括:功能性、性能效率、兼容性、易用性、可靠性、信息安全性、维护性和可移植性。
一 功能性
功能性衡量软件在指定条件下提供满足明确需求、隐含需求的功能的能力。功能性包含功能完整性、功能正确性、功能适当性。功能完整性表示所需功能全部覆盖。功能正确性表示功能执行结果准确、精确。功能适当性表示功能有助于用户达成目标。
二 性能效率
性能效率衡量软件在指定条件下提供适当性能水平的能力。性能效率包含时间特性、资源利用性、容量。时间特性表示响应时间、处理时间、吞吐率满足要求。资源利用性表示CPU、内存、网络、存储资源使用合理。容量表示系统在数据量、并发用户数等参数上达到的最大限值满足需求。
三 兼容性
兼容性衡量软件与其他产品、系统共享同一环境时共存、有效交互的程度。兼容性包含共存性、互操作性。共存性表示软件与其他软件在同一环境中运行不产生资源冲突。互操作性表示软件与其他系统交换信息、使用交换的信息。
四 易用性
易用性衡量用户使用软件付出的认知努力、操作努力、获得的满意度。易用性包含可辨识性、易学性、易操作性、用户差错防止、用户界面舒适性、易访问性。可辨识性表示用户能判断软件适合需求。易学性表示用户学习使用软件的难易程度。易操作性表示用户操作、控制软件的顺畅程度。用户差错防止表示系统设计减少用户犯错的可能。用户界面舒适性表示界面令用户满意。易访问性表示不同能力用户能正常使用软件。
五 可靠性
可靠性衡量软件在规定条件下、规定时间段内持续维持规定性能水平的能力。可靠性包含成熟性、可用性、容错性、可恢复性。成熟性表示软件内部缺陷产生失效的频率低。可用性表示需要使用时系统处于可服务状态的程度。容错性表示出现故障、接口异常时系统维持规定性能水平的能力。可恢复性表示失效发生后恢复数据、重建规定性能水平的能力。
六 信息安全性
信息安全性衡量软件保护信息、数据的能力。信息只能被授权者以授权方式访问。信息安全性包含保密性、完整性、抗抵赖性、责任性、可审计性。保密性表示数据仅在授权时被访问。完整性表示数据、程序不被未授权篡改、删除。抗抵赖性表示活动、事件发生后可被证实、不可否认。责任性、可审计性表示操作可追溯到具体主体、支持审计。
七 维护性
维护性衡量软件被修改时所需工作的有效性、效率。修改包含修正缺陷、适应环境、增加功能。维护性包含模块化、可重用性、可分析性、可修改性、可测试性。模块化表示系统由低耦合、边界清晰的模块构成的程度。可重用性表示资产在多个场景中复用的程度。可分析性表示诊断缺陷、定位修改点的难易程度。可修改性表示实施修改的难易程度。可测试性表示修改后验证正确性的难易程度。
八 可移植性
可移植性衡量软件从一种硬件、软件、运行环境迁移到另一种环境时有效性、效率的程度。可移植性包含适应性、易安装性、易替换性。适应性表示软件无需额外手段适应不同指定环境的能力。易安装性表示软件在指定环境中安装、卸载的难易程度。易替换性表示软件在相同环境中替代另一指定软件的能力。
ISO/IEC 25010的2023年修订版把易用性更名为交互能力。把可移植性放入灵活性。新增安全性独立特性。工程实践、测试标准、教材常用上述八分法。