The foundation is flowcharts, with support for individual layers distinguishing levels of abstraction, and scenarios for exploring use-cases. From there:
- Live data. We look at metrics on dashboards but it doesn't put into perspective how they relate to each other. Imagine seeing on your flowchart of servers, that one worker has an anomalous CPU reading, and you can click into that to see the individual readings of the running services on it. (rudimentary version: https://app.terrastruct.com/diagrams/1404897320)
- Automatic generation and sync of diagrams. Having access to sources like AWS account and version control to create and keep in sync diagrams of your infra, db schemas, UML classes, etc.
- Collaborative editing, seamless integrations with written documentation, linking directly to code where appropriate, version control, etc.
So much of software can be better understood visually. Still early on, if you're interested in learning more, https://terrastruct.com. And would love to chat (email in profile) with anyone with ideas.