simonbrowndotje / c4model

The website at c4model.com
Other
29 stars 12 forks source link

Nature of relationship and facets of coupling #14

Open azarboon opened 1 month ago

azarboon commented 1 month ago

Gregor Hohpe is a thought leader in Enterprise Integration. He argues that nature of relationships (sync, async, etc) and facets of coupling (below) should be communicated.

Also, as per Mark Richards and Neal Ford, "coupling" is one of the three factors for measuring modularity of the system. "dynamic diagram" attempts to address this but as per doc, it's not mandatory. "coupling" has been referenced briefly in the doc. Also, the below sample component diagram omits many facets of coupling: time, space, technology, etc. So, I'm wondering how does C4 communicate coupling to readers? May I create a PR and address this?

image

image

image

Sources: Fundamentals of Software Architecture: An Engineering Approach https://www.enterpriseintegrationpatterns.com/ramblings/coupling_facets.html https://architectelevator.com/cloud/iac-architecture-as-code/

azarboon commented 1 month ago

I'm considering to add few checkpoints to address coupling and its dimensions, perhaps in Component Diagram page(?). So, readers, at least, consider this point and may want to add it to their diagram. @simonbrowndotje what's your advice?