DevOps in der IT angekommen Site Reliability Engineering verwirklicht agiles Paradigma

Autor / Redakteur: Dr. Dietmar Müller / Stephan Augsten |

Vor einigen Jahren machten wir auf einen neuen Trend aufmerksam, der sich anschickte, die IT (wiedermal) umzukrempeln: DevOps. Nun ist er in der Praxis angekommen, berichtet Anna-Lena Schwalm vom Analystenhaus Crisp Research und macht dies nicht zuletzt an einem neuen Trend fest: Site Reliability Engineering.

Anbieter zum Thema

Bei DevOps entwickeln im Prinzip Fachexperten aus den Abteilungen und Programmierer gemeinsam.
Bei DevOps entwickeln im Prinzip Fachexperten aus den Abteilungen und Programmierer gemeinsam.
(Bild: gemeinfrei, www_darkworkx_de / Pixabay)

Als Nachfolger der „agilen Softwareentwicklung“ stellte DevOps die Softwareentwicklung in Unternehmen in den Mittelpunkt der Aufmerksamkeit und erklärte, dass Wettbewerbsfähigkeit nur gegeben sei, wenn Mitarbeiter und Kunden schnell mit neuen Anwendungen versorgt werden. „Insbesondere IT-Abteilungen stehen heute in großen Unternehmen mit mehr als 2000 Mitarbeitern unter hohem Druck, kürzere Innovations-, Release- und Markteintrittszyklen zu unterstützen“, berichtete Joachim Hackmann, Principal Consultant bei PAC, im Jahr 2016.

Joachim Hackmann, Principal Consultant bei Pierre Audoin Consultants
Joachim Hackmann, Principal Consultant bei Pierre Audoin Consultants
(Bild: Pierre Audoin Consultants)

DevOps, das aus „Development“ und „Operations“ zusammengesetzte Kunstwort, beschrieb ein Entwicklungskonzept, das ganz ohne Werte, Prinzipien und Manifest auskommt. Das Ziel war das gleiche wie bei den agilen Methoden: Die möglichst schnelle Bereitstellung und Inbetriebnahme neuer Anwendungen, von Softwarefunktionen, Produkten und Services. Dabei wird ein ganz wichtiger Akteur im Unternehmen endlich miteinbezogen: Der Anwender. Bei DevOps entwickeln im Prinzip Fachexperten aus den Abteilungen und Programmierer gemeinsam.

Site Reliability Engineering

Damit aber nicht genug. Schwalm beobachtet, dass 2019 neben der Verzahnung von operativen und Entwicklungskompetenzen, das Konzept des „‘Site Reliability Engineering‘ (SRE) zunehmend zur tragenden Stütze für die erfolgreiche Automatisierung der Integrations- und Deployment-Prozesse im Rahmen des DevOps-Ansatzes wird“.

„Site Reliability Engineering ist ein aufstrebendes Paradigma in der Cloud-Native-Ära, welches von Ben Treynor Sloss, VP Engineering bei Google, ins Leben gerufen wurde“, erläutert Schwalm. „Hierbei stehen Betrieb, Überwachung und Orchestrierung, aber vor allem das System Design als Voraussetzung für die Durchführbarkeit im Fokus. SRE bildet die Basis für Zuverlässigkeit und Automatisierung und vereint verschiedene Prozesse, die den Betrieb gewährleisten.“

Der Experte für agile Software-Entwicklung Consol sieht in SRE einen Ansatz, der IT-Operations als Softwareaufgabe betrachtet, die mit Software Engineering zu lösen ist. „So entstehen optimierte Prozesse und Systeme, die das Risiko von Fehlern berücksichtigen und damit umgehen können. Continuous Delivery spielt dabei eine zentrale Rolle: Das regelmäßige Ausrollen vieler kleiner Releases senkt das Risiko der einzelnen Entwicklungsschritte. Zudem werden im SRE alle Tasks so geplant, dass Zeit für Verbesserungen und die Automatisierung wiederkehrender Aufgaben bleibt.“

