写点什么

架构师训练营 Week1 - 学习总结

用户头像
关注
发布于: 2020 年 09 月 20 日
架构师训练营Week1 - 学习总结

知识点概要

  • 概念定义

  • 什么是软件架构?

  • 什么是模型?

  • 架构师的职责和能力

  • 4+1架构视图

  • 用UML建模

  • 静态模型 - 静态图(6)

  • 用例建模

  • 动态模型 - 动态图(4)

  • UML中的消息

  • 实现模型(2)

  • 通用模型元素

概念定义

1. 什么是软件架构?

是有关软件整体结构与组件的抽象描述, 用于指导大型软件系统各个方面的设计

  • 包含架构元素, 和架构元素之间的关系

  • 通过架构文档来满足和展现各个相关方的需求

  • 架构文档中会通过不同的架构视图来展示相关方的关注点

  • 软件架构 = {元素,形式,关系/约束}

2. 什么是模型?

是一个系统的完整抽象。 人们对某个领域特定问题的求解及解决方案,对他们的理解和认知都蕴含在模型中。

领域问题 -> 概念模型 -> 系统需求 -> 解决方案

3. 架构师的职责

  • 技术选型

  • 设计

  • 编写架构设计文档

  • 设计系统架构

  • 模块分解与微服务加购重构

  • 保障系统安全与可用性

  • 大数据

  • 编码调试

  • 开发编程框架

  • 重构软件代码

  • 优化系统性能

  • 思维

  • 技术创新

  • 技术管理

3. 架构师的主要能力

  • 知识储备

  • 掌握基础技术

  • 常用技术产品理解和应用

  • 理解常用架构模式和框架

  • 设计建模

  • 设计建模

  • 建模及设计文档方法核能力

  • 业务理解,功能与非功能模块的拆解能力

  • 编码与分析解决问题

  • 编程

  • 性能优化,分析故障

  • 软技能

  • 快速学习

  • 沟通和领导力

4+1架构视图

单一的视图无法完整的表达架构

逻辑视图 (Logical)

终端用户(End-User)的功能(对象模型)

  • 相关方: 客户,用户, 开发组织管理者

  • 主要元素:系统,子系统,功能模块,子功能模块,接口,交互

过程视图 (Process)

捕捉设计的并发和同步特征。 integrators, Performance, Scalability

  • 相关者:性能优化,开发

  • 主要元素:系统进程,线程, 处理队列

开发视图 (Development)

开发环境中的程序的静态组织结构

  • 相关方:开发,测试人员

  • 主要元素:系统分层,分区,包, 类, 接口; 框架;通用服务(系统, 业务)

物理视图 (Physical)

软件到硬件的映射。 系统的拓扑结构图。

  • 相关方:系统集成商,运维

  • 主要元素: 物理节点,节点通信

场景视图 (Scenarios)

软件的用例场景

  • 相关方:用户,设计,开发

  • 主要元素: 角色,用例(操作)

UML (统一建模语言)

静态模型

用例图 (Use Case)

组件图 (Component)

部署图 (Deployment)

包图 (Package)

类图 (Class)

对象图 (Object)

动态模型

时序图 (Sequence)

状态图 (State)

协作图 (Collaboration)

活动图 (Activity) - 泳道图

通用模型元素



UML中的消息



用户头像

关注

还未添加个人签名 2018.09.18 加入

还未添加个人简介

评论

发布
暂无评论
架构师训练营Week1 - 学习总结