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

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

一.软件系统质量属性

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

相关推荐
泯泷3 小时前
阶段一:从 0 看懂 JSVMP 架构,先在脑子里搭出一台最小 JSVM
前端·javascript·架构
monsion4 小时前
OpenCode 学习指南
人工智能·vscode·架构
无羡仙4 小时前
实测 Claude 多 Agent 开发:项目经理开局摸鱼,我成了救火队员
架构
CeshirenTester6 小时前
从数据库到结构化用例:一套可落地的测试智能体架构
数据库·架构
VillanelleS6 小时前
AI工程化之Agent架构
人工智能·架构
慧一居士7 小时前
springboot 项目集成 seate 分布式事务TCC使用nacos完整配置步骤及说明
系统架构
不想看见4048 小时前
Qt 项目中实现良好封装(模块化设计)的详细流程指南
数据库·系统架构
天若有情6738 小时前
通用个性化推荐核心架构思路:从视频到电商的跨场景落地实践
人工智能·算法·架构·推流·个性化推荐·猜你喜欢
源远流长jerry9 小时前
DPDK MP (Multi-Process) 通道深度解析
linux·网络·架构·ip
毛骗导演9 小时前
@tencent-weixin/openclaw-weixin 源码ContextToken 持久化改造:实现微信自定义消息发送能力
前端·架构