如何画架构图之C4模型画法
之前一直看别人画架构图,自己画的很烂,最近看了一点点资料,整理了下,分享出来,希望对别人有帮助,如果有不对的地方欢迎指正。
C4架构图要解答的问题:
1,为哪些用户提供什么服务? 语境图
2,完成这个系统使用了哪些服务?容器图
3,每一个服务是由哪些组件实现的 组件图
4,实现这个组件需要完成什么?类图
语境图:
意图:
我们构建的软件系统是什么?
谁在使用它
如何融入现有的it系统
结构:
中间画一个简单的框图代表你的系统,周围是和它相互作用的系统。不去关注细节。
动机:
使语境更明确
从更高的层次展示了正在向已有的IT环境中添加了什么?
技术和非技术可以当做讨论起点的一种更高层次图标。
牵涉到理解系统间接口的问题时,为你识别可能需要沟通的人提供一个起点。
举例:
容器图
意图:
帮助解答以下问题:
软件系统的整体形态
高层次的技术决策
职责在系统如何分布
容器之间如何相互交流
为了实现特性,作为一个开发者,我需要在哪里写代码
结构:
画一个简单的框图展示你的关键技术选择。
容器:
Web服务器
应用服务器
企业服务总线和业务流程编排引擎
sql数据库
nosql数据库