DEV Community

Discussion on: Using the C4 model to document Software Architectures

outsourcedev profile image

This is one of the best C4 intro articles I have read, especially like the very simple couple of examples.

As per the author I was brought up on full fat CASE tools, Yourdon/Demarco then UML upfront design. We seem to have slipped from forward engineering ie design to no design and then simply trying to reverse engineer codebases (with poor success and usability).

C4 models and ADR are the most recent ideas I have seen that are a pragmatic way to have sufficient level of documentation in a structured fashion. I am a fan of ADRs as they capture why something was done, which make it a lot easier to alter software at a later date if you can know why the original engineer built in a certain way and be confident that you wont break anything if you change it.

I am a fan of living documentation but don't think we have all the tools or process readily available in a simple fashion just yet. But I live in hope