Softwarestrukturen sind bisweilen hochkomplexe Gebilde, vor allem, wenn sie über Jahre entstanden sind. Es dauert daher häufig sehr lange, Altsysteme wirklich zu durchdringen. Mit dem CodeExplorer der PPI AG wird dieser Zeitaufwand reduziert, denn hier werden die zugrunde liegenden Strukturen im Handumdrehen sichtbar. Auf Basis einer statischen Codeanalyse erstellt die Anwendung eine grafische Darstellung. Aus der lassen sich alle Abhängigkeiten direkt ablesen. Ablösungen von Legacy-Software oder Cloudmigrationen werden damit deutlich einfacher.
Ein zusammenhängender Text ist schnell gelesen, aber auf Programmcode dürfte dies in den seltensten Fällen zutreffen. Handelt es sich dann auch noch um Software, die über Jahre oder gar Jahrzehnte immer wieder aktualisiert und erweitert wurde, so kann es sehr lange dauern, die Strukturen zu verstehen. In solchen Fällen ist eine Visualisierung der Struktur enorm hilfreich. CodeExplorer stellt den Code grafisch mit Knoten und Kanten dar und macht so komplexe Systeme übersichtlich. Schnittstellen lassen sich leichter erkennen und Projekte besser aufteilen. Je nach Granularität repräsentieren die Knoten Packages, Klassen oder Methoden und die Kanten zeigen die jeweiligen Abhängigkeiten. Nutzer können beim CodeExplorer zudem an den Knoten und Kanten Expertenwissen hinzufügen und die Grafik nach Belieben selbst umzustrukturieren oder Layouts vorgeben. Der CodeExplorer eignet sich zudem bestens für Entwicklergruppen. So können Softwareänderungen, -migrationen und -umsetzungen kollaborativ geplant und nachverfolgt werden. Das vereinfacht die Kommunikation maßgeblich.
Der Kartenausschnitt eines U-Bahn-Netzes kann als einfaches Beispiel für solch einen Graphen dienen. Die Stationen sind Knoten, die Strecken zwischen ihnen sind Kanten. Die meisten Knoten haben zwei Nachbarn, es können aber auch mehr oder weniger sein. Es ist offensichtlich, dass Änderungen an Knoten mit vielen Abhängigkeiten riskanter sind. Das Wissen um die Eigenschaften hilft, Fehler zu vermeiden und schneller zu produktiven Ergebnissen zu gelangen.
Der CodeExplorer verbessert durch seine einfache Visualisierungsfunktion das Wissensmanagement bei Softwareprojekten erheblich. Dieser Mehrwert und weitere Alleinstellungsmerkmale machen ihn zu einem extrem wichtigen Projekttool. Der CodeExplorer
Die Struktur wird innerhalb einer Webanwendung dargestellt. Die Anzeige beginnt standardmäßig auf Package-Ebene, was die Komplexität reduziert. Der Nutzer kann die Darstellung dann nach seinen Vorgaben erweitern. Knoten lassen sich per Drag-and-drop bewegen, um den Graphen anzupassen. Im Übrigen folgen die Knoten ihrer physikalischen Simulation. Zudem ziehen sie einander mit ihren Kanten an und liegen dadurch auch visuell näher an den Nachbarn. Geplant ist, zukünftig die Bearbeitung ganzer Knotengruppen zu ermöglichen und das Tagging für Knoten und Kanten weiter auszubauen. Das unterstützt das Wissensmanagement. Ferner soll eine Ontologie hinterlegt werden, um diese Tags untereinander zu strukturieren.
Björn Balfanz
Partner
+49 160 96348597
Bjoern.Balfanz(at)ppi.de
Moritz Witt
Consultant
+49 170 38226978
moritz.witt(at)ppi.de