Bei der Anwendungsmodernisierung werden veraltete Softwarepakete konvertiert, neu geschrieben oder portiert, damit sie mit einer modernen Infrastruktur effizienter funktionieren. Dies kann die Migration in die Cloud, die Erstellung von Apps mit einer serverlosen Architektur, die Containerisierung von Diensten oder die Überarbeitung von Datenpipelines mithilfe eines modernen DevOps-Modells umfassen.
Im folgenden Artikel besprechen wir die verschiedenen Strategien zur Anwendungsmodernisierung, um Ihnen das Verständnis von einfachen Verfahren wie „Lift and Shift“ bis hin zu komplexeren Ansätzen wie der Neugestaltung einer Bereitstellungsstrategie für Microservices zu erleichtern.
Die Modernisierung von Legacy-Anwendungen werden alten Anwendungen neues Leben eingehaucht. Sie erfolgt in der Regel im Rahmen eines umfassenderen Plans zur digitalen Transformation des Unternehmens, zielt aber letztendlich darauf ab, betriebliche Ineffizienzen zu reduzieren und Geschäftsprozesse zu optimieren. Hier sind einige der Vorteile der Modernisierung von Legacy-Anwendungen:
In der Planungsphase müssen Sie entscheiden, welche Technologien einen erheblichen geschäftlichen Mehrwert bieten, welche die Außerbetriebnahme von Anwendungen ermöglichen und welche Verfahren das Risiko minimieren und gleichzeitig den höchsten ROI aus der Investition erzielen.
Mithilfe der folgenden Fragen können Sie den größtmöglichen Nutzen aus einer Initiative zur Anwendungsmodernisierung ziehen:
Bei der Modernisierung von Legacy-Anwendungen gibt es 7 R's, die Unternehmen kennen sollten. Welches R Sie wählen, hängt von Ihren Anwendungsfällen ab, aber eine gute Faustregel ist, immer zuerst einfachere Anwendungen zu migrieren.
1. Ersetzen
Bei diesem Ansatz ist ein vollständiger Austausch der Anwendung erforderlich. Kein noch so großer Aufwand zur Modernisierung der Anwendung kann technische Einschränkungen wie veraltete Codesprachen oder APIs überwinden. Die Anwendung wird möglicherweise nicht von den neuesten Windows- oder Linux-Betriebssystemen oder sogar von Cloud-Anbietern wie AWS, Azure oder GCP unterstützt.
2. Rehost
Wenn Unternehmen eine Anwendung neu hosten, bedeutet dies, dass sie eine Anwendung auf eine andere Hostplattform verschieben, ohne dass Änderungen an der App selbst vorgenommen werden. Da digitale Transformationsstrategien eine schnelle Cloud-Migration erfordern, ist dies eine gute Option, um die Dienstverfügbarkeit mit minimalen Unterbrechungen aufrechtzuerhalten.
Dies ist nur möglich, wenn die aktuelle Instanz der App mit der neuen Infrastrukturplattform kompatibel ist. Wenn nicht, gilt der nächste Punkt in dieser Liste.
3. Plattformwechsel
Ein Anwendungs-Replatforming ähnelt einem Rehosting. Diese Methode wird häufig bei DBaaS-, SaaS- und IaaS-Lösungen verwendet.
Ein Beispiel hierfür ist die Kosteneinsparung durch die Migration einer E-Commerce-Website von Microsoft Azure zu AWS. Die Website selbst bleibt unverändert, die Kernabhängigkeiten werden jedoch für die Kompatibilität mit der neuen Plattform geändert werden.
4. Refactoring
Refactoring ist eher für Softwareentwicklungs- und DevOps-Teams relevant. Dabei wird der zugrunde liegende Code einer Anwendung neu geschrieben, um die Betriebsleistung zu verbessern, ohne die vorhandene Funktionalität zu verändern. Dies wird als Code-Refactoring bezeichnet und setzt einige Vorteile von Cloud-Plattformen wie AWS frei, ohne jedoch die maximale Funktionalität freizusetzen.
Teil dieses Prozesses könnte das Entfernen von doppeltem Code oder App-Logik sein. Wenn eine 10-zeilige Funktion auf 5 Zeilen mit gleicher Funktionalität komprimiert werden kann, ist das ein erfolgreicher Refactoring-Versuch. Andernfalls verbessert die Reduzierung der Anzahl der Klassen und Methoden die Leistung und vereinfacht die Verwaltung innerhalb einer integrierten Entwicklungsumgebung (IDE).
5. Neustrukturierung
Die Neustrukturierung einer Anwendung bedeutet, sie von Grund auf neu zu gestalten. Dies ist häufig bei monolithischen Anwendungspaketen der Fall, bei denen Unternehmen möglicherweise eine Microservice-Architektur nutzen möchten.
Eine Methode zur Neustrukturierung von Anwendungen könnte darin bestehen, proprietäre APIs und Softwareabhängigkeiten durch Open-Source-Alternativen zu ersetzen, beispielsweise von Microsoft SQL Server durch PostgreSQL. Solche Maßnahmen können die Gesamtbetriebskosten (TCO) senken, die Cloud-Agilität steigern und die Anwendungsresilienz gegenüber Ausfällen und Leistungsproblemen verbessern.
6. Neuaufbau
Bei einem Anwendungsneuaufbau beginnt man bei einer einzelnen Komponente oder einer Sammlung von Komponenten von Grund auf. Beim Neuaufbau bleiben der ursprüngliche Umfang und die Spezifikationen gleich, während gleichzeitig neue technologische oder betriebliche Anforderungen erfüllt werden.
Die Umbauphase der Modernisierung von Anwendungs-Legacys kann im Laufe der Zeit abgeschlossen werden. Beispielsweise werden eine oder zwei der wichtigsten Komponenten umgebaut und in einer Live-Umgebung bereitgestellt. Zusätzliche Komponenten werden dann langsam umgebaut, bis die gesamte Anwendung für die optimale Nutzung auf einer Cloud-Plattform wie AWS transformiert wurde.
7. Rückkauf
Dies ist vielleicht der einfachste Weg, eine Anwendung zu modernisieren. Anstatt sie umzugestalten, neu zu erstellen oder neu zu hosten, kaufen Unternehmen neue Software erneut. Diese Software wird nicht vom gleichen Anbieter erneut gekauft, sondern von einem anderen Anbieter, der die Geschäftsanforderungen erfüllt.
Dies wird üblicherweise mithilfe von Software-as-a-Service (SaaS)-Plattformen erreicht. Weitere Optionen sind Database-as-a-Service (DBaaS) und Platform-as-a-Service (PaaS). Das größte Hindernis besteht darin, einen neuen Anwendungsanbieter zu finden, der ähnliche Funktionen bietet und gleichzeitig Datenmigrationen und das Zusammenführen von Konfigurationen in die neue App erleichtert.
Lesen Sie auch : ECS vs. EC2
Bevor Sie sich für eine Cloud-Plattform, Programmiersprache oder einen Berater entscheiden, müssen Sie unbedingt den aktuellen Stand Ihrer bestehenden Anwendungsarchitektur abbilden. Eine erfolgreiche Strategie muss sich auf das Geschäft konzentrieren, bevor sie sich auf die Technologien konzentriert. Dies wird dazu beitragen, einen idealen zukünftigen Zustand zu schaffen.
Zwar ist jeder Fahrplan für jedes Unternehmen anders, doch die folgenden sechs Gemeinsamkeiten sollten in jeder Strategie zur Anwendungsmodernisierung berücksichtigt werden:
Copyright © 2022 Trianz
Trianz ist Beratungspartner aller großen Cloud-Plattform-Anbieter. Wir verfügen über umfassende Erfahrung in der Migration und Modernisierung von Altsystemen. Wenn Sie sich über den Umfang Ihrer Modernisierungsstrategie nicht sicher sind, kann Trianz Ihnen dabei helfen, herauszufinden, welches der 7 R am besten zu Ihrer Anwendungsinitiative passt.
Egal, wo Sie sich auf Ihrem Weg zur Modernisierung befinden, Trianz unterstützt Sie dabei, das Endstadium zu erreichen, das Ihnen die nötige Flexibilität, Skalierbarkeit und Agilität bietet, um auf sich ändernde Geschäftsanforderungen zu reagieren.
Möchten Sie Anwendungen zu AWS migrieren?
Mit seinem breiten Serviceangebot und der weltweit schnellsten und zuverlässigsten Infrastruktur ist AWS möglicherweise der für Ihr Unternehmen geeignete Weg zur Anwendungsmodernisierung.