2 Comments

I love when I find new tools that make my life easier. I'm definitely checking out PlantUML.

Expand full comment

PlantUML is great, and there are so many extensions for it (including C4 Model - https://github.com/plantuml-stdlib/C4-PlantUML - a great choice for Application Architects, I think).

When it comes to visualising Application/Software Architecture we have a few options:

1. Whiteboards

2. Visual Diagramming tools

3. Diagrams as Code

4. Architecture as Code

All of these are valid options in their own context from a quick architecture design discussion to a long-term enterprise level architecture management.

As a Solution Architect, I've been using Architecture as Code with C4InterFlow - my own open-source Architecture as Code framework - https://github.com/SlavaVedernikov/C4InterFlow, which extend C4 Model with two additional concepts - Interfaces and Flows.

To me this is the most optimal approach for a long-term architecture management, especially when it comes to large scale evolving architectures.

With Architecture as Code (e.g. in YAML) you need to express the Architecture Model only once and then you can generate 100s of diagrams of

- different Types (e.g. C4, Sequence etc)

- for different Scopes (e.g. All Software Systems, Application Domain, a single Software System etc)

- of different Levels of Detail (i.e. C4 Context/Container/Component etc.)

Checkout some example here - https://c4interflow.github.io/architecture-as-code-samples-visualiser

Expand full comment