知识卡片
ATAM的四阶段九步骤与效用树机制
内容
ATAM(架构权衡分析法)的灵感来自架构风格概念、质量属性分析和SAAM三个方面,之所以叫”权衡”,是因为它不仅能揭示架构对特定质量目标的满足情况,还能让人更清楚地认识不同质量目标之间如何相互权衡(呼应[[ATAM架构评估法的敏感点与权衡点]])。ATAM包含四个阶段共九个步骤。表述阶段(步骤一到三):介绍ATAM方法本身;表述商业动机(系统最重要功能、各类限制、商业目标、主要风险承担者、架构驱动因素);表述软件架构(技术约束、需要交互的其他系统、满足质量属性的设计决策、最重要的用例和生长场景)。调查与分析阶段(步骤四到六)是核心:确定架构设计决策和架构风格(但先不分析,只是让架构师说清楚用了什么);生成质量属性效用树——”效用”是树根、代表系统整体质量,典型质量属性(性能、可修改性、可用性、安全性)是二级节点,每个属性可继续细化(如性能分解为”数据延迟”和”吞吐量”),叶节点是已经具体到可以设置优先级、可以分析的质量属性场景,优先级依据两个标准:场景对系统成功的重要性、架构师估计实现该场景的难度;分析架构设计决策——把效用树给出的高优先级场景,和步骤四确定的架构设计决策做匹配,收集足够信息、确定敏感点权衡点。测试阶段(步骤七到八):集体讨论确定场景优先级(区分用例场景、生长场景、探察场景三类,把新场景和效用树结果比对,可能出现”完全重合”“成为新叶节点”“揭示被遗漏的质量属性”三种情况);解释架构设计决策(架构师用已讨论过的决策来解释新场景如何被实现)。形成报告阶段(步骤九):把商业环境、需求约束架构、已文档化的设计决策、场景及优先级、基于质量属性的问题、效用树、风险决策、敏感点权衡点,连同归纳出的”风险主题”一并呈现给风险承担者。理解ATAM的关键在于效用树的作用:它是把”商业驱动因素”转译成”具体质量属性场景”的机制,逼迫评估小组和客户在评估真正开始之前就把质量需求说清楚,避免评估人员在无休止的分析上浪费时间却没有触及项目出资人真正关心的问题。
结构图:
flowchart TD
A[表述阶段<br/>ATAM介绍/商业动机/架构表述] --> B[调查与分析阶段<br/>架构设计决策+效用树+分析]
B --> C[测试阶段<br/>场景优先级讨论+解释设计决策]
C --> D[形成报告阶段<br/>风险/敏感点/权衡点/风险主题]
B -.效用树.-> E["效用(根)→质量属性→细化因素→具体场景(叶节点,可设优先级)"]