Cloud-native Apps im Kontext: Sehr viel mehr als „nur“ Softwareentwicklung

May 16, 2017
Cloud-native Apps im Kontext: Sehr viel mehr als „nur“ Softwareentwicklung

Beitrag von Thomas Wirtz, Pre-sales Director Germany

Seit ein paar Jahren lässt sich beobachten, dass sich die globalen Machtverhältnisse der Unternehmen verschieben. Was das genau bedeutet? Plötzlich reden alle nur noch über Netflix, Uber und Airbnb – Unternehmen, die ganze Branchen auf den Kopf stellen und zu harten Konkurrenten der traditionellen Anbieter werden. Heute sind die größten Unternehmen IT-Organisationen, die die Potentiale von Software erkannt haben und gezielt einsetzen. Wie ist es möglich, dass Unternehmen, die keine Assets haben, innerhalb kürzester Zeit zu Giganten heranwachsen? Die Schlüssel zum nachhaltigen Erfolg heißen: Software und Skalierbarkeit. Noch vor 30 Jahren mussten Unternehmen erst in teure Rechenzentren investieren, bevor sie ihre Kapazitäten erweitern konnten. Heute können Cloud-Ressourcen für 3 Cent pro Stunde gebucht werden – die Basis für große Geschäftsmodelle ist gelegt! Die ‚Economy of Speed‘ hat die ‚Economy of Scale‘ abgelöst.

Die große Frage: Wie wird IT im Unternehmen wahrgenommen?

Leider hat der größte Teil der Unternehmen diesen Trend verschlafen – oder ihn auch zunächst absichtlich ignoriert. Erst jetzt, da sich zeigt, dass ihre Marktpräsenz massiv bedroht wird, versuchen sie durch die Adaption der Technologien zu reagieren. Doch es ist schwierig, mit den neuen Konkurrenten mitzuhalten, deren Prozesse so viel schneller ablaufen und agilere Geschäftsmodelle haben. Sie sehen IT nicht als notwendigen Kostenfaktor, der nur den Betrieb gewährleistet, sondern als Partner oder Enabler, der den strategischen Fokus verändern und vorantreiben kann. Wie also reagieren die traditionellen Unternehmen? Sie versuchen, sich Expertenwissen ins Haus zu holen – allerdings bedeutet Cloud-native Apps sehr viel mehr als nur eine bestimmte Entwicklungsart und die Nutzung von Microservices. Vielmehr stellt sich die Frage: Wie müssen die Prozesse und Strukturen angepasst werden, damit Unternehmen agiler werden?

DevOps revolutioniert Prozesse und die kulturelle Zusammenarbeit zwischen den IT-Teams

Bevor der Cloud-native Trend die Softwareentwicklung revolutioniert hat, herrschte das sogenannte Wasserfall-Modell vor, das eine klare Trennung von Entwicklungsteams und Betriebsteams vorsah. Geschäftsprozess-, Infrastruktur-, Entwicklungsteams arbeiteten isoliert voneinander an großen Programmen und Codes. Aufgrund der Komplexität des Programms benötigten Unternehmen auch ein komplexes Organisationsmodell. Die Trennung von Entwicklung und Betrieb führte jedoch dazu, dass Betriebsteam oftmals Probleme, die beim Einsatz der Anwendungen auftraten, nicht nachverfolgen konnten – zudem waren die Release-Zyklen sehr lang. Durch die Verbindung von Development und Operations zu DevOps werden die Teams neu aufgeteilt, sodass die Entwickler bestimmter Anwendungen für den vollständigen Service (Entwicklung, Optimierung, Qualitätssicherung, Betrieb) zuständig sind und so Probleme schneller nachvollziehen können. Durch die kleinen Teams, die sich jeweils nur mit einem vergleichsweise kleinen Code beschäftigen, werden auch Kommunikationsprobleme behoben.

