软件系统质量属性概念

软件系统的质量就是“软件系统与明确地和隐含地定义的需求相一致的程度”。更具体地 说,软件系统质量是软件与明确地叙述的功能和性能需求文档中明确描述的开发标准以及任何 专业开发的软件产品都应该具有的隐含特征相一致的程度。根据GB/T 16260.1定义,从管理角 度对软件系统质量进行度量,可将影响软件质量的主要因素划分为6种维度特性:功能性、可 靠性、易用性、效率、维护性与可移植性。其中功能性包括适合性、准确性、互操作性、依从 性、安全性;可靠性包括容错性、易恢复性、成熟性;易用性包括易学性、易理解性、易操作 性;效率包括资源特性和时间特性;维护性包括可测试性、可修改性、稳定性和易分析性;可 移植性包括适应性、易安装性、一致性和可替换性。

软件系统质量属性(Quality Attribute) 是一个系统的可测量或者可测试的属性,用来描述 系统满足利益相关者(Stakeholders) 需求的程度。基于软件系统的生命周期,可以将软件系统 的质量属性分为开发期质量属性和运行期质量属性2个部分。

1.开发期质量属性

开发期质量属性主要指在软件开发阶段所关注的质量属性,主要包含6个方面。

(1)易理解性:指设计被开发人员理解的难易程度。

(2)可扩展性:软件因适应新需求或需求变化而增加新功能的能力,也称为灵活性。

(3)可重用性:指重用软件系统或某一部分的难易程度。

(4)可测试性:对软件测试以证明其满足需求规范的难易程度。

(5)可维护性:当需要修改缺陷、增加功能、提高质量属性时,识别修改点并实施修改的 难易程度。

(6)可移植性:将软件系统从一个运行环境转移到另一个不同的运行环境的难易程度。

2.运行期质量属性

运行期质量属性主要指在软件运行阶段所关注的质量属性,主要包含7个方面。

(1)性能:性能是指软件系统及时提供相应服务的能力,如速度、吞吐量和容量等的要求。

(2)安全性:指软件系统同时兼顾向合法用户提供服务,以及阻止非授权使用的能力。

(3)可伸缩性:指当用户数和数据量增加时,软件系统维持高服务质量的能力。例如,通 过增加服务器来提高能力。

(4)互操作性:指本软件系统与其他系统交换数据和相互调用服务的难易程度。

(5)可靠性:软件系统在一定的时间内持续无故障运行的能力。

(6)可用性:指系统在一定时间内正常工作的时间所占的比例。可用性会受到系统错误, 恶意攻击,高负载等问题的影响。

(7)鲁棒性:是指软件系统在非正常情况(如用户进行了非法操作、相关的软硬件系统发 生了故障等)下仍能够正常运行的能力,也称健壮性或容错性。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

iamphp

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值