系统架构设计师知识点1-20

1.软件架构设计包括提出架构模型、产生架构设计、进行设计评审等活动。是一个迭代的过程,在建立软件架构的初期,一般需要选择一个合适的架构风格,并将架构分析阶段已标识的构件映射到架构中,分析这些构件之间的关系,一旦得到了详细的架构设计,需要邀请独立于系统开发的外部人员对系统进行评审。一般来说,软件架构设计活动将已标识构件集成到架构中,设计这些构件,但不实现。

2.构件失配:包括由于系统对构件基础设施、控制模型和数据模型的假设存在冲突引起的失配。

3.连接子失配:包括由于系统对构件交互协议、构件连接时数据格式的假设存在冲突引起的失配。

4.构件组装阶段的失配问题包括:构件引起、连接子引起、系统成分对全局体系结构假设存在的冲突引起。

5.软件架构设计主要关注软件构件的结构、属性和交互作用,并通过多种视图全面描述特定系统的架构。

6.决策系统DSS核心功能是辅助决策,尤其针对半结构化及非结构化问题。

7.设计阶段是软件架构研究关注的最早和最多的阶段,这一阶段的研究主要包括:软件架构模型的描述、软件架构模型的设计与分析方法、对软件架构设计经验的总结与复用。

8.架构设计主要作用:解决复杂需求分析、非功能属性设计、系统整体结构问题。

9.体系结构风格和特定领域的架构(DSSA)是软件体系结构设计经验总结与复用的主要技术手段。

10.ADL更关注构件间的互联机制(连接子)。

11.4+1视图模型主要用于描述软件体系结构的多视图。

12.基于构件的软件开发中,已有的构建分类方法可以归纳为三大类:

(1)关键字分类法。根据领域分析的结果将应用领域的概念按照从抽象到具体的顺序逐次分解为树形或有向无回路图结构。

(2)刻面分类法。利用Facet(刻面)描述构件执行的功能、被操作的数据、构件应用的语境或任意其他特征。

(3)超文本方法。基于全文检索技术,使得检索者在阅读文档过程中可以按照人类的联想思维方式任意跳转到包含相关概念或构件的文档。

13.ANSI/IEEE1471-2000是对软件密集型系统的架构进行描述的标准。在该标准中,视图这一概念主要用于描述软件架构模型。

14.ATAM架构权衡分析法,是一种系统架构评估方法,主要在系统开发之前,针对性能、可用性、安全性和可修改性等质量属性进行评估与折中。

15.Strategy策略模式:使得算法可以独立于使用它的客户而变化,可以模拟更多种类飞机。

16.Bridge桥接模式:抽象部分与现实部分分离,使得他们可以独立的变化。

17.Composite组合模式:对象组合成树型结构以表示"部分-整体"的层次结构。

18.Observer观察者模式:定义对象间的一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都将得到通知并被自动更新。

19.软件架构需求过程主要是获取用户需求,标识系统中要用到的构件,并进行架构需求评审。标识构件包括:生成类图、对类图分组、将类图打包。

20.基于软件架构的设计ABSD,强调由商业、质量和功能需求的组合驱动软件架构设计,它强调采用视角和视图来描述软件架构,采用用例来描述功能需求,采用质量属性场景来描述质量需求。

相关推荐
沫璃染墨39 分钟前
《从零入门Linux系统篇(五十七):线程篇·十——生产者消费者模型进阶:从环形缓冲区到POSIX信号量》
linux·运维·服务器·开发语言·c++·系统架构·信号处理
树下困觉眯5 小时前
View绘制流程学习--获取WindowManager的三种方式
android·系统架构·view design
沫璃染墨1 天前
《从零入门Linux系统篇(五十六):线程篇·九——生产者消费者模型:从条件变量到BlockingQueue实现》
linux·服务器·c++·驱动开发·设计模式·架构·系统架构
艺杯羹1 天前
Anthropic突袭发布Claude Code Mods!用TypeScript编写智能体中间件:告别AI误删与失控
人工智能·typescript·系统架构
沫璃染墨2 天前
《从零入门Linux系统篇(五十四):线程篇·七——互斥锁底层原理:从原子交换到线程竞争与锁实现》
linux·运维·服务器·开发语言·c++·驱动开发·系统架构
诚心呈意共享外卖配送系统2 天前
共享骑手与聚合配送的区别及系统架构设计:运力池与订单聚合如何落地
架构·系统架构·创业创新
风123456789~2 天前
【架构设计】第17章 通信系统架构设计 2/2
系统架构
诚心呈意共享外卖配送系统3 天前
众包配送调度系统选什么?聊聊派单、抢单、合单与结算的技术设计
架构·系统架构·创业创新
abigalexy3 天前
图解AI应用架构设计
人工智能·ai·架构·系统架构·aigc
沫璃染墨3 天前
《从零入门Linux系统篇(五十三):线程篇·六——线程互斥详解:从并发问题到mutex互斥锁》
linux·运维·服务器·开发语言·后端·架构·系统架构