HACKER Q&A
📣 jnxx

What experiences do you have with arc42?


I have recently heard several times good things about https://arc42.org/ , which is an open-source tool to document architectures.

What experiences do you have with it? How well does it support teams which do not have experience with formal architecture descriptions? How much additional tools does one has to learn to use it? As it claims that it supports iterative development processes, how can it be integrated with version control?

Would it work for organizations which do not have architecture documentation as an explicit goal which they do not set time aside for?


  👤 ggeorgovassilis Accepted Answer ✓
> What experiences do you have with it?

Disclaimer: not much. I haven't encountered it outside Germany which also puts a question mark on its collaborative value. In the age of automagic programming frameworks like Spring Boot dedicated software architecture models seem to me like an overkill - they neither add enough information nor provide sufficient abstractions to justify their existence over more generalised frameworks like Archimate (which is a true Swiss army knife for modelling any type of architecture).

> How well does it support teams which do not have experience with formal architecture descriptions

It seems focused on software architecture which increasingly is entangled with infrastructure, security aspects and domain/operations processes so that "just" software architecture documentation isn't useful. Other notations like Archimate model multiple aspects without being opinionated or overly strict about it (I'm quite fond of Archimate's mixed views that combine multiple aspects into a single diagram) and come with free tooling (Archi).

> Would it work for organizations which do not have architecture documentation as an explicit goal which they do not set time aside for?

If software architecture documentation is the only thing missing from the organisation then maybe yes. But if I haven't documented anything architecture yet, I would probably start with a high level system architecture (eg. following the C4 model) and work my way down to more specific layers.