Mit Agile Operations und Continuous Delivery zur modernen IT DevOps: Gemeinsam stark!

Autor / Redakteur: Julian Totzek-Hallhuber * / Florian Karlstetter

Schon seit den ersten Tagen der Informationstechnologie schwelt ein Konflikt zwischen Software-Entwicklern und IT-Verantwortlichen. DevOps birgt das Potenzial, ihn zu lösen.

Anbieter zum Thema

Mehr als nur ein Hype: dem Thema DevOps kommt gerade in hybriden Cloud-Umgebungen eine immer bedeutendere Rolle zu.
Mehr als nur ein Hype: dem Thema DevOps kommt gerade in hybriden Cloud-Umgebungen eine immer bedeutendere Rolle zu.
(Bild: © scandinaviastock - Fotolia.com)

Zahlen lügen nicht: Mehr als 25 Prozent der 2.000 größten Unternehmen der Welt organisieren ihre Software-Entwicklung mittlerweile nach den Prinzipien von DevOps – so zumindest eine Schätzung der Branchenanalysten von Gartner. Die Zeiten, in denen das merkwürdige Kofferwort aus „Development“ und „Operations“ belächelt wurde, sind also vorbei. Im Gegenteil – immer mehr Unternehmen springen auf den fahrenden DevOps-Zug auf. Sie versprechen sich davon kürzere Entwicklungszeiten, häufigere Releases und höherwertige Software.

Entwicklung und IT-Betrieb im Streit

Worum genau geht es bei DevOps? Ausgangspunkt ist ein in vielen Unternehmen schwelender Konflikt. Die Streitparteien: Software-Entwicklung und IT-Betrieb. Gemäß ihrer Aufgabengebiete sollten diese beiden Unternehmensbereiche eigentlich an einem Strang ziehen – die Entwicklung schreibt die Anwendungen, der IT-Betrieb kümmert sich anschließend um deren Bereitstellung für den Endnutzer. Die beiden Abteilungen beurteilen ihre Arbeit jedoch nach abweichenden Qualitätsmaßstäben, was für häufige Konflikte sorgt.

Entwickler sehen sich in der Regel dem Druck ausgesetzt, neue Anwendungen und Funktionen in möglichst kurzer Zeit zu realisieren. Features, die in der Software der Konkurrenz noch fehlen, gelten als wichtiges Verkaufsargument. Schnelle Releases sind deshalb das A und O. Der IT-Betrieb hingegen steht vor der Aufgabe, die zuverlässige Verfügbarkeit von Anwendungen sicherzustellen. Aus diesem Grund drängt er darauf, nur möglichst sichere und fehlerfrei lauffähige Releases in die freie Wildbahn zu entlassen. An diesen grundverschiedenen Prioritätensetzungen entzündet sich der Konflikt.

Entwickler und IT-Verantwortliche treten sich häufig unter Zeitdruck gegenüber, zum Beispiel beim Deployment eines neuen Releases oder wenn es zu einem Serverausfall gekommen ist. Die Schuld an Problemen wird dann zumeist dem jeweils anderen zugeschoben – das „Blame-Game“ beginnt. Schuldzuweisungen kosten Zeit, tragen aber nicht zur Lösung bei. Sie sorgen lediglich dafür, dass sich die Beziehungen zwischen den beiden Abteilungen noch weiter verschlechtern. DevOps tritt an, diesen Missstand zu beheben. Oberstes Ziel ist, der Zusammenarbeit zwischen Entwicklung und IT-Betrieb einen neuen institutionellen Rahmen zu geben.

Zusammenarbeit und Automatisierung

Regelmäßiger Austausch, gegenseitige Weiterbildung sowie die Verpflichtung beider Seiten auf gemeinsame Ziele und Werte – das sind die grundlegenden Maßnahmen, die für ein produktiveres Arbeitsklima sorgen sollen. Interdisziplinäre Experten agieren dabei als personelle Schnittstelle zwischen den Abteilungen, feste Prozesse und Vorgehensweisen systematisieren die Zusammenarbeit und machen sie berechenbarer.

