架构师训练营 01 周 -- 学习总结
架构师 JD
通过 JD 的描述和面试中的问题,可以勾勒出架构师的主要能力
编程能力
基础技术掌握能力
常用技术产品的理解和应用能力
性能优化和分析故障的能力
常用架构模式和架构理解和应用能力
建模及设计文档的方法和能力
业务理解与功能模块和非功能模块拆解的能力
快速学习的能力
沟通和领导的能力
对照 JD,寻找自己的短板,能更好地从课程中收获知识
除了学习技术本身去解决具体的问题,也要找到技术背后的规律,可以避免对新技术的被动学习,达到以不变应万变
除了能力上的要求,架构师还需要
积极主动的去承担责任,帮助他人
具有广泛的知识。但要注意,没有技术知识的深度,就没有知识的广度。
通过实践,加深对知识的了解
4+1 架构视图
多角度描述架构
逻辑视图
相关方:客户,用户,开发的组织者
视角:系统的功能元素,接口,职责,交互
主要元素:系统,子系统,功能模块,子功能模块,接口
用途:开发组织划分,成本、进度的评估
图例:功能模块图、子系统关系图
过程视图
相关方:性能优化、开发相关人员
视角:系统运行时线程,进程的情况
主要元素:系统进程、线程以及处理队列
用途:指导性能调优
图例:UML 时序图
物理视图
相关方:系统集成商,系统运维人员
视角:系统逻辑组件到物理节点的物理部署,和节点间的物理网络配置
主要元素:物理节点以及节点的通信
用途:方便运维人员提供运维方案
图例:UML 部署图
开发视图
相关方:开发人员、测试人员
视角:系统如何开发实现
主要元素:描述系统的层,分区,包,框架,系统通用服务,业务通用服务,类和接口,系统平台和相关基础架构
用途:指导开发组织设计和开发实现
图例:UML 类图
场景视图
相关方:用户,设计和开发人员
视角:概括架构上的最重要场景,以及非功能性需求
主要元素:参与人员,主要用例,等
用途:指导开发组织设计和开发实现
图例:UML 用例图
UML 图
实践中,使用 UML 来描述领域模型,表述软件概念和设计。
UML 图的组成部分
通用模型元素
类
对象
包
状态
用例
节点
接口
注释
组件
模型间的连接关系
依赖:方法内局部变量
关联:成员变量
继承:父类子类
实现:接口实现
聚合:局部和整体,但是不同生命周期
组合:局部和整体,且同一生命周期
UML 图
静态图
动态图
综合运用 UML 图
使用各种图去不断的细化设计,最终完成系统的设计,并清晰的表达出来,让相关方(产品,业务,开发,测试,运维)去理解和落实架构师设计。
架构设计文档
UML 表述了模型的设计,但是光有 UML 图也是不够的,架构师还需要输出架构设计文档,用文字和图一起来描述设计。
架构设计文档,按照 系统、子系统、组件、类 逐层分解描述的方式,由粗到细的描述系统。
版权声明: 本文为 InfoQ 作者【骏马】的原创文章。
原文链接:【http://xie.infoq.cn/article/c547eed7b4a61b1a6034efb3e】。未经作者许可,禁止转载。
评论