Interview mit Donovan Brown 11.04.2017, 08:53 Uhr

"Als Team erfolgreich sein oder scheitern"

Die Vorgehensweise DevOps einzuführen, ist keine Frage des Ob, sondern nur noch des Wann. Dieser Meinung ist Donovan Brown. Er ist einer der drei Keynoter der Developer Week und spricht zum Thema „Learn about Mobile DevOps with Xamarin, HockeyApp and Visual Studio Team Services“.
Jeder scheint eine andere Vorstellung davon zu haben, was DevOps sind. Wie sind sie deiner Meinung nach?
Donovan Brown: DevOps ist die Vereinigung von Menschen, Prozessen und Produkten, um eine kontinuierliche Wertschöpfung für Endnutzer zu ermöglichen. Ich habe die Begriffe in dieser Definition sehr bewusst gewählt. Ich sage Nutzen und nicht Software. Denn DevOps bedeutet nicht, nur eine Pipeline zu automatisieren, so dass wir Software schnell liefern können. Unser Ziel ist es, Nutzen zu liefern! Auch der Begriff Endnutzer wurde sehr sorgfältig gewählt. Der Nutzen, den wir produzieren, muss unsere Endnutzer erreichen. Wenn der Nutzen nur die Dev- und QA-Umgebungen erreicht und nicht auch den Endnutzer, dann machen wir es immer noch falsch. Es ist sehr wichtig zu erkennen, dass DevOps kein Produkt ist. Du kannst DevOps nicht kaufen und es installieren. DevOps ist nicht nur Automatisierung oder Infrastruktur als Code. DevOps sind Menschen, die einem Prozess folgen, der von Produkten ermöglicht wird, um unseren Endnutzern einen Mehrwert zu bieten.
Donovan Brown
ist Principal DevOps Program Manager bei Microsoft. Er ist verantwortlich für die DevOps-Vision über dem Team Foundation Server und den Visual Studio Team Services. Er ist der Mann im schwarzen Shirt und ihm liegt das Thema DevOps am Herzen, weil es "am heftigsten schmerzt". Bevor Donovan zu Microsoft kam, arbeitete er als Prozess-Berater und zertifizierter Scrum Master. Er ist um die Welt gereist und hat Firmen geholfen, Lösungen mithilfe von agilen Vorgehensweisen zu entwickeln. Er steht auf Entwicklertools und versucht Software in seine anderen Hobbies zu integrieren.
Auf deinem Blog schreibst du, dass du gern Auto fährst und Software entwickelst. Wo ist das "DevOps" darin?
Brown: Ich betreibe eine Website für mich und andere, die wie ich Autos lieben. Ich benutze DevOps Best Practices, um diese Website zu entwickeln und aufzusetzen.
Manchmal fühlt es sich an als wäre DevOps schon ein alter Hut. Würden Sie heute einem Unternehmen empfehlen, in diese Richtung zu gehen?
Brown: Ich sehe eine Zukunft, in der DevOps den gleichen Weg gehen wird wie Agile und Continuous Integration. Es wird etwas sein, über das wir früher einmal diskutiert haben, aber jetzt erwarten wir es. Aber ich denke, bis dahin ist es noch ein weiter Weg. Wir kratzen gerade mal an der Oberfläche, wenn es darum geht herauszufinden, mit welchen Produkten wir überzeugende DevOps-Pipelines aufbauen können. Viele Arten von Entwicklungsprojekten erfordern spezielle Tools, die erst noch gebaut und zu den Pipelines hinzugefügt werden müssen. Mobile etwa ist ein gutes Beispiel für eine DevOps-Pipeline, die spezielle Tests und Verteilungswege erfordert. Was mich jetzt beschäftigt, ist herauszufinden, was am meisten wehtun wird, wenn DevOps den Weg von CI geht.
Oft haben die Mitarbeiter in einem Unternehmen die Administratoren beschuldigt, Dinge noch schlimmer zu machen. Die Administratoren wiederum geben den Entwicklern die Schuld und die Entwickler lachen über die Wünsche der Mitarbeiter. Vor diesem Hintergrund: Glauben Sie, dass DevOps eine gute Idee ist?
Brown: Diese Frage zeigt genau, warum DevOps so wichtig ist. Denn DevOps ist dazu da, genau diese Probleme zu lösen. Mit mehr Kommunikation und mehr Automatisierung gibt es keinen Grund mehr, für etwas einen Schuldigen zu suchen. Es gibt keinen Zeigefinger mehr, weil man jetzt als Team erfolgreich ist oder zusammen scheitert.
Das hört sich danach an, dass es am Ende die Technik richten muss. Was sind denn die Hürden bei der Implementierung von DevOps?
Brown: Die Menschen. Menschen mögen oft keine Veränderung und DevOps können viel verändern! Aber die Leute müssen offen für den Wandel sein und die Vorteile verstehen. Der Prozess und die Produkte von DevOps sind ja noch relativ einfach zu implementieren. Der schwierige Part aber ist, die Menschen, die schon seit 20 Jahren Dinge auf die gleiche Weise tun zu überzeugen, etwas in Zukunft anders zu machen.
Gibt es eine Alternative zu DevOps? Oder ist das die einzige Möglichkeit, um auf lange Sicht erfolgreich zu sein?
Brown: Schon lange bevor jemand wusste, was DevOps ist, haben Leute Software entwickelt. Also gibt es natürlich Alternativen. Traditioneller Wasserfall wäre eine Möglichkeit. Allerdings bin ich der Meinung, dass es keine einzige andere Methode gibt, mit der Unternehmen in der heutigen Wettbewerbslandschaft konkurrenzfähig bleiben würden. Heute muss man so viel wie möglich automatisieren oder man wird einfach nicht mithalten können. Und man muss Feedback von seinen Nutzern haben und prüfen und darauf basierend seine Arbeit anpassen. Du musst die Verwendung deiner Applikation schon während der Produktion überwachen. Nur so stellst du sicher, dass du Nutzen lieferst.
Was kostet die Implementierung von DevOps?
Brown: Viele der Kosten sind keine Dollars oder Cents. Zeit ist der Kostenfaktor. Es kostet Zeit, die Kultur aufzubauen und die Prozesse zu ändern, die in einem Team vorherrschen. Aber es ist auf jeden Fall weit teurer, DevOps nicht zu implementieren. Denn: DevOps zu ignorieren obwohl es die Konkurrenz anwendet, wird dich aus dem Geschäft drängen – das wäre letztendlich der ultimative Preis, den man bezahlen müsste. Die Debatte darüber, ob DevOps implementiert werden soll oder nicht, ist vorbei. Entweder man implementiert DevOps oder man ist raus.
Wie sollen Unternehmen das DevOps-Thema angehen? Gibt es ein Universalrezept für die perfekte, die schnellste oder effektivste Implementierung?
Brown: Nein, es gibt kein Universalrezept, aber es gibt DevOps Best Practices. Ich würde empfehlen, dass jedes Unternehmen sich zunächst darauf konzentrieren sollte, wo der Schuh am meisten drückt und dort mit DevOps beginnen. Das ist besser als gleich das ganze Programm umsetzen zu wollen. Arbeite an dem, was dir am meisten weh tut und widme dich dann dem zweitgrößten Problem. Und sorge dafür, dass jedes Mal, wenn ein Entwickler Code eincheckt, dieser auch gebaut wird. Sobald man einen konsistenten Build hat, sollte dieser auf die Entwicklungs- oder Testumgebung verteilt werden. Danach muss man Wege finden, um automatisierte Tests hinzuzufügen und die Pipeline zu erweitern.
Die Developer Week findet vom 26. bis 29. Juni 2017 in Nürnberg statt. In der dreitägigen Konferenz und den halb- und ganztägigen Workshops vermitteln mehr als 150 Experten Wissen in den Themenwelten .NET, Web und mobile Softwareentwicklung in mehr als 200 Sessions.


Das könnte Sie auch interessieren