Business-IT
02.05.2016
Lösungsansatz mit Toppriorität
1. Teil: „Endlich agil dank DevOps“

Endlich agil dank DevOps

DevOpsDevOpsDevOps
Imagentle / Shutterstock.com
com! professional sprach mit Andreas Gerst, CTO und Vice President Sales bei CA Technologies, über die Notwendigkeiten der digitalen Transformation.
Andreas Gerst ist CTO und Vice President Sales bei dem Enterprise-Software-Konzern CA Technologies in München. Im Gespräch mit com! professional erklärt er, warum er sich sicher ist, dass die Verschmelzung von Development und Operations, kurz DevOps, die einzige Chance ist, im disruptiven Wettbewerb zu bestehen.
com! professional: Momentan gibt es in Deutschland einen ansteigenden Hype zu einem eigentlich gar nicht mehr so neuen Thema: DevOps. Worum geht’s dabei?
  • Andreas Gerst, CTO und Vice President Sales des Enterprise-Software-Konzerns CA Technologies, Deutschland.
    Quelle:
    ca
Andreas Gerst: DevOps ist aus meiner Sicht eine Methode, Entwicklung und Operations so zu verbinden, dass die gesamten Durchlaufzeiten von neuen oder veränderten Applikationen extrem verkürzt werden, und zwar vom Anfang der Entwicklung bis in den Betrieb. Dabei bleibt eine hohe Qualität gewährleistet. DevOps löst somit entscheidende Pro­blemstellungen: Wie kann ich ein Feature schnell umsetzen? Wie kann ich einen Bug schnell fixen – mitsamt den notwendigen Tests? Das Ziel selbst ist nicht neu. Mit DevOps wird jetzt aber ein Ansatz gefahren, der Technologie und Organisation kombiniert.
com! professional: Stichwort verkürzte Entwicklung: Bedeutet das im Endeffekt, dass DevOps eine Notwendigkeit der digitalen Transformation ist?
Gerst: Genau. Man sieht es ja überall: Die Business-Modelle richten sich immer mehr auf das Digitale aus. Es ist also viel wahrscheinlicher, dass ein Kunde mit einem Unternehmen über einen digitalen Kanal interagiert als über einen Menschen in einer Filiale. Das heißt, die digitalen Kanäle werden immer wichtiger. Das gilt für jedes Business, egal ob es jetzt Automotive, Telco oder eine andere Branche ist. Und deshalb wird es umso wichtiger, über diese digitalen Kanäle auch schnell vernünftige Funktionen auszurollen – in einer guten Qualität und in einer guten Response-Zeit. Und das bedingt wiederum, dass man im gesamten Entwicklungsprozess schneller werden muss.
com! professional: Gibt es andere Definitionen von DevOps? Es scheint hier Interpretationsspielraum zu geben.
Gerst: Wenn man den gesamten Prozess in die drei Blöcke Entwicklung, Testing und Operations unterteilt, dann wird heute verstärkt nur über den ersten Teil, also das Development, gesprochen. Wir wollen aber unbedingt auch den Operations-Teil abdecken, den wir als Marketing-Begriff Agile Operations nennen. Da geht‘s darum, wie Operations noch viel intensiver in den End-to-End-Prozess eingebunden werden kann und wie sich Performance-, Fehler- und Monitoring-Daten dazu nutzen lassen, um automatisiert im Entwicklungsprozess besser zu werden.
Es gibt sicherlich noch weitere Definitionen von DevOps. Entscheidend ist, dass DevOps keine Technologie ist. Es gibt viele Werkzeuge, die den Prozess technologisch überhaupt erst ermöglichen und verbessern. Letztendlich ist es aber eine Kombination aus Maßnahmen, die ein Unternehmen für sich ergreift. So muss es erkennen, dass es DevOps benötigt, feststellen, ob es DevOps will, umbauen, um DevOps organisatorisch zu verankern, und dann Technologie einsetzen, um den gesamten Prozess zu automatisieren. Denn ohne Automatisierung geht es nicht.
2. Teil: „Qualitätssicherung bereits zu Beginn der Entwicklung“

