Aufbau einer zentralen Plattform für Betriebsunterbrechungen bei der DB Regio Bus

Als zentral beauftragter Professional Service Partner hat die PROTOS Technologie GmbH bei der Planung, Integration und Überführung der Anwendung in den DB Regio Bus Betrieb nach DevOps unterstützt.

Über den Kunden:

Die Deutsche Bahn AG hat im Geschäftsfeld DB Regio, Sparte Bus (DB Regio Bus) den gesamten Busgeschäftsbereich gebündelt. Die DB Regio Bus hat ihren Schwerpunkt im öffentlichen Personennahverkehr im ländlichen Raum. Die in der Vergangenheit eigenständigen Bus-Unternehmensgesellschaften wurden regional zusammengeführt und sind Marktführer im deutschen ÖSPV-Markt.

Die Herausforderung:

Als zentraler Dienstleister für Mobilität müssen ungeplante Betriebsunterbrechungen durch Ereignisse wie Personalmangel, Unfälle oder Naturkatastrophen schnell und wohlkoordiniert vermieden werden. Die DB Regio Bus stellt hierfür eine zentrale Plattform zur Koordination von Betriebsunterbrechungen zur Verfügung. Auf dieser Plattform können lokale Busunternehmen im Notfall dynamisch Kapazität zur Verfügung stellen, um die Folgen von Zugausfällen für Kund:innen so gering wie möglich zu halten. 

Die Entwicklung der zentralen Anwendung und IT-Infrastruktur wurde durch einen externen Dienstleister übernommen. Die Herausforderung bestand somit darin, dass bereits existierende Softwaresystem an die internen Standards der DB Regio Bus zu integrieren und anzupassen. Neben der technischen Umsetzung lag auch die Einbindung von externen Mitarbeiter:innen in der Verantwortung von PROTOS Technologie.  

Die Weiterentwicklung des Softwaresystems ist ein essenzieller Baustein der Anwendung und gewährleistet, dass neue Features und Securitypatches kontinuierlich bereitgestellt werden können. Für diese Weiterentwicklung ist ein Umfeld, dass mit agilen Methoden vertraut ist und diese gewinnbringend einsetzt, erforderlich. Um dieses Ziel zu erreichen, wurde ein CI/CD-Prozess vom Deployment bis hin zum Betrieb etabliert. Zusätzlich wurden die Mitarbeiter:innen des Kunden in DevOps-basierten Betriebsmethoden geschult.

Auf Seiten der IT-Infrastruktur musste sichergestellt werden, dass die durch den Dienstleister entwickelte Infrastruktur den Compliance und Sicherheitsrichtlinien des Deutsche Bahn Konzerns entsprechen. Zusätzlich mussten manuelle Prozesse aus der Entwicklungsphase im Staging- und Produktivbetrieb automatisiert werden. Da die Entwicklungsumgebung auf Seiten des externen Dienstleisters nicht über Infrastructure-as-Code bereitgestellt wurde, musste die Infrastruktur unter Berücksichtigung von AWS Well-Architected auf versionierter Codebasis bereitgestellt werden.

Die Lösung:

Als zentral beauftragter Professional Service Partner hat die PROTOS Technologie GmbH bei der Planung, Integration und Überführung der Anwendung in den Betrieb nach DevOps unterstützt. Um einen reibungslosen Ablauf zwischen allen Beteiligten zu gewährleisten war einer der Hauptaufgaben das interne und externe Stakeholdermanagement.

Zusätzlich wurde die bestehende Kundenorganisation bei der Erstellung und Anpassung von Prozessen berücksichtigt. Als zertifizierter IT-Service Dienstleister nach ITIL ist eine kontinuierlich weiterentwickelte Anwendung nicht ohne weiteres in die standardisierten Prozesse zu übergeben. Vielmehr mussten im Rahmen der bestehenden Prozesse Lösungswege gefunden werden, um ein DevOps-basiertes Projekt in den Unternehmensalltag zu integrieren. 

Neben organisatorischen Herausforderungen waren diverse Anforderungen an die IT-Infrastruktur zu implementieren. Die DB Regio Bus setzt bereits seit mehreren Jahren auf das Infrastructure-as-Code Framework Terraform. Daher wurde die gesamte Infrastruktur mit Hilfe von Terraform abgebildet und mit der Softwareversionierungstechnologie GIT kombiniert um Reproduzierbarkeit, Testbarkeit und automatische Rollbacks zu ermöglichen. Ein Vorteil für die DB Regio Bus liegt in der Abbildung von Infrastruktur als Programmcode. Änderungen am Infrastrukturcode werden vollautomatisiert mit Hilfe der AWS Developer Tools (AWS CodeCommit und AWS CodeDeploy) vorgenommen und können zentral abgelegt sowie dokumentiert werden. Sie sind somit nicht mehr an die ursprünglichen Programmierer:innen gebunden und ermöglichen ein unabhängiges Arbeiten.  

