系统架构-架构评估

质量属性

性能

指系统的响应能力

指标:响应时间、吞吐量等。

设计策略:优先级队列、增加计算资源、减少计算开销、引入并发机制、采用资源调度

可靠性

在意外或错误使用的情况下维持软件系统的功能特性

指标:MTTF、MTBF、MTTR

设计策略:心跳、Ping/Echo、冗余、选举

可用性

系统能够正常运行的时间比例,经常用两次故障之间的时间长度或在出现故障时系统能够恢复正常的速度来表示。

指标:故障间隔时间

设计策略:心跳、Ping/Echo、冗余、选举

安全性

系统在向合法用户提供服务的同时能够阻止非授权用户使用的企图或拒绝服务的能力

指标:保密性、完整性、不可抵赖性、可控性

设计策略:加密、入侵检测、用户认证、用户授权、追踪审计

可修改行

能够快速的以较高的性能价格比对系统进行变更的能力

设计策略:接口-实现分类、抽象、信息隐蔽

功能性

系统所能完成所期望的工作的能力

可变性

体系结构经扩充或变更而称为新体系结构的能力,可扩展性。

互操作性

组成部分的软件不是独立存在的,经常与其他系统或自身环境间相互作用

质量属性场景

质量属性场景是一种面向特定质量属性的需求。

由六个部分组成:

  1. 刺激源:某个生成刺激的实体(人、计算机系统等)
  2. 刺激:当刺激到达系统时需要考虑的条件
  3. 环境:该刺激在某些条件内发生
  4. 制品:被刺激的对象,(用户界面、平台等)
  5. 响应:在刺激到达后采取的行动
  6. 响应度量:当响应发生时,应当能够以某种方式对其进行度量

软件架构评估

敏感点:为了实现某种特定的质量属性,一个或多个构件所具有的特性

权衡点:影响多个质量属性的特性

风险点与非风险点:可能引起风险的因素,可称为风险点;如果某件事是可接受的,则为非风险点

架构评估方式

基于调查问卷(检查表)的方式:要求评估人员对领域熟悉

基于度量的方式:制订一些定量指标来度量架构

基于场景的方式:首先确定应用领域的功能和软件架构的结构之间的映射,然后要设计用于体现待评估质量属性的场景,最后分析软件架构对场景的支持程度

基于场景的架构分析方法

SAAM:

SAAM是一种非功能质量属性的架构分析方法,是最早形成文档并得到广泛应用的软件架构分析方法。可修改性是SAAM分析的主要质量属性

ATAM:

架构权衡分析法ATAM,让架构师明确如何权衡多个质量目标。

ATAM被分为四个主要的活动领域:场景和需求收集、体系结构视图和场景实现、属性模型构造和分析、折中。强调以属性作为架构评估的核心概念

CBAM:

成本效益分析法,用来对架构建立的成本来进行设计和建模,让决策者根据骰子收益率来选择合适的架构

图片来源于网络

相关推荐
Cx330❀3 小时前
【Qt 进阶指南】详解 Qt 常用标准对话框与主窗口组件架构
开发语言·qt·ui·性能优化·架构·图形渲染
学步_技术3 小时前
具身智能—DDS通讯架构介绍
人工智能·架构·信息与通信
海宇服务3 小时前
零信任架构实战:基于海宇身份证OCR构建自动化自助终端核验网关
运维·人工智能·架构·自动化
bing.shao3 小时前
让机器从数据中生成本领:诺因Knowin通用具身智能生成式学习架构GLOW深度解析
学习·架构
EatFan4 小时前
2026 后端架构进入 AI 原生阶段:事件驱动 + 虚拟线程 + Agent 内嵌三驾马车怎么落地
人工智能·架构·agent·虚拟线程·事件驱动·ai原生·后端架构
狂奔蜗牛(bradley)5 小时前
EtherCAT DC 分布式时钟同步的 ModelSim 仿真:从帧模板到从站行为建模
人工智能·嵌入式硬件·fpga开发·架构
FYKJ_20105 小时前
SSM校园互助与闲置交易平台62145-计算机课程设计、毕业设计
java·spring boot·python·mysql·架构·spark·课程设计
Dawson Zhu5 小时前
Agent上下文压缩的“状态保真“取舍框架解读
人工智能·语言模型·架构·aigc·agi
欢喜躲在眉梢里5 小时前
时序数据库选型指南:从大数据架构视角拆解 Apache IoTDB 的适用边界
大数据·人工智能·ai·架构·时序数据库·模型
Dawson Zhu6 小时前
Cookbook Agent:拓扑Codebook方法与多Agent通信效率优化
人工智能·语言模型·架构·aigc·agi