Analyse und Automatisierung

Künstliche Intelligenz in der Softwaremodernisierung

KI hat das Potenzial, Softwaremodernisierung mit effizienteren und schnelleren Prozessen und Code-Analysen zu unterstützen. Für optimale Ergebnisse gilt es, die richtige Balance zwischen KI-gestützter Automatisierung und menschlicher Expertise zu finden.

06.05.2025Text: Urs Häfliger0 Kommentare
KI in der Softwaremodernisierung – wie sieht das genau aus?

Unsere sechsteilige Artikel-Serie thematisiert alle wichtigen Aspekte der Softwaremodernisierung. Dies ist der sechste und letzte Artikel der Serie. Die Themenübersicht finden Sie am Ende des Beitrags.

Legacy-Systeme, die jahrzehntelang betrieben werden, sind häufig teuer im Unterhalt, unflexibel und erschweren die Integration moderner Technologien. Wegen steigenden Anforderungen an Agilität wird Softwaremodernisierung zur Pflicht.

Dabei kann der Einsatz von generativer künstlicher Intelligenz ein hilfreiches Mittel sein. Sie eröffnet neue Möglichkeiten zur Optimierung und Transformation der Systeme, sodass sich der gesamte Modernisierungsprozess unter Umständen schneller und kosteneffizienter gestalten lässt. KI kann dabei für verschiedene Zwecke eingesetzt werden.

Workshops Software-Modernisierung
Mit der richtigen Strategie in die Zukunft

Workshops Software-Modernisierung

In unseren individuellen Workshops zeigen wir Ihnen ganz konkret, welche Strategien und Möglichkeiten sich für die Modernisierung Ihrer Software bieten.
Mehr erfahren

Codeanalyse und Refactoring

Generative KI kann bereits heutzutage eine beachtliche Menge an Code auf einmal analysieren. So kann eine gesamtheitliche Codeanalyse durchgeführt werden, die über die reinen Möglichkeiten von statischen Analysetools hinaus geht. Beispielsweise können ineffiziente Strukturen aufgedeckt, Vorschläge für Veränderungen generiert oder eingesetzte Konzepte gesammelt werden, um den Code schneller zu analysieren und anschliessend mit bereits vorgeschlagenen Verbesserungen ein Refactoring durchzuführen. Auf diese Weise lassen sich Lesbarkeit und Wartbarkeit optimieren.

Dies ermöglicht den Code mithilfe von KI-Tools zu einer verständlicheren Form zu verändern.

Softwaremodernisierung
Services zu Softwaremodernisierung

Das Potenzial der Modernisierung nutzen

Steigern Sie die Performance, Sicherheit und Qualität Ihrer Software und entwickeln Sie neue Geschäftsideen.
Kostenlose Beratung vereinbaren

Migration von Legacy-Systemen

KI kann auch bei der Übertragung alter Softwaresysteme auf neue Technologien, Plattformen oder Architekturen unterstützen. Beispielsweise kann Code in eine andere Programmiersprache übersetzt werden. Obwohl dies möglich ist, ist die Chance von Fehlern in der Übersetzung, oder einer unvollständigen Übersetzung gross und sollte mit einem extensiven Testen, oder einer Adaption der bestehenden Test-Suite auf das neue System begleitet werden.

Weiter können auch nur Teile von Systemen auf neuere Technologien mithilfe von generativer KI migriert werden. Beispielsweise können Anbindungen an z.B. Datenbanken oder Bussysteme effizienter migriert und somit modernere Lösungen eingesetzt werden. Dies kann beispielsweise bei einer Cloud-Migration helfen. Auch der Umstieg auf eine neue Oberflächentechnologie kann durch generative KI unterstützt werden. Für eine Verbesserung der Usability bedarf es jedoch der Expertise von UX-Spezialisten.

Software Quality Map 2024
Gute Qualität zahlt sich aus

Software Quality Map

Gehen Sie auf Entdeckungsreise durch 80 Themen, wie Sie die Qualität Ihrer Software verbessern können. Quality Map auf und los!
Jetzt entdecken

Automatisiertes Testing

