Code should generate diagrams automatically as you write it. Then you can see the complexity increase as you go, instead of looking back on a tangled mess.
How do you do that with disparate, disconnected systems?
Architecture diagrams enable better conversations
61–70 of 141 posts
Re: Architecture diagrams enable better conversations
#62What are your favorite diagram tools? Looking for excalidraw alternatives with good Cloud resource icon support
Sample UML: https://app.visualsitemaps.com/user_flows/share/e64da8ed-2ef...
Re: Architecture diagrams enable better conversations
#63Thanks to Leo Z for keeping this online!
[edited to fix link]
Re: Architecture diagrams enable better conversations
#64No discussion of architecture diagrams is complete without the widest one ever: http://awsofa.cloud Thanks to Leo Z for keeping this online! [edited to fix link]
Re: Architecture diagrams enable better conversations
#65I've been using https://structurizr.com/ to automatically generate C4 diagrams from a model (rather than drawing them by hand). It works well with the approach for written documentation as proposed in https://arc42.org/ . It's very easy to embed a C4 diagram into a markdown document. The result is a set of documents and diagrams under version control that can be rendered using the structurizr documentation server (fo…
One thing I was experimenting with (read: struggling with!) was a way to keep per-service (per-repo) architecture workspaces which are also synchronized on-commit to a central workspace and used !include to bind them together. The moving parts are not difficult - but writing your DSLs in a way that can handle this can be. This idea would let individual projects be self-sufficient and generate their own README doc diagrams as part of their own build process; but also have a central site which shows all the services as well as inter-service connectivity.
Did you ever consider https://github.com/avisi-cloud/structurizr-site-generatr to bring together your ADRs in with your architecture, or do you keep them separate?
Re: Architecture diagrams enable better conversations
#66There's some discussion here about linking diagrams to code or vice-versa. And while that's useful for documenting code already written, where I personally have found diagrams to be the most useful is in the planning discussions before and during writing the code in the first place. A room full of people can talk about things for hours without making progress, but as soon as you starting moving boxes and arrows aroun…
Maybe their unpopularity among developers stems from trauma of the UML+OOO+Waterfall days and an overcorrection in the opposite direction.
Or many more are doing it and just not talking about it since it's not as exciting as code.
Re: Architecture diagrams enable better conversations
#67Code should generate diagrams automatically as you write it. Then you can see the complexity increase as you go, instead of looking back on a tangled mess.
That's fine for some purposes, but for general discussions around many subjects (project planning, security, integration testing, etc) you won't get there from generated diagrams out of some code in an application.
Re: Architecture diagrams enable better conversations
#68What are the tools people use to draw diagrams? I've tried many things and settled on Miro on an iPad (infinite canvas + pencil), but I still think this space is underinvested in. The downside of diagrams from code is the loss of the wysiwyg aspect -- I want to be able to manipulate things visually.
Re: Architecture diagrams enable better conversations
#69https://c4model.com/img/c4-overview.png That's what the argument is... and I'm in favour, there used to be such great architectural tools that were mostly UML but they did this well. I miss Visio, it was awful but everyone used it and it improved communication. I feel Google Suite is missing an equivalent, it's now draw.io, there's a real gap here.
Otherwise it has all critical modeling methods and established a shared visual understanding. I prefer UML any day over eg lucidchart or Visio. Not that they cannot draw an architecture but boxes are what exactly again there?
I especially like UML because there are no AWS logos and database icons. When drawing diagrams I am not there to impress how many icons I can do.
Re: Architecture diagrams enable better conversations
#70We’ve found that you get a lot of value out of the first two levels of C4 alone. If your shop is good at UML and keeping it up-to-date, awesome, that work snaps right in as the additional layers. But whether you do 3 and 4 or not, context and container give everyone a lay of the land in easy to digest, progressive glimpses. Plus, the approach is so simple you can use it in whiteboard sketches, back of the napkin, or whatever you’ve got.
Personally, I use PlantUML with a plug-in for your IDE of choice to author our formal artifacts. Excalidraw for doing it during real-time collaboration sessions. All of this is free.