DevOps unter der Lupe

Hey Leute,

lasst uns das Thema DevOps genauer anschauen, damit wir unser gemeinsames Verständnis schärfen.

Das Wort setzt sich aus den IT Rollen Development (Entwicklung) und Operations (Betrieb) zusammen. Diese hatten in der Historie der Softwareentwicklung immer wieder Reibungspunkte, da es unterschiedliche Ziele gibt. Die Entwicklung möchte die bestehenden IT Systeme möglichst schnell und unkompliziert verändern, damit der Kunde neue Funktionen zur Verfügung hat. Der Betrieb hingegen möchte das IT System immer stabil halten, damit der Kunde die Funktionen auch nutzen kann. Und wenn wir ehrlich mit uns sind: Stell dir vor, google wäre für fünf Stunden nicht verfügbar. Dieser Zustand würde wohl große Aufmerksamkeit und Ärger auslösen. Kein Unternehmen ist bereit, auf seine Produkte und Dienstleistungen zu verzichten. Die IT Systeme müssen einfach stabil laufen.

In diesem Kontext beschreibt DevOps eine neue Form der Zusammenarbeit innerhalb der IT-Wertschöpfungskette. Das Ziel ist es, die Wertschöpfungskette gesamthaft positiv zu verändern, damit wir unserem Kunden neue Funktionen flexibel, unabhängig und mit hoher Qualität zur Verfügung stellen können.

Um dieses Zielbild zu erreichen, bedient sich DevOps altbekannter Methoden und Philosophien wie Lean, agiler Softwareentwicklung, ITIL und vielen mehr. Die Kombination dieser Methoden führt zu den Kern-Prinzipien: Flow, Feedback sowie Experimentieren & Lernen, die für den Erfolg ebenso entscheidend sind wie eine Kultur des Vertrauens und zufriedene und eigenverantwortlich arbeitende Teams.

Hier ist es mir wichtig, dass du kurz pausierst und den letzten Abschnitt reflektierst. DevOps bedeutet für die meisten klassisch aufgestellten Unternehmen einen gravierenden kulturellen Wandel. Diese Veränderung ist im Kontext der Digitalisierung aus meiner Sicht zwingend notwendig und ich kann aus eigener Erfahrung sagen, dass es ein sehr schwerer Weg wird.

Eine zentrale Rolle in DevOps nimmt die Zusammenführung der Softwareentwicklung (Development) und Betriebsführung (IT-Operations) in eigenverantwortlichen Teams ein. DevOps darf dabei aber nicht einzig als Teamzusammenführung oder als Werkzeug oder Prozess verstanden werden. Es ist deutlich vielschichtiger und umfasst neben der Philosophie und dem kulturellen Wandel auch konkrete Anforderungen an die Automatisierung über den gesamten Wertschöpfungsprozess bis hin zum Testing. Dies inkludiert ebenso die prozessualen Anpassungen, die z.B. für eine durchgehende Lieferkette der Software (CI/CD Pipeline) die Voraussetzung bilden.

Der Ansatz revolutioniert die klassische Wasserfall-Entwicklung über die agile Vorgehensweise hinaus. In der agilen Entwicklung wird die Betriebsführung noch als eigenständiger, nachgelagerter Prozess der Software-Entwicklung betrachtet. Mit der Verschmelzung von Dev und Ops wird das Ziel verfolgt, eine effektivere und effizientere Zusammenarbeit von Entwicklung und Betrieb inklusive der dazugehörigen Qualitätssicherung zu schaffen. Die Vereinigung dieser bisher eigenständigen Prozesse soll die Abstimmung in den Teams verbessern und damit die Software-Qualität erhöhen sowie die Entwicklungs- und Auslieferungszyklen der Software beschleunigen, was wiederum auf die Businessziele durch eine schnellere Time2Market einzahlt.

Bei Interesse in diesem Thema kann ich dir wärmstens empfehlen, das Phönix Projekt zu lesen. Dieses Buch beschreibt den Weg eines Unternehmens von der klassischen IT hin zu DevOps Teams.

Da wir uns mit unserem Unternehmen aktuell in der gleichen Transformation befinden, werden wir euch regelmäßig in unserem Blog an unseren Erfahrungen teilhaben lassen.

Euer Fabian

Leave a Reply

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