软件质量属性Quality attributes 总结

Quality attributes have been of interest to the software community at least since the 1970s. There are a variety of published taxonomies and definitions, and
many of them have their own research and practitioner communities.

A quality attribute (QA) is a measurable or testable property of a system that is used to indicate how well the system satisfies the needs of its stakeholders. You can think of a quality attribute as measuring the “goodness” of a product along some dimension of interest to a stakeholder.

常见的软件质量属性有多种,例如性能(Performance)、可用性(Availability)、可靠性(Reliability)、健壮性(Robustness)、安全性(Security)、可修改性(Modification)、可变性(Changeability)、易用性(Usability)、可测试性(Testability)、功能性(Functionality)和互操作性(Inter-operation)等。

这些质量属性的具体含义是:

(1)性能(Performance)是指系统的响应能力,即要经过多长时间才能对某个事件做出响应,或者在某段时间内系统所能处理事件的个数。

(2)可用性(Availability)是系统能够正常运行的时间比例。

(3)可靠性(Reliability)是指软件系统在应用或错误面前,在意外或错误使用的情况下维持软件系统功能特性的基本能力。

(4)健壮性(Robustness)是指在处理或环境中,系统能够承受压力或变更的能力。

(5)安全性(Security)是指系统向合法用户提供服务的同时能够阻止非授权用户使用的企图或拒绝服务的能力。

(6)可修改性(Modification)是指能够快速地以较高的性能价格比对系统进行变更的能力。

(7)可变性(Changeability)是指体系结构经扩充或变更成为新体系结构的能力。

(8)易用性(Usability)是衡量用户使用一个软件产品完成指定任务的难易程度。

(9)可测试性(Testability)是指软件发现故障并隔离、定位其故障的能力特性,以及在一定的时间和成本前提下,进行测试设计、测试执行的能力。

(10)功能性(Functionality)是系统所能完成所期望工作的能力。

(11)互操作性(Inter-operation)是指系统与外界或系统与系统之间的相互作用能力。

 

Functionality is the ability of the system to do the work for which it was intended.

An international standard (ISO 25010) defines functional suitability as “the capability of the software product to provide functions which meet stated and implied needs when the software is used under specified conditions.” That is, functionality is the ability to provide functions. One interpretation of this definition is that functionality describes what the system does and quality describes how well the system does its function. That is, qualities are attributes of the system and function is the purpose of the system.

 

(1)在线交易平台必须在1s内完成客户的交易请求。该要求主要对应性能,可以采用的架构设计策略有增加计算资源、改善资源需求(减少计算复杂度等)、资源管理(并发、数据复制等)和资源调度(先进先出队列、优先级队列等)。
(2)该平台必须严格保证客户个人信息和交易信息的保密性和安全性。该要求主要对应安全性,可以采用的架构设计策略有抵御攻击(授权、认证和限制访问等)、攻击检测(入侵检测等)、从攻击中恢复(部分可用性策略)和信息审计等。
(3)当发生故障时,该平台的平均故障恢复时间必须小于l0s。该要求主要对应可用性,可以采用的架构设计策略有Ping/Echo、心跳、异常和主动冗余等。
(4)由于企业业务发展较快,需要经常为该平台添加新功能或进行硬件升级。添加新功能或进行平台升级必须在6小时内完成。该要求主要对应可修改性,可以采用的架构设计策略有软件模块泛化、限制模块之间通信、使用中介和延迟绑定等。

 


 

posted @ 2022-07-25 17:56  zzfx  阅读(1936)  评论(0编辑  收藏  举报