Meist existieren in Legacy-Systemen keine automatisierten Tests, welche eine der essenziellen Grundlagen für wartbare Systeme darstellen. Generative KI unterstützt das Erstellen automatisierter Testfälle für diese Systeme. Auf diese Weise können die Ingenieure ein Verständnis von dem System aufbauen und gleichzeitig eine Suite von automatisierten Tests erstellen, welche sie in der zukünftigen Modernisierung unterstützt.

Dokumentation und Verständlichkeit

Fehlende Dokumentation ist oftmals eine Herausforderung bei der Modernisierung von Legacy-Systemen. Generative KI kann bestehenden Code analysieren und selbstständig entsprechende Dokumentationen erstellen, um das Verständnis des Systems zu erleichtern.

Generierte Spezifikationen mit Grenzwerten können das Verständnis für den bestehenden Quellcode erhöhen, damit die Entwickler effektiver und effizienter weiterentwickeln können. Somit kann das System mittels Chatbot analysiert und mit Fragen besser verstanden werden. Beispielsweise können vorherrschende Konzepte oder Designmuster schneller aufgezeigt werden.

Prozesse erweitert mit KI

Nebst der reinen Unterstützung bei der Modernisierung kann KI auch in der täglichen Arbeit integriert werden. So kann z.B. eine KI als erste Pull Request Review Instanz bereits frühes Feedback geben.

Fazit: revolutionär – aber nicht ohne den Menschen

Generative KI bietet eine revolutionäre Möglichkeit, Legacy-Systeme effizient und kostengünstiger zu modernisieren. Herkömmliche Modernisierungsansätze erfordern oft viel Aufwand und grosse Entwicklerteams, die in manuellen Prozessen Analysen und Refactoring-Aufgaben erledigen. Generative KI kann einige dieser Arbeiten automatisiert und selbstständig ausführen, was die Projektkosten senkt und den Modernisierungsprozess beschleunigt.

In Zukunft wird KI eine noch grössere Rolle spielen, indem sie möglicherweise selbstoptimierende Systeme, KI-gestützte DevOps-Prozesse und die Integration neuer Funktionen und Technologien mit ebenso viel Effizienz ermöglicht.

Experimente mit Generativer KI in der Softwaremodernisierung sollten durchgeführt und auf Anwendbarkeit in der jeweiligen Situation geprüft werden. Allein mit dem Menschen im System wird die Anwendung vollständig. Der erfahrene Software-Ingenieur ist nötig, um die KI zuzuführen! Richtige Prompts zu erstellen, dem Chatbot die richtigen Fragen zu stellen, den KI-Output zu evaluieren und mit den richtigen Fragen weiterzuentwickeln – dazu braucht es erfahrene Software-Ingenieure. Eine Maschine kann keine Verantwortung tragen.

Die Expertin

Britta Labud

Britta Labud ist als Senior Software-Architektin bei der bbv Software Services AG mit Schwerpunkt auf Web- und Cloud-basierten IoT- und Geschäftsanwendungen mit .NET-Technologien tätig. Sie hat nach dem Studium der Luft- und Raumfahrttechnik Softwarelösungen für CASE-Tools, Bahnbetriebshöfe, Flughafen-Gepäcksicherheit, Multichannel Publishing, Skigebiete und Industriemaschinen realisiert. Ihr Wissen und ihre langjährige Erfahrung gibt sie auch als Sprecherin auf Konferenzen und als Trainerin für Web- und Cloud-Anwendungen weiter.

 

Der Experte

Marco Ravicini

Marco Ravicini ist Software-Architekt und Mitglied des CTO-Boards von bbv. Der gelernte Automatiker studierte Computer Sciences und verfügt über einen MAS in Human Computer Interaction Design. Er ist passionierter Vertreter der Software-Crafting-Bewegung.

Unser Wissen im Abo

Wenn KI zur Chefsache wird

Verantwortungsvolle KI: Wie CEOs Haftungsrisiken reduzieren

AI/KI
Die Zukunft von Legacy-Systemen

Von der Softwaremodernisierung hin zum evolvierbaren Produkt

Modernisierung

Attention!

Sorry, so far we got only content in English for this section.