Entgegen aller Wahrscheinlichkeit migrieren einige Unternehmen von der Cloud zurück zu ihren lokalen Servern, da sich die Cloud für sie als zu teuer erweist. Wir stellen fest, dass auch einige unserer Kunden zurückmigrieren. Das ist unerwartet, denn theoretisch sollte der Betrieb Ihrer Landschaft in der Cloud günstiger sein.
Unerwartete Kostenentwicklungen
Die Kosten sind ein wichtiger Faktor bei der Migration in die Cloud. Die Umstellung auf die Cloud erfordert Zeit und Aufwand Anwendungen müssen oft angepasst werden, um mit den Cloud-Ressourcen kompatibel zu sein, ein Faktor, der im Allgemeinen erwartet wird. Aber irgendwann sollte die Migration abgeschlossen sein und die finanziellen Vorteile beginnen, sich auszuzahlen.
Theoretisch sollte der Aufwand für die Migration in die Cloud einen Mehrwert schaffen. Wenn die Migration beginnt, gibt es noch keinen Return on Investment. Irgendwann stehen die Anstrengungen in einem angemessenen Verhältnis. Von diesem Zeitpunkt an sollte der Migrationsaufwand abnehmen und der Wert sollte den Aufwand überwiegen, wie in dieser Grafik dargestellt:

