„DevOps ist Agilität weiter gedacht“

“DevOps ist Agilität weiter gedacht” dieses sinngemäße Zitat stammt aus einem Vortrag zum Thema DevOps, den wir auf einer Konferenz besucht haben. Ein Satz, der bei uns Eindruck hinterlassen hat, da er sowohl beim Ersten als auch beim Zweiten drüber nachdenken ein „Stimmt eigentlich“ in unseren Köpfen hervorgerufen hat. Vielleicht hilft er auch Ihnen, um ein erstes Grundverständnis zu erhalten.

In unserem ersten Beitrag aus dieser Blogserie haben wir bereits den Ursprung, die Begriffsherkunft und den zentralen Gedanken von DevOps dargelegt. Den entsprechenden Beitrag dazu finden Sie hier.

In diesem zweiten Teil der Serie möchten wir etwas tiefer in die Materie einsteigen und auf den Zweck sowie den Zusammenhang zwischen DevOps und Agilität eingehen.

Hand drawing,VUCA,volatility,uncertainty,complexity,ambiguity

CI/CD-Pipe… – was?

Tauchen über Ihrem Kopf metaphorische Fragezeichen auf, wenn Sie von CI/CD-Pipelines hören? Und was es mit Builds und Deployments auf sich hat, ist Ihnen auch noch nicht so ganz klar? Sie sind  sicher nicht die einzige Person, bei der sich Fragezeichen im Gesicht abzeichnen, wenn von sogenannten CI/CD-Pipelines gesprochen wird. CI meint im Kontext DevOps nicht etwas die Corporate Identity, sondern steht für Continuous Integration und CD für Continuous Delivery, also kontinuierliche Integration und Auslieferung frei ins Deutsche übersetzt. Dabei setzt sich eine solche Pipeline aus vielen einzelnen Komponenten, Prozessen und generell Einzelteilen zusammen, die notwendig sind, um Ihr System – genau den Prinzipien der agilen Entwicklung entsprechend – regelmäßig und auch on-demand auszuliefern und so Ihren Kunden immer den aktuellsten Entwicklungsstand zur Verfügung zu stellen. Bei der CI/CD-Pipeline handelt sich also um eine Automatisierung des gesamten Release-Prozesses.

Bestandteile einer solchen Pipeline sind dabei beispielsweise Build-Prozesse, Testing und das Deployment – alles automatisiert.Beim Build [1] werden die für das Release relevanten Komponenten (z.B. Teile des Sourcecode) kombiniert, die ein potentiell auslieferbares Produktinkrement bilden. Dieses „Paket“ wird anschließend mit Hilfe von automatisierten Tests auf möglichst allen Teststufen (z.B. Unit-, Integration- und System-Test) validiert und die Korrektheit des Systemverhaltens sichergestellt. Es wird also geprüft, ob sich das Produktinkrement gemäß seiner Anforderungen verhält. Tut es dies nicht, so wird der Release-Prozess unterbrochen, damit kein fehlerhaftes System produktiv geht, Tauchen im Test keine Fehler auf, so kann das Deployment beginnen. Deployment [1] bezeichnet dabei die Übertragung eines Produktinkrements in eine bestimmte Umgebung (z.B. Ihre Produktionsumgebung).

DevOps & Agilität – ein Herz und eine Seele

Wie Sie vielleicht anhand des vorherigen Abschnitts erkennen können, unterstützt DevOps also in weiten Teilen den grundlegenden Gedanken der agilen Entwicklung und kann dazu genutzt werden in regelmäßigen Abständen, beispielweise am Ende einer jeden Iteration oder sogar während der Iteration Ihren Kunden ein fertiges Stück Software zur Verfügung zu stellen. Der große Vorteil, den DevOps in diesem Zusammenhang bietet, ist, dass Sie auf langwierige und aufwendige Release-Prozesse verzichten können und stattdessen jederzeit die theoretische Möglichkeit haben Ihren Kunden den aktuellen Stand Ihrer Entwicklung zur Verfügung zu stellen, ohne dass dadurch große Aufwände entstehen.

Deswegen können wir die Aussage aus dem Titel „DevOps ist Agilität weiter gedacht“ nur mit einem „Stimmt eigentlich“ beantworten. Denn hundertprozentig korrekt ist die Aussage nicht. Korrekterweise würden wir es eher folgendermaßen formulieren: „DevOps beinhaltet das Prinzip der Agilität und kann daher einen erheblichen Mehrwert in einer agilen Entwicklung schaffen“. DevOps denkt Agilität also nicht weiter, es begünstigt Sie eher. Dazu sei auch gesagt, dass DevOps nicht auf agile Vorhaben beschränkt ist, sondern genauso auch in einer klassischen Entwicklung durchaus sinnvoll ist.

Wir hoffen Ihnen den ein oder anderen Gedankenanstoß zum Thema DevOps gegeben zu haben und wünschen Ihnen viel Erfolg bei der Umsetzung Ihrer CI/CD-Pipelines.


Bis dahin, bleiben Sie gesund und eine schöne Zeit,

Ihre SOPHISTen

Quellen:

[1] Scaled Agile Framework: Scaled Agile Framework (o. J.), URL: https://www.scaledagileframework.com/ (Stand: 09.06.2020)

Bildquelle:
Titel: Handzeichnung VUCA Bild, Vektor Illustration
Quelle: iStockphoto
Autor: claudenakagawa

Schreibe einen Kommentar

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


9 + vier =