≡ Menu

DevOps-Interview: „Kluft zwischen Entwicklung und Betrieb schließen“

Foto: Jumping in the sunset von thriol (Lizenz: CC-BY-NC)

Mehr oder weniger zufällig bin ich auf eine Bewegung gestoßen, die Entwicklung (Development) und Administration (Operations) näher zusammenbringen will und damit glänzend zu meiner aktuellen Tätigkeit passt: DevOps.

Matthias Marschall war so freundlich, einige grundsätzliche Fragen zu DevOps zu beantworten.

Matthias ist im Web-Umfeld tätig und befasst sich mit dem Thema, seit er vor acht Jahren neben der kompletten Entwicklung einer großen Web-App auch für den Betrieb Verantwortung übernommen hat. Er lehrt Agile Methoden in Augsburg, bloggt über Agile Web Operations und will mit Dan Ackerson Techniker bei der Umsetzung von DevOps unterstützen.

DevOps sieht sich selbst als Bewegung. Wie kam es dazu?
Viele der Ideen, die jetzt unter dem Begriff DevOps zusammengefasst werden, gibt es natürlich schon lange. Seinen Anfang als Bewegung hat DevOps mit den ersten DevOpsDays genommen, die von Patrick Debois organisiert wurden.
Was sind eure Ziele?
Das Ziel von DevOps ist es, die Kluft zwischen Entwicklung und Betrieb zu schließen, um so den Anforderungen an immer schnellere und flexiblere Änderungen gerecht werden zu können — vor allem bei Web Applications, aber nicht nur. Es geht im Endeffekt darum, die Grundideen von agilen Methoden auch auf Operations auszuweiten und somit einen nahtlosen Prozess von der Entwicklung hin zum Nutzer zu schaffen. Denn erst wenn der Nutzer was von der entwickelten Software hat, ist man wirklich erfolgreich.
Wie groß ist die Bewegung mittlerweile?
Das ist natürlich schwer zu sagen. Eric Knorr hat in Devops and the great IT convergence geschrieben:

According to a friend in the space, all you need to do is walk through Silicon Valley and shout, “Devops,” and 300 people will run to a meetup.

Und auch auf den DevOpsDays kommen immer wieder weit über 100 Leute zusammen.

Als Entwickler sehe ich hier Operations in der Bringschuld. Bei uns sind die Administratoren diejenigen, die sich zurückziehen und kaum Präsenz auf Meetings zeigen, während ich mir Feedback aus Projekten abhole und mit Kollegen in Kontakt stehe. Wer muss den ersten Schritt machen?
Es ist sicher so, dass in der Entwicklung agile Ideen und Vorgehensweisen schon weiter verbreitet sind als in Operations. Viele Administratoren bekämpfen Änderungen noch und wollen ein möglichst stabiles System schaffen. Diese Denkweise ist nicht mehr zeitgemäß. Alle müssen zusammen arbeiten, um möglichst schnell Änderungen an Kunden auszurollen, natürlich ohne Operations zu gefährden.

Matthias Marschall


Es hilft natürlich nicht drauf zu warten, dass irgend jemand den ersten Schritt macht. Jeder, der verstanden hat, um was es bei Agile und DevOps geht, sollte bemüht sein, alle Beteiligten mit ins Boot zu holen.
Ausgehend von den üblichen Gräben zwischen Entwicklern und Administratoren: Wie lange dauert es, bis DevOps im Unternehmen etabliert sind?
Tiefgreifende kulturelle Änderungen dauern Monate oder sogar Jahre bis sie sich im Unternehmen etabliert haben. Je weniger es alle Beteiligten gewohnt sind zusammen zu arbeiten, desto länger.
Es ist wichtig, dass man Vertrauen zwischen Entwicklern und Administratoren schafft.
Welche konkreten Maßnahmen helfen dabei?
Zunächst ist ein gegenseitiger Zugriff auf die Ressourcen hilfreich: Zugriff für die Entwickler auf die Produktionsmaschinen, um Fehler direkt analysieren zu können, und für die Administratoren auf das Source Code Repository und die Build Tools, damit sie selbst Testbuilds deployen können, um sich damit vertraut zu machen. QA sollte von Anfang an in den Entwicklungsprozess mit eingebunden sein — QA kann z.B. schon Testszenarien für User Stories als Akzeptanzkriterien definieren, lange bevor die Entwicklung anfängt. Entwickler können in die Bereitschaftsdienste mit aufgenommen werden. Und nicht zuletzt Transparenz herstellen, indem man Metriken und Planungen offenlegt.

