Herausforderung: Wachsende Komplexität von Software
„Firmen, die proaktiv die Alterung von Software verhindern, können den Anteil der Wartungskosten an den Gesamt-IT-Kosten auf weniger als 30% senken. Organisationen, die keinerlei Maßnahmen zur Erhaltung von Softwaresystemen einsetzen, müssen hingegen mit mehr als 60% Anteil der Wartungskosten an ihren Gesamt-IT-Kosten rechnen.” – Capers Jones[1]
Nahezu alle Branchen sind heute von IT-Systemen abhängig. Moderne IT-Systeme werden immer komplexer. Unternehmen müssen mit den rasanten Entwicklungen in der Softwaretechnologie Schritt halten. Dabei spielen Design und Architektur eine zentrale Rolle. Effiziente Methoden zur Strukturierung und Analyse sind entscheidend, um Softwaresysteme optimal zu gestalten.
Automatisierte Analyse und Optimierung
Dieses Forschungsprojekt entwickelt ein innovatives System, das mithilfe von künstlicher Intelligenz (KI) und immersiver Analyse Softwaresysteme automatisiert bewertet und verbessert. Der Fokus liegt dabei auf dynamischen Aspekten, insbesondere dem Laufzeitverhalten.
Während es viele Tools für die statische Codeanalyse gibt, fehlt es an Methoden für eine dynamische Analyse jenseits der reinen Performance-Messung. Kritische Bereiche wie die Nutzung von Open-Source-Komponenten und Lizenz-Compliance bleiben oft unberücksichtigt. Eine umfassende Analyse könnte jedoch:
- bestehende Softwaresysteme schneller evaluieren.
- Kritische Punkte frühzeitig identifizieren.
- Rechtliche Risiken bewerten.
Lösung: Visualisierung und KI-gestützte Analyse
Das Projekt entwickelt Analyse- und Visualisierungswerkzeuge, die auch Nicht-Experten Einblicke in Softwarearchitektur, Laufzeitverhalten und Lizenzbedingungen ermöglichen. Dieser Zugang wird durch Visualisierung von Software und Darstellung in interaktiven Umgebungen (bspw. Displaywänden oder Head-mounted Displays) ermöglicht.
Zusätzlich wird untersucht, wie KI und Regelsysteme die Softwareanalyse weiter verbessern. Das Ziel: Ein automatisiertes System, das Software-Reviews erstellt, relevante Erkenntnisse visualisiert und so bessere Entscheidungen ermöglicht.