写点什么

架构师 3 期 3 班 -week1- 总结

用户头像
zbest
关注
发布于: 2020 年 11 月 22 日

架构师的主要职责

  • 系统架构设计,输出设计文档

  • 开发编程框架

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

  • 技术选型

  • 性能优化

  • 解决技术应用中的问题,保障系统安全和高可用

  • 大数据应用

  • 技术创新

  • 沟通管理


架构师的主要能力

  • 编程能力

  • 技术能力(基础技术掌握,常用产品、框架的理解及应用)

  • 性能优化与分析故障能力

  • 设计能力(建模,模块拆分,输出设计文档)

  • 业务理解能力

  • 快速学习能力

  • 沟通与领导能力


4+1 视图模型

单一视图难以完整的描述系统架构,因此需要完备的视图集


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

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

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

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

场景视图(Scenarios),描述用例场景


逻辑视图

描述系统的逻辑关系。

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

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

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

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


开发视图

描述系统如何开发实现

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

视角:系统的开发实现

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

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


物理视图

描述部署方案

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

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

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


过程视图

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

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

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


场景视图

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

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


软件设计的三个阶段

需求分析

概要设计

详细设计


UML

统一建模语言

建模就是对事物的抽象


UML 分为静态图和动态图


静态图

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

静态图包括:

* 用例图,主要在需求分析阶段,来描述系统功能

* 对象图 不常用

* 类图,主要在详细设计阶段,描述类,类与类之间的关系

* 组件图 用来描述系统组件关系的图

* 包图 不常用

* 部署图 概要设计阶段 描述系统最终的部署情况


动态图

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

动态图包括:

* 协作图 不常用

* 时序图 描述对象之间动态交互的模型图

* 活动图 描述流程信息

* 状态图 描述特定对象的状态变迁


发布于: 2020 年 11 月 22 日阅读数: 43
用户头像

zbest

关注

一个胖子 2020.11.04 加入

一个不正经的java程序员, 整天写着openresty和go的代码, 努力从键摄向非职业摄影师迈进, 快要溺死在内耗里的中年人, 胖子。

评论

发布
暂无评论
架构师3期3班-week1-总结