系统架构师考试-ABSD基于架构的设计方法

概念

ABSD是体系结构驱动,是指构成体系结构的软件构件和类的组合驱动的。

ABSD强调由商业、质量和功能需求的组合驱动软件架构设计。使用ABSD方法,设计活动可以从项目总体功能框架明确就开始,并且设计活动的开始并不意味着需求抽取和分析活动就可以终止,而是应该与设计活动并行。

ABSD的三个基础

  • 功能的分解
  • 通过选择体系结构风格来实现质量和商业需求
  • 软件模版的复用

特点

  • 自顶向下,递归细化,迭代清晰
  • 采用视角与视图来描述软件架构
  • 采用用例来描述需求;采用质量场景来描述质量需求

开发过程

ABSDM开发过程包括架构需求、架构设计、架构文档化、架构复审、架构实现、架构演化

架构需求包括:需求获取、标识构件、架构需求评审

需求获取包括:获取系统的质量目标、获取系统的商业目标、获取系统开发人员的商业目标

标识构件包括:生成类图、对类进行分组、把类打包成构件

架构设计包括:提出软件体系结构模型、把已标识的构件映射到软件体系结构中(映射构件)、分析构件之间的相互关系、产生软件体系结构、设计评审。

架构文档化的主要输出内容包括:体系结构规格说明、质量设计说明书(测试体系结构)

架构实现包括:分析与设计、构件实现、构件组装、系统测试

架构演化包括:需求变化归类、指定架构演化方案、修改、增加或删除构件、更新构件相互作用、构件组装与测试、技术评审

相关推荐
Tadas-Gao2 小时前
缸中之脑:大模型架构的智能幻象与演进困局
人工智能·深度学习·机器学习·架构·大模型·llm
wuhen_n2 小时前
系统架构设计师(四):嵌入式系统
系统架构·嵌入式操作系统
晚霞的不甘3 小时前
Flutter for OpenHarmony 可视化教学:A* 寻路算法的交互式演示
人工智能·算法·flutter·架构·开源·音视频
代码改善世界4 小时前
CANN深度解构:中国AI系统软件的原创性突破与架构创新
大数据·人工智能·架构
晚霞的不甘4 小时前
Flutter for OpenHarmony 实现计算几何:Graham Scan 凸包算法的可视化演示
人工智能·算法·flutter·架构·开源·音视频
Tadas-Gao4 小时前
TCP粘包现象的深度解析:从协议本质到工程实践
网络·网络协议·云原生·架构·tcp
礼拜天没时间.5 小时前
深入Docker架构——C/S模式解析
linux·docker·容器·架构·centos
啊森要自信5 小时前
CANN runtime 深度解析:异构计算架构下运行时组件的性能保障与功能增强实现逻辑
深度学习·架构·transformer·cann
WindrunnerMax5 小时前
从零实现富文本编辑器#11-Immutable状态维护与增量渲染
前端·架构·前端框架
vx-bot5556666 小时前
企业微信接口在金融级业务场景下的合规架构与实践
金融·架构·企业微信