雪佛兰c4:C4模式在实践中(c4 diagrams)

在阅读了C4 model并听了Simon Brown's talk之后,我仍然不明白如何在实践中使用它。

AFAIK,C4 模型的主要贡献是简单抽象的“协议”,使图表和文档更接近开发人员。在同一个 C4 更多关于建议,你必须自己弄清楚一些东西(这再次打破了与自定义抽象的“协议”)。

如果 C4 缺少细节,我该怎么办?直到我应该自定义它的程度?

例如:

基础设施、数据流或业务流程等支持图如何适合 C4?
例如,路由器 / 防火墙 / api 网关 / 服务总线是基础设施图中 C4 的容器吗?我找不到任何例子。

扩展 C4 的级别是个好主意吗?
C4 模型只有 4 个级别(不是递归的)。如果我需要第 5 个子系统级别怎么办。

容器关系图(级别 2)中的“数据库容器”是否应包含有关数据库名称、架构名称或数据库技术的信息?
从示例中,doesn't contain,rodoes contain

是否可以从文档中找到除了琐碎之外的 C4 示例?

4

C4 model旨在简化。在许多细节仍然不确定的时候,它简化了早期的体系结构工作。它有助于团队与不熟悉 UML 符号所有微妙之处的人进行讨论。

(1)

它并不打算成为所有内容的通用图表技术。因此,没有业务流程建模。上下文级别图提供了更多信息,例如关于用户与系统交换内容的用例图。但它停在那里。BPMN(或demonstrated与 BPMN 一样具有表现力的 UML 活动图)仍然有市场。

它既不打算取代基础架构图表或硬件设计。它专门针对软件密集型系统的需求:什么软件在何处以及如何运行。如果需要细节,UML 部署图并没有死。话虽如此,我认为如果需要了解体系结构,可以很容易地添加一些框来表示防火墙,就像它们是软件元素一样。API 网关最终到达 C4 图片(类似于this example)。

(2)

C4 级别 3 是组件。第 4 级允许您使用任何现有的建模符号来显示更多细节。没有必要重新发明轮子。如果组件仍然非常复杂,您可以使用 UML 的全部功能及其递归地根据需要进行更深入的操作 (并且仅在需要时)。

(3)

它是根据需要的。你可能会开始你的架构,只是确定需要一个数据库。但也许以后,你会在环境中有几个模式,你需要消除歧义。或者只是想记录名称。

(4)

当然,但这超出了范围。

3

像 Infrastructure,Data Flow 或 Business Process 这样的支持图如何适合 C4?例如,路由器 / 防火墙 / api-gateway / service-buses 是一个 C4 的 Containers at Infrastructure 图?我找不到任何例子。

构成 C4 模型的核心图被设计为专注于静态结构,在不同的细节层次。在 c4model.com 上也定义了一些补充图,其中一个是部署图...这是我将对路由器,防火墙,负载平衡器等进行建模的地方。

还有其他几种图表符号可用于数据流(DFD,UML 序列图,UML 协作 / 通信图等)和业务流程(BPMN,ArchiMate,UML 活动图等)。我的建议是,团队应根据需要使用这些现有的图 / 符号来补充其 C4 模型图。

来自 c4model.com FAQ:“C4 模型的重点是组成软件系统的静态结构,在不同的抽象级别。如果您需要描述其他方面,请随时使用 UML 图,BPML 图,ArchiMate 图,实体关系图等来补充 C4 图。”

扩展 C4 的级别是个好主意吗?C4 模型只有 4 个级别 (不是递归的)。如果我需要第 5 个子系统级别

当然,我见过团队这样做。只要确保你的“扩展”被你的团队 / 组织中的每个人记录和理解。

容器关系图(级别 2)中的“数据库容器”是否应包含有关数据库名称、架构名称或数据库技术的信息?

这取决于您。如果您的数据库是标准的 RDBMS 数据库 / 模式,并且不使用任何专有功能,那么您不一定需要指定技术。相反,您可以在部署图上提及该技术。但是,如果您的数据库正在使用 RDBMS 的特定功能(例如 Oracle 存储过程),并且无法部署到其他 RDBMS 上,那么您也可以指定技术以明确说明这一点。

这是否有可能找到 C4 的例子,除了从文档琐碎?

不幸的是,公开的例子很难得到...这只是组织不想公开他们的文档的性质。在 GitHub 上搜索“c4 模型”应该会找到一些例子。

本站系公益性非盈利分享网址,本文来自用户投稿,不代表边看边学立场,如若转载,请注明出处

(296)
数据库删除怎么恢复:错误地恢复已删除的数据库(accidentally deleted postgres database)
上一篇
Colmo空气主机:Adobe空气安全特性(adobe asking for serial number)
下一篇

相关推荐

发表评论

登录 后才能评论

评论列表(41条)