MD 更新:未知

质量属性

  • 性能
  • 可靠性
  • 可用性
  • 安全性
  • 可修改性

生命周期

  • 开发期质量属性
  • 运行期质量属性

开发期

  • 易理解性
  • 可扩展性
  • 可重用性
  • 可测试性
  • 可维护性
  • 可移植性

运行期

  • 性能
  • 安全性
  • 可伸缩性
  • 互操作性
  • 可靠性
  • 可用性
  • 鲁棒性

软件架构评估方法

概念

  • 风险点:架构设计中潜在的、存在问题的架构决策所带来的隐患
  • 非风险点:不会带来的隐患,如xxx 要求可以接受
  • 敏感点:一个或多个构件的特性,它能影响系统的某个质量属性
  • 权衡点:影响多个质量属性的特性,是多个质量属性的敏感点

架构分析方法(SAAM)

flowchart TD
A[问题描述] --需求分析--> B[需求说明]
B --架构设计--> C[架构描述]
B --> D[SAAM]
A --> D
C -->D

架构权衡分析法

主要针对性能、实用性、安全性和可修改性,在系统开发前对这些质量属性进行评估和折中

第一阶段:场景和需求收集

  1. 收集场景
  2. 收集需求/约束/环境

第二阶段:架构视图和场景实现

  1. 描述架构视图
  2. 实现场景

第三阶段:属性模型构造和分析

  1. 特定属性分析(优秀的单一理论)

第四阶段:折中

  1. 标志折中
  2. 标志敏感度

质量效用树

结构

  • 树根
  • 质量属性
  • 质量分类
  • 质量属性场景 先对场景重要性定优先级 再按场景实现的难易度定优先级