Einige Unternehmen erreichen jedoch nie den Punkt, an dem der Aufwand und der Wert in einem angemessenen Verhältnis stehen. Im Gegenteil, ihre Betriebskosten steigen. Ihre Cloud-Reise sieht dann eher so aus: 
Ihre Cloud-Rechnung in den Griff bekommen
Viele Unternehmen kämpfen damit, am Ende des Monats eine vorhersehbare und angemessene Cloud-Rechnung zu erhalten. Allein das Hosting einer Testumgebung für eine einfache Anwendung kann in manchen Fällen Kosten in Höhe von Hunderten oder gar Tausenden von Euro verursachen.
Auf den ersten Blick mögen die Entwicklung von Software für die Cloud und die Entwicklung von Software für eine lokale Umgebung gleich aussehen, aber täuschen Sie sich nicht - es gibt einige entscheidende Unterschiede.
Bei der Softwareentwicklung vor Ort werden beispielsweise Datenbanken zu einem Datenbankserver hinzugefügt, bis die maximale Kapazität des Servers ausgeschöpft ist. Und vorzugsweise verwenden alle Anwendungen ähnliche Datenbank-Technologien. In der Cloud wird ein ähnlicher Ansatz zu hohen Kosten führen. Die meisten Cloud-Anbieter stellen entweder die reservierte Kapazität oder den tatsächlichen Verbrauch in Rechnung. Je fortschrittlicher die Ressource ist, desto höher ist die Rechnung. Eine Datenbank in einem Premium-Tier zu haben, ohne sie ausgiebig zu nutzen, ist also sehr teuer. Auch die zweckentfremdete Nutzung der Technologie hat negative Auswirkungen auf die Kosten.
Neu hosten, neu plattformen oder neu architektieren?
Die Art und Weise, wie eine Anwendung gehostet wird, hat einen erheblichen Einfluss auf die Rechnung. Cloud-Anbieter bieten Infrastruktur-, Plattform- und Software-as-a-Service an. Die Dienste aus diesen verschiedenen Kategorien haben unterschiedliche Preismodelle.
Jede Anwendung ist einzigartig. Folglich können sie alle unterschiedliche Cloud-Migrationsstrategien haben. Die Strategie schlägt sich in den monatlichen Hosting-Kosten nieder, denn jede Strategie hängt von einer anderen Kategorie von Cloud-Diensten ab.
Durch die Nutzung der Infrastructure-as-a-Service-Angebote eines Cloud-Anbieters mit einem sogenannten Lift-and-Shift-Ansatz kann ein Unternehmen einfach virtuelle Maschinen in der Cloud bereitstellen und seine Anwendungen darauf hosten.
Alternativ kann sich ein Unternehmen auch für einen schlankeren Ansatz entscheiden. Bei der Neuplattformierung einer Anwendung werden minimale Änderungen vorgenommen, damit sie auf den vom Cloud-Anbieter angebotenen Plattformkomponenten ausgeführt werden kann. Dazu gehört zum Beispiel die Containerisierung einer Webanwendung und deren Ausführung in einer Containerumgebung, während das Database-as-a-Service-Angebot zum Hosten der Datenbank verwendet wird. Ein solcher Ansatz macht virtuelle Maschinen, die für den Betrieb dieser virtuellen Maschinen erforderliche Rechenleistung und deren Wartung überflüssig. Dies senkt die Kosten erheblich.
Ein häufiger Fallstrick ist, dass solche Entscheidungen aus einer anwendungszentrierten Perspektive getroffen werden. Verschiedene Unternehmen begeben sich auf lange, unvorhersehbare und teure Reisen, um große, monolithische, geschäftskritische Anwendungen neu zu erstellen. Solche Umbauten dauern Jahre und erhöhen die Gesamtbetriebskosten drastisch: Jetzt müssen zwei große Anwendungen gewartet werden, ohne dass sich daraus ein zusätzlicher geschäftlicher Nutzen ergibt.
Normalerweise benötigen nicht alle Teile eines Monolithen die gleichen architektonischen Fähigkeiten. Einige Teile müssen möglicherweise skaliert werden, während andere Teile fortgeschrittene Betriebsfunktionen benötigen. All diese Fähigkeiten in jedem Teil des Monolithen zu aktivieren, kann ziemlich teuer werden. Deshalb kann es in manchen Fällen sinnvoller sein, die Anwendung neu zu architektieren und nur bestimmte Teile der Anwendung neu zu plattformen und die Fähigkeiten zu identifizieren, die auf einzelne Komponenten anwendbar sind. Dies reduziert die Kosten der Neuplattformierung und ermöglicht es Ihnen, den größtmöglichen Nutzen aus der Migration zu ziehen.
Die Entscheidung, wie Sie eine lokale Anwendung in die Cloud migrieren, ist nicht immer einfach. Was ein sinnvoller Ansatz ist, hängt vom jeweiligen Geschäftsfall ab. In anderen Fällen ist es sinnvoller, kleinere Änderungen an der Anwendung vorzunehmen, um sie mit der Cloud kompatibel zu machen, oder in anderen Fällen die Anwendung neu zu gestalten.
Kaufen oder bauen?
Ein weiterer interessanter Aspekt der Softwareentwicklung in der Cloud ist die Art der verwendeten Ressourcen. Bei der Arbeit an lokaler Software umfasst eine Anwendung in der Regel sowohl eine Anwendung als auch eine Datenbank, wobei alle Funktionen entweder in der Datenbank oder in der Anwendung programmiert sind.
Cloud-Anbieter bieten auch Software as a Service an. Sie bieten Lösungen für das Identitäts- und Zugriffsmanagement, so dass Sie keine Authentifizierungsfunktionen entwickeln müssen, Business Intelligence-Lösungen für die Erstellung von Dashboards, Bereitstellungsinfrastruktur für die Softwareentwicklung und vieles mehr. Die Integration von Geschäftsfunktionen kann mit nur einem Klick möglich sein.
Software-as-a-Service-Angebote sind teurer als Plattform-as-a-Service-Angebote. Es gibt also immer einen Kompromiss, den Sie berücksichtigen müssen. Die Frage ist, wann man in den Geschäftswert investiert.
"Wählen Sie Ihr Gift: hohe Entwicklungskosten und eine niedrigere monatliche Rechnung oder niedrige Entwicklungskosten und eine höhere monatliche Rechnung?"
Je nach dem optimalen Zeitpunkt für die Bereitstellung der Software und der erwarteten Nutzung der Software kann es sinnvoll sein, die Geschäftsfunktionen intern zu entwickeln oder nicht. Es ist ein unternehmerisches Unterfangen.
Übernehmen Sie Verantwortung und benutzen Sie Ihren gesunden Menschenverstand!
Einige Organisationen sind auf dem besten Weg, alle oben genannten Punkte umzusetzen, haben aber immer noch mit hohen Rechnungen zu kämpfen.
Aufgrund der Natur der Cloud ist die Entwicklung von Software für die Cloud sehr schnelllebig. Die Kosten machen sich sofort bemerkbar und eine kleine Änderung kann große Auswirkungen auf die Rechnung haben. Das kann eine schlechte SQL-Abfrage sein oder die Entscheidung, eine Funktion in einem Lambda oder einer Azure-Funktion zu implementieren, obwohl sie in einer API hätte implementiert werden sollen.
Deshalb müssen die Entwicklungsteams die Verantwortung für ihre Ausgaben übernehmen. Sie müssen vom Entwicklungsteam regelmäßig und proaktiv überwacht werden. Wenn eine unerwartete Kostenentwicklung prognostiziert wird, sollte das Team darauf reagieren. Es kann erforderlich sein, eine andere technische Lösung für ein Problem zu wählen.
Folglich erfordert dies eine Änderung in der Organisation. Es beginnt damit, die Cloud-Abonnements so zu organisieren, dass die Ausgaben pro Team von vornherein überwacht werden können. Das Team muss sie aktiv überwachen. Außerdem müssen die Architekten näher am Team sein, wenn nicht sogar in das Team integriert werden, damit das Team eine technische Lösung schnell ändern kann, wenn sie sich als zu teuer erweist.
Erfolgreiche Teams entwickeln Lösungen, ohne dabei das Budget aus den Augen zu verlieren, und beziehen Überlegungen zu Business Cases in den Verfeinerungs- und Priorisierungsprozess ein.
Zusammenfassung
Verschiedene Unternehmen kehren zu ihren lokalen Rechenzentren zurück, weil sich die Cloud als zu teuer erweist. Die einfache Migration von lokalen Rechenzentren in die Cloud hat für sie nicht zu einer Kostenreduzierung geführt.
Cloud-Kosten, die Zeit bis zur Markteinführung, technische Designentscheidungen und die Softwarenutzung gehen Hand in Hand. Daher spielt die Rentabilität einer Funktion in jedem Schritt des Lebenszyklus der Softwareentwicklung eine Rolle.
Es dreht sich alles um Autonomie. Wenn Teams und Architekten effizient zusammenarbeiten, um kosteneffiziente Lösungen zu entwickeln, und wenn Teams dies proaktiv überwachen können, können sie die Cloud-Kosten drastisch senken und eine Cloud-Migration sehr profitabel machen.
Interessante Lektüre:
Dieser Blog ist Teil unserer Serie"Holistische Horizonte". Schauen Sie sich die vorherige Ent ry -"Brauche ich wirklich ein weiteres Tool" von Adnan Alshar.
Verfasst von
Dmitry Litosh
Experienced professional in both technical and managerial functions, focused on helping companies to address digital issues, surrounding processes, infrastructure and make decisions on how to improve their software development pipeline on all stages from boardroom to deployment.
Unsere Ideen
Weitere Blogs
Contact




