[系统架构设计师]系统质量属性与架构评估(八)

[系统架构设计师]系统质量属性与架构评估(八)

一.软件系统质量属性

1.基本概念

软件系统质量属性:可测量或可测试的属性

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

面向架构评估的质量属性:

1.可用性:

提升策略

错误检测:心跳,Pin/Echo,异常

错误恢复:表决,主动冗余,被动冗余,重新同步,内测,检查点/回滚

错误避免:服务下线,事务,进程监控器

2.性能:

提升性能策略:

资源的需求:减少处理资源时对资源的占用,减少处理事件的数量,控制资源的使用

资源管理:并发机制,增加资源

资源仲裁:先来先服务,固定优先级,动态优先级,静态调度

3.可修改性:

提升策略:

局部化修改:高内聚低耦合,预测变更,使模块通用

防止连锁反应:信息隐藏,维持现有接口,限制通信路径,使用中介

推迟绑定时间:运行时注册,多态,配置文件

4.安全性:

抵抗攻击:用户身份验证,用户授权,维护数据机密性与完整性,限制暴露,限制访问,

检测攻击:入侵检测系统

从攻击中恢复:恢复状态,识别攻击者

5.质量属性场景:刺激源,刺激,环境,制品,响应,响应度量

二.系统架构评估

1.系统架构评估中的重要概念

敏感点,权衡点,风险承担者或利益相关人,场景

2.软件架构分析方法(SAAM)

主要输入:问题描述,需求说明,架构描述

分析过程:场景开发,架构描述,单个场景评估,场景交互,总体评估

SAAM的输入与评估过程:

3.架构权衡分析法(ATAM)

性能,可用性,安全性,可修改性等评价和折中

活动阶段:需求收集,架构视图描述,属性模型构造和分析,架构决策与折中。属性作为架构评估的核心概念

现代ATAM方法的评估实践阶段划分:

4.评估方法对比

5.成本效益分析法(CBAM)

6.其他评估方法

对比

​ [外链图片转存中...(img-bLf9pwnB-1755335901511)]

5.成本效益分析法(CBAM)

6.其他评估方法

SAEM,SAABNet,SACMM,SASAM,ALRRA,AHP,COSMIC+UML

相关推荐
ylmzfun2 小时前
Puppet深度解析:自动化运维的基石
运维·架构·puppet
晚霞的不甘2 小时前
从单设备到全场景:用 Flutter + OpenHarmony 构建“超级应用”的完整架构指南
flutter·架构
robch2 小时前
Java后端优雅的实现分页搜索排序-架构2
java·开发语言·架构
sang_xb2 小时前
深入解析 HashMap:从存储架构到性能优化
android·java·性能优化·架构
San30.3 小时前
深入浏览器底层:从单进程到多进程架构的演进
chrome·架构·ie·浏览器底层
云小逸3 小时前
openEuler 多算力虚拟化性能实测
架构
gallonyin3 小时前
【AI智能体】Claude Code 工具架构核心解析:大道至简
人工智能·架构·智能体
彷徨的蜗牛3 小时前
六边形架构使用场景 - 第二章 - DDD领域模型
架构·领域模型·ddd·六边形架构
weixin_307779133 小时前
Jenkins Gson API插件:统一JSON处理的基础库
java·运维·开发语言·架构·jenkins
wangmengxxw4 小时前
微服务-服务容错(续)
微服务·云原生·架构·服务容错