2021/4 | Fachbeitrag | Knowledge Sharing

Erfolgreiches DevOps führt zu mehr Kundenzufriedenheit

Agilität und Kundenorientierung weiter gedacht führen zu DevOps. Die neue Methodik erfordert ein Umdenken, erhöht aber richtig eingesetzt die Produktivität und Kundenzufriedenheit.

Bildquelle: (C) Dirk Wouters / Pixabay

Agile Software-Entwicklungsmethoden wie Scrum und Kanban gehören heute zum Industriestandard. Nach anfänglicher Skepsis haben sie sich auf breiter Front durchgesetzt, weil sie schnellere Release-Zyklen ganz nahe an den Anforderungen des Kunden ermöglichen. Dadurch steigt die Qualität der Software-Services und damit die Zufriedenheit der Kunden. Der nächste logische Schritt heißt DevOps, ein Kunstwort aus Development und IT Operations. Auch hier überzeugen die Vorteile, die die Methodik bietet. Nur wenn die beiden ehemaligen "Silos", die Software-Entwicklerteams und IT Operations, eng zusammenarbeiten, werden sie für ihre Kunden die bestmögliche Lösung entwickeln. DevOps-Teams sind im Durchschnitt 1,4 Mal innovativer als getrennt voneinander arbeitende Geschäftseinheiten (siehe 2019 Global Developer Report von GitLab). Auch Integrations- und Akzeptanztests, die in rund der Hälfte der Unternehmen zu Verzögerungen und damit zu einer drohenden verspäteten Auslieferung führen, lassen sich mit DevOps besser meistern. Insbesondere Integrationstests sind essenziell für eine vollständige Automatisierung des Deployment-Prozesses.

Cloud-Services mit extrem kurzen Release-Zyklen, Container und der Aufstieg von Managed Kubernetes zum Beispiel bei den Public-Cloud-Anbietern Amazon, Microsoft und Google zwingen Unternehmen dazu, alte Muster aufzubrechen und Teams zu bilden, die alle benötigten Rollen und Fähigkeiten abdecken und so die neue Realität besser abbilden. Der Betrieb der Software als Service gehört heute, zusammen mit Development und Deployment, direkt zur Wertschöpfungskette und bestimmt maßgeblich über den Markterfolg der Lösung. Denn eine Anwendung beziehungsweise ein Web-Service haben schließlich nur Wert, wenn sie performant und problemlos im produktiven Einsatz laufen.

Cross-funktionale Teams bilden

In der alten Welt konzentrierte sich die Software-Entwicklung auf die Anwendung, innovative, neue Features und eine kurze Time-to-Market. Ihr Job war nach der Ablieferung des neuen Releases erledigt. Der Fokus der Administratoren lag danach auf der Infrastruktur, auf 24/7-Verfügbarkeit, hoher Performance, kurzen Latenzzeiten und Stabilität. Die "Wall of Confusion", das heißt der Verantwortungsübergang zwischen beiden Geschäftseinheiten wird in der neuen Welt mit Herausforderungen wie Continuous Delivery und Continuous Integration aber zunehmend obsolet, ja hinderlich. Starres Silodenken würde dazu führen, dass eine Geschäftseinheit die Versäumnisse der anderen zeit- und kostenintensiv ausbügeln muss. Je später das Feedback, desto größer die Schleife und desto teurer die Korrektur und Anpassung.

Veränderungen für Devs und Ops

DevOps ist jedoch kein Selbstläufer und verlangt Development und IT Operations einiges ab. Software-Entwickler werden sich stärker mit der Konfiguration von CI/CD-Pipelines und Containern, mit Fragen der IT-Sicherheit (DevSec) und mit der Auslieferung neuer Releases beschäftigen müssen. Neu für das DevOps-Team werden Infrastructure as Code, der Umgang mit der Versionsverwaltung und automatisierte Tests sein. Der IT-Dienstleister ConSol empfiehlt ein methodisches Vorgehen nach bewährten Best Practices.

Wie bei jedem Projekt startet man auch bei einem DevOps-Projekt mit einer klaren Bestandsaufnahme der Ist-Situation. Daran schließt sich die Auswahl der Projektwerkzeuge und des initialen DevOps-Technologie-Stack an. Standardisierte Projektwerkzeuge reduzieren Komplexität und erleichtern die Zusammenarbeit zwischen Entwicklung und Administration.

