📚 知识点速查
系统架构设计师考试核心知识点快速查阅手册
📖 使用说明
本页面整理了系统架构设计师考试的所有核心知识点,按照考试大纲分类组织,支持快速搜索和查阅。建议结合案例分析和练习题库使用。
系统规划
核心内容
系统项目管理
- • 项目提出和预可行性分析
- • 系统方案制定、评价和改进
- • 新旧系统分析和比较
- • 现有资源的有效利用
项目计划类型
- • 主要计划:范围、工作范围、活动定义、资源需求、活动排序、费用估算、进度计划
- • 辅助计划:质量、沟通、人力资源、风险、采购计划
虚拟化技术
虚拟化类型
- • 完全虚拟化
- • 准虚拟化
- • 操作系统层虚拟化
虚拟化收益
- • 提高服务器资源利用率
- • 支持多业务共享服务器
- • 减少服务器数量,降低成本
- • 节约场地面积,减少能耗
软件架构设计
架构设计核心概念
架构风险
架构设计中潜在的、存在问题的架构决策所带来的隐患
敏感点
为了实现某种特定的质量属性,一个或多个系统组件所具有的特性
权衡点
影响多个质量属性,并且对多个质量属性来说都是敏感点的系统属性
软件质量属性策略
可用性策略
错误检测
- • 命令/响应
- • 心跳机制
- • 异常监控
错误恢复
- • 表决(裁决表)
- • 主动/被动冗余
- • 检查点/回滚
错误预防
- • 从服务中删除
- • 事务处理
- • 进程监视器
性能策略
资源需求
- • 减少处理时间
- • 减少事件数量
- • 控制资源使用
资源管理
- • 引入并发
- • 维持多个副本
- • 增加可用资源
资源仲裁
- • FIFO调度
- • 优先级调度
- • 静态调度
软件架构风格分类
数据流风格
批处理序列
每个处理步骤是独立程序,数据完整传递
管道/过滤器
构件为过滤器,连接件为管道
调用/返回风格
主程序/子程序
主程序顺序调用子程序
面向对象
数据和操作封装在对象中
层次结构
每层为上层提供服务
企业服务总线(ESB)
ESB定义
传统中间件技术与XML、Web服务等技术结合的产物,主要支持异构系统集成。基于内容的路由和过滤,具备复杂数据传输能力。
ESB主要功能
- • 应用程序位置透明性
- • 输出协议转换
- • 消息格式转换
- • 消息路由
- • 消息增强
- • 安全支持
- • 监控和管理
设计模式
创建型模式 (5种)
主要用于创建对象,为设计类实例化新对象提供指南
- • 工厂方法 (Factory Method)
- • 抽象工厂 (Abstract Factory)
- • 单例 (Singleton)
- • 建造者 (Builder)
- • 原型 (Prototype)
结构型模式 (7种)
主要用于处理类或对象的组合,对类如何设计以形成更大的结构提供指南
- • 适配器 (Adapter)
- • 合成 (Composite)
- • 装饰 (Decorator)
- • 代理 (Proxy)
- • 享元 (Flyweight)
- • 门面 (Facade)
- • 桥接 (Bridge)
行为型模式 (11种)
主要用于描述类或对象的交互以及职责的分配
- • 策略 (Strategy)
- • 模板方法 (Template Method)
- • 迭代器 (Iterator)
- • 责任链 (Chain of Responsibility)
- • 命令 (Command)
- • 备忘录 (Memento)
- • 状态 (State)
- • 访问者 (Visitor)
- • 解释器 (Interpreter)
- • 调停者 (Mediator)
- • 观察者 (Observer)
系统设计
数据流图 vs 流程图
| 区别 | 数据流图 | 流程图 |
|---|---|---|
| 并行性 | 处理过程可以并行 | 某个时间点只能处于一个处理过程 |
| 展现内容 | 展现系统的数据流 | 展现系统的控制流 |
| 处理过程 | 展现全局处理过程 | 遵循一致的计时标准 |
| 适用阶段 | 系统分析中的逻辑建模 | 系统设计中的物理建模 |
高质量数据流图设计原则
复杂性最小化原则
DFD分层结构把信息划分为小的且相对独立的子集,可以单独考查每一个DFD
接口最小化原则
在设计模式时,模型中各个元素之间的接口数或连接数最小化
数据流一致性原则
过程与过程分解数据流一致,有数据流出就有数据流入;数据流入需要有相应的数据加工
传统系统集成 vs Mashup技术
| 对比维度 | 传统系统集成 | 基于Web2.0的Mashup |
|---|---|---|
| 集成复杂度 | 需要传统平台API层支持,集成过程复杂 | 仅需要Web API,集成过程简单 |
| 功能扩展 | 需要编程方式完成,涉及数据存储层、业务逻辑层和表现层 | 直接使用Mashup技术集成多个Web API |
| 表现层特性 | 大多采用静态展现技术,需要刷新整个页面 | 用Ajax技术调用API,不需要重新加载整个页面 |
| 集成架构 | 使用传统多层企业应用集成技术 | 采用SOA思想,以服务形式集成并暴露系统能力 |
软件系统建模
用例建模
描述参与者和系统之间的主要交互
用例建模可以描述利益相关者所看到的系统行为
组件建模
确定系统的子系统、模块和组件结构
为子系统、模块分配需求和职责,每个组件作为自包含单元
服务建模
提供通用的应用程序
将应用程序定义为一组抽象服务接口
性能建模
对系统的性能进行度量
包括执行时间、资源使用、开发复杂性、维护复杂性等
JRP联合需求分析会议
通过召开一系列高度结构化的分组会议,快速的分析问题、定义需求。是一种高效的需求获取方法。
分布式系统设计
分布式数据库特点与优缺点
主要特点
- • 数据独立性与位置透明性
- • 集中管理和节点自治相结合
- • 支持全局数据库的一致性和可恢复性
- • 复制透明性(适度数据冗余)
- • 易于扩展性
优点
- • 具有灵活的体系结构
- • 适应分布式的管理和控制结构
- • 经济性能优越
- • 系统可靠性高,可用性好
- • 局部应用的响应速度快
- • 可扩展性好,易于集成现有系统
缺点
- • 系统开销大,主要花在通信部分
- • 复杂的存储结构
- • 数据的安全性和保密性较难处理
- • 保持数据一致性算法复杂
一致性保证方法
- • 一致性:数据副本一致性,保证分布式事务的ACID属性,故障恢复的一致性
- • 并发控制:确保并发操作可串行性
- • 故障恢复:保证故障的全局可恢复性
系统可靠性分析与设计
备份方式对比
| 备份方式 | 优点 | 缺点 |
|---|---|---|
| 冷备份 |
|
|
| 热备份 |
|
|
冷备份定义
在数据库关闭的情况下,对数据库中的关键文件进行备份
热备份定义
在数据库运行的情况下,对数据库中的关键数据进行备份,要求数据库管理系统提供支持
系统安全性和保密性设计
信息系统安全威胁来源
物理环境
自然灾害、电源故障、数据库故障、设备被盗等
通信链路
传输线路上安装窃听装置或对通信链路进行干扰
网络系统
因特网的开放性、国际性、无安全管理性威胁
操作系统
操作系统本身的后门或安全缺陷,如木马和陷阱门
应用系统
网络服务或用户业务系统安全威胁,包括应用系统自身漏洞
管理
人员管理和各种安全管理制度
用户认证方式
用户名和口令认证
最基本的认证方式
基于公钥、签名的认证方式
使用数字签名和公钥基础设施
持卡认证方式
智能卡、IC卡等物理介质认证
基于人体生物特征的认证方式
指纹、虹膜、面部识别等生物特征
对称加密策略
机密性
发送者利用对称密钥对要发送的数据进行加密,只有拥有相同密钥的接收者才能正确解密
完整性
发送者根据要发送的数据生成消息摘要,利用对称密钥对消息认证进行加密并附加到数据上发送
公钥加密策略
机密性
发送者利用接收者的公钥对要发送的数据进行加密,只有拥有对应私钥的接收者才能将数据正确解密
完整性
发送者根据要发送的数据生成消息摘要,利用自己的私钥对消息认证码加密并附加到数据上发送
电子政务应用领域
政务信息查询
提供政务信息的查询服务
公共政务办公
面向公众的政务服务办理
政务办公自动化
内部政务流程的自动化处理