软件质量属性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小时内完成。该要求主要对应可修改性,可以采用的架构设计策略有软件模块泛化、限制模块之间通信、使用中介和延迟绑定等。

Original: https://www.cnblogs.com/feng9exe/p/16518260.html
Author: zzfx
Title: 软件质量属性Quality attributes 总结

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/547427/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • 一致性 hash 环

    一致性 hash 环 最近做项目 做了一个分发器 ,需要 根据请求携带的参数 把请求分发到 不同的服务器上面,最终我选择使用 一致性hash 环 来实现 ,本篇 就主要讲解一下 一…

    技术杂谈 2023年7月11日
    069
  • Apache服务的搭建与配置

    1. ServerRoot: 服务器的基础目录,一般来说它将包含conf/和logs/子目录,其它配置文件的相对路径即基于此目录。默认为安装目录,不需更改。 语法:ServerRo…

    技术杂谈 2023年7月10日
    077
  • shopify主题Pacific模板配置修改

    Shopify Pacific主题一个经受住了时间考验的经典 Shopify 主题,与现有的OS 2.0兼容。使用经过验证的灵活主题建立您的业务,以帮助商店发展。非常适合 五金与汽…

    技术杂谈 2023年5月31日
    0161
  • java IO流、集合类部分小知识点总结

    在Java中,以下三个类经常用于处理数据流,下面介绍一下三个类的不同之处以及各自的用法。 InputStream : 是所有字节输入流的超类,一般使用它的子类:FileInputS…

    技术杂谈 2023年7月24日
    068
  • 批量改文件名小工具

    有时候需要批量替换一个文件夹下面所有文件的名称,如果文件太多,就没办法手工一个一个来改了。 想想作为程序员十几分钟就可以搞定的东西,解决别人几个小时工作,岂不快哉。 于是有此工具发…

    技术杂谈 2023年5月31日
    0102
  • 16GDB死锁问题定位

    1)thread apply all tb:大概查看一下所有线程堆栈情况,或者通过过滤,看看是否可以看一些问题2)逐个线程排查a. thread 线程编号:切换到指定线程b. bt…

    技术杂谈 2023年6月1日
    094
  • Typora 又提示过期了

    最近使用Typora ,收费以后一直使用的Beta版本,今天它又提示我过期了; 看了网络上的教程,都过于麻烦,还是购买正版 支持一下吧 节省一下时间,毕竟开发也要成本。 Origi…

    技术杂谈 2023年5月31日
    0105
  • PyQt5 窗口操作

    ################################ PyQt5中文网 – PyQt5全套视频教程 # https://www.PyQt5.cn/ # 主讲: 村长 #…

    技术杂谈 2023年5月31日
    081
  • 社招两年半10个公司28轮面试面经(含字节、拼多多、美团、滴滴……)

    个人情况 学历:二本 工作年限:2 年半 面试结果:拿到了字节、拼多多、美团、滴滴、欧科云链….等公司的offer 面试准备 复习 你信我,真学习还得看书,看书能让你的…

    技术杂谈 2023年7月25日
    0111
  • WordPress安装使用问题记录

    本文记录在使用WordPress过程中的问题和解决。 安装 比较顺利没有问题,具体如下(CentOS 6.5,DO的CentOS7 image里默认的yum源没有mysql-ser…

    技术杂谈 2023年5月31日
    0110
  • 基于STSdb和fastJson的磁盘/内存缓存

    增加了对批量处理的支持,写操作速度提升5倍,读操作提升100倍 增加了对并发的支持 业务系统用的是数据库,数据量大,部分只读或相对稳定业务查询复杂,每次页面加载都要花耗不少时间(不…

    技术杂谈 2023年5月31日
    080
  • Hadoop(五)C#操作Hive

    Hive Hive将HiveQL(类sql语言) 转为MapReduce,完成数据的查询与分析,减少了编写MapReduce的复杂度。它有以下优点: 学习成本低:熟悉sql就能使用…

    技术杂谈 2023年7月24日
    077
  • 域名SSL认

    阿里云:域名SSL认证-视频 Hole yor life get everything if you never give up. Original: https://www.cn…

    技术杂谈 2023年6月21日
    086
  • Vue_transition动画

    1 DOCTYPE html> 2 <html lang="en" xmlns:v-on="http://www.w3.org/1999/…

    技术杂谈 2023年7月24日
    0110
  • nacos、ribbon和feign的简明教程

    nacos简明教程 为什么需要nacos? 在微服务架构中,微服务之间经常要相互通信和调用,而且一个服务往往存在多个实例来降低负荷或保证高可用。我们假定A服务要调用B服务,最简单的…

    技术杂谈 2023年7月11日
    089
  • 001 研发同学必学哪些 Linux 命令?

    身为研发同学,Linux 是绕不过去的一个小山包,不是说要掌握的十分精通,在程序员界里做个极客,也不是说要抢了 Devops 同学的饭碗,但至少要做到摆脱对 Linux 命令认知的…

    技术杂谈 2023年7月10日
    075
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球