Auch Schwalm geht es darum, mit einem DevOps-Ansatz die Fehlerrate in der Software-Entwicklung deutlich zu reduzieren, andererseits die Taktrate bei Innovationen und neuen Releases zu erhöhen. „Da ein schnelleres Time-to-Market in der digitalen Welt ein entscheidender Erfolgsfaktor ist, macht sich DevOps derzeit in immer mehr Unternehmen breit.“

Open Source und Cloud-nativ

Noch vor 20 Jahren unvorstellbar, hat sich offene Software gerade in Unternehmen durchgesetzt. Laut Schwalm hilft die Einbeziehung einer umfassenden Open-Source-Kultur in die Software-Entwicklung, den Entwickler in seiner Rolle als „Motor zur Steigerung der Effizienz“ zu stärken.

Neue Funktionen und Dienste können nicht nur schneller und flexibler, sondern durch Automatisierung und iterative Entwicklung auch sicherer und im Hinblick auf Qualitätsanforderungen besser bereitgestellt werden. „In Verbindung mit Standards und Paradigmen der Cloud-Native-Welt können verschiedenste Infrastruktur- und Betriebskonzepte miteinander in Einklang gebracht und wichtige Daten und Anwendungen in der gesamten IT-Umgebung zugänglich gemacht werden.“

Kooperation und der Automatisierung

Das neue Entwicklungsparadigma habe insbesondere auf zwei Gebiete auswirkungen: Auf die Kooperation und die Automatisierung. „Entwickler, Test-Engineers, IT-Administratoren und Product Owner kommunizieren (dank DevOps) effizient über Abteilungs- und Unternehmensgrenzen hinweg, um schnell und vertrauensvoll zusammenarbeiten zu können“, so die Analystin.

Hierzu sei aber ein einheitlicher Informationsstand, eine sogenannte „Single Source of Truth“, und Transparenz für alle unternehmensinternen sowie externen Beteiligten im Hinblick auf Code Repositories, System Management und Monitoring Tools nötig. Die Dokumentation erfolge weitgehend „Code-based“, die wesentlichen Logs und Vital-Funktionen der Systems seien jederzeit in Echtzeit verfügbar und analysierbar.

In Bezug auf die Automatisierung stellt Schwalm fest: „Während traditionell noch nach dem Testing eine manuelle Übergabe und Inbetriebnahme neuer ‚Builds‘ in den produktiven Betrieb erfolgt, sieht der DevOps-Ansatz eine ganzheitliche Optimierung in Richtung CI/CD vor. Das automatisierte Erstellen, Testen und Deployen von Anwendungen und Prozessen, die entsprechend standardisiert, prozessual definiert und in Code sind, sichert nicht nur Zeit, sondern auch Produktivität und Qualität.“

Fazit

Zusammengefasst darf DevOps nicht als technisches Regelwerk verstanden werden, sondern vielmehr als neue Umgangsform: Gerade auf organisatorischer Ebene muss eine Kultur der Offenheit eingeführt und durchgehalten werden. Die gesamte IT im Unternehmen muss offen und kommunikativ vorgehen, ein in Silos gefangenes Wissen hemmt jede Entwicklung.

Noch einmal soll ein Beispiel aus dem Jahr 2016 angeführt werden: „Agile Methoden der Softwareentwicklung fruchten wenig, wenn schnell entwickelte neue Anwendungen nicht zur IT eines Unternehmens passen. Das ist besonders dann feststellbar, wenn die Entwicklung ausgelagert wurde und dabei agile Methoden zum Einsatz kommen – während die IT des Auftraggebers ihr Wissen in Silos gefangen hält. Dann knirscht es zwangsläufig bei der Implementierung – und wahrscheinlich auch bei der Nutzung.“

Das kann durch eine interdisziplinäre Abgleichung möglichst schon im Vorfeld eines Softwareprojektes verhindert werden. DevOps eben.

(ID:46257981)