“离散变量自动电子计算机”由运算器、控制器、存储器、输入和输出五部分组成。
架构设计的作用主要包含如下几点:
- 解决相对复杂的需求分析问题;
- 解决非功能属性在系统占据重要位置的设计问题;
- 解决生命周期长、扩展性需求高的系统整体结构问题;
- 解决业务流程再造难的问题。
将系统分解成模块时,应该遵循如下规则:
- 最高模块内聚
- 最低耦合
- 模块大小适度
- 模块调用链的深度不可过多
- 接口简单、精炼,具有信息隐蔽能力
- 尽可能地复用已有模块
架构分析的内容:
- 结构分析
- 功能分析
- 非功能分析
架构分析的常用方法:
- 软件分析方法SAAM
- 架构权衡分析法ATAM
- 成本效益分析法CBAM
- 基于场景的架构再工程SBAR
- 架构层次的软件可维护性预测ALPSM
- 软件架构评估模型SAEM
架构设计的常用方法:
- 工作驱动
- 用例驱动
- 模式驱动
- 域驱动
- 属性驱动
软件架构的四个阶段:
- 需求阶段
- 设计阶段
- 实现阶段
- 维护阶段
软件架构的常用分类:
- 分层架构
- 表现层
- 业务层
- 持久层
- 数据层
- 事件驱动架构
- 事件队列
- 分发器
- 事件通道
- 事件处理器
- 微核架构
- 内核系统
- 组件
- 微服务架构(3种实现模式:RESTful API模式、RESTful 应用模式、集中消息模式)
- 用户接口层
- 服务组件
- 云架构
- 虚拟中间件
- 消息中间件
- 数据中间件
- 处理中间件
- 部署中间件
- 处理单元
- 虚拟中间件
系统架构的常用建模方法:
- 结构模型
- 框架模型
- 动态模型
- 过程模型
架构设计师应该具备的专业素质:
- 掌握业务领域地知识
- 掌握技术知识
- 掌握设计技能
- 具备编程能力
- 具备沟通能力
- 具备决策能力
- 知道组织策略
- 应是谈判专家