本文重点
对于这篇文章的内容,我只想说,它绝对是重中之重,因为这个章节中的内容往往存在于案例课程的第一题,如果这道题你要是不能拿到22分以上,我觉得你案例就危险了。
在这篇文章中,我将把我的诀窍告诉你,个人感觉这个章节太简单了。下面我们先来学知识,再来学技巧。
知识
ATAM&质量属性
ATAM(架构权衡分析方法)重点关注的四个核心质量属性:
ATAM(架构权衡分析方法)通常重点关注以下质量属性:
性能
可用性
安全性
可修改性
这是架构评估中最常考察的四个属性,也是ATAM效用树构建的基础。这四个是重点,你可以理解为必考,除了这四个之外,还有


每一个都要大概了解一下描述的是什么?但其实你看上面的这个我估计你也是看不懂的 ,但是你要记住上面描述的关键字,后面我也会把一些关键字技巧告诉你,这个非常简单不要害怕。
ATAM效用树 vs 质量属性场景
这条区分了两个容易混淆的概念:
在架构评估中,效用树是ATAM方法中用于将业务目标分解为具体质量属性场景的工具,但它本身不是"描述质量属性的手段"------描述质量属性的标准手段是质量属性场景。
核心区别:
-
效用树:分解工具,将业务目标→质量属性→具体场景
-
质量属性场景:描述质量属性的标准手段(刺激、环境、响应三要素)
质量属性场景的三个组成部分:
架构评估中场景从刺激、环境、响应三方面进行介绍。
完整表述:什么情况下(环境)发生什么(刺激),系统应该怎样(响应)。
这是描述任何质量属性场景的标准模板。这种题是肯定有的,你必须要多加练习。
权衡质量属性的相关问题

考试的时候会给你一段话,让你先判断这个是质量属性的哪一种,进一步判断是风险点于非风险点、敏感点权衡点,这个也不难,技巧也会教你。
技巧
关键字顺口溜:
性能并发时间短,可伸缩加资源涨;
可用故障要冗余,可靠不丢容错强;
安全防攻控权限,可修改看人·天;
可测试看桩/日志,可移植跨平台装;
互操作接口标准,易用用户说好爽;
可维护性改与修,可扩展关注功能添。
有以上关键字,记住就无脑选就行了,我刷了好多题,反正没有逃过这个顺口溜的,就这么强,除非考官看到我的顺口溜,针对我。
性能战术
在性能这里有时候会做一些文章,针对性能这一质量属性的具体战术:
资源管理(复用(缓存、池))、资源需求(减少开销(压缩))、资源仲裁(调度(优先级))
架构评估四要点
在评估质量属性时,需要识别以下四类结果:
明显影响一个质量属性 → 敏感点
多个质量属性在打架 → 权衡点
可能导致失败 → 风险点
都没问题且已验证 → 非风险点
质量属性场景
质量属性场景由 6个核心要素 构成。做题时,拿到一段描述,就按这个顺序去题干里"抓词":
-
刺激源(Source) :谁发起的? → 用户 、外部系统 、监控组件 、攻击者。
-
刺激(Stimulus) :发生了什么? → 并发请求 、宕机 、篡改数据 、网络中断。
-
环境(Environment) :系统处于什么状态? → 正常负载 、高峰期 、系统初启 、维护模式。
-
制品(Artifact) :哪个对象受影响? → 订单服务 、数据库 、缓存集群 、Web界面。
-
响应(Response) :系统怎么应对? → 切换备用节点 、返回结果 、记录日志 、拒绝连接。
-
响应度量(Response Measure) :怎么量化结果? → ≤ 1 秒 、99.99% 可用 、0 数据丢失 、不超过 30 秒。
速记逻辑 :"谁 (源)在什么情况 (环境)下因为什么 (刺激)触发了哪个对象 (制品),系统做了什么 (响应),多快/多好(度量)。"
我个人觉得是你先找到刺激源,一般是名词
然后名词的动作,就是刺激
环境往往就是一些状态
制品其实就是:被刺激得对象的动作
响应:动作的读量,可量化的
这个很简单,按照我说的来,刷几遍题就可以了。