In einem zweiten Schritt wird dann die Toolchain optimiert: Hier geht es um größtmögliche Automatisierung. Besonders die Qualitätskontrolle und Fehlersuche können weitgehend in die Hände entsprechender Technologien gelegt werden. Die Anwendungssicherheit liefert hier das beste Beispiel: Im DevOps-Umfeld beginnt sie mit dem White-Box-Testing, auch bekannt als Static-Application-Security-Testing (SAST). Dabei wird der von den Entwicklern geschaffene Programmcode automatisiert auf Fehler und Versäumnisse überprüft, etwa auf mangelnde Maskierung von Benutzereingaben. Um darüber hinaus auch Laufzeitprobleme aufzuspüren, beginnen anschließend sogenannte Black-Box-Tests, oft als Dynamic-Application-Security-Testing (DAST) bezeichnet. Black-Box-Technologien imitieren das Vorgehen von Cyberkriminellen, die Anwendungen automatisiert auf Schwachstellen abklopfen, indem sie zum Beispiel Webformulare mit schädlichen Daten befüllen.

Das dritte Tool im Bunde ist Runtime-Application-Self-Protection (RASP). RASP wird direkt in die Runtime-Umgebung der Software integriert, nimmt unmittelbaren Einblick in die Anwendungslogik und kann Angriffe somit wesentlich zuverlässiger erkennen und abwehren, als etwa traditionelle Firewalls dies könnten. So erstreckt sich die IT-Sicherheit schließlich über den gesamten Entwicklungszyklus der Software, was ihre Schlagkraft erhöht. Die Automatisierung führt außerdem dazu, dass strenge Sicherheitsrichtlinien nicht länger als Hemmschuh für schnelle Releases wahrgenommen werden müssen.

Der IT-Betrieb als Flaschenhals?

In den Augen mancher Kritiker ist DevOps ein Versuch, den Machtkampf zwischen Entwicklung und Betrieb endgültig zugunsten der Entwickler zu entscheiden. Der Betrieb soll sich an das Tempo der Entwicklung anpassen, seine eigenen Qualitätsmaßstäbe über Bord werfen und in Zukunft ganz im Sinne der Anforderungen des Developments arbeiten. Tatsächlich aber wurde die DevOps-Bewegung nicht von Entwicklern ins Leben gerufen, sondern von einer Gruppe, die vor allem aus Mitarbeitern des IT-Betriebs bestand. Auch viele Maßnahmen, die im Rahmen von DevOps ergriffen werden, offenbaren einen klaren Fokus auf die Herausforderungen des Betriebs.

Tatsächlich hat sich mit dem Umstieg auf agile Software-Entwicklung in vielen Unternehmen der IT-Betrieb in einen Flaschenhals verwandelt. Methoden wie Scrum oder Kanban sorgen für laufende Interaktion zwischen Auftraggebern und Entwicklern; Release-Zyklen werden möglichst kurzgehalten. Die meisten Prozesse nehmen somit an Fahrt auf, einzig der Betrieb bleibt bei seiner alten Geschwindigkeit und droht alle anderen auszubremsen. Die „letzte Meile“ – Deployment und Betrieb – muss deshalb ebenfalls reformiert werden. Auch hier schafft DevOps Abhilfe, etwa durch Konfigurationsmanagement und automatisiertes Deployment. Agile Methoden werden verstärkt auf den IT-Betrieb übertragen.

Julian Totzek-Hallhuber ist Solution Architect bei Veracode.
Julian Totzek-Hallhuber ist Solution Architect bei Veracode.
(Bild: Veracode)

DevOps: Mehr als nur ein Hype

DevOps hat das Rad nicht neu erfunden. Es greift Ansätze auf, die unter anderen Schlagwörtern längst bekannt sind: Agile Operations und Continuous Delivery sind nur zwei der zugrundeliegenden Ideen. Die große Leistung der DevOps-Bewegung bestand jedoch darin, Entwickler und IT-Verantwortliche gleichermaßen mit ins Boot geholt und die agilen Methoden um eine zwischenmenschliche Komponente ergänzt zu haben. Entstanden ist ein Erfolgsmodell, das in immer mehr Unternehmen Fuß fassen wird.

* Julian Totzek-Hallhuber ist Solution Architect bei Veracode

(ID:44359655)