软件体系结构——软件质量属性

软件质量属性==(8分)==

主要内容:

  • 引言

  • 质量目标与商业目标

  • 外部质量

  • 内部质量

  • 过程质量

第一次测试:\textcolor{red}{第一次测试:}下周一晚上(11月7日)

内容:20道选择题

范围:UML相关知识,每个图都会涉及到

质量的定义:

CMM 对质量的定义是:

① 一个系统、组件或过程符合特定需求的程度;

②一个系统、组件或过程符合客户或用户的要求或期望的程度。

软件质量是许多质量属性的综合体现,各种质量属性反映了软件质量的方方面面。人们通过改善软件的各种质量属性,从而提高软件的整体质量

质量目标与商业目标
  • 具有质量的软件是那些与它们的最初目的相一致的软件

  • 高质量的软件符合商业目标用户需求

  • 它具有正确的功能和优良的属性

商业目标
  • 增加市场占有额

  • 快速而准确的市场化

  • 有效利用有限的资源

  • 产品的系列化

  • 低成本生产

  • 低成本维护

  • 市场的灵活性

  • 产品流水线

用户需求
  • 必要的功能

  • 低的学习成本

  • 使用容易

  • 可预测的行为

  • 可靠的服务

  • 快速的响应

  • 快速的输出

  • 对非法访问者和病毒的防范

商业目标决定质量目标
  • 企业的根本目标是为了获取尽可能多的利润,而不是生产完美无缺的产品。

  • 企业必须权衡质量、效率和成本,产品质量太低了或者太高了,都不利于企业获取利润。

软件开发流程

image-20221102193953687
质量属性
  • 质量属性需求来源于商业和产品目标

  • 关键的质量属性必须刻画系统的细节特征

  • 质量属性场景是用于描述质量属性和表达项目干系人观点的强有力的工具

  • 软件的质量属性很多,如正确性、精确性,健壮性、可靠性、容错性、性能、易用性、安全性、可扩展性、可复用性、兼容性、可移植性、可测试性、可维护性等等

  • 软件质量属性场景用于描述软件的质量属性

  • 质量属性场景是一种面向特定的质量属性的需求

几个重要的质量属性
image-20221102194248718

外部质量(7个)

  • 外部质量对于用户而言是可见的

  • 包括正确性、健壮性、可靠性、性能、安全性、易用性、兼容性等

    • 正确性
      • 正确性是指软件按照需求正确执行任务的能力
    • 健壮性
      • 健壮性是指在异常情况下,软件能够正常运行的能力
    • 可靠性
      • 可靠性是指在一定的环境下,在给定的时间内,系统不发生故障(可以正常运行)的概率
        • 指标一:无故障运行时间
        • 指标二:故障恢复时间?(待定)
    • 性能
      • 性能通常是指软件的==“时间空间”效率==,而不仅是指软件的运行速度
    • 安全性
      • 安全性是指防止系统被非法入侵的能力,既属于技术问题又属于管理问题
    • 易用性
      • 易用性是指用户使用软件的容易程度
    • 兼容性
      • 兼容性是指不同产品(或者新老产品)相互交换信息的能力。例如两个字处理软件的文件格式兼容,那么它们都可以操作对方的文件,这种能力对用户很有好处。兼容性又称为互操作性

内部质量(6个)

  • 内部质量只有开发人员关心

  • 它们可以帮助开发人员实现外部质量

  • 包括易理解性、可测试性、可维护性、可扩展性、可移植性、可复用性等

    • 易理解性
      • 易理解性是开发人员理解软件产品的能力,意味着所有的工作成果要易读、易理解,可以提高团队开发效率,降低维护代价
    • 可测试性
      • 可测试性指的是测试软件组件或集成产品时查找缺陷的难易程度又称为可验证性
    • 可维护性
      • 可维护性表明了在软件中纠正一个缺陷或做一次更改的难易程度
      • 你可以根据修复一个问题所花的平均时间和修复正确的百分比来衡量可维护性。
    • 可扩展性
      • 可扩展性反映软件适应“变化”的能力
    • 可移植性
      • 可移植性指的是软件不经修改或稍加修改就可以运行于不同软硬件环境(CPU、OS和编译器)的能力,主要体现为代码的可移植性
    • 可复用性
      • 可复用性是指一个软件的组成部分可以在同一个项目的不同地方甚至在不同的项目中重复使用的能力

过程质量

  • 如果想保持一如既往的开发高质量的产品,过程必须是可靠的

  • 如果想适应无法预计的工具或环境改变,过程必须是稳健的

  • 过程的执行必须是高效的

  • 如果想适应新的管理方式或组织形式,过程必须是可扩展的

  • 如果想跨项目和组织来使用,过程必须是可重用的

  • Copyright: Copyright is owned by the author. For commercial reprints, please contact the author for authorization. For non-commercial reprints, please indicate the source.
  • Copyrights © 2023-2024 Guijie Wang
  • Visitors: | Views:

请我喝杯咖啡吧~

支付宝
微信