Automatisierungsplattform Developer Experience (DevEx)
Artikel: Die Automationsplattform der Bahn
08/2021 – Die Developer-Experience-Plattform bündelt DB-konforme Anwendungen und Automatisierungen. Das macht die Softwareentwicklung und dessen Betrieb erheblich schneller, sicherer und stabiler.
Die Software-Entwicklung hat sich in den vergangenen Jahren grundlegend verändert. Die technologische Weiterentwicklung beschleunigt sich spürbar – in allen Bereichen. Der digitale Wandel geht mit dem Einsatz von Cloud-Services, agilen Arbeitsweisen und DevOps-Ablauforganisationen einher. Mit Automatisierungsprozessen werden Effizienzpotenziale besser ausgeschöpft. Gleichzeitig sollen Entwicklung und Betrieb von Software sicherer werden: Neue Methoden erfordern ein hohes Maß an Wissen, Bewusstsein und Verantwortung, insbesondere in Bezug auf Governance- und Security-Anforderungen. Das Angebot am Markt verfügbarer Automatisierungswerkzeuge wächst, doch nicht alle entsprechen immer den qualitativ hohen Anforderungen des DB-Konzerns.
Zum Wohle der Sicherheit
Um diesen Herausforderungen zu begegnen, hat DB Systel die Developer-Experience-Plattform initiiert. Diese ermöglicht es Entwickler-, Betriebs- und DevOps-Teams, dank integrierter und skalierbarer Plattformservices schnell und einfach DB-konforme und standardisierte Anwendungen zu entwickeln. „Wir nehmen Werkzeuge, die es bereits am Markt gibt – und veredeln diese um Konzernanforderungen“, sagt Christian Berger, bei DB Systel verantwortlich für den Aufbau der DevEx-Plattform. „Es existiert bereits ein gutes Set an Produkten. Schon heute bieten wir für jeden Bereich ein Produkt.“ Die Plattform wird stark vom Konzern vorangetrieben. Vertreter:innen aller Geschäftsfelder bringen Anforderungen in die DevEx-Plattform ein, und davon profitieren wiederum jeweils alle anderen.
Alle skalierbaren und integrierten Plattformservices werden zentral bereitgestellt und gebündelt. Zudem bietet die Developer Experience Plattform eine bestmögliche Unterstützung bei Fragen zu Governance und Security. Entwickler:innen können sich besser auf die Bedürfnisse des Kunden fokussieren, gleichzeitig werden die Potenziale in den Bereichen Sicherheit, Wirtschaftlichkeit, Geschwindigkeit und Innovationsfähigkeit ausgeschöpft. „Die Developer Experience Plattform ist in erster Linie eine strategische Plattform“, sagt Christian Berger. Aktuelle Serviceentwicklungen sollen sich an gewissen Standards im Konzern orientieren, und Entwickler bekommen dafür die nötigen Werkzeuge an die Hand. „In diesem Kontext sprechen wir vom digitalen Hammer und Meißel, den die Entwickler:innen zur Verfügung gestellt bekommen.“ Werden diese eingesetzt, stellt die Plattform automatisch gewisse Security- und Compliance-Anforderungen sicher. „Wir schaffen es mit der Plattform, dem Entwickler bei der Nutzung der vorkonfektionierten Werkzeuge ein gewisses Set an Security mitzugeben.“
Die DevEx-Plattform besteht aus diversen Einzelprodukten. Bei der Auflistung der hochkomplexen Kernprodukte von Developer Experience wird es zwangsläufig etwas technisch.
Übersicht über die bestellbaren DevEx-Produkte:
- Artifactory: Zentral bereitgestelltes Binary-Repository für Software-Artefakte der DB
- Azure DevOps Services: Sammlung von Softwareentwicklungswerkzeugen des Herstellers Microsoft zur Erstellung und Auslieferung von Software
- Continuous-Delivery-as-a-Service: Bereitstellung von deklarativen Komponenten mit integrierten Compliance- und Security-Prüfungen zur einfachen Ausführung einer Pipeline
- DBCS Kubernetes Containerplattform Services: Sofort verfügbare Cloud-Laufzeitumgebungen für Container auf Basis Kubernetes
- Fortify: Tool, um Sicherheitsschwachstellen in selbst geschriebenem Code frühzeitig identifizieren zu können
- GitLab: Zentral bereitgestelltes Sourcecode-Repository und Continuous Integration / Continuous Deployment der DB
- Monitoring-as-a-Service: für den produktiven Einsatz vorkonfigurierter Monitoring-Stack, kompatibel mit DBCS Kubernetes Namespace und Amazon EKS Clustern
- pipeship: Vorkonfigurierte und projektspezifisch anpassbare Standard-Pipelines für Continuous Integration und Continuous Deployment
- SDE: Sammlung von Hardware- und Softwarewerkzeugen, die ein Systementwickler zur Erstellung von Softwaresystemen verwendet
- Testautomation Beratung: Beratungsleistung zu Evaluation und Nutzung einer Testautomationslösung
- Testmanagementtool: Mit Unterstützung des Testmanagementtools kann die Planung, Verfolgung und Auswertung von Tests ausgeführt werden
- WhiteSource: Tool zur Unterstützung der Prüfung auf bekannte Sicherheitslücken und kritische Lizenze
- Xenon: Qualitätssteigerung durch Automation von Oberflächen-/Schnittstellentests und Testberatung
Es existiert also bereits ein hilfreiches Set an Produkten: Schon heute gibt es für jeden Bereich eine Lösung, die genutzt werden kann. Alle Produkte arbeiten untereinander integriert zusammen. Alle relevanten Entwicklungsschritte laufen automatisiert ab.
Jetzt gilt es, die nach wie vor erklärungsbedürftigen wesentlichen Vorteile der Plattform zu bewerben. „Wir müssen jetzt die Sprache der Nicht-Nerds lernen und die Tools einfacher anwendbar machen, damit wir mit unserem Angebot nicht nur digitale Experten ansprechen“, sagt Christian Berger. „Mitte nächsten Jahres sollen für jede Gruppe - wir nennen sie digitale Könner, Kenner, Experten - Werkzeuge zur Verfügung stehen.
Einer dieser digitalen Experten ist Serkan Parlak von DB Training. Als Senior-Softwareentwickler nutzt er bereits einige der Werkzeuge – und ist begeistert. „Aus Entwicklersicht ist DevEx die beste und genialste Entwicklung bei der Bahn. Wir haben kaum Ausfälle, sind hochperformant und skalierbar.“
DevEx ist aber weit mehr als nur das technische Toolset, das zur Verfügung steht, auch die Rahmenbedingungen wie Sicherheitsanforderungen und die Umsetzung der Konzernrichtlinien passen zur Deutschen Bahn. „Durch die Möglichkeiten, die DB Systel uns mit den Werkzeugen gegeben hat, können wir uns auf die Umsetzung der fachlichen Anforderungen konzentrieren“, sagt Serkan Parlak. „Wir können mithilfe von DevEx hochmoderne Anwendungen implementieren und sind in unserer täglichen Arbeit somit technologisch die Speerspitze.“