2/12/2024 0 Comments Program diagram architectureI’m a rather new architect as well and haven’t yet tried to put C4 to practice, but i have been thinking that we need different levels of system diagrams where on the first/highest level you can see all systems and lines between them representing data movement (integrations) between them.Īnd then i’d want to click on a specific system/app box and i zoom in into that app’s overview diagram (be/fe/db etc containers) and either at this stage or in the next detailed view i want to also show additional information in tech stack description, links to our gitlab repo and confluence page etc. otherwise you're going to end up in the same situation in the future again. If you do gown that route, my recommendation would be to define the abstractions that you want to use and have these agreed with your team. LikeC4, Ilograph, etc) sounds appealing, but in many cases it's just papering over the cracks, and not solving the root problems of teams not being precise about how they think about, describe, and talk about their codebases. Having an arbitrary number of levels of abstraction (e.g. These discussions push teams to be more precise with their language, which is ultimately what we need to do as an industry if we're ever going to move towards something more akin to an engineering-based discipline. One of the big themes from the talk is this: the value of the C4 model isn't the fancy hierarchical diagrams, it's the limited set of abstractions that force teams to have discussions such as, "is X a container or a component?". thinking that "C4 doesn't scale to large systems".looking at software from a people/team perspective (think tribes and squads) rather than a static structure perspective (scale-up companies seem particularly prone to this).mixing static, runtime, and deployment concerns.a misunderstanding of the team's own codebase and how they think about their system.a video will end up on YouTube eventually) that discusses some of the reasons, which are often down to: I have a talk that I've started to present at events this year titled "The C4 model - misconceptions, misuses, and mistakes" ( slides. outside of things like no/low-code and embedded devices/firmware/hardware which the C4 model isn't designed for. But I've yet to find a large/complex system that can't be modelled with C4. I regularly work with some of the largest companies in the world, and some of their teams mention similar concerns before we start a diagramming exercise on their systems. Yeah, my team had some limitations with the c4 model and other specific things in some very large complex systems Thank you for your work both with C4 and Structurizr.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |