🏠 首页›第一梯队 · 决胜核心 · 第 10 小时 · 系统质量属性与架构评估

效用树与 ATAM 评估实践

选择 8~15 分案例 25 分论文高频
📄 教材出处 · 第 10 小时《质量属性与架构评估》 (书第 97–104 页) ▸ 查看原文摘录 打开教材 PDF ↗
第 97 页 ↗系统质量属性与架构评估 10.0 章节考点分析 主要学习软件系统质量属性、系统架构评估以及ATAM方法评估实践等内容。
第 98 页 ↗10.1 软件系统质量属性 【基础知识点】 1.基本概念 软件系统质量属性是一个系统的可测量或可测试的属性,基于软件系统的生命周期,可将软件 系统的质量属性分为开发期质量属性和运行期质量属性,见表10.1。
第 99 页 ↗系统质量属性与架构评估 91 续表 属性 子属性 作用及要点 可维护性 局部修复使故障对架构的负面影响最小化 可扩展性 因松散耦合更易实现新特性/功能,不影响架构 可修改性 结构重组 不影响主体进行的灵活配置 可移植性 适用于多样的环境(硬件平台、语言、操作系统等) 功能性 需求的满足程度 可变性 总体架构可变 互操作性 通过可视化或接口方式提供更好的交互操作体验 就系统架构设计师考试而言,我
第 100 页 ↗ (2)基于场景的评估方法:应用在架构权衡分析法(ATAM)和软件架构分析方法(SAAM)中。
第 101 页 ↗系统质量属性与架构评估 93 (2)架构权衡分析法(Architecture Tradeoff Analysis Method,ATAM)。
第 102 页 ↗ ①头脑风暴和优先场景:将头脑风暴的优先列表与生成质量属性效用树中所获取的优先方案进 行比较。

知识点目录(共 3 项)

  1. 质量属性效用树(Utility Tree)构造:质量属性 → 属性细分 → (优先级)场景
  2. ATAM 评估实践的阶段划分与活动
  3. 三种评估方法对比与选用场景

知识点详解

一、质量属性效用树(Utility Tree)

效用树是现代 ATAM 的核心工具,用于对质量属性进行分类和优先级排序。构造方法:树根为"效用",第二层为质量属性(性能/可用性/安全性/可修改性…),第三层为属性分类(细分类别),叶子节点为带优先级标注的具体场景。

叶子节点标注格式:(重要度, 难度)——取值 High/Medium/Low,如 (H, M) 表示对系统重要但实现难度中等;优先处理 (H, H) 的场景。

效用(根) 性能 可修改性 可用性 (H,H)正常负载下 0.5s 内响应交易请求 叶子=场景 + 优先级标注(重要度, 难度) (H,M)高峰负载下 10s 内完成支付 优先处理 (H,H),其次 (H,M)/(M,H) (L,H)Web 界面风格修改≤4 人·月 可修改性典型场景:"××人月内完成修改" (H,H)主站断电 3s 内重定向备用站 可用性典型场景:"故障后××秒内切换"
图 1-13 质量属性效用树结构示例(场景取自教材 10.3 练习题案例)
考法:案例题几乎每年必考"构建效用树"——给出一组需求(a)(b)(c)…,要求挑选合适场景填入效用树叶子节点并标注 (重要度, 难度)。填法:场景+标注(H,H)等;注意场景必须具体可度量(带时间/人月/百分比数字)。

二、ATAM 评估实践:四阶段

① 演示Presentation ② 调查和分析Investigation & Analysis ③ 测试Testing ④ 报告Reporting · 步骤:①介绍 ATAM ②介绍业务驱动因素(业务视角/功能/利益相关方) ③介绍要评估的体系结构 · 步骤:①确定架构方法 ②生成质量属性效用树(分类+排序) ③分析架构方法: 调查架构方法→创建分析问题→分析问题答案→找出风险/非风险/敏感点/权衡点 · 步骤:①头脑风暴和优先场景(与效用树优先方案比较) ②分析架构方法 · 提供评估期间收集的所有信息,呈现给利益相关者 记忆:演示讲清楚(ATAM/业务/架构),调查建树分析,测试头脑风暴验证,报告给结果
图 1-14 现代 ATAM 评估实践四阶段及步骤(重绘自教材图 10.3)
阶段核心动作关键词
1 演示介绍 ATAM 方法 → 介绍业务驱动因素 → 介绍要评估的体系结构三个"介绍"
2 调查和分析确定架构方法 → 生成质量属性效用树 → 分析架构方法(产出风险/非风险/敏感点/权衡点)效用树、四类点
3 测试头脑风暴和优先场景(与效用树比较)→ 分析架构方法头脑风暴
4 报告提交所有收集信息给利益相关者提交结果
考法:选择题考阶段-步骤匹配("生成效用树属于调查和分析阶段");案例大题:给在线交易系统架构评估场景,要求①构建效用树 ②判断(a)~(m)哪些是风险点/敏感点/权衡点/非风险点(如"新加密算法提高安全性但降低性能"=权衡点;"支付部分与第三方紧耦合"=风险点)——此题为近年真题原型,务必练熟。