Zusammenarbeit von Dev-, Sec- und Ops-Teams optimieren Das Ende von DevOps, wie wir es bisher kannten

Ein Gastbeitrag von Silvio Kleesattel * 6 min Lesedauer

Anbieter zum Thema

DevOps-Teams verbringen viel Zeit damit, ihre eigenen Prozesse zu pflegen, anstatt sich auf die Effizienzsteigerung zu konzentrieren. Stellschrauben gibt es einige: Von einheitlichen DevOps-Plattformen über die Konsolidierung der Teams bis hin zum Einsatz von Automatisierung und KI.Bisherige DevOps-Modelle überdenken

Unternehmensweit sind eine engere Zusammenarbeit und eine gemeinsame Sichtbarkeit für alle Dev-, Sec- und Ops-Teams vonnöten.
Unternehmensweit sind eine engere Zusammenarbeit und eine gemeinsame Sichtbarkeit für alle Dev-, Sec- und Ops-Teams vonnöten.
(Bild: Murrstock - stock.adobe.com)

Überall ziehen Unternehmen ihre Pläne zur digitalen Geschäftstransformation um mindestens drei Jahre nach vorne, um sich schneller an den Markt und die neue Realität nach der Pandemie anzupassen. Gleichzeitig überdenken sie ihre Cloud-Strategien, da die bisherigen Ergebnisse der Cloud-Investitionen noch nicht alle erwarteten Ziele erfüllt haben. Der Fokus liegt wieder auf Effizienz – durch und in der Cloud.

Angesichts der veränderten Gegebenheiten stellt sich die Frage: Ist das bisherige agile DevOps-Modell, das auf kontinuierliche Integration neuer Funktionalitäten ausgelegt ist, angesichts von Investitionskürzungen aufgrund der Krise, notwendiger Betriebskonsolidierungen und eines Mangels an Cloud-Spezialisten ein Hindernis für notwendige Effizienzsteigerungen?

CIOs und Teamleiterinnen und -leiter weltweit stehen in Zeiten von Einsparungen und digitaler Nüchternheit vor dieser und ähnlichen Fragen. Braucht es wirklich große DevOps-Teams mit so vielen Cloud-Fachleuten, wenn in einer reifen digitalen Applikation so schnell neue Features eingebaut werden müssen?

Viele Unternehmen beantworten diese Frage mit einem klaren Nein. Gleichzeitig stellen sie fest, dass DevOps-Teams viel zu viel Zeit damit verbringen, ihre eigenen, fehleranfälligen Prozesse zu fixen.

Die enorme Komplexität einer vielschichtigen Tool-Landschaft, die in der vergangenen „Growth first“-Phase aufgebaut wurde, zu dominieren und Komplexität zu reduzieren ist keine leichte Aufgabe und erfordert oftmals die Besten vom jeweiligen Fach. Doch nur mit einer schlanken, gestrafften Ops-Practice ist es möglich, den Gewinn zu erzielen, der mit der digitalen Initiative angepeilt wurde.

Efficiency-first: Einheitliche DevOps-Plattform

Während der vorherigen Phase der Cloud-Adaption haben Unternehmen eine komplexe Mischung von IT-Assets aufgebaut, die auf einer Kombination aus On-Premises-Systemen, Cloud-IaaS- und -PaaS-Anbietern sowie SaaS-Plattformen mit Integrations-Schnittstellen zur Bereitstellung von Lösungen basieren.

Im Laufe der Zeit sammeln Organisationen dabei technische und fachliche Defizite an, die auf veraltete Automatisierungs-Workflows und Legacy-Anwendungen zurückzuführen sind. Oft hat jeder Product-Owner und jedes DevOps-Team seine eigene präferierte DevOps-Toolchain aufgebaut. Veränderungen wurden als Störung der Arbeitsweise gesehen. Dies hindert die Teams daran, neue Tools und effizientere Arbeitsweisen zu übernehmen.

Um eine Effizienzsteigerung zu erreichen, ist eine unternehmensweit, engere Zusammenarbeit und eine gemeinsame Sichtbarkeit für alle Dev-, Sec- und Ops-Teams notwendig. So entstehen Produkt- und Plattform-Engineering-Teams, die standardisiertere Toolchains und Practices für Digitalisierungsinitiativen innerhalb der Unternehmen vorantreiben.

