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

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

一.软件系统质量属性

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

相关推荐
未知原色2 小时前
web worker使用总结(包含多个worker)
前端·javascript·react.js·架构·node.js
7ioik2 小时前
说一说MySQL数据库基本架构?
数据库·mysql·架构
9527华安3 小时前
Artix7系列FPGA实现SDI视频解码转CameraLink,基于GTP高速收发器+OSERDES2原语架构,提供2套工程源码和技术支持
fpga开发·架构·音视频
没有bug.的程序员3 小时前
熔断、降级、限流:高可用架构的三道防线
java·网络·jvm·微服务·架构·熔断·服务注册
FrameNotWork3 小时前
深入浅出 HarmonyOS NEXT (迈向 6.0 架构):攻克 ArkTS 高性能状态管理与 NAPI 底层交互难题
架构·交互·harmonyos
全栈技术负责人4 小时前
前端架构演进之路——从网页到应用
前端·架构
Gofarlic_oms16 小时前
集中式 vs 分布式许可:跨地域企业的管控架构选择
大数据·运维·人工智能·分布式·架构·数据挖掘·需求分析
狗头大军之江苏分军6 小时前
Node.js 原生功能越来越强,我们是不是被 npm 玩坏了?
前端·javascript·架构
嵌入式学习和实践7 小时前
Linux/Windows 系统架构查看、安装包选择指南(嵌入式开发场景适配)
linux·windows·系统架构