软件系统质量属性
软件系统质量属性是一个系统的可测量或者可测试的属性,用来描述系统满足利益相关者需求的程度。
从管理角度,可将影响软件质量的主要因素划分为:功能性、可靠性、易用性、效率、维护性和可移植性
功能性:适合性、准确性、互操作性、依从性、安全性
可靠性:容错性、易恢复性、成熟性
易用性:易学性、易理解性、易操作性
效率:资源特性、时间特性
维护性:可测试性、可修改性、稳定性、易分析性
可移植性:适用性、易安装性、一致性、可替换性
可以将软件系统的质量属性分为开发期质量属性和运行期质量属性。
开发期关注的质量属性:易理解性、可扩展性、可重用性、可测试性、可维护性、可移植性
运行期关注的质量属性:性能、安全性、可伸缩性、和操作性、可靠性、可用性、鲁棒性
一、面向架构评估的质量属性
架构评估过程中,评估人员说关注的是系统的质量属性,包括:
- 性能:指系统的响应能力,即要经过多长时间才能对某个事件做出响应,或者在某段事件内系统所能处理的事件个数
- 可靠性(容错、健壮性):指软件系统在应用或系统错误面前,在意外或错误使用的情况下维持软件系统的功能特性的能力,用平均失效等待时间(MTTF)、平均失效间隔时间(MTBF)来衡量。
- 可用性:指系统能够正常运行的时间比例,用两次故障之间的时间长度或在出现故障时系统能够恢复正常的速度来表示
- 安全性:指系统在向合法用户提供服务的同时能够阻止非授权用户使用的企图或拒绝服务的能力
- 可修改性(可维护性、可扩展性、结构重组、可移植性):