The best free and paid tools for visually modelling your software architecture
⚡ Tl;dr
- Software architecture tools can be categorized into three groups, modelling tools, diagrams as code and diagramming tools.
- Modelling tools are suited for long-term documentation as they store reusable objects and relationships in the model, which keeps all your diagrams up to date.
🚀 Let’s kick-off
Diagramming software architecture provides several benefits to how we communicate complexity. Clear system designs give engineering teams an enhanced understanding of the architecture and plan for future development whilst identifying potential issues.
Modelling tools work best for long-term system design docs. Reusable objects and relationships are stored in the model, which keeps all your diagrams up to date.
1️⃣ IcePanel
IcePanel is a web-based SaaS tool for collaboratively modelling software architectures using the C4 model.
Free and paid.
Best for agile development teams looking for a lightweight collaborative tool to model and document their software architectures.
It includes features such as:
- Interactive diagrams that are zoomable into increasing levels of technical detail.
- Agile modelling for drawing diagrams and creating models at the same time.
- View different perspectives by overlaying additional metadata onto existing diagrams.
- Flows for overlaying and communicating sequences of messages onto existing diagrams.
- Link objects to resources in reality, such as source control or cloud resources and be notified when your diagrams are drifting from reality.
2️⃣ Enterprise Architect
Enterprise architect by Sparx Systems is a desktop application for modelling business, IT and software systems.
Paid.
Best for large enterprises that need to create models for a wide range of industry standards.
It includes features such as:
- Analysis, design, implementation, test and maintenance models.
- UML, SysML and BPMN standards.
- High performance to load extremely large models in seconds.
- Dynamic model simulations are written in Javascript.
- Source code roundtrip for many popular languages, including C, C++, Java, PHP, Python and Visual Basic.
- Complete traceability from requirements, analysis and design models to implementation and deployment.
3️⃣ Visual Paradigm
Visual Paradigm is a desktop application with modelling and diagramming capabilities. It also has a collaborative online version.
Paid.
Best for Enterprise architects who need to produce a wide range of models and diagram types with lots of flexibility.
It includes features such as:
- Project management and agile development tracking.
- User story and customer journey mapping.
- Database and entity relationship diagrams.
- UML, SysML, ERD and DFD diagrams.
- TOGAF ADM / DoDAF / NAF / MODAF, all the acronyms.
4️⃣ Archi
Archi is a desktop application for modelling for creating ArchiMate models and sketches.
Free and open source.
Best for individuals looking to create models using the ArchiMate language without spending a budget on expensive tooling.
It includes features such as:
- The latest version of the ArchiMate 3.1 language.
- Create ArchiMate elements, relationships, views and viewpoints.
- Hints view to help you understand the ArchiMate language.
- Visualizer for showing relationships, sketch view and canvas modelling.
5️⃣ Gaphor
Gaphor is a desktop application for modelling and diagramming for beginners or professionals.
Free and open source.
Best for individuals looking for open-source tools that support a few of the most popular standards in software architecture modelling.
It includes features such as:
- Supports UML, SysML, RAAML and C4 model standards.
- Cross-platform Windows, macOS and Linux support.
- Build class, interaction and state machine diagrams.
- Open source Apache 2 license.
- Create custom extensions and plugins.
6️⃣ StarUML
StarUML is a desktop application for agile and concise modelling.
Free for evaluation and paid.
Best for individuals in an organization who want to create validated models and generate code/HTML from them.
It includes features such as:
- UML 2.x, SysML, ERD, DFD and Flowchart diagrams.
- Cross-platform Windows, macOS and Linux support.
- Model-driven development via JSON format.
- Code generation in Java, C# and C++.
- Publish HTML and PDF exports.
- Markdown documentation support.
7️⃣ Archipeg
Archipeg is a cloud-based modelling and diagramming tool for cross-functional teams.
Free and paid.
Best for teams looking to create and visualize a shared knowledgebase or catalog of their enterprise architecture.
It includes features such as:
- App portfolio management, C4 modelling and domain-driven design.
- Object catalog designer and object graph explorer.
- Knowledge collection and sharing.
8️⃣ GenMyModel
GenMyModel is an online collaborative modelling, documentation and diagramming tool.
Free and paid.
Best for enterprise teams who want a real-time collaborative view of their architecture and documentation.
It includes features such as:
- ArchiMate, BPMN and UML modelling.
- Journey mapping, data modelling and flowcharts.
- Search across your architecture and documentation.
- Google drive style collaboration and communication.
- UML code generation.
- Versioning and time machine.
9️⃣ Aplas
Aplas is a web-based tool for modelling your software landscape and visualizing it in 3D.
Free and paid.
Best for enterprises who want to catalog and visualize their complex landscapes for presenting to stakeholders.
It includes features such as:
- Create model index from CSV or API.
- Text search across your model.
- Visualize the model as a 3D map with multiple styles.
- Publish and share with your team in one place.
🏁 To wrap up
There are many software architecture modelling tools to choose from, and it’s important to consider which is best suited for your organization.
Some key things to consider:
- Support for standards and diagram types you wish to use.
- Easy access and learning curve for those who need to use the tool.
- Cost for the number of people in your organization who need a license.
Stay chill 🧊
Top comments (1)
Also mind UMLet. Really simple, yet very handy.