Fehler erlaubt: Vier Voraussetzungen für den Erfolg von DevOps

Eine schnellere Software-Entwicklung bei gleichzeitiger Verbesserung der Software-Qualität? Was sich nach konträren Zielen anhört, soll DevOps möglich machen. IT-Dienstleister Avision erklärt, welche Voraussetzung erfüllt sein müssen, damit die Umsetzung gelingt

 

Mit der Einführung von DevOps sind in den meisten Unternehmen hohe Ziele verbunden. Nicht weniger als eine schnellere Entwicklung von Software bei gleichzeitig steigender Software-Qualität wird angestrebt. Doch bevor Schluss ist mit gerissenen Deadlines, verbuggten Anwendungen und an den Wünschen der Nutzer vorbei entwickelten Features, sind in der Regel einige Veränderungen in der Unternehmenskultur notwendig, denn DevOps ist kein Tool, das einfach eingeführt wird, und kein Prozess, dem man schlicht folgen kann. Vielmehr steckt dahinter eine ganze Reihe von Prinzipien, die den Austausch und die Zusammenarbeit zwischen den Unternehmensbereichen Software-Entwicklung, IT-Betrieb und Qualitätssicherung verbessern. Die wichtigsten sind:

 

Fehler sind explizit erlaubt:

Der Erfolg von DevOps hängt entscheidend vom Umgang mit Fehlern ab. Statt nach Schuldigen zu suchen, müssen Fehler akzeptiert und als Chance für Verbesserungen verstanden werden. Nur so wird Lernbereitschaft gefördert und es entsteht das für den ehrlichen Austausch zwischen Software-Entwicklung, IT-Betrieb und Qualitätssicherung notwendige Vertrauen.

Kurze Release-Zyklen:

DevOps funktioniert am besten bei agilen Entwicklungsmethoden mit kurzen Release-Zyklen und der Chance, neue Ideen auszuprobieren. Das führt zwar zunächst zu mehr Fehlern, weshalb DevOps auch nicht für alle Anwendungsbereiche geeignet ist – in der Luftfahrt oder Medizintechnik, wo bereits kleine Fehler fatale Auswirkungen haben können, ist der Einsatz nur bedingt sinnvoll. Doch durch automatisierte Tests und stetige Rückmeldungen aus dem IT-Betrieb und der Qualitätssicherung werden Fehler schneller als in der klassischen Software-Entwicklung entdeckt und beseitigt. Dank der regelmäßigen Veröffentlichung neuer Software-Versionen gibt es bei Problemen zwei schnelle Lösungswege: die Rückkehr zu einem früheren, fehlerfreien Zustand (Rollback) und das Fixen des Fehlers mit einem Patch oder der nächsten Version (Fix-Forward).

Automatisierte Tests:

Da aktuelle Software meist zu umfangreich und komplex für manuelle Tests ist und für DevOps schnelles Feedback benötigt wird, ist eine Testautomatisierung unabdingbar. Dabei kommt es auf die Zusammenarbeit im DevOps-Team an, muss der IT-Betrieb (Ops) doch mögliche Fehlerquellen frühzeitig im Blick haben und an Entwicklung (Dev) und Qualitätssicherung kommunizieren, damit sie in den Testroutinen berücksichtigt werden.

Eigenverantwortung für die Entwickler:

Vorgesetzte und Kunden müssen die DevOps-Kultur fördern und unterstützen. Das bedeutet, dass sie schnelle Entscheidungen ohne lange Diskussionen und umfangreiche Abstimmungsrunden fällen beziehungsweise akzeptieren können. Und dass sie nicht alle Entscheidungen absegnen wollen, sondern Entwicklern eine Eigenverantwortung zugestehen. Tritt etwa beim Rollout einer Anwendung ein Fehler auf, muss zügig durch das DevOps-Team festgelegt werden, ob der Rollout abgebrochen wird oder weiterlaufen soll, um den Fehler später per Patch zu beheben.

„Anwender erwarten heutzutage von Software-Anbietern ein schnelles Bugfixing sowie regelmäßige Funktions- und Usability-Verbesserungen“, erklärt Nadine Riederer, CEO bei Avision. „DevOps ist perfekt geeignet, diesen hohen Anforderungen gerecht zu werden. Kleinere Entwicklungsschritte und automatisierte Tests erlauben es, Fehler leichter zu entdecken, schneller zuzuordnen und zügig zu beheben, und das sogar ohne große Fehlersuche und aufwändige User-Tests.“

Ähnliche Beiträge

Presse

Vier Tipps gegen das Coding-Chaos

Ein Quellcode wie Kraut und Rüben, unverständliche Kommentare und kein Überblick über die eingesetzten Dependencies: Ohne Standards und Struktur beim Programmieren bricht schnell das Chaos

Beitrag lesen