Bei Software mit hunderttausend Zeilen kann man schnell den Überblick über Code, Architektur und deren Qualität verlieren. Sind wir noch auf dem richtigen Weg, blockieren wir uns mit internen Abhängigkeiten, oder sind wir schon festgefahren? Software ist immateriell, wir können nicht sehen, wie es ihr geht.
Wir können uns allerdings mit Tools helfen. Eines davon ist das kostenlose Open-Source-Tool CodeCharta, das uns Richard vorstellen wird. Es bietet seit 2017 die Möglichkeit, Experten und Laien gleichermaßen die Qualität von Software nachvollziehbar zu machen.
Die Idee ist sehr einfach: Wir visualisieren unsere Software als 3D-Stadtkarte (Charta = lateinisch für Karte oder Papier). Jede Datei wird zu einem Gebäude. Kleine Dateien werden zu Bungalows, komplexe Dateien stechen als Wolkenkratzer hervor. Wolkenkratzer, die nur einen Autor haben, werden rot, denn hier existiert ein Wissenssilo.
Das ist nur ein kleiner Teil der Visualisierungsmöglichkeiten: CodeCharta kann auch visualisieren, welche Dateien viel verändert werden, kaum Testabdeckung haben, hohe Verschachtelungstiefe bieten oder eine hohe Anzahl an Code Smells.
Die Stadt-Metapher hilft dabei Experten wie Laien gleichermaßen und ermöglicht eine verständnisvolle Diskussion. Ein Feature, dass in den New Yorker Wolkenkratzern eingebaut werden soll, wird garantiert länger dauern als eines, das in einem Bonner Bungalow platziert wird. Diese Diskussion können wir auch am physischen Objekt führen, denn eine CodeCharta kann auch in 3D drucken.
Links
- Unconference zu Software Architektur und KI mit Lisa, Ralf und Eberhard
- CodeCharta Homepage
- CodeCharta bei GitHub
- Folgen zu Architektur-Management-Werkzeugen
- Richard bei LinkedIn
- Richard bei BlueSky
- Richards Blog
PeerTube Video - no Big Tech!
YouTube Video
Audio als Podcast
Infos und Feeds zum Audio als Podcast