作为软件开发者,我们在工作中难免要画很多的架构图,但是很多人对于如何去画架构图其实是很模糊的,有那么多种类型的图,我们究竟该选哪个,用应该怎么画呢?今天我们一起来看看这个问题。
什么是架构图在谈什么是架构图之前,我们先来聊聊什么是架构。
软件架构指的是软件系统的顶层设计(Rank),它定义了系统由哪些角色(Role)组成,角色之间的关系(Relation)和运作规则(Rule),如下图所示。
定义:
描述系统对用户提供了什么业务功能,类似4 1视图
使用场景:
1.汇报
2.面试、晋升
3.产品人员规划业务
画图技巧:
1、不同的颜色标识业务状态(不超过3色)
2、分组,标准是相似性。协同,互用 虚线框框起来
定义:客户端和前端的领域逻辑架构,类似于4 1视图的逻辑视图。
使用场景:
1、整体架构设计
2、架构培训
3.面试
画图技巧:
1.通过不同颜色来标识不同角色
2、通过连接线来表示关系。
定义:描述后端系统由哪些应用组成。
使用场景:
1.项目开发、测试
2、部署开发
3、子域架构设计
画图技巧:
1.通过不同颜色来标识不同角色
2、不同连线来标识不同关系
定义:描述系统具体如何部署的,对应4 1视图的物理视图
系统序列图系统动态架构图
系统序列图用UML序列图来画图,用于面试核心功能的实现规则。