Die Entwicklung ist jedoch nur ein erster Schritt, der Rollout ein ganz anderer. Für die Koordination benötigen Unternehmen eine entsprechende Plattform oder Schnittstelle: hier kommt die sogenannte CI/CD (Continuous Integration, Continuous Delivery)-Pipeline ins Spiel. Zwischen der Entwicklung und dem finalen Rollout befinden sich Automationsstrecken, bei denen die kleinen Einheiten auf die Integration mit anderen Services getestet werden. Funktioniert alles einwandfrei, findet schließlich der Rollout statt. Dass die jeweilige Infrastruktur dabei auch über Schnittstellen und Fähigkeiten zum vollautomatisierten „software-defined“ Deployment verfügen muss, ist ein weiterer entscheidender Faktor.

Container-Technologie reduziert Komplexität

Ein Software-Code muss immer in Abhängigkeit von anderen Systemen und Bibliotheken entwickelt werden. Das bedeutet: Entwickelt man Code, muss man sicherstellen, dass die entsprechenden Bibliotheken auch auf dem neuen System laufen, sprich man benötigt Java, Webserver oder Linux-Maschinen. Die Abhängigkeiten von anderen Systemen summieren sich sehr schnell, sodass eine komplexe Matrix entsteht. Mithilfe von Docker bzw. Containern wird eine Standardisierung erreicht. Die Entwickler bestimmen bereits beim Design der Services, was genau sie benötigen (Java, Python, Apache etc.) – entsprechend wird der Container dann auch gebaut, sodass alle Abhängigkeiten innerhalb des Containers vorhanden sind. Der Betreiber hingegen sieht nur das standardisierte Format, das sich leicht ausrollen lässt.

Es zeigt sich also, dass es bei Cloud-native Apps um sehr viel mehr als „nur“ um Entwicklung geht – Strukturen werden umgewälzt, die Organisation vereinfacht und die IT wird anders wahrgenommen. DevOps und Container-Technologien sind nur der Anfang, die veränderte Prozesse bewirken. Letztendlich handelt es sich um einen Wandel, der nicht nur das IT-Team betrifft, sondern sich auf das ganze Unternehmen ausweiten soll.

Sie möchten mehr zum Thema Cloud-native Apps erfahren? Auf Twitter halte ich Sie auf dem Laufenden! Ich freue mich auch über Kommentare! Über welches Gebiet bei Cloud-native Apps möchten Sie mehr erfahren? Haben Sie bereits Erfahrungen in Ihrem Unternehmen gesammelt?


 
Related Posts
 

Im Zuge der Digitalisierung kommen auch etablierte Führungsprinzipien auf den Prüfstand. Schnelligkeit, Innovationskraft und Agilität sind mit herkömmlichen Management-Methoden nur eingeschränkt zu erzielen. Deshalb schwappt ein Prinzip, das in der Softwareentwicklung bereits jahrelang und mit guten Ergebnissen genutzt wird, nun auf die komplette Unternehmensführung über: Die agile Führung.

CIOs stehen heute vor großen Herausforderungen: Einerseits sollen sie Kosten einsparen, andererseits aber auch immer mehr Services auf unterschiedlichen IT-Plattformen bereitstellen und betreuen. Um diese Hürden zu meistern, müssen sie auf Automatisierung setzen und entsprechende Tools nutzen.

Nahezu tagtäglich erreichen uns Nachrichten über Cyber Attacken. Und so stellen wir uns auch indirekt darauf ein, das nächste mögliche Opfer zu sein. Man ist sich dieser Gefahr bewusst, trifft meist auch zahlreiche Vorsichtsmaßnahmen und dennoch würde es keinen überraschen, das Ziel von Cyberkriminalität zu werden. Ich bin der Meinung: Schluss damit und Zeit den Spieß umzudrehen! Zeit, den Hackern nicht nur einen Schritt voraus zu sein, sondern unangreifbar zu werden.

Die erschlagend große Auswahl an Cloud-Anbietern mag das ein oder andere Unternehmen dazu verleiten, eine voreilige Entscheidung zu treffen. Dennoch sollte eine Wahl mit Bedacht getroffen werden – denn die Entscheidung für einen Cloud-Anbieter ist mehr, als nur die reine Buchung eines Services: Es bedeutet nämlich, sensible Daten des Unternehmens abzugeben und das möglichst in vertrauenswürdige Hände.

 
 
Blog Archive