Tech World With Milan Newsletter

Share this post

Software Architecture As Code Tools

newsletter.techworld-with-milan.com

Software Architecture As Code Tools

An overview of architecture/diagrams as code tools

Dr. Milan Milanović
Jan 23
1
Share this post

Software Architecture As Code Tools

newsletter.techworld-with-milan.com

We’re seeing more and more tools that enable you to create software architecture and other diagrams as code. The main benefit of using this concept is that the majority of the diagrams as code tools can be scripted and integrated into a built pipeline for generating automatic documentation.

The other benefit responsible for the growing use of diagrams as code to create software architecture is that it enables the use of text-based tooling, which most software developers already use.

What are some existing tools for creating such diagrams?

  1. Structurizr

Create multiple diagrams from a single (C4) model. It allows to creation of multiple diagrams from a single model, using different tools and programming languages.

Structurizr
  1. PlantUML

It is an open-source tool allowing users to create diagrams from a plain text language. With PlantUML you can create different kinds of UML and non-UML diagrams too (Sequence, Class, Component, JSON data, Network, Gantt, …).

PlantUML
  1. Diagrams

Turn python code into cloud system architecture diagrams. A new or current system design can also be explained or represented visually. The main major providers that Diagrams presently supports include AWS, Azure, GCP, Kubernetes, Alibaba Cloud, Oracle Cloud, etc.

Diagrams


4. Mermaid

Mermaid is a JavaScript-based diagramming and charting tool that uses Markdown-inspired text definitions and a renderer to create and modify complex diagrams. The main purpose of Mermaid is to help documentation catch up with development.

Mermaid
  1. ASCII editor

ASCII Flow is a simple and easy-to-use online flowchart software that uses ASCII characters to create flowcharts. It allows users to create flowcharts by simply typing out the diagram using ASCII characters, and then converting it into a visual flowchart. It can be used for creating flowcharts, diagrams, and other types of visual diagrams.

ASCIIFlow
  1. Markmap

Markmap is a tool that allows you to create and edit mind maps. Markmap uses a technology called Markdown, which is a lightweight markup language, to create and edit mind maps.

Markmap
  1. Go diagrams

It is a similar tool to Diagrams, but with Go as a diagramming language.

Go diagrams
  1. SequenceDiagram.org

Sequencediagram.org is a tool that provides a simple online tool for creating and sharing UML sequence diagrams.

SequenceDiagram.org

Along with these diagrams as code tools, there are other software architecture tools, such as:

Modeling tools:

  • IcePanel

  • Enterprise Architect

  • Archi

  • Carbide

  • StarUML

Diagramming tools:

  • Visio

  • LucidChart

  • Draw.io

  • Cloudcraft

  • Archium

  • Excalidraw

  • CloudSkew

Check the full list of tools here: https://softwarearchitecture.tools/.

Software architecture tools

This week's issue is sponsored by IcePanel: Share siloed knowledge and onboard engineers in weeks, not months. Collaborate on a single source of truth for your system design with IcePanel.

Thanks for reading Tech World With Milan Newsletter! Subscribe for free to receive new posts and support my work.

Share this post

Software Architecture As Code Tools

newsletter.techworld-with-milan.com
Previous
Next
Comments
TopNewCommunity

No posts

Ready for more?

© 2023 Dr. Milan Milanović
Privacy ∙ Terms ∙ Collection notice
Start WritingGet the app
Substack is the home for great writing