Die drei DevOps-Prinzipien: auch für andere Bereiche nützlich?

Die Ansätze der DevOps-Bewegungen bieten Potenzial, um die Zusammenarbeit in Unternehmen teamübergreifend zu verbessern. In dieser Artikelserie geht es deshalb um die Frage: Was können wir aus den DevOps-Prinzipien (außerhalb der Systemadministration und Softwarentwicklung) lernen?

Agiler als ein Wasserfall – das Motto dieses Blogs war nie als Aufruf gedacht, die eine Methode durch eine andere Methode zu ersetzen.

Meiner Ansicht nach können Methoden (ob agil oder nicht) sowohl ein Vehikel für Verbesserungen als auch eine Gefahr sein. Insbesondere wenn sie als Deckmantel für unveränderte Probleme herhalten müssen, also: derselbe Wein in neuen, hipperen Schläuchen.

Dabei sollte der Fokus bei Verbesserungsmaßnahmen gar nicht auf einer bestimmten Methode liegen, sondern auf dem übergeordneten Zweck. Den seh ich darin, die Bedingungen, unter denen unsere Zusammenarbeit stattfindet, so gut wie möglich zu gestalten.

Vordergründig muss die Frage dabei lauten: Ziehen alle an einem Strang und bekommen alle, was sie brauchen?

Die Herangehensweise der DevOps-Bewegung geht da (finde ich) in die richtige Richtung und deshalb möchte ich die grundlegenden Prinzipien einmal genauer beleuchten. Und zwar unter dem Gesichtspunkt, was wir außerhalb der Softwareentwicklung daraus lernen können.

Den Anfang macht dieser erste Artikel mit einem groben Überblick über die Prinzipien.

Die drei DevOps-Prinzipien

In der IT ist mit der DevOps-Bewegung etwas entstanden, von dem wir zur Erreichung dieses Ziels etwas lernen können.

Die Praktiker der DevOps-Bewegung haben dabei eine Vielzahl von Praktiken, die auf drei grundlegenden Prinzipien aufbauen:

  1. In Systemen denken (und Flow erzielen)

  2. Feedback-Loops ausbauen und nutzen

  3. Kontinuierliches Lernen und Experimente fördern

In Systemen denken

Eine zentrale Idee der DevOps-Herangehensweise ist ein Unternehmen als System zu begreifen statt einer losen Ansammlung von Akteuren. In einem solchen System dienen alle Tätigkeiten einem gemeinsamen Zweck: dem Unternehmensziel.

Innerhalb dieses Systems soll versucht werden, einen kontinuerlichen Arbeitsfluss von links nach rechts, also von der Auftragsanahme bis zur Erledigung, zu erzielen und diesen „Flow“ kontinuierlich zu verbessern. Dabei sollen alle im Unternehmen mithelfen, unabhängig von künstlichen Grenzen wie der Teamzugehörigkeit oder Prozessschritten.
Hierin spiegelt sich der Gedanke der Interdisiziplinarität wieder, der auch bei Scrum ein wichtiger Punkt ist.

Das muss nicht die Auflösung oder Zusammenlegung von Teamstrukturen bedeuten, beinhaltet aber mindestens einen teamübergreifenden Wissens- und Erfahrungsaustauch und besser noch: teamübergreifende Zusammenarbeit.

In jedem Fall soll ein Verständnis dafür entwickelt werden, wie die „Rädchen“ im System ineinandergreifen, also wie sich das Handeln an der einen Stelle auf andere Stellen auswirkt.

Feedback-Loops ausbauen und nutzen

Das zweite Prinzip zielt darauf ab, im Verlauf der Arbeit möglichst früh Erkenntnisse über die Effektivität unseres Handeln zu gewinnen. Dabei sollen Probleme, Hindernisse, Engpässe im Prozess so wie früh im Prozess wie möglich erkannt und beseitigt werden.

Nun erbringen wir unsere Leistung ja meistens für irgendwen: sei es ein Kunde für den wir eine Dienstleistung erbringen oder an den wir ein Produkt ausliefern oder ein anderes Team für das wir beispielsweise Infrastruktur aufbauen oder Software entwickeln. Diese Leistungsempfänger sollten frühzeitig in den Feedback-Prozess eingebunden werden.

Bestenfalls geschieht das über kleine und trotzdem in sich abgeschlossene Zwischenlieferungen, weil sich daran am besten erkennen lässt, ob die Bedürfnisse des Kunden taxiert werden.

Der Grund warum frühes Feedback wichtig ist: die bessere Informationslage und Risikobegrenzung.

Kontinuierliches Lernen und Experimente fördern

Schließlich zielt das dritten Prinzip auf eine vertrauensvolle Unternehmenskultur ab, in der kontinuerliches Lernen durch ständiges Experimentieren stattfindet.

Dabei soll allen Beteiligten im Unternehmen sowohl Zeit als auch das notwendige Vertrauen eingeräumt werden, um im Rahmen ihrer täglichen Arbeit eventuelle Verbesserungsmaßnahmen auszuprobieren und das ohne einen komplizierten Genehmigungsprozess.

Vor allem soll auch aus Fehlern gelernt werden: statt Schuldzuweisungen sollen alle Ursachen ermittelt und überlegt werden, was man machen kann, um ein Problem in der Zukunft zu vermeiden. Insgesamt sollte es dabei darum gehen, das System insgesamt resilienter zu machen.

Im Grunde genommen kann man die DevOps-Prinzipien als eine Zusammenfassung von Lean-Prinzipien und agilen Grundsätzen betrachten. Allerdings geht es bei DevOps weniger um Theorie als viel mehr um’s Machen.

Daher werden die folgenden Teile auch mögliche Praktiken näher beleuchten.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.