zoukankan      html  css  js  c++  java
  • 软件架构---质量属性(二)

      一般情况下,质量属性可分为三类,系统的质量属性,商业属性,概念属性。

      这里主要讨论的是系统的质量属性,可用性,可修改性,性能,安全性,可测试性和易用性。

    1.可用性Availability

      可用性是指系统掩盖或修复故障的能力,使得累积的服务中断时间不超过规定时间间隔内的所要求的值
      当一个系统不再提供其规格说明中所声明的服务时,我们就认为其出了故障,即出现了可用性问题

      通常情况下,我们以下面这个公式来量化可用性:

          α =  MTBF/(MTBF+MTTR)

      MTBF:平均正常工作时间
      MTTR:平均修复时间

      需要注意的是这里并不需要计算正常情况下的停机时间

    2.可修改性Modifiability

    • 系统的任何部分都是可修改的
    • 需要关注的是修改的成本(代价问题)

    3.性能Performance

      性能是一个抽象的概念,从本义上讲就是指软件如何做好它的工作,在软件上性能主要通过以下指标量化
        响应时间(系统响应时间指计算机对用户的输入或请求作出反应的时间。)
        吞吐量/率(单位时间系统处理时间数量)
        抖动(这里的抖动指的是响应时间的变化)
        丢包率(由于系统太忙)

    4.安全性

      安全性是衡量系统在向合法用户正常提供服务的情况下,阻止非授权使用的能力。

      可将其理解为一个提供认可,机密性,完整性,身份验证,可用性和审核的系统

       机密性,完整性和可用性confidentiality, integrity, and availability (CIA)

      机密性是保护数据或服务免受未经授权访问的属性

      完整性是指数据或服务不受未经授权操纵的属性

      可用性是系统可供合法使用的属性。

      身份验证会验证交易各方的身份,并检查他们是否真的是他们声称的身份

      认可即交易(访问和修改数据或服务)不能被交易双方的任何一方所拒绝

      审核是系统在其内部跟踪活动的属性

    5.可测试性testability

    ‘  通过测试揭示软件缺陷的容易程度。

    6.易用性

      对用户来说,完成某个期望任务的容易程度和系统所提供的用户支持的种类。

        可分为以下几个方面:

        学习系统的特性,即更加容易上手

        有效的使用系统,即提高使用效率

        将错误影响降到最低,即引导用户,使错误影响降到最低

        使系统适应用户的需要,系统应该使用户的任务更加轻松

        提高用户自信满意度,使用户确定自己采取了正确的行动

  • 相关阅读:
    saltstack
    python一个命令开启http服务器
    常用服务安装部署
    位置1
    linux中python3安装和使用
    Linux基础系统优化
    Shell基本命令
    linux系统目录结构
    远程连接linux服务器
    VMware和Centos安装使用
  • 原文地址:https://www.cnblogs.com/sdysyhj/p/11032008.html
Copyright © 2011-2022 走看看