Die Verwendung von Terraform ermöglicht die Portabilität der Infrastruktur in verschiedene Environments. Resultierend aus Best-Practice Ansätzen wurde ein Staging- sowie Production-Environment bereitgestellt, um Änderungen sowie neue Features der Anwendung vor dem Rollout in das Produktivsystem testen zu können.

Um Änderungen der Anwendung automatisch ausrollen zu können wurde der Rollout für Frontend, Backend sowie dedizierte API analog zur Infrastruktur und für beide Environments mit Hilfe von AWS CodeCommit, AWS CodeBuild, AWS CodeDeploy sowie AWS Pipeline als CI/CD Pipeline automatisiert. Ebenfalls automatisiert sind Unit- sowie Integrationstest des Anwendungsartefakts innerhalb der CI/CD Pipeline.

Um Compliancevorgaben des Deutsche Bahn Konzerns zu wahren, wurden bei der Entwicklung des Infrastrukturcodes auf Anforderungen wie Ende-zu-Ende-Verschlüsselung in Transit und Verschlüsselung von Daten at Rest geachtet. Zusätzlich würde das “Least-Privilege”-Prinzip in Verbindung mit rollenbasierten Zugriffskonzepten implementiert. Durch das von PROTOS Technologie implementierte Logging wurde zudem sichergestellt, dass Zugriffe auf S3-Buckets, Anwendungslogs und Echtzeitmonitoring jederzeit bemerkbar sind. Entsprechende Alarme werden erzeugt und die Logdaten werden revisionssicher in einem dedizierten AWS Account abgelegt.

Für die Infrastruktur Komponenten wurden AWS Service eingesetzt wie AWS Beanstalk im Anwendungs Backend, Lambda Funktionen in Verbindung mit AWS API Gateway für API Requests, S3 in Kombination mit CloudFront zum Ausliefern von Webcontent sowie AWS Cognito als Authentifizierung Service für externe Zugriffe. 

Das Entwicklungsteam des externen IT-Dienstleisters hat innerhalb des beschriebenen Prozesses keinen direkten Zugriff auf den AWS Account und die darin bereitgestellten Anwendungskomponenten. Das Team wird jedoch bei jedem Deployment über den jeweiligen Status von CodeBuild / CodeDeploy Aktionen innerhalb der CI/CD-Pipelines informiert und kann im Fehlerfall je nach Statusmeldung agieren. Zusätzlich werden Anwendungsevents in Real-Time via AWS Kinesis in den AWS Account des IT-Dienstleisters übertragen, um ein effektiveres Debugging der Anwendung zu ermöglichen. 

Die Vorteile:

Ein digitaler Prozess zur Ver-waltung von Betriebsunterbrech-ungen:
Umgesetzt durch die Digitalisierung eines vormals analogen Prozesses zur Verwaltung von unvorherge-sehenen Betriebsunterbrechungen.

Projektmanagement interner und externer Stakeholder: 
Die Koordination zwischen verschiedenen Stakeholdern: Endnutzer mit Zeitplan, Ent-wicklungsteams, Stakeholder von Kunden.

Vorteile der Architektur: 
Die Wahrung von Compliance-vorgaben wie Vollverschlüsselung von Daten at Rest und in Transit, “Least-Privilege”-Prinzip sowie zentral-isiertem, revisionssicherem Logging.

Skalierbare, hochverfügbare Lö-sung:
Erreicht durch die Verwendung von S3 für Webhosting, AWS Elastic Beanstalk und AWS Relational Database Service. Zusätzlich die Implementierung von CI/CD Pipelines für vollautomatisierte Deployments mit integriertem Testing.

Einführung von DevOps-Prozessen beim Kunden und Cultural Change:
Die entwickelte Anwendung und Infrastruktur sind der Startschuss für weitere DevOps zentrierte Projekte. Mit der gewonnenen Erfahrung lassen sich zukünftige Projekte einfacher und schneller bei der DB Regio Bus entwickeln und integrieren. 

Kundenfeedback:

„Die PROTOS Technologie GmbH hat uns bei der Integration einer zentralen Plattform zur Koordination von Betriebsunterbrechungen im lokalen Bahnverkehr unterstützt. Dank der Zusammenarbeit konnten wir Compliancevorgaben, Hochverfügbarkeit und automatisierte Deployments erfolgreich implementieren und umsetzen. Die qualifizierten Mitarbeiter von PROTOS Technologie haben uns während des gesamten Prozesses auf höchst professionelle Weise begleitet und unterstützt.“

Jörg Dierks, Leiter Cloud & Network  – DB Regio AG, Sparte Bus 

Grafiken: Prosymbols, Freepik, Becris, Ralf Schmitzer from Flaticon.com