第1章 绪论
核心知识点
1. 系统架构的定义
- 定义:架构是体现在组件中的一个系统的基本组织、它们彼此的关系与环境的关系及指导它的设计和发展的原则(IEEE 1471-2000)
- 要点:
- 系统架构是系统的一种整体的高层次的结构表示,是系统的骨架和根基
- 架构设计是需求分析后的关键步骤,决定了系统的健壮性和生命周期
- 架构设计作用:解决复杂需求、非功能属性设计、扩展性、组件集成、业务流程再造
- 考试角度:选择题考架构定义、IEEE标准、架构设计的作用
- 关联真题:架构设计的意义和作用是常见考点
2. 软件架构发展历程
- 定义:从软件危机到架构成熟的四个阶段
- 要点:
- 基础研究阶段(1968-1994):模块化开发方法,最高内聚、最低耦合、模块大小适度
- 概念体系形成(1999-2000):IEEE 1471-2000标准发布,软件组件化技术
- 理论完善(1996至今):架构描述语言(C2SADL、Wright、ACME等)、架构分析方法(SAAM、ATAM、CBAM)
- 普及应用(2000至今):软件产品线、面向服务开发
- 考试角度:阶段排序、关键里程碑(IEEE标准年份)
- 关联真题:2023上/下、2024上 选择题
3. 典型架构分类(★★★ 高频)
- 定义:五大类常用架构模式
- 要点: | 架构类型 | 特点 | 适用场景 | |---------|------|---------| | 分层架构 | 表现层→业务层→持久层→数据库,层间通过接口通信 | 最常见,事实标准 | | 事件驱动架构 | 事件队列+分发器+事件通道+事件处理器 | 异步解耦 | | 微核架构(插件架构) | 小内核+独立插件 | IDE、Eclipse | | 微服务架构 | 独立部署单元,分布式,REST/SOAP通信 | 云原生、大规模系统 | | 云架构 | 处理单元+虚拟中间件(消息/数据/处理/部署) | 高扩展、高并发 |
- 考试角度:给出场景选架构类型,各架构特点辨析
- 关联真题:每年必考1-2题
4. 4+1视图模型(★★★ 高频)
- 定义:Kruchten 1995年提出,从5个视角描述软件架构
- 要点:
- 逻辑视图:最终用户→系统功能(用例视图驱动)
- 进程视图:系统集成人员→性能、可伸缩性、吞吐率
- 物理视图(部署视图):系统工程师→发布、安装、拓扑结构(软件到硬件的映射)
- 开发视图(实现视图):程序员→配置、装配
- 场景视图(用例视图):分析人员和测试人员→系统行为
- 考试角度:哪个视图对应什么角色/描述什么(尤其是部署视图=物理视图)
- 关联真题:2025上第9题、2025上第20题、2023上
5. 系统架构设计师的职责
- 定义:系统开发的技术领导角色
- 要点:
- 核心任务:抽象设计、非功能设计、关键技术设计
- 6种角色特质:领导者、开发者、系统综合者、企业家思维、战略技术专家、沟通专家
- 知识结构10个方面:战略规划、业务建模、数据架构、技术架构等
- 考试角度:选择题考架构师的职责和任务
- 关联真题:偶尔出现
真题考点映射
| 真题 | 考点 | |------|------| | 2025上-9 | 4+1视图中软件到硬件映射的是部署视图 | | 2025上-20 | 4+1视图各视角描述内容 | | 2023上/下 | 架构风格特点与适用场景 | | 2024上 | 软件架构发展历程 |
易错点
- 4+1视图中"物理视图"也叫"部署视图",描述软件到硬件的映射
- 微服务架构是SOA的升级,不是完全不同的概念
- 架构分析常用方法:SAAM(第一个)、ATAM(架构权衡分析法)
- 模块化设计原则:最高内聚、最低耦合,不是"高耦合低内聚"