Qualitätssicherung bereits zu Beginn der Entwicklung

com! professional: Was können sich Unternehmen von DevOps versprechen?
Gerst: Der Vorteil ist, sehr viel agiler zu sein, was die digitalen Schnittstellen hinsichtlich Entwicklung und Time-to-Market für neue Funktionalitäten und Fehlerbeseitigung angeht. Sprich: Der Mehrwert für den Kunden lässt sich deutlich schneller liefern. Die Kosten für neue Features sinken, weil sich diese Schnelligkeit in der Regel nur durch Automatisierung erreichen lässt. Und wird DevOps richtig umgesetzt, steigt auch die Qualität der Produkte.
com! professional: Wieso steigt durch Automatisierung am Ende die Qualität des Produkts?
Gerst: Das Schlagwort lautet Shift Left, eine Methode, bei der die Qualitätssicherung bereits zu Beginn des Entwicklungsprozesses involviert wird. So können Fehler und Probleme viel früher erkannt werden. Die Bugs tauchen nicht mehr erst in der letzten Stufe des Migrationstests oder gar erst in der Produktion auf, sondern schon bei den Programmierern.
com! professional: Wie sollten CIOs an das DevOps-Thema herangehen? Gibt es eine Blaupause für die perfekte, die schnellste oder die effektivste Umsetzung?
Gerst: Das ideale Modell ist natürlich ein sehr spannendes Thema. Ob es die eine Blaupause gibt, wie man es idealerweise macht, das kann ich nicht sagen. Was wir bei unseren Kunden sehen ist, dass DevOps meistens anhand bestimmter Projekte und Initiativen umgesetzt wird.
com! professional: Haben Sie ein Beispiel parat?
Gerst: Zu unseren Kunden gehört beispielsweise eine große Bank, die eine Homebanking-App herausbrachte, die allerdings von Kunden sehr schlecht bewertet wurde. Da eine Homebanking-App für eine Bank mittlerweile mit das Wichtigste überhaupt ist, landete das Problem beim Executive Level. Dort wurde nach Möglichkeiten gesucht, die App zu verbessern und schneller mit neuen Funktionen auszustatten. Entsprechend wurde ein Programm initiiert, das sich ausschließlich auf die Verbesserung der Homebanking-App fokussierte.
Bei der Prüfung stellte sich relativ schnell heraus, dass die App zwar problemlos um neue Features hätte erweitert werden können, die vielen daran angeschlossenen Backends aber die entsprechenden Funktionalitäten gar nicht bereitstellen konnten oder die Integration in der nötigen Geschwindigkeit schlicht überhaupt nicht möglich war.
com! professional: Wie ließ sich das auflösen?
Gerst: Der Kunde setzte ein Projektteam auf, dessen Kern aus dem Banking-App-Team bestand, in das aber Personen aus verschiedenen anderen Bereichen wie Operations, Netzwerk, Firewall und den Backend-Applikationen hineingezogen wurden. Das ist bereits der DevOps-Ansatz: die Leute zusammenbringen, miteinander sprechen lassen, Kontakt halten. Gleichzeitig gab es Zieldefinitionen, um alle zur Mitarbeit zu bewegen. Die Ziele der Firewall-Entwickler wurden etwa daran gemessen, wie groß die End-to-End-Durchlaufzeit von neuen Releases war. Die Einzelvorgaben wurden wiederum so aufeinander abgestimmt, dass alle Teilteams für dasselbe Ziel arbeiteten.
Dieser Projektansatz hat dann tatsächlich dazu geführt – unter Zuhilfenahme von Technologie wie Release Automation –, dass alle Projektbeteiligten zusammenarbeiteten. Die App wurde einerseits erheblich und entscheidend verbessert. Andererseits wurde die Zeitspanne für neue Features drastisch gesenkt. Vom Zeitpunkt der ersten Änderung am Code bis zum Operations verging nur noch eine Woche, inklusive Testing. Zuvor waren es vierzehn bis fünfzehn.
com! professional: Was wurde aus dem Projektwissen?
Gerst: Der Kunde übertrug es in eine Art Center of Excellence, hin und wieder auch DevOps-Center genannt. Das halte ich für das beste Modell.
com! professional: Gibt es weitere Beispiele?
Gerst: Das Schweizer Telekommunikationsunternehmen Swisscom, das eine Spezialfunktion für digitales Fernsehen entwickelt hat, wollte Änderungen, angefangen beim Front­end der App und im Web bis hin zu den Backend-Systemen, schnell durchziehen, um permanent neue Features herausbringen zu können. Dazu hat das Unternehmen nicht nur alle relevanten Leute in einem Team organisiert, sondern sie auch physisch in einem Gebäude konzentriert und sie dort intensivst zusammenarbeiten lassen.
com! professional: Lassen sich die Beispiele auf einen Nenner bringen?
Gerst: Will man erfolgreich sein, muss zunächst eine Sponsorship geschaffen werden. Das sehen wir bei unseren Kunden immer wieder. Es muss das Bewusstsein auf allen Unternehmensebenen vorhanden sein, bei der Entwicklung schneller werden zu wollen. Und dann müssen die Leute zusammenarbeiten und auch zur Zusammenarbeit gebracht werden. Sie benötigen einen Anreiz. Normalerweise redet der Firewall-Experte nicht mit dem Entwickler – auf jeden Fall nicht regelmäßig – und normalerweise sind sie auch nicht die besten Freunde. „Müssen wir wirklich schon wieder einen Port öffnen?“ und ähnliche Fragen sind nicht selten. Sie alle müssen ein gegenseitiges Verständnis füreinander aufbauen. Das geschieht automatisch, wenn sie permanent zusammenarbeiten.
com! professional: Das heißt, die Kommunikation ist die eigentliche Essenz des DevOps?
Gerst: Die Kommunikation in Verbindung mit entsprechenden Anreizen. Und wir haben mittlerweile Technologie, die dabei unterstützen kann. Release Automation, eines unserer Tools, konzentriert sich darauf, wie ein Stück Code, wenn es einmal im Developing getestet wurde, über die einzelnen Stages ins Operations gelangt. In Release Automation lässt sich ein Workflow mit allen Beteiligten definieren. Das ist zum einen vorteilhaft, um es tatsächlich schnell ablaufen zu lassen. Zum anderen ist es aber auch eine Single-Version-of-the-Truth. Das heißt, ich habe für mein bestimmtes Thema einen definierten Prozess, den sich jeder anschauen kann. So ist klar, was wann abzuarbeiten ist, etwa die Checkpoints und Meilensteine mit den jeweiligen Verantwortlichen.
Jeder weiß stets, was gerade passiert. Die ideale Basis zu einer vereinfachten Kommunikation.
3. Teil: „DevOps-Investitionen amortisieren sich sehr schnell“

