Geschäftskritische Anwendungen sind oft veraltet und bremsen Innovationen aus. Doch sie zu modernisieren ist eine große Herausforderung. Wie gehen Unternehmen dabei am besten vor und worauf sollten sie achten? Von Steffen Becker, Sales & Marketing für Application Services DACH bei SoftwareONE.
Während Unternehmen mit ihrer Digitalisierung voranschreiten, stellen sie ihre geschäftskritischen Anwendungen meist hintenan. Oft sind diese seit vielen Jahren in Betrieb, über die verschiedensten Schnittstellen mit Datenbanken und anderen Applikationen verbunden und tief in zahlreiche Prozesse integriert. Sie zu modernisieren und in die Cloud zu migrieren ist mit großem Aufwand verbunden. Das kann auch bedeuten, dass man mühsam aufgebaute Prozesse neu aufsetzen oder komplett neu überdenken muss. Die Modernisierung geschäftskritischer Applikationen deshalb noch länger aufzuschieben, ist jedoch keine gute Idee. Denn die veralteten Applikationen büßen immer mehr an Stabilität und Performance ein und bremsen die digitale Transformation des Unternehmens aus.
Modernisierung als Chance
Höchste Zeit sich von der Last überholter Software zu trennen. Man spricht in diesem Zusammenhang auch von „technischer Schuld“ (technical debt). Die gute Nachricht: Es ist meistens nicht nötig, sämtliche Applikationen neu zu implementieren. Oft reichen schon einfache Anpassungen aus. Je Applikation erfolgt eine der folgenden Maßnahmen:
1. Ablösen, wenn die Applikation von geringer Bedeutung für die Organisation ist. Das passiert häufiger als gedacht, denn gerade diese Applikationen geraten gern in Vergessenheit, bleiben aber häufig dennoch installiert.
2. Standardsoftware nutzen, sofern es eine solche gibt. In vielen Organisationen existieren bereits moderne Softwaresysteme, die eine Vielzahl früherer Sonderanforderungen abdecken können.
3. Optimieren von alten Applikationen, wenn das möglich ist. Beispielsweise lassen sich viele Applikation auf Basis von .NET und Java auf aktuelle Versionen und Plattformen umstellen – teilweise sogar ohne jegliche Veränderung von Benutzeroberfläche und Funktionalität, was in einigen Fällen sinnvoll sein kann.
4. Neuentwickeln, was alle Schritte von der Anforderungsanalyse, über die Erstellung bis hin zur Einführung, Support und Weiterentwicklung umfasst. Dies ist nicht selten mit großem zeitlichem Aufwand und hohen Kosten verbunden. Allerdings ist so die Abdeckung sämtlicher funktionaler und nicht-funktionaler Anforderungen gewährleistet. Durch Einsatz neuester Technologien, Plattformen und Vorgehensweisen können Aufwände im Vergleich zu früheren Ansätzen deutlich reduziert werden. Unter Umständen lassen sich sogar Low-Code-Plattformen einsetzen, bei denen große Teile der Applikation in kurzer Zeit mit Hilfe von grafischen Designwerkzeugen und einfachen Logikbausteinen erstellt werden können. Außerdem haben Unternehmen in vielen Fällen die Möglichkeit mehrere Ursprungsapplikationen, oder zumindest einzelne Module, zu einem modernen Nachfolger zusammenzuführen. Das schafft signifikante Synergieeffekte bei Implementierung und Betrieb.
Dafür müssen zunächst alle relevanten Applikationen gefunden und analysiert werden. Je nach Organisation können das hunderte oder gar tausende sein, in einigen Fällen noch viel mehr. Das funktioniert in mühsamer manueller Arbeit oder mit skalierbaren strukturierten Ansätzen von Spezialisten wie SoftwareONE.
Den richtigen Partner finden
Bei der Wahl eines geeigneten Dienstleisters sollten Unternehmen darauf achten, dass er sowohl über Entwickler-Kompetenz als auch Infrastruktur-Know-how verfügt, damit er Modernisierungsprojekte umfassend abdecken kann. Er sollte einen ganzheitlichen Stack anbieten, also eine Reihe aufeinander aufbauender Software-Komponenten, mit dem sich flexible, technologie- sowie plattformunabhängige Lösungen entwickeln lassen. Das Spektrum sollte von No-Code- oder Low-Code-Lösungen – wie sie sich beispielsweise mit der Power Platform von Microsoft realisieren lassen – bis hin zu individueller Software-Entwicklung reichen. Wichtig ist zudem ein breites Portfolio von agilen Entwicklungsmethoden und DevOps-Praktiken. Sie ermöglichen es, Projektlaufzeit und -kosten unter Kontrolle zu behalten und Ziele jederzeit nachzujustieren. Dies gelingt mithilfe von klar umrissenen, kleinteiligen Arbeitspaketen und einer iterativen Vorgehensweise mit monatlichen Sprints und Deadlines.
Fazit
Um wettbewerbsfähig zu bleiben, müssen Unternehmen mit ihrer Digitalisierung voranschreiten. Dabei dürfen geschäftskritische Anwendungen kein Bremsklotz sein. Ein erfahrener Dienstleister kann helfen, sie zu fit für die Zukunft zu machen. Nicht immer ist eine komplette Neuentwicklung nötig. Entscheidend ist, den besten Weg zu finden, um Investitionen zu schützen und möglichst schnell und effizient ans Ziel zu kommen.