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

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

一.软件系统质量属性

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 小时前
使用 Python 打造一个轻量级系统信息查看器
开发语言·后端·python·系统架构
居7然4 小时前
JoyAgent-JDGenie深度评测:从开箱到实战,多智能体框架的工业级答卷
分布式·自然语言处理·架构·transformer·agent
Hello.Reader4 小时前
Flink 架构组件、任务链路、Slot 资源与集群形态
大数据·架构·flink
君不见,青丝成雪4 小时前
六边形架构实现:领域驱动设计 + 端口适配器模式
大数据·微服务·系统架构
扉页sama4 小时前
riscv在fpga的运行过程
架构
RWKV元始智能5 小时前
RWKV7-G1a 2.9B 推理模型开源发布,继续推进纯 RNN 模型的思考能力
人工智能·架构·开源
希望_睿智5 小时前
实战设计模式之迭代器模式
c++·设计模式·架构
编程指南针7 小时前
【系统架构师-案例分析】2024年11月份案例分析第一题-架构评估
架构·系统架构
极客先躯7 小时前
Spring Statemachine 架构详解
java·spring·架构
new_daimond14 小时前
微服务组件-Eureka 技术详解
微服务·eureka·架构