架构师训练营 - 第一周学习总结

用户头像
牛牛
关注
发布于: 2020 年 06 月 10 日
架构师训练营 - 第一周学习总结

软件架构师的主要职责

  • 编写架构文档

  • 进行技术选型,设计系统架构,模快分解与微服务重构

  • 性能优化,保障安全与高可用

  • 大数据应用与技术创新

  • 沟通协调

软件架构师的要具备的能力

  • 掌握编程与基础技术

  • 熟悉常用技术产品并应用

  • 常用架构模式与框架的理解应用

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

  • 性能优化与故障排除

  • 建模与设计文档

  • 快速学习

  • 沟通与领导力

软件架构的理解

软件架构是有关软件整体结构与组件的抽象描述,用于指导软件系统的各个方面,并描述了相关架构元素以及他们之间的关系。软件架构输出架构文档,不同用户的关注点不同,由此产生了不同的架构视图,多个架构视图一起构成软件架构文档。

学习目标:关注场景,通过学习例子,训练架构思维,构建知识体系




UML4+1视图

单一视图无法完整的表达架构,需要针对不同用户的多维度视图集。

  • 场景视图:对用户、设计和开发人员概述重要的场景和非功能性需求

  • 逻辑视图:用于对客户、用户讲解系统、子系统及功能模块划分

  • 开发视图:对开发测试人员描述系统分层、框架等,指导系统如何开发实现

  • 过程视图:性能优化时描述系统进程、线程状况

  • 部署视图:对系统集成和运维人员描述物理节点与节点间通信

UML分类

静态图:通过类、对象、数据结构描述他们之间的关系,用于描述软件结构中不变的逻辑结构。

  • 用例图:描述待开发的系统功能,功能间的关系有使用和扩展。

  • 对象图

  • 类图

  • 包图:将许多类集合一起,形成高内聚、低耦合的类的集合,以降低系统复杂性

  • 组件图:组件指只遵从一组接口并提供的实现的物理的、可替换的部分,系统物理建模时重要的构造块。

  • 部署图:描述硬件的物理拓扑图以及在此结构上的软件。

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

  • 活动图:描述系统中各种活动的执行顺序。既可描述用例和对象的内部工作过程,也可描述类的行为,一个活动结束立刻进入下一个活动

  • 状态图:描述一个对象的所有状态以及引起状态转移的时间。

  • 时序图:描述对象间动态交互行为,着重体现对象间消息传递的时间顺序。

  • 协作图:描述相互合作的对象间的交互关系和链接关系,侧重于静态链接关系。



用户头像

牛牛

关注

还未添加个人签名 2018.02.27 加入

还未添加个人简介

评论

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