So rüsten Sie Legacy-Systeme auf, um im Cloud-Zeitalter wettbewerbsfähig zu sein

Legacy-Modernisierung erhält viel Aufmerksamkeit von IT-Organisationen. Untersuchungen zeigen, dass der globale Markt 24.8 Milliarden US-Dollar erreichen bis 2025 – mit einem jährlichen Wachstum von 17 Prozent.
Die Aktualisierung von Legacy-Systemen ist jedoch kein zeitpunktbezogenes Projekt. Am besten erfolgt sie über einen längeren Zeitraum hinweg, indem eine Analyse der gesamten Organisation durchgeführt wird. Bewerbungsportfolio.
So legen Sie eine Legacy-Modernisierungsstrategie fest
Ältere Anwendungen weisen häufig Abhängigkeiten auf, die auf den ersten Blick nicht erkennbar sind. Sie sollten bei der Modernisierung nie mit den ältesten Programmen beginnen und sich dann vorarbeiten.
Beginnen Sie stattdessen mit den Programmen, die für sich allein stehen können und andere nicht zum Absturz bringen, wenn sie geändert werden. Eine neue Kategorie von Tools, genannt Unternehmenskomplexitätsanalyse kann helfen, indem es sich in den Code vertieft und diese Abhängigkeiten findet. Die Tools sind zwar teuer, lohnen sich aber oft für Unternehmen mit großen Legacy-Portfolios.
Auch die Aktualisierung von Legacy-Systemen ist kein Entweder-oder-Vorschlag. Gartner definiert sieben verschiedene Arten der ModernisierungDie einfachste Methode besteht darin, Daten und Funktionen zu kapseln, um sie als Dienste über eine API verfügbar zu machen – ein Prozess, bei dem der Code überhaupt nicht berührt werden muss.
Zu den komplexeren Optionen gehören:
- Neubereitstellung der Anwendung in unveränderter Cloud-Infrastruktur („Lift and Shifting“)
- Migration auf eine neue Laufzeitplattform (z. B. einen Softwarecontainer)
- Restrukturierung des bestehenden Codes zur Optimierung
- Ersetzen oder von Grund auf neu erstellen
Schon der einfachste Ansatz kann Unternehmen dabei helfen, eine höhere Skalierbarkeit zu erreichen und auf neue Funktionen in der Cloud zuzugreifen.
5 Kandidaten für die Legacy-Modernisierung
Es gibt keine allgemeingültige Strategie für die Aktualisierung Ihrer Altsysteme. Je nach Art der Software sind besondere Überlegungen erforderlich.
Nachfolgend finden Sie fünf der gängigsten Modernisierungsbeispiele mit empfohlenen Strategien zur Unterstützung der Aktualisierungen.
1. Veraltete Systeme
Veraltete Systeme sind solche, die das Unternehmen noch zu Zeiten von Mainframes und COBOL von Grund auf neu aufgebaut hat. Diese Anwendungen sind am schwierigsten zu modernisieren und es ist vielleicht nicht einmal eine gute Idee, dies zu tun.
Wenn das System gut funktioniert und keine Belastung für das Unternehmen darstellt, ist es oft am besten, es in Ruhe zu lassen. Stattdessen kann es sinnvoll sein, Daten und Funktionen zu sammeln, die als APIs verfügbar gemacht werden können, während Sie nach moderneren Alternativen suchen.
2. Anwendungen auf Standardservern
Durch die Virtualisierung von X86-basierter Hardware unter Linux, Windows oder Unix kann Ihr Unternehmen Ressourcen nach Bedarf skalieren und die Nutzung der verfügbaren Hardware optimieren.
Durch Virtualisierung erhöht sich die Serverauslastung in typischen Rechenzentrumsumgebungen von weniger als 20 Prozent auf über 70 Prozent.
Sie können auch virtualisierte Anwendungen in die Cloud verschieben. Alle großen öffentlichen Cloud-Anbieter unterstützen die gängigsten Virtualisierungsplattformen.
Eine Alternative besteht darin, Anwendungen in Softwarecontainern wie Docker zu kapseln. Container fassen Anwendungen und ihre abhängigen Komponenten, wie Systembibliotheken und Einstellungen, in einem einzigen Paket zusammen. Dieses kann gemeinsam genutzt und in einem Repository gespeichert werden.
Sowohl im Virtualisierungs- als auch im Container-Szenario wird die Anwendungsfunktionalität nicht gestört. Sie gewinnen jedoch mehr Flexibilität hinsichtlich der Umgebung und der zugewiesenen Ressourcen.
3. Geschäftsprozesse
Obwohl es sich bei Geschäftsprozessen nicht um Software handelt, sind sie häufig in Anwendungen integriert, die sich mit der Automatisierung von Arbeitsabläufen und der Dokumentenverwaltung befassen.
Dies kann eine Haftung darstellen, wenn:
- Die Prozesse wurden nie optimiert
- Das Geschäft hat sich verändert
- Die Technologie hat es möglich gemacht, sie zu verbessern
Die Geschäftsprozessanalyse ist eine Methode, mit der bestehende Prozesse untersucht werden können, um neue Effizienzen zu finden. Es stehen viele Tools zur Verfügung, um diese Arbeit zu automatisieren. Benutzer können Geschäftsabläufe mithilfe von Drag-and-Drop-Tools visualisieren oder automatisierte Ratschläge zur Verbesserung erhalten.
Robotische Prozessautomatisierung (RPA) ist Teil einer schnell wachsenden Kategorie von Tools, die als Hyperautomatisierung bezeichnet werden. Diese Tools automatisieren routinemäßige menschliche Aufgaben, wie beispielsweise das Eintippen von Daten aus gedruckten Dokumenten.
Andere Formen der Hyperautomatisierung sind:
- Low-Code-Anwendungsentwicklung
- Eventmakler
- Software zur Dokumentenerfassung
- Prozesserkennung
- Prädiktive Entscheidungsmodellierung
Sie alle sind für die Rationalisierung und Automatisierung von Prozessen nützlich.
4. API-Integration
Durch diese Integration werden Anwendungsdienste und Daten auf eine Weise bereitgestellt, die von anderer Software genutzt werden kann.
Beispielsweise kann der Kreditkartengenehmigungsprozess in einer vorhandenen Anwendung gekapselt und als API bereitgestellt werden. Es stehen viele Tools zur Verfügung, um veraltete Anwendungen mit APIs nachzurüsten, sodass Sie sie im Laufe der Zeit schrittweise modernisieren können. Dies ist eine einfache Möglichkeit, die Lebensdauer alter Software zu verlängern, während Sie eine modernere Software schreiben oder installieren.
5. Enterprise Service Bus (ESB)
Ein ESB orchestriert den Austausch von Diensten zwischen Anwendungen. Es ermöglicht Anwendungen, Nachrichten auf der Grundlage einfacher Regeln zu abonnieren, und bietet eine standardisierte Möglichkeit zur Verteilung von Diensten.
ESBs gibt es schon lange, aber das Konzept hat eine neue Dynamik erfahren, da Cloud Computing die Art und Weise verändert hat, wie wir Software entwickeln.
Moderne Cloud-Anwendungen bestehen aus lose gekoppelten Softwarefunktionen, die spontan zusammengestellt werden. Ein ESB ermöglicht Entwicklern, die Funktionalität durch das Einbinden neuer Dienste zu verbessern und zu erweitern.
Sie können beispielsweise mithilfe von Cloud-Diensten eine neue Benutzeroberfläche erstellen und zur Verarbeitung über APIs eine Verbindung zu einem vorhandenen Back-End-System herstellen.
Anwendungspakete
In den 1990er Jahren war Client-Server-Software der letzte Schrei. Doch heute ist die über die Cloud bereitgestellte Software-as-a-Service-Lösung (SaaS) noch beliebter.
Dies ist ein Problem, wenn Sie Ressourcen in die Entwicklung von Anwendungen auf Basis Ihrer Legacy-Plattformen investiert haben. Dies gilt insbesondere, da viele, wie z. B. Lotus Notes, verwendete ein proprietäres Dateisystem und eine Skriptsprache.
In Märkten mit erheblicher Konsolidierung, wie etwa im Bereich Kundenbeziehungsmanagement, haben die meisten übernehmenden Unternehmen hart daran gearbeitet, ihren Kunden einen Migrationspfad für ältere Anwendungen bereitzustellen.
Bevor Sie sich jedoch von Client-Server-Software abwenden, prüfen Sie, ob eine vergleichbare Cloud-native Anwendung eine bessere Funktionalität bietet. Wenn sich die Altdaten in einer SQL-kompatiblen Datenbank befinden, sollte die Datenmigration kein Problem darstellen.
Was wäre, wenn die Client-Server-Anwendung stark angepasst oder mit proprietären Entwicklungstools erstellt wurde? Dann sollten Sie am besten die Hilfe eines spezialisierten Integrators in Anspruch nehmen oder die Kosten in Kauf nehmen und diese Funktionen von Grund auf neu erstellen.
Da die meisten wichtigen Anwendungen mittlerweile in der Cloud verfügbar sind, kann dieses Problem möglicherweise dadurch gelöst werden, dass vorherige Änderungen mithilfe von APIs neu codiert werden, um sie von der Kernanwendung zu trennen. Unternehmen profitieren dann von den Verbesserungen des Basispakets und behalten ihre Anpassungen bei.
DevOps in der Cloud
Die agile Entwicklungstechnik DevOps ist die bevorzugte Option zum Erstellen von Anwendungen in der Cloud. Das bedeutet nicht, dass herkömmliche Methoden wie das Wasserfallmodell keinen Wert haben. Aber Top-down-Strukturen und starre Prozesse eignen sich nicht für eine schnelle funktionale Weiterentwicklung.
DevOps fördert:
- Enge Zusammenarbeit zwischen Entwicklern und Fachanwendern
- Schnelle Iteration mit täglichen Code-Releases
- Kontinuierliches Feedback
- Umfangreiche Nutzung von Diensten
Entwickler können ihre eigene Infrastruktur bereitstellen und Software zur Portabilität in Containern liefern.
Lassen Sie sich nicht von veralteten Systemen einschränken. Die Möglichkeiten zur Modernisierung von Unternehmensanwendungen nehmen zu und die Kosten sinken. Es gab noch nie einen besseren Zeitpunkt, Ihr Softwareportfolio zu überarbeiten und es in das Zeitalter des Cloud-Computing zu bringen.