Danach wird über die Zusammensetzung des DevOps-Kernteams entschieden. Verfügen alle Mitglieder des Teams über die Qualifikation, die sie zur Erfüllung ihrer Aufgabe benötigen? Sind Schulungen zum Aufbau der erforderlichen Skillsets sinnvoll? Dieser Aspekt wird bei der Einführung von DevOps gerne vernachlässigt.

Klare, messbare Ziele definieren

Klar definierte KPIs für das DevOps-Team erleichtern die Fortschrittskontrolle, führen zu einer kontinuierlichen Verbesserung und erhöhen so die Produktivität und die Kundenzufriedenheit. Zu den Business-relevanten KPIs zählen unter anderem: die "Lead Time", das heißt die Zeit vom Start der Entwicklung eines Features bis zu dessen Fertigstellung und Deployment sowie die Häufigkeit und Dauer der Deployments. Hinzu kommen Performance-Parameter wie der Daten-Durchsatz und die Antwortzeiten im produktiven Einsatz sowie technische Parameter wie Speicherbedarf und Prozessorauslastung. Hilfreich ist zudem, ein Lastprofil des ausgerollten Service zu erstellen mit dem Ziel, eine optimale Performance und möglichst kurze Latenzzeiten zu erreichen und um unerwartete Über- und Unterlast zu erkennen, um dann darauf reagieren zu können (zum Beispiel durch Hochskalieren des Clusters). Fehler beziehungsweise Unzulänglichkeiten im Betrieb sollten so schnell wie möglich erkannt und behoben werden.

Die Erfahrung hat gezeigt, dass eine auch vom Top-Management getragene gemeinsame DevOps-Vision den Erfolg von DevOps-Projekten beflügelt. DevOps ist nicht nur eine neue Methodik zur Verbesserung von Prozessen, ihr muss auch eine neue Unternehmenskultur zugrunde liegen. Entwickler und Administratoren müssen jeden Tag enger zusammenarbeiten und miteinander kooperieren. Dabei hilft auch räumliche Nähe. DevOps-Teams sollten außerdem ihr Projekt weitgehend selbst organisieren und eigene Budget-Verantwortung übernehmen.

Abbildung: DevOps überwindet die Silo-Grenzen zwischen Development und IT Operations. Die neue Methodik schafft cross-funktionale Teams, die die Wünsche des Kunden schneller und besser erfüllen.

DevOps-Praxistipps

Agilität weiter gedacht führt zwangsläufig zu DevOps. Unternehmen stoßen bei der praktischen Einführung der neuen Methodik jedoch häufig auf unterschiedliche Herausforderungen. So ist es ratsam, die Komplexität einer Anwendung, die mit DevOps entwickelt und bereitgestellt werden soll, im Blick zu behalten: Je komplexer die Anwendung, desto schwieriger gerät die Einführung von DevOps. Wie komplex eine Anwendung ist, lässt sich unter anderem über die Anzahl und Komplexität der Schnittstellen messen.

Auch für die Integration von Legacy-Anwendungen ist in der Regel eine sowohl kosten- als auch zeitintensive Migration nötig. Hinzu kommt, dass Legacy-Anwendungen teilweise unzureichend dokumentiert oder die Dokumentationen veraltet und falsch sind.

Besonderes Augenmerk sollte außerdem auf ein gutes Verständnis der Business-Prozesse, die mit der Anwendung interagieren, und auf eine adäquate Testabdeckung dieser Business-Prozesse gelegt werden. Zur Durchführung von automatisierten Tests für die Qualitätssicherung in der CI/CD- Pipeline sind unter anderem die Open Source Frameworks Citrus und Sakuli 2 von Consol eine ausgezeichnete Wahl. Nach erfolgreich absolvierten Tests besteht das Ziel darin, das neue Release automatisch auszurollen und in die bestehende IT-Landschaft zu integrieren, ohne dass die Mitarbeiter des Unternehmens ihre Arbeit unterbrechen müssen. Das Ziel heißt Zero Downtime.

Die Einführung von DevOps mag anfangs mit der Aufgabe alter Gewohnheiten und mit Umdenken verbunden sein. Aber es lohnt sich, diese Herausforderungen anzunehmen. Mit DevOps steigern Unternehmen ihre Produktivität, modernisieren und automatisieren ihre IT-Infrastruktur schneller, sind insgesamt innovativer und werden dafür mit zufriedeneren Kunden belohnt.