Natürlich ist da die eigene Kreativität gefragt. Es kommt sehr genau auf das Umfeld und die aktuelle Situation an.

Es gibt Vorwürfe, DevOps sei elitär und eure Ideen nur alter Wein in neuen Schläuchen. Wie geht ihr mit solcher Kritik um?
Wie gesagt, sind natürlich viele Ideen, die jetzt als DevOps bezeichnet werden ganz und gar nicht neu. Was neu ist, ist, dass wir versuchen, ein breiteres Verständnis für die Dringlichkeit der Zusammenarbeit zu erzeugen und Wege zu sammeln und aufzuzeigen, um schneller bessere Software zum Kunden zu bringen. So in dieser Gesamtheit hat das meines Wissen noch keiner versucht.

Vielen Dank für die ausführlichen Antworten!

Comments on this entry are closed.

  • Patrick 16. September 2011, 15:12

    Im Grunde arbeitet doch jedes kleine junge Start-Up nach diesem Prinzip. Zuerst machen die Entwickler dort das Development und dann wird die Anwendung deployed und man geht in den Operations-Betrieb über. Parallel wird natürlich weiter entwickelt.

    Wie so oft funktioniert das aber dann nur im kleinen Rahmen. Sofern aber individuelle Kundensoftware zum Geschäftsmodell gehört, wird es mit der “DevOps”-Tätigkeit eine kaum mehr durchführbare Herausforderung, die dann oft in Überstunden und Burn-Out endet. Und da kommt dann einer auf die “absolut geniale und neue” Idee, ein dediziertes Operations-Team zu installieren, damit wieder mehr Zeit für die Entwicklung da ist.

    Von daher: Ja, in der Theorie funktioniert es. In der kleinen Start-Up-Welt funktioniert es. Aber sofern man in das Enterprise-Umfeld wechselt (tolles Buzzword), geht es nicht mehr. Und gleichzeitig steigen auch die fachlichen Anforderungen an die Entwickler und die Operations. Es benötigt ab hier Spezialisten für den einen und den anderen Bereich.
    So zumindest meine persönliche Erfahrung :)

  • Patrick 16. September 2011, 15:13

    Oder habe ich es falsch verstanden?

  • Hein Bloed 17. September 2011, 10:53

    @Patrick

    Ja, Du hast es falsch verstanden :-)

    Bzw. hast Du die falschen Schlüsse aus Deinen Beobachtungen gezogen. Natürlich lässt sich DevOps auch in größeren Unternehmen etablieren. Es dauert nur länger (insbesondere, wenn vorher alles in Silos organisiert war). Google ist sicher kein Startup mehr. Und dort machen z. B. die Entwickler auch Bereitschaft…

  • André 19. September 2011, 08:58

    Patrick, ich denke auch, du bringst einiges durcheinander.

    Zunächst mal sind die tiefen Gräben zwischen Entwicklung und Administration fast ausschließlich ein Problem größerer Unternehmen.

    Das Ziel von DevOps ist nicht, Spezialisierung aufzulösen. Es wurde lediglich erkannt, dass agile Methoden in der Softwareentwicklung verbreitet sind und Vorteile bringen. Diese Vorteile gehen aber verloren, noch bevor sie Nutzen für den Kunden bringen, wenn notwendige Änderungen von Operations bekämpft werden.

    Genau da setzt DevOps an: Die Abteilungen müssen enger zusammenarbeiten.

  • Robert 25. September 2011, 11:29

    Vielleicht solltest ihr dann etwas genauer erklären, was denn nun diese DevOps sein sollen. Denn mir ist es nach dem Lesen des Interviews auch nicht ganz klar geworden.