DevOps-Investitionen amortisieren sich sehr schnell

com! professional: Fallen die Kosten zur Einführung von Dev­Ops signifikant aus?
Gerst: Es gibt eine Investition in Automatisierungs-Tools, Technologien, Schulungen und eventuell auch Gebäude. Die Erfahrung zeigt aber, dass sich diese Investition sehr schnell amortisiert. Ist das Testing nämlich einmal automatisiert, steigt die Produktivität der Mitarbeiter. Zudem fallen Kosten weg, die etwa zuvor durch Wartezeiten entstanden sind. Und wenn ich DevOps richtig durchführe, kann ich durch die ideale Test-Coverage viele Fehler schon frühzeitig abfangen. Sie schleichen sich also nicht bis in die Produktivversion ein und müssen somit auch nicht aufwendig im Nach­hinein korrigiert werden.
com! professional: Ist DevOps alternativlos? Bleibt nur diese Denkweise, um auf lange Sicht erfolgreich zu sein?
Gerst: Aus meiner Sicht ja. Das heißt aber nicht, dass jede Applikation im Unternehmen nach DevOps-Kriterien entwickelt werden muss. Es gibt sicherlich Bestandssysteme, die sich selten ändern. Diese müssen nicht unbedingt auf DevOps umgestellt werden. Anwendungen, die in direktem Kundenkontakt stehen, wo es um Wettbewerb geht, wo es um Businessmodelle geht, erfordern DevOps in der einen oder anderen Form. Schließlich geht es darum, agil genug zu sein, um in der Zukunft im Wettbewerb bestehen zu können. Selbst große, etablierte Firmen haben Angst vor den Internet-Start-ups, den Konkurrenten, die links und rechts hochkommen. Deshalb müssen sie genauso schnell neue Features liefern können wie die Start-ups. In den Kernbereichen, die für das Wachstum entscheidend sind, muss DevOps deshalb eingeführt werden.
com! professional: Gibt es eine kritische Masse bei der Teamgröße?
Gerst: Von der Denkweise her nicht, aber in der Praxis natürlich schon. Wenn ich den Entwickler und Tester in einer Person habe, der die Software eventuell auch noch betreibt, muss ich DevOps eher nicht einführen. Auch bei kleineren IT-Abteilungen, bestehend aus zwei, drei Leuten, lohnt es sich nicht. Die arbeiten meist ohnehin schon sehr eng und nach den Grundprinzipien des DevOps.
com! professional: Welche Hürden müssen bei der Umsetzung von DevOps genommen werden?
Gerst: Es gibt viele Hürden. Die größte ist das Beharrungsvermögen der einzelnen Abteilungen. Zwischen Entwicklung und Operations dominiert ein grundsätzlicher Konflikt, weil beide unterschiedliche Ziele verfolgen. Der Entwickler will neue Features herausbringen, Operations hingegen die Ausfallzeiten gering und die Stabilität hoch halten. Und dazwischen stehen die Tester, die von beiden Seiten unter Druck gesetzt werden. Das alles versucht wiederum der Release-Manager unter einen Hut zu bekommen. Es gilt deshalb, alle zu motivieren und davon zu überzeugen, dass DevOps der sinnvollere Ansatz ist.
com! professional: Schlägt der Versuch auch mal fehl?
Gerst: Ja, denn es muss gewollt und die erwähnte Sponsorship da sein. Bei einem unserer Kunden wurde etwa eine Dev­Ops-Abteilung eingeführt. Anstelle von Dev, Test und Operations gibt es dort jetzt aber Dev, Test, Operations und DevOps. Das Projekt hatte keinen wirklichen Durchgriff und es ist dort bis jetzt nicht gelungen, die einzelnen Leute zu überzeugen. In großen Unternehmen spielt immer auch Politik eine Rolle. Es geht um Macht und Einfluss. Diese Risiken muss man permanent unter Kontrolle haben. Das Center of Excellence muss deshalb auch permanent dabei sein, den Prozess in Gang zu halten. Sonst könnte es recht schnell wieder zerfasern. Die richtige Mitarbeiterführung ist also immens wichtig für DevOps.
com! professional: Wie weit oben auf der Agenda muss die Einführung von Dev­Ops stehen? Sofort umsetzen oder mittelfristig zumindest einplanen?
Gerst: Toppriorität – einfach aus dem Grund, weil es einen großen Anteil an der Wettbewerbsfähigkeit hat. Das Thema muss jetzt angegangen werden. Vielleicht nicht in allen Bereichen, aber definitiv dort, wo es zum Kundenkontakt kommt oder der Wettbewerb gefördert werden soll.
com! professional: Haben Sie Erfahrungswerte, wie lange die Einführung von DevOps dauert?
Gerst: Das hängt von der Firmenkultur und dem Management ab. Bei der von mir erwähnten Bank hat es zum Beispiel sieben Monate gedauert, die Entwicklungszyklen auf eine Woche zu reduzieren.
com! professional: Gehen wir mal davon aus, DevOps ist umgesetzt, alle sind zufrieden, die Innovationszyklen sind kurz, die Ziele erreicht. Was kommt danach?
Gerst: Ist DevOps erst eingeführt, werden die Anforderungen an neue Funktionalitäten und an neue Software weiter steigen. Es kommt das Internet of Things, durch das neue Datenkanäle angebunden werden müssen. Wir werden viel mehr Automatisierung in der Entwicklung sehen. Vielleicht wird’s dadurch Software geben, die hilft, intelligenteren Code zu erstellen.

Weitere Infos


mehr zum Thema