Unternehmen, die die vollen Vorteile einer aktuellen DevOps-Plattform erreichen und nutzen wollen, müssen bereit sein, eine vorhandene Toolchain zumindest teilweise zu ersetzen. Mit den Tools einer aktuellen DevOps-Plattform lässt sich der Software Development Life Cycle optimieren und eine verbesserte Sichtbarkeit, Rückverfolgbarkeit, Auditierbarkeit und Beobachtbarkeit über die DevOps-Pipeline hinweg bieten.

Außerdem lässt sich mit einer Self-Service-DevOps-Plattform die Delivery Performance der DevOps-Teams im Unternehmen skalieren, der Overhead reduzieren, Komplexität verringern und konsistente sowie Vorlagen-basierte Workflows über mehrere Teams hinweg gewährleisten.

Abwanderung von Developern aus den Teams

Mit wachsendem Reifegrad einer digitalen Applikation wollen viele Entwickler und Entwicklerinnen das DevOps-Team verlassen. Sie sind nicht bereit, die ungeliebten Wartungs- und Betriebsarbeiten zu erledigen – und Stand-by am Wochenende schon gar nicht – und suchen sich neue, kreative Herausforderungen.

Es erfolgt ein Shift der Gewichtung des Teams: vom kreativen Dev zu verlässlichen Ops. Außer dem Verlust von Talenten fördert diese Abwanderung oft auch Wissenslücken. Wissen um Details und Nuancen, die für einen sicheren, stabilen Betrieb und die kontinuierliche Wartung und Instandhaltung unabdingbar sind.

Eine Abkehr vom „You Build it, You Run it“-Modell kann jedoch nicht stillschweigend und On-the-Fly passieren. Hier wird oft der Auslöser zur Notwendigkeit der Veränderung auf ein Ops-zentriertes Modell, mit all den Best Practices, die in der traditionellen IT bei Entwicklungsprojekten Standard waren, verpasst: ordentliche Betriebsdokumentation, Klärung der Code-Verwaltung und Verantwortung für die Wartung, Sicher- und Instandhaltung des Codes, nicht nur der laufenden Infrastruktur.

Jetzt Newsletter abonnieren

Täglich die wichtigsten Infos zu Softwareentwicklung und DevOps

Mit Klick auf „Newsletter abonnieren“ erkläre ich mich mit der Verarbeitung und Nutzung meiner Daten gemäß Einwilligungserklärung (bitte aufklappen für Details) einverstanden und akzeptiere die Nutzungsbedingungen. Weitere Informationen finde ich in unserer Datenschutzerklärung.

Aufklappen für Details zu Ihrer Einwilligung

Zusammenlegung von DevOps Teams und Shared Ops-Dev Team

In manchen Fällen ist es äußerst ratsam, mittelgroße oder weniger strategische Initiativen mit ähnlichen Projekten zusammenzulegen, um die Effizienz im Bereich Sicherheit und Betrieb zu steigern. In dieser Hinsicht erweist sich eine einheitliche DevOps-Plattform als äußerst vorteilhaft.

Die Notwendigkeit, unterschiedliche DevOps-Toolchains zu harmonisieren und gegen den Widerstand von Veränderungen anzugehen, kann jedoch zu einer frustrierenden und zeitaufwändigen Aufgabe werden. In solchen Fällen sind Führungskräfte mit hoher Empathie und umfassender Erfahrung im Change-Management gefragt.

Der Wandel gelingt dennoch nicht immer reibungslos – und ehemals vielversprechende digitale Initiativen können zu einer kostspieligen Enttäuschung für Unternehmen werden. Wann so eine Zusammenlegung von reifen DevOps-Teams Sinn ergibt, hängt im Wesentlichen vom Reifegrad im Lifecycle der Initiative ab, sowie von der Größe und strategischen Einordnung der DevOps-Initiative im Unternehmenskontext.

Bei aktuellen Initiativen in der Unternehmens-IT ist „die“ Cloud nicht mehr wegzudenken. Selbst bei sehr traditionellen Projekten kommen Cloud-Services zum Einsatz. Beispielsweise als Integrationslösung oder ETL-Routinen (Extract, Transform, Load); Workflow-Automatisierungen für Business Teams mit Konnektoren zu ERPs, CRMs, Data-Warehouses und -Lakes; Automatisierungen für Security Operations oder kleine kundenspezifische Erweiterungen zu SaaS-Plattformen.

Schnell gebaut, fehlt es den Developern solch taktischer Cloud-Tools oft an einer betreuenden Ops-Stelle, die sich – in Abstimmung mit den Entwicklern – um Monitoring, Troubleshooting, Patching, Sicher- und Instandhaltung und um das Lifecycle-Management kümmert.

Idealerweise sehen Unternehmen bei der Überarbeitung ihrer Cloud-Strategien so ein „Shared Ops-dev“ Team für „Kleinkram“ im Kontext der Cloud Center of Excellence (CCoE) vor. Im Gegensatz zur Cloud Strategie-, Architektur- und Management-Hoheit, kann solch ein Ops-dev Team jedoch auch einfach outgesourct eingekauft werden.

Automatisierungsgrad und Einsatz von KI

Alle reden über KI als Heilsbringer. Welches Potenzial hat sie für die Automatisierung im Betrieb und bei der Unterstützung von DevOps? Eine Möglichkeit, um Effizienz in der Softwareentwicklung zu steigern, besteht darin, Automatisierung und künstliche Intelligenz (KI) situativ einzusetzen. KI — insbesondere GenAI — kann bei der Automatisierung von Aufgaben wie Testing, Deployment und Monitoring helfen.

Gleichzeitig kann sie dazu dienen, potenzielle Probleme oder Fehler im Code vorherzusagen, bevor sie auftreten, große Datenmengen im Betrieb zu analysieren, um Muster und Trends zu identifizieren, und die Code-Qualität und -Sicherheit zu verbessern, durch Erkennung von Schwachstellen und potenziellen Bedrohungen. Zudem kann KI auch die Planung, Zuweisung und Nutzung von Ressourcen optimieren.

Künstliche Intelligenz (KI) findet im operativen IT-Management vielfältige Anwendung. Sie unterstützt bei der vorbeugenden Wartung, indem sie Ausfälle vorhersagt und Wartungsarbeiten proaktiv plant. Zudem überwacht KI die Sicherheit, identifiziert Sicherheitsbedrohungen und ermöglicht eine schnelle Reaktion.

Im Incident-Response-Bereich automatisiert KI die Identifizierung, Diagnose und Behebung von Problemen, was die Effizienz und Sicherheit steigert. Schließlich analysiert KI Daten, um Leistungsengpässe zu erkennen und Optimierungsvorschläge zur Steigerung der Systemleistung zu liefern.

Die Reife und Zuverlässigkeit von KI für den Betrieb hängen vom spezifischen Anwendungsfall und der Qualität der für das Training der Machine Learning (ML) Modelle verwendeten Daten ab. Vorteile der Verwendung von KI bei Betrieb und Wartung sind verbesserte Effizienz, reduzierte Ausfallzeiten und verbesserte Sicherheit.

Jedoch müssen auch Herausforderungen berücksichtigt werden, um sicherzustellen, dass KI sinnvoll eingesetzt wird. Man denke hier an die Notwendigkeit von qualitativ hochwertigen und kontextspezifischen Daten für das Training, das Potenzial für Verzerrungen (Biases) in Algorithmen, der Engpass menschlicher Experten (diesmal von Data Scientists und ML-Engineers) und die Notwendigkeit menschlicher Aufsicht.

Es ist wichtig, dass DevOps-Teams die potenziellen Vorteile und Risiken der Verwendung von KI in ihren Entwicklungs- und Wartungsprozessen sorgfältig evaluieren und damit möglichst rasch beginnen.

Fazit

In Zeiten von Kosteneinsparungen und digitaler Nüchternheit werden Effizienz und Lean Operations immer wichtiger. Um dies zu erreichen, müssen Dev-, Sec- und Ops-Teams in Unternehmen enger zusammenarbeiten und ihre DevOps-Praktiken optimieren.

Dazu gehören die Standardisierung von Toolchains und Evaluierung von KI und Automatisierung zur Optimierung der Software-Lieferungs- und Betriebskette und zur Reduzierung der übermäßigen Abhängigkeit von spezialisierten Cloud-Engineers. Obwohl diese Veränderungen herausfordernd sein können, sind sie notwendig, um digitale Initiativen wettbewerbsfähig zu halten und einen Mehrwert für das Unternehmen zu liefern.

* Über den Autor
Silvio Kleesattel arbeitet als Technology und Innovation Lead bei Skaylink.

Bildquelle: Skaylink

(ID:49793788)