Throughout our lives, we use diagrams to break down concepts in order to learn them and communicate to others. We diagram sentences, we learn about the body through diagrams, we create diagrams to illustrate the steps of a process or a game. These visual aids augment spoken and written instruction in order to help cement ideas in our minds, and this concept endures throughout our lives, becoming particularly useful in the world of IT architecture.
But when communication tools come to mind, an organization often jumps first to the trusty slide deck. Slide presentations can help convey the overall goal for evolving architectures one project at a time, all while managing the key stakeholders through its glossy storytelling. But slides meet their limits when it comes to mapping the many logical structures that makeup cloud infrastructure and its many network topologies, security zones, CI/CD pipelines, and service dependencies.
Detailed mappings like these are not a nice to have. It is a necessary to provide a broader context for understanding dependencies across complex systems and to help actualize a vision for evolving architectures. Diagrams that spare no detail can answer important questions about compatibility, interoperability, and other key -ilities that Architects are trusted to think through.
In cases where every detail matters and you need a bigger canvas to express it, a more specialized architecture diagramming software comes in handy. Here are six such tools to create and share your architecture diagrams, no matter the topic.
Diagrams.net provides users with a quick way to start diagramming software, hardware, or other types of IT infrastructure. It also has a wide collection of useful templates out of the box, including software, network, and business objects for everything from threat modeling for Security Architects to a full set of Kubernetes-specific shapes to show off your cloud infrastructure.
The "Click to connect and clone" option makes building out repetitive shapes a breeze, and the wide range of ways to import and export make for a great tool for quick drafts or deep design work. Diagrams.net also offers the option to export as a URL, making an image publicly available in an instant.
Most impressively, Diagrams.net can be saved as simple text files, making backups and sharing incredibly straightforward.
Architecture examples project
What would it look like to use Diagrams.net, but with the logical and conceptual structure of cloud-native infrastructure architecture built-in? That's the question the Architecture Examples project aims to answer. This collection of curated iconography offers pre-defined "stacks" for concepts like CI/CD pipelines, automated testing, name services, containerized applications, microservices, and much more.
The project is based on Diagrams.net (Draw.io), and is freely available online. The most convenient feature of this project is that the diagrams are available as text files you can upload and remix yourself. Check it out further by launching an editor or downloading templates for projects from the project README on GitLab.
While widely used for mind mapping and other non-technical architecture designs, Lucidchart has a number of technology-focused architecture diagram options available in its library. A quick search will find everything from database diagramming using UML notation to Kubernetes deployments like the one above with a pre-defined template using GCP cloud architecture.
Lucidchart provides a particularly smooth diagraming experience in a freemium model. Take a tour to see all the available options.
Gliffy is another modern online solution for architecture diagrams that cater to software engineers. It has similar icons to choose from when compared to Lucidcharts or Diagrams.net, but I was particularly appreciative of its sleek two-dimensional images. It may have one of the more complete libraries for cloud architects with icons for container orchestration systems and specific icons for Azure, GCP, and AWS architecture diagrams to map out your entire hybrid cloud architecture.
Considered the de facto standard for diagrams of all kinds, Microsoft Visio continues to be a popular choice for enterprise architects across all industries. It has both operating system-native installation options and a Visio for the web option, though it requires an account to launch.
Visio offers a set of open templates focused on process or UML diagrams here.
Many Mac users would think me remiss if I didn't mention Omnigraffle. It provides an architecture diagramming software that looks and feels native to the operating systems and has taken design seriously since its release in 2001. Adoption may be limited, as it is a macOS-only purchase, but it is an architectural diagramming software well-loved by many.
Bonus: Kubernetes architecture icons for your slides
No matter what you use for a tool, the Kubernetes project provides an unofficial set of icons to create diagrams of Kubernetes architectures like this example example. The icons are available in the Kubernetes community repository, and you can see their use in a slide presentation here. Download them and use them everywhere Kubernetes architecture is designed.
Whether you are an Architect of clouds, storage, or applications, images are the way by which you share your ideas and vision. These architectural diagrams of complex systems reflect multiple views of the complex reality of IT infrastructure. All of the tools listed here will give you a great way to start designing images that tell the story of system architecture.
In my experience, the best experience and price for diagram software comes from Diagrams.net and its open source extensions. The Architecture Examples project, built on Diagrams.net, offers a great selection of examples of complex systems users can diagram with relative ease.
[UPDATE: April 2021] If you're focused on network architecture, check out this follow up article with network architects in mind.