你好,我是悟空。
画图技巧
本图来自极客时间。
理解架构
要想准确地理解架构的定义,关键就在于把三组容易混淆的概念梳理清楚:系统与子系统模块与组件框架与架构。
系统与子系统
系统泛指由一群有关联的个体组成,根据某种规则运作,能完成个别元件不能单独完成的工作的群体。它的意思是"总体""整体"或"联盟"。
模块与组件
软件模块(Module)是一套一致而互相有紧密关连的软件组织。它分别包含了程序和数据结构两部分。现代软件开发往往利用模块作为合成的单位。模块的接口表达了由该模块提供的功能和调用它时所需的元素。模块是可能分开被编写的单位。这使它们可再用和允许人员同时协作、编写及研究不同的模块。软件组件定义为自包含的、可编程的、可重用的、与语言无关的软件单元,软件组件可以很容易被用于组装应用程序中。
框架与架构
软件框架(Software framework)通常指的是为了实现某个业界标准或完成特定基本任务的软件组件规范,也指为了实现某个软件组件规范时,提供规范所要求之基础功能的软件产品。
画架构图注意点
最近在画项目的技术架构图,需要注意哪些事情呢?
- Who:谁来画,一般是架构师或高级工程师。
- Who Care: 团队内部的开发、公司的技术领导。
- 复杂度:不需要在图上展示所有的细节。只画出最重要的部分,避免弄乱。
- 分层次:把系统按照不同的层次排列。
- 工具:可以用一些画图工具来帮助画出漂亮的图,比如 ProcessOn、Draw.io、Lucidchart、Microsoft Visio等。
- 解释:有些信息可能不能完全在图上呈现,可以在旁边加一些文字解释,确保别人也能明白。
- 保持更新:项目的架构会随着时间改变,所以要定期看看是否需要更新图表。
我最喜欢的画图工具还是 ProcessOn,我的大部分文章都是用这款工具绘图的。
业务架构图
定义:描述系统对用户提供了什么业务功能,画的时候偏向业务功能,弱化技术内容。
画图技巧:将类似的业务放在一个分组里面展现,用虚线框或者相同背景将其标识出来。
中台架构图
中台架构图(系统架构图)
定义:全面,包含前端、后端、第三方平台等内容。
数据中台架构图
定义:多描述数据的流转、存储、数据支撑等。
数据中台架构图
云平台架构图
云平台架构图
智慧园区架构图
智慧园区架构图
技术架构图
定义:描述用到了哪些技术,如何将这些组件联合起来使用。
技术架构图
PassJava 技术架构图
技术架构图
部署架构图
定义:描述后端系统具体是如何部署的,主要包含机房信息、网络信息和硬件信息等。
使用场景:总体架构设计。运维规划和优化。
画图技巧:用图标代替区块,这样看起来更加美观和容易理解。
来自极客时间
来自东方证券