Der Autor:

Dr. Christoph Ehlers ist Technical Lead Software Engineering beim IT-Dienstleister Consol.

 

 

 

Diese Artikel könnten Sie auch interessieren

Konzeptgerede revisited: Warum nutzlose Pläne nützlich sind

"Planung ist das halbe Leben!" Das Sprichwort zeigt die Bedeutung, die Planung zukommt. Ohne zu planen könnte kein Unternehmen prosperieren, kein Militär Manöver abhalten und keine Verwaltung funktionieren. Dennoch ist Planung oft negativ besetzt. Dafür gibt es Gründe. Man denke nur an die absurd unrealistischen Jahresplanvorgaben in der Sowjetunion. Der Literat Berthold Brecht (1928) ...

Weiterlesen

Der digitale Arbeitsplatz mit Google Workspace

WISSENplus
Das Jahr 2020 hat viele Überlegungen enorm beschleunigt, die sich Organisationen über die Zukunft der Arbeit gemacht haben. Über Nacht mussten Unternehmen ihre Software einem Härtetest unterziehen. Nicht wenige stellten dabei fest, dass ihre Lösungen für die neue Situation nicht gut ausgelegt waren: nicht skalierbar, zu unsicher, zu unflexibel. Und auch nach der Pandemie werden diese Themen uns ...

Weiterlesen

Checkliste: So finden Unternehmen Digitalisierungsbremsen

Bei der Digitalisierung konzentrieren sich Unternehmen meist auf Prozesse und Geschäftsmodelle, die durch neue Technologien möglich werden. Praktisch jedes Unternehmen, das bereits länger am Markt agiert, besitzt aber Softwareanwendungen aus früheren Digitalisierungsphasen. Sie sollten auf den Prüfstand gestellt und gegebenenfalls modernisiert werden. Ansonsten können diese Altanwendungen die gegenw...

Weiterlesen

Mode-Großhändler Mairinger digitalisiert Rechnungsfreigabe-Workflows

Die Mairinger Holding vertreibt Modeartikel der Marke Marc O'Polo in über 15 Filialen sowie über einen Online-Shop. Hierbei fallen hierbei jährlich rund 100.000 Warenrechnungen, Belege sowie Kassenabschlüsse aus den Filialen zur Bearbeitung an. Mit einer ECM-/DMS-Lösung gelang die erfolgreiche Digitalisierung des gesamten Eingangsrechnungs-Workflows. Dank der Umstellung auf digitale Workflows und...

Weiterlesen

Digitale Kommunikation: 10 Tipps für die Implementierung

WISSENplus
Dezentrales und flexibles Arbeiten etabliert sich immer mehr. Die neuen Arbeitsmodelle erfordern ein Umdenken in der Zusammenarbeit und daraus resultierend eine Digitalisierung der internen Kommunikation. Um einen durchgängigen Informationsaustausch für alle Mitarbeiter sicherzustellen und die Produktivität im Team hochzuhalten, bedarf es passender digitaler Kommunikations- und Kollaborationstools. Die ...

Weiterlesen

Managed AI – damit KI-Services zuverlässig funktionieren

KI-basierte Applikationen bieten viele Vorteile. Sie entlasten von repetitiven Aufgaben, beschleunigen Prozesse und erhöhen deren Effizienz. Was dabei viele vergessen: KI-Projekte verlaufen phasenweise. Zunächst ist zu analysieren, ob sich vorhandene Daten, Systeme und Prozesse für die Umsetzung des favorisierten Use Case eignen. Dann gilt es, die Anforderungen an den Prototyp zu definieren, ein Konzept ...

Weiterlesen

Der hausgemachte Fachkräftemangel

WISSENplus
Ein subjektiv erlebter Fachkräftemangel begleitet uns bereits seit längerem. Die Ursachen dafür liegen teilweise im Markt, aber auch in der Art und Weise, wie Unternehmen ihre Prozesse gestalten und mit Bewerbern umgehen. Diese berichten auch 2021, dass sie von Unternehmen außer einer Standardmail, die den Eingang der Unterlagen bestätigte, nie wieder etwas gehört haben. Einfacher kann sich ein ...

Weiterlesen