4 typische Herausforderungen für DevOps-Teams

Wie schnell und effizient Entwickler-Teams neue, qualitativ hochwertige Anwendungen bereitstellen können, entscheidet heute oft über Erfolg oder Misserfolg von Unternehmen.  Dabei hat sich der DevOps-Ansatz als bahnbrechend erwiesen. DevOps verfolgt das Ziel, die Zusammenarbeit und Kommunikation zwischen Entwicklern, Systemadministratoren, Testern und anderen Beteiligten im Softwareentwicklungsprozess zu verbessern. Es sollen Barrieren beseitigt und eine nahtlose Integration und Zusammenarbeit über den gesamten Lebenszyklus einer Anwendung hinweg ermöglicht werden. Kurz: DevOps verspricht eine schnellere Entwicklung und einfachere Wartung. Aber funktioniert das auch in der Praxis? Guillaume Moigneu, Vizepräsident für Produkte bei Platform.sh zeigt auf, was die typischen Herausforderungen sind, mit denen DevOps-Teams heute konfrontiert sind, und wie diese behoben werden können.

Was in der Theorie vielversprechend klingt, ist im Arbeitsalltag oft schwierig umzusetzen. Nicht selten besteht die Tendenz, dass IT-Teams, Software mit ihren eigenen Skripten und Anwendungen vermischen, wodurch der Tech-Stack zu einem Durcheinander von Einzelkomponenten wird, anstatt zu einem dedizierten DevOps-Tool. Dinge werden komplizierter, als es notwendig ist. Wertvolle Entwicklungskapazitäten werden dadurch gebunden und fehlen schließlich bei der Entwicklung neuer Produkte und Anwendungen.

 

Vielzahl von Tools erschweren das Onboarding

Üblicherweise verwenden DevOps-Teams zwischen zehn bis 15 Tools, um ihre Arbeitsprozesse zu unterstützen und ihre Anwendungen zu verwalten. Die Verwendung zahlreicher Tools kann jedoch insbesondere im Hinblick auf das Onboarding neuer Teammitglieder ausgesprochen herausfordernd sein. So hat jedes Tool seine eigenen Anforderungen und Verfahren zur Einrichtung von Anmeldeinformationen und Zugriffsrechten. Das bedeutet, dass für jedes neue Teammitglied möglicherweise mehrere Onboarding-Verfahren erforderlich sind, um sicherzustellen, dass sie Zugriff auf alle benötigten Tools haben. Dieser Prozess erfordert Zeit und Aufwand, da die Administratoren die Anmeldeinformationen für jedes Tool erstellen und sicherstellen müssen, dass die richtigen Zugriffsrechte vergeben werden. Darüber hinaus kann es erforderlich sein, neue Teammitglieder in die verschiedenen Tools einzuführen und ihnen Schulungen anzubieten, um sicherzustellen, dass sie effektiv damit arbeiten können. Das kostet Zeit.

 

Produktivitätsverlust

Ein weiteres Problem entsteht, wenn eine Anwendung nicht integriert wurde – sei es, weil es nicht möglich ist oder weil hierfür schlichtweg die Zeit fehlt. IT-Teams müssen dann jede Anwendung manuell aktualisieren. Wenn beispielsweise eine Pull-Anfrage abgeschlossen und geschlossen wurde, muss das in der Projektmanagement-Anwendung aktualisiert und anschließend manuell in einer separaten Tracking-Anwendung erfasst werden. All dies kostet Zeit, und zwar nicht nur die Zeit, die für den Abschluss der Aktion aufgewendet wird, sondern auch Zeit, die durch den Produktivitätsverlust beim Wechsel zwischen verschiedenen Anwendungen verloren geht. Problematisch wird es zusätzlich, wenn eine dieser Maßnahmen übersehen wird und das zu weiteren Komplikationen führt.

 

Erhöhter Wartungsaufwand

Zusätzlich hat jedes Tool eigene Wartungsanforderungen. Sie müssen aktualisiert werden und es müssen Sicherheitsupdates durchgeführt werden. Dies wiederum birgt das Risiko von Fehlern und Inkompatibilitäten im Code. Auch wenn Aktualisierungen an sich nicht lange dauern, summiert sich doch alles. Das widerspricht dem eigentlichen Zweck von DevOps, nämlich Ineffizienzen zu beseitigen.

 

Datenschutz und Compliance

Ein außer Kontrolle geratener Technologie-Stack bringt noch weitere Probleme mit sich: Entwicklungsteams müssen sicherstellen, dass die Anwendungen gegen Cyberangriffe gewappnet sind, die Daten vollständig geschützt sind und leicht zurückverfolgt werden können und alle Gesetze und Vorschriften eingehalten werden. Wie ernst dieser Punkt ist, wurde Anfang dieses Jahres deutlich, als Meta wegen des falschen Umgangs mit Daten zu einer Geldstrafe von 1,2 Mrd. Euro verurteilt wurde.

Für Unternehmen, die Anwendungen auf globaler Ebene verwalten, ist das keine leichte Aufgabe. Vor allem dann nicht, wenn viele Menschen zusammenarbeiten. Ohne die richtigen Kontrollen kann es dazu führen, dass Daten an Orte geraten, an denen sie eigentlich nicht erwünscht sind, und so unbemerkt gegen Vorschriften verstoßen wird. Data-Governance liegt in der Verantwortung jedes Einzelnen, aber es wird extrem schwierig, Datenflüsse zu kontrollieren und zu verstehen, wenn das DevOps-Team weltweit zusammenarbeitet.

 

Fazit

Guillaume Moigneu, Vizepräsident für Produkte bei Platform.sh

„Es wird viel über die Notwendigkeit eines kulturellen Wandels gesprochen, um DevOps zum Erfolg zu verhelfen. Das ist absolut richtig. Aber die Technologie, die dies unterstützt, muss regelmäßig evaluiert werden, um sicherzustellen, dass sie für den Zweck geeignet ist und das Team nicht unnötig belastet“, erklärt Guillaume Moigneu, Vice President Products bei Platform.sh. „DevOps soll zwar eine agile Entwicklung ermöglichen, aber zu viele Anwendungen können das Leben von IT-Teams eher erschweren. Hier können zentrale Plattformen zum Managen von Websites und Apps unterstützen. Durch sie können DevOps-Teams effizienter arbeiten, die Onboarding-Zeiten reduzieren und die Zusammenarbeit verbessern. Dies ermöglicht es neuen Mitarbeitern, sich schneller einzuarbeiten und produktiv an Projekten mitzuwirken.“

#Platform_sh