Unser IT-Blog
DevOps sind unser IT-Beschleuniger
Von Manuel K., Head of DevOps
Der Prozessverbesserungsansatz DevOps bietet uns bei der Modernisierung von Software unsere Kunden viele Vorteile. Durch spezielle Anreize, Werkzeuge und Prozesse sorgt der Ansatz für eine effizientere und effektivere Zusammenarbeit in den Bereichen Software-Entwicklung, IT-Betrieb und Qualitätssicherung. Bei der Finanz Informatik Solutions Plus (FI-SP) haben wir eine eigene DevOps-Abteilung, die die eigenen Projekte berät und die Geschäftsbereiche bei ihren Kundenprojekte unterstützt.
Unsere Kunden, die Sparkassen, Landesbanken und Verbundpartner in der Sparkassen-Finanzgruppe, stehen immer häufiger in direkter Konkurrenz zu Marktteilnehmern wie Neo-Banken, FinTechs und BigTechs. Um mit denen mitzuhalten und gegen diese ihre Stärken auszuspielen benötigen unsere Kunden flexible IT-Landschaften, die eine schnelle Entwicklung und ein permanentes Deployment von Software und damit von neuen Services ermöglicht. Cloud Computing-Infrastrukturen, in denen moderne, Container-basierte Software betrieben werden, stehen daher hoch im Kurs. In Verbindung mit agilen Arbeitsweisen bieten diese Infrastrukturen die notwendige Flexibilität, um auf veränderte Kundenanforderungen mit kurzfristig bereitgestellten Services zu reagieren.
Der Weg zur schnelleren Bereitstellung von Software steht unseren Kunden offen, wenn sie ihre historisch gewachsenen Anwendungen stufenweise und grundlegend modernisieren. Der DevOps-Ansatz gewinnt dabei aus unterschiedlichen Gründen in den Projekten zur Modernisierung der Anwendungslandschaft an Bedeutung.
Die Grundidee von DevOps ist die agile Interaktion von Software-Entwicklungsabteilung (Development) und IT-Betrieb (Operations). Diese beiden Kernaufgaben der IT werden durch DevOps besser synchronisiert. Es handelt sich also zunächst einmal um eine Herangehensweise beziehungsweise um eine bestimmte Projektkultur. Diese hat das Ziel, Prozesse so zu optimieren, dass sie schneller, besser, effizienter und sicherer ablaufen.
Automatisiertes Deployment
Die Motivation für den Einsatz von DevOps in unseren Softwareentwicklungsprojekten leitet sich vielfach aus regulatorischen und technischen Anforderungen sowie aus Anforderungen des IT-Betriebs ab. Die häufig recht kurze Zeitspanne für die Umsetzung neuer regulatorischer oder auch gesetzlicher Anforderungen erfordert ein schnelles und reibungsfreies Ausrollen neuer Softwarekomponenten. Der DevOps-Ansatz sichert dabei eine fortlaufende Integration und Auslieferung von Softwarekomponenten in allen relevanten Systemumgebungen, also der Entwicklungs-, Test-, Abnahme- und Produktivsysteme. Konkret regelt der DevOps-Ansatz etwa, dass Softwarekomponenten auf allen Ebenen (Stages) gleich sind und dadurch automatisiert „deployed“, also ausgerollt werden.
In seiner reinsten Form besagt der Ansatz sogar, dass ein Entwickler seine entwickelte Funktionalität, also den Code, über alle Ebenen bis in die Produktion bringt („You build it, you run it!“). Dadurch entsteht bei den Entwicklern im Idealfall ein hohes Verantwortungsgefühl für die entwickelte Funktionalität und in der Folge schnellere Releases sowie qualitativ hochwertigerer Quellcode.
Im Finanzumfeld ist das zwar aufgrund regulatorischer Anforderungen in der Regel nicht möglich. Hier hilft eine strikte Kapselung der Komponenten in Containern eine feingranulare Zugriffssteuerung von Mitarbeitern umzusetzen. Auf diese Weise kann das Entwicklungsteam zum Beispiel auch ohne Produktionsberechtigung auf nahezu produktionsidentischen Umgebungen arbeiten. Weitere regulatorisch relevante Aspekte wie die Kapselung von Passwort-Rechten und die zentrale Speicherung und Verarbeitung von Log-Daten werden ebenfalls durch DevOps sichergestellt.
Perfekte Partner
Auch technische Aspekte motivieren uns zum Einsatz von DevOps in den Softwareentwicklungsprojekten. Denn der Ansatz harmoniert mit dem Einsatz von auf Microservices basierten Anwendungen. Die Grundidee von Microservices ist, einen Programmcode in einzelne, separate Funktionskomponenten aufzuspalten, um auf dieser Basis neue Lösungen flexibel und schnell entwickeln zu können. Die einzelnen Microservices interagieren untereinander und lassen sich zu größeren Anwendungssystemen orchestrieren. Um diese in die Betriebsumgebung auszurollen, ist aus Sicht der Softwareentwicklung der DevOps-Ansatz fundamental, da er zum Beispiel die automatische Skalierbarkeit und schnelle Bereitstellung von Anwendungen unterstützt.
Aber auch der IT-Betrieb, den wir als FI-SP im Übrigen nicht verantworten sondern lieber unserer Schwester FI-TS überlassen, profitiert vom DevOps-Ansatz. Denn aktuell stehen die IT-Betriebsverantwortlichen vor der Herausforderung, ihre Betriebsarchitektur zu standardisieren und Cloud-Umgebungen einzurichten beziehungsweise auch den Zugang zu Public-Cloud-Infrastrukturen zu öffnen. Der DevOps-Ansatz unterstützt dabei einen qualitätsgesicherten Übergang von über Jahrzehnte gewachsenen proprietären IT-Umgebungen auf aktuelle Standardinfrastrukturen wie zum Beispiel Linux, Docker und Kubernetes. Finanzdienstleister profitieren dann von einheitlichen und über verschiedene Cloud-Szenarien durchgängigen Betriebsstrukturen für ihre Software, die neben On-Premise-Betriebsumgebungen auch Private Clouds oder auch Public Clouds von sogenannten Hyperscalern wie Google, Amazon oder Microsoft umfassen kann. Selbstverständlich sind Aspekte wie Informationssicherheit und Datenschutz beim Einsatz von Public Clouds zu beachten. Im Extremfall können in einem solchen Szenario dann sogar Testsysteme automatisiert tagesaktuell auf den jeweils günstigen Provider wechseln („Spot Instances“).
Technologie auf der Höhe der Zeit
DevOps ist also ein moderner Ansatz, um in einer hohen Frequenz zeitgemäße Banking-Services im Sinne der Kunden anbieten zu können. Für Entwickler und Betriebsverantwortliche wird es in Zukunft selbstverständlich sein, Funktionen fortlaufend zu entwickeln, in Anwendungslandschaften zu integrieren und auszuliefern. Bereits heute in IT-Projekten arbeiten zu können, die diesen zukunftsorientieren Ansatz berücksichtigen, ist für viele der am Arbeitsmarkt umworbenen IT-Spezialisten ein gewichtiger Grund, einen Arbeitsplatz zu wählen. Denn DevOps bietet ein für viele IT-Profis attraktives Umfeld, das flache Hierarchien und Kreativität fördert. Auch dies motiviert Arbeitgeber, die DevOps-Kultur im Unternehmen zu fördern, um darauf aufbauend, attraktive Arbeitsplätze anbieten zu können.
Die FI-SP hat für den internen Einsatz eine Lösung entwickelt, mit denen die DevOps-Abteilung den Entwicklungsprojekten des Softwarehauses containerisierte Tools zur Verfügung stellt. So kann sich ein Projekt aus einem DevOps-Tool-Katalog die benötigten Werkzeuge auswählen, die dann automatisiert und vollständig vorkonfiguriert als Projektinstanz durch das DevOps-Team bereitgestellt werden. Die Projekte haben dabei sowohl den Vorteil der zentralen Bereitstellung und Wartung der Tools, als auch eine hohe eigene Administrier- und Anpassbarkeit. Damit bauen die Softwareentwicklungs-Profis auf einem breiten Erfahrungsschatz auf.