写点什么

架构师学习笔记【架构师训练营第 1 期】

发布于: 2020 年 09 月 20 日

职责:

1、编写架构设计文档

2、开发编辑框架

3、重构软件代码

4、设计系统架构

5、进行技术选型,解决技术应用中的问题

6、优化系统性能

7、模块分解与微服务架构重构

8、保障系统安全与高可用

9、大数据应用

10、技术创新

11、沟通管理

主要能力:

1、编程能力

2、基础技术掌握能力

3、常用技术产品的理解与应用能力

4、性能优化与分析故障的能力

5、常用架构模式和框架的理解与应用能力

6、建模以及设计文档的方法和能力

7、业务理解与功能模块及非功能模块拆解能力

8、快速学习能力

9、沟通与领导能力

软件架构:

有关于软件整体结构与组件的抽象描述,用于指导大型软件系统各个方面的设计(元素,形式,关系/约束)

4+1架构视图:

单一的视图无法完整的表达架构,因此需要具备完整的视图集

  • 逻辑视图(Logical View),设计的对象模型

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

  • 视角:系统的功能元素,以及它们接口,职责,交互

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

  • 用途:开发组织划分,成本/进度的评估

  • 过程视图(Process View),捕捉设计的并发和同步特征

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

  • 视角:系统运行时线程,进程的情况

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

  • 物理视图(Physical View),描述了软件到硬件的映射,反映了部署特性

  • 相关者:系统集成商,系统运维人员

  • 视角:系统逻辑组件到物理节点的物理部署和节点之间的物理网络配置

  • 主要元素:物理节点以及节点的通信

  • 开发视图(Development View),描述了在开发环境中软件的静态组织结构

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

  • 视角:系统如何开发实现

  • 主要元素:描述系统的层,分区,包,框架,系统通用服务,业务通用服务,类和接口,系统平台和相关基础框架

  • 用途:指导开发组织设计和开发实现

  • 场景视图(scenarios),描述用例场景

  • 相关者:用户,设计和开发人员

  • 视角:概况了架构上最重要的场景(最典型或者最有风险)及其非功能性需求,通过这些场景的实现,阐明了架构的广度或者众多架构元素运行的方式

模型:

概念:

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

通常,开发一个计算机系统是为了解决某个领域特定问题,问题的求解过程,就是从领域问题到计算机系统的映射。

目的:

节约成本,证明某件事能否进行工作,方便与人沟通

UML:

  • Unified Modeling language,或统一建模语言

  • 以图形方式描述软件的概念

  • 分类:

  • 静态图:通过描述类,对象和数据结构以及它们之间存在的关系,来描述软件要素中不变的逻辑结构

  • 用例图(Use Case Diagrams)

  • 对象图 (Object Diagrams)

  • 类图(Class Diagrams)

  • 组件图(Component Diagrams)

  • 包图(Package Diagrams)

  • 部署图(deployment Diagrams)

  • 动态图: 通过描绘执行流程或者实体变化的方式,来展示软件实体在执行过程中的变化过程

  • 协作图 (Collaboration Diagrams)

  • 序列图 (Sequence Diagrams)

  • 活动图 (Activity Diagrams)

  • 状态图 (state Diagrams)

  • 通用模型元素:在图中使用的概念统称为模型元素,模型元素与模型元素之间连接关系也是模型元素

关联:连接模型元素及链接实例

依赖:表示一个元素以某种方式依赖于另外一种元素

泛化:表示一般与特殊的关系,即“一般”元素是“特殊”关系的泛化

聚合:表示整体与部分的关系

  • 消息

  • 简单消息



  • 同步消息

  • 异步消息



用户头像

还未添加个人签名 2019.04.02 加入

还未添加个人简介

评论

发布
暂无评论
架构师学习笔记【架构师训练营第 1 期】