Agile, DevOps und Co: Lost in Translation?

Was Sie über innovative Projektmethoden wissen müssen

Alle reden von DevOps. Doch vielen ist unklar, was der Ansatz in der Praxis bedeutet und wo die wirklichen Vorteile liegen. Tatsächlich ist DevOps mehr als eine Projektmethode – es ist eine neue Form der Zusammenarbeit.

IT und Business sprechen häufig nicht dieselbe Sprache. Das führt zu Missverständnissen – auch, wenn es um Projektmethodik geht. Entscheider aus den Fachbereichen sagen beispielsweise, ihr Unternehmen sei „agil“. Damit meinen sie aber etwas ganz anderes als „Agile Development“: nämlich lediglich, dass ihre IT schnell auf neue Business-Anforderungen reagieren kann. Agile Entwicklung zielt aber nicht auf schnellere, sondern auf flexible und schlanke Prozesse ab.

Und tatsächlich setzen viele „agile“ Firmen ihre IT-Projekte noch nach der Wasserfallmethode um.

Alles DevOps oder was?

Auch der Begriff „DevOps“ wird derzeit inflationär benutzt. DevOps bedeutet: Development und Operations arbeiten über das gesamte Projekt hinweg eng zusammen, vom Entwurf über die Entwicklung bis zum Betrieb einer Anwendung. Dabei kommen agile Scrum-Methoden zum Einsatz.

Mit den richtigen Ansätzen behalten Firmen ihre IT-Projekte im Griff.

Was ist daran neu? Üblicherweise sind Anwendungen in zwei Lebenszyklen unterteilt: Ein Team entwickelt die Software, das andere kümmert sich hinterher um Betrieb und Wartung. Scheinbar eine sinnvolle Arbeitsteilung, denn jedes Team hat einen klaren Fokus und klare Ziele.

Aber es gibt ein Problem. Beide Bereiche optimieren ihre eigenen Abläufe, nicht den Gesamtprozess.

„Wieviel Sorgfalt würden denn Sie in ein Projekt stecken, das Sie nach dem Setup nicht wieder zu Gesicht bekommen? Und wieviel in ein Projekt, das Sie durchgängig begleiten? Eben.“

– Michael Klöffer, Chief Product Owner, SAP SE

Darum ist DevOps entstanden: Mitarbeiter sind eher motiviert, bereits während der Entwicklung darauf zu achten, dass sich die Anwendungen hinterher optimal warten lassen. Außerdem eröffnen sich natürlich Synergien, wenn Entwicklung und Wartung aus einer Hand kommen.

Vorteile durch Automatisierung

DevOps bedeutet aber mehr, als dass „Dev“ und „Ops“ zusammenarbeiten. Die Logik lässt sich nur in einem agilen Umfeld umsetzen: Software wird iterativ entwickelt, also nach der Scrum- oder Kanban-Methode.

Um einen regelmäßigen Mehrwert zu erzielen, braucht es eine nahtlose „Continuous Delivery“-Pipeline. Diese stellt hocheffiziente Prozesse sicher, von der Build- über die Testing- bis zur Deployment-Phase. Viele Schritte lassen sich dabei automatisieren, insbesondere die bisher sehr aufwendigen Tests. Damit sind Unternehmen in der Lage, schnell qualitativ hochwertige Software zu entwickeln und auch Betrieb und Wartung deutlich zu optimieren.

DevOps ist auch eine „Denke“

Methodik und Technik sind aber nicht alles. Ein DevOps-Ansatz gelingt nur, wenn sich auch die Kultur wandelt. Entwicklung und Betrieb müssen eng und respektvoll zusammenarbeiten, Verantwortung lässt sich nicht auf Kollegen abwälzen.

Auch Arbeitsweise und Kompetenzprofile ändern sich. Mitarbeiter brauchen mehr Know-how: Prinzipiell muss jeder in der Lage sein, alle eingehenden Requests eigenständig zu bearbeiten. Und dafür geradestehen, dass der Code auch leicht wartbar ist.

Wenn diese Voraussetzungen erfüllt sind, können Unternehmen eine wirklich „agile“ IT realisieren – und die Vorteile von DevOps ausschöpfen.

Titelbild: © Imagentle/Shutterstock