Noch nicht bereit für DevOps? 3 Vorbereitungsschritte

DevOpsEine kürzlich veröffentlichte Studie von App Annie zeigt, dass die Deutschen durchschnittlich zwei Stunden pro Tag mit Apps verbringen. Um diesen ständig wachsenden digitalen Appetit zu befriedigen, müssen Apps schnell entwickelt und aktualisiert werden.

Ob eine App funktioniert – oder eben nicht – ist für den positiven oder negativen Eindruck, den Kunden von einem Unternehmen gewinnen, von überragender Bedeutung. Software und Prozesse müssen daher besonders agil sein.

Anzeige

Damit ihre Apps reibungslos funktionieren, sollten Unternehmen in DevOps investieren. Der Begriff beschreibt einen Prozessverbesserungsansatz, der Aspekte betrieblicher Kultur, Praktiken und Werkzeuge kombiniert, um Anwendungen und Services schneller zu entwickeln und bereitzustellen. Um diese Kombination wirklich nutzen zu können, müssen Unternehmen vorbereitet sein, den drei Hauptaspekten von DevOps – Technologie-gesteuerte Agilität, Kollaboration und Orchestrierung – Raum zu verschaffen.

Bei der Aufschlüsselung dieser drei Kernbereiche haben sich jedoch einige Problemstellungen ergeben:

Technologie-gesteuerte Agilität

Die Agilität durch Technologie zu steigern, sollte einfach zu bewerkstelligen sein. Voraussetzung hierfür ist, dass Anwendungsentwicklung und Betriebsreife (Operations Maturity) gegeben sind. Softwarentwicklung (Dev) und Systemadministration (Ops) haben oft gegenläufige Prioritäten, beispielsweise schneller Wandel vs. Stabilität. Dev und Ops müssen also den „Reifegrad“ nach ähnlichen Kriterien bewerten.

Vor diesem Hintergrund besteht in Unternehmen dann ein gemeinsames Verständnis über den Reifegrad, wenn es auch ein Verständnis für, sowie eine Kontrolle der Arbeitsabläufe im geschäftlichen Kontext gibt. Das heißt, alle sind sich einig darüber, Versionszyklen zu verkürzen, Hemmnisse abzubauen und die Fehlerweitergabe im Downstream zu verhindern, Wartezeiten zu beseitigen und eine Feedback-Schleife einzurichten, die immer wieder zum frühesten Zeitpunkt der Definition, des Designs und der Entwicklung zurückführt. Zusätzlich wird ein Fokus auf die Engineering-Elastizität benötigt, die durch eine kontinuierliche KPI-Schärfung für die verschiedenen Maßnahmen zur Etablierung neuer Verhaltensweisen und Leistungssteigerung erreicht werden kann.

Kollaborative operative Modelle

Kollaborative operative Modelle zu entwickeln, um eine effiziente DevOps-Praxis zu erzeugen, ist der schwierigste Teil der Aufgabe. Nahezu alle Unternehmen scheitern beim ersten Versuch, die prozesskulturellen Änderungen zu bewirken, die erforderlich sind, um eine DevOps-Praxis erfolgreich und effizient zu machen. Daher sollten sie zunächst versuchen, die Silos aufzubrechen und interdisziplinäre Gruppen aufzubauen, die eine gemeinsame Vision sowohl für interne Mitarbeiter wie auch die von Dienstleistern entwickeln. Diese Gruppen sollten zudem von einem gemeinsamen Verständnis des durch die IT emöglichten unternehmerischen Wertschöpfungsprozesses geleitet sein. In zweiter Linie müssen die Entwicklungspraxis auf die Systemadministration ausgeweitet und die Wissenszweige der Systemadministration in die Entwicklung eingebracht werden. Es sollte eine einzige „Quelle der Wahrheit“ geben, mit klaren Wegen zu Qualitätsmeilensteinen, standardisierten Aufbau- und Deployment-Prozessen, strukturierten Administrationsfachkenntnissen, Simulationen der Betriebsfertigkeit sowie Sicherung der Entwicklung. Schließlich wird eine einzige Verantwortlichkeit und ein zusammenhängendes Modell der Administration im gesamten Unternehmen benötigt.

Ein kohäsiver Organisationsaufbau ist nicht das Nonplusultra der Zusammenarbeit; er ist jedoch ein wichtiger unterstützender Faktor. Die Kooperation muss sich zwischen den Teammitgliedern von selbst aufbauen, ohne dass das Management versucht, Vertrauen künstlich herzustellen. Das bedeutet wiederum, dass Unternehmen eine Denkweise anstreben sollten, die Informationen oder das Arbeiten als einen Vorgang im Kollektiv und nicht des Einzelnen begreift und versteht, dass der Erfolg interdependent ist. Die Effizienz der Zusammenarbeit ist ein wichtiger Indikator. Das aus vielen Komponenten bestehende gemeinsame Wissen sollte sodann in einer zentralen Wissensdatenbank mit einer visuellen Darstellung der „Work Map“ der beteiligten Arbeitsgruppen und den Interdependenzen organisiert werden, ähnlich der Orientierung, die digitale Karten geben, in denen die Position des Betrachters mit „Sie sind hier“ markiert ist und die Route zum Ziel schnell erfasst werden kann.

Zusätzlich zu einer starken Kultur der Inklusion, des Vertrauens, der Ermächtigung und des Feedbacks benötigt das Entwicklungsteam die Einbeziehung der Administration, um ein „Design für die Administration“ zu ermöglichen. Auf der anderen Seite benötigt das Administrationsteam die Einbeziehung des Entwicklerteams, um sicherzustellen, dass die „Arbeit der Administration nicht rückwärtsgewandt bleibt“. Als Konsequenz wird es somit weder Nacharbeit noch ungeplante Arbeit geben.

Kollaborative operative Modelle sind für die meisten Unternehmen die Stolpersteine auf ihrem schwierigen Weg, die Betriebskultur zu gestalten, Kooperation zu fördern, Abschottungen zu verhindern und die Einhaltung der Vereinbarungen zur Verbesserung der Zusammenarbeit zu gewährleisten.

Newsletter
Newsletter Box

Mit Klick auf den Button "Jetzt Anmelden" stimme ich der Datenschutzerklärung zu.

Kompetenz-Orchestrierung

Kompetenzen zu orchestrieren, ist eine weitere Dimension des Übergangs zu DevOps. Dazu müssen Rollen und Ressourcen des Unternehmens aufeinander abgestimmt werden, um nahtlos zusammenarbeiten zu können. Dieser Aspekt wird oft als die Einrichtung einer gemeinsamen Plattform missverstanden und wird dann zu einer bloßen Technologie-Konversation. Darunter ist stattdessen eine nahtlose, bidirektionale Integration des Systems der Beteiligungen in das System der Aufzeichnungen zu verstehen, die Prozesse, Technologien und die Teams mit den Service-Lösungen mit einschließt.

Um den Übergang zu DevOps erfolgreich zu gestalten, sollten Unternehmen verschiedene Punkte berücksichtigen bzw. durchführen:

  • Aufbau eines Kompetenz-Rahmenwerks, das nicht allein um die Technik kreist, sondern sich an den Services orientiert, und das hilft, DevOps-Praktiken in die Technologie- und Prozesselemente der Service-Bereitstellung einzubringen. DevOps-Rollen und begleitende Technologien sowie Prozesse und Wege zur Bereitstellung von betrieblichen Diensten werden damit identifiziert.
  • Eine vereinheitlichte DevOps-Praxis, die in der Lage ist, mit einem breiten und unterschiedlichen Anwendungsportfolio konsistent umzugehen.
  • Ein einfach anzuwendendes Integrations- und Messmodell für die gesamte Infrastruktur und den Services Stack – und keine Inseln der Automation.
  • Ein Service-Katalog mit den variablen Service-Angeboten, die auf die Entwicklung, Integration und Deployment-Technologieplattform abgestimmt sind. Dieser ist eine wichtige Voraussetzung und ein Prozessfaktor für die Integration von DevOps-Tools.
  • Ein arbeitsfähiges, minimal funktionsfähiges Produktmodell (Minimum Viable Product, MVP) für jede Funktionseinführung, sprich eine Funktion, die gerade genug Features aufweist, um frühzeitige Anwender zufrieden zu stellen und Feedback für die künftige Entwicklung zu geben – ähnlich wie bei der Produktentwicklung.
  • Das umfassende und kontinuierliche Monitoring und Management samt Kommunikation und Benachrichtigungen ist genauso wichtig wie die Umsetzung im gesamten Lebenszyklus einer Produktversion.

Viele IT-Unternehmen haben, in unterschiedlichem Ausmaß, Schwierigkeiten, DevOps in die Praxis umzusetzen. Die Vorbereitung für die Schlüsselbereiche von DevOps wie Agilität, Kollaboration und Orchestrierung lässt Organisationen typischerweise ins Stolpern geraten beim Versuch, sich hinzu DevOps zu entwickeln. Wie dargelegt, ist die technologische Unterstützung von Agilität relativ leicht zu bewerkstelligen. Die größere Herausforderung ist jedoch, ein kollaboratives und organisatorisches Betriebsmodell zu entwerfen, das die Denkweise eines „kontinuierlichen Ganzen“ und die Kompetenz-Orchestrierung unterstützt. Doch es ist eine Herausforderung, die es sich lohnt anzunehmen, um die Vorteile von DevOps voll und ganz zu nutzen.

Andreas GolzeAndreas Golze, VP Quality Engineering & Assurance bei Cognizant

www.cognizant.com

 

Anzeige

Weitere Artikel

Newsletter
Newsletter Box

Mit Klick auf den Button "Jetzt Anmelden" stimme ich der Datenschutzerklärung zu.