Entwicklung und Betrieb eines Auftragsmanagementsystems

Das Auftragsmanagementsystem ist ein zentrales Backend-System der Deutschen Telekom IT GmbH zur Steuerung von Aufträgen. Es erzeugt auf Basis eingehender Kundenaufträge konfigurierbare Fulfillment-Pläne, die die technische Provisionierung, das Vertragsmanagement, die Rechnungslegung, die auftragsbezogene Kundenkommunikation sowie logistikbezogene Prozesse koordinieren. Rückmeldungen aus angebundenen Systemen werden dabei dynamisch in die Ablaufsteuerung integriert. Das System besteht aus einer Core-Komponente zur Ablaufsteuerung und ca. 20 Java-basierten Microservices (Spring Boot), die in mehreren Kubernetes-Clustern (OpenShift, Rancher) betrieben werden. Die Release-Prozesse sind über GitLab CI und Jenkins vollständig automatisiert (CI/CD).

Deutsche Telekom IT GmbH

Umsetzungszeitraum: Ab Juni 2013 fortlaufend

SCOOPs Verantwortlichkeiten

  • Entwicklung von Microservices mit Java/Kotlin unter Verwendung von Spring Boot
  • Umsetzung und Pflege von REST- und SOAP-Schnittstellen gemäß OpenAPI- und Swagger- bzw. WebService (WSDL) Spezifikationen
  • Abbildung fachlicher Abläufe durch DSL-basierte Fulfillment- und Validierungskataloge
  • Design und Entwicklung relationaler Datenbankschemata (PostgreSQL) mit Liquibase
  • Aufbau und Etablierung von CI/CD-Prozessen mit GitLab CI und Jenkins
  • Betrieb containerisierter Anwendungen in Kubernetes-Clustern (OpenShift, Rancher)
  • Frontend-Entwicklung für unternehmensweite Tools und Monitoring-UIs im Support mit React, JavaScript und Node.js
  • Systemüberwachung und Fehleranalyse mittels Prometheus und Grafana
  • Übernahme der technischen Gesamtverantwortung, einschließlich Betrieb, Fehleranalyse und Schnittstellenkoordination in komplexen Cloud-Umgebungen
  • Agile Projektumsetzung nach Scrum und SAFe

Ausgangssituation

Die Deutsche Telekom IT GmbH benötigte ein leistungsfähiges und zentrales Backend-System zur automatisierten Steuerung und Koordination von Aufträgen. Angesichts der Komplexität von Provisionierungs-, Verwaltungs- und Logistikprozessen sowie der großen Zahl beteiligter Systeme war eine flexible und integrierte Lösung erforderlich, die verschiedene, heterogenen Systeme miteinander vernetzt und dynamisch auf Rückmeldungen reagiert, um die Effizienz der Auftragsabwicklung zu gewährleisten.

Zielsetzung

Ziel war die Schaffung eines Auftragsmanagementsystems, das die gesamte Prozesskette hochautomatisiert steuert. Das System sollte die Effizienz der Auftragsabwicklung signifikant steigern und durch eine flexible Architektur eine schnelle Anpassungsfähigkeit an neue Geschäftsanforderungen ermöglichen.

Projekteinblicke

Lösungen & Strategie

  • Entwicklung einer Core-Komponente zur Ablaufsteuerung mithilfe von Java Workflows und ca. 20 Java-basierter Microservices (Spring Boot)
  • Implementierung von REST- und SOAP-Schnittstellen für die Kommunikation mit angebundenen Systemen
  • Design und Entwicklung relationaler Datenbankschemata (PostgreSQL, Oracle) sowie die Unterstützung fortlaufender Schemamigration mittels Liquibase
  • Aufbau und Etablierung von CI/CD-Prozessen über GitLab CI und Jenkins für eine automatisierte Softwarebereitstellung
  • Betrieb containerisierter Anwendungen in Kubernetes-Clustern (OpenShift, Rancher)
  • Frontend-Entwicklung für Support-Tools und Monitoring-UIs (React, JavaScript, Node.js)
  • Implementierung von Systemüberwachung und Fehleranalyse mit Graylog, Prometheus, Grafana und Kibana
  • Agile Projektumsetzung nach Scrum und SAFe zur flexiblen und iterativen Entwicklung

Ergebnis & Mehrwert

Das Ergebnis ist ein zentrales und hochautomatisiertes Backend-System, das komplexe Fulfillment-Prozesse über Systemgrenzen hinweg zuverlässig steuert und manuelle Eingriffe erheblich reduziert. Die moderne Microservice-Architektur und die vollständig automatisierten CI/CD-Prozesse gewährleisten Skalierbarkeit, Stabilität und eine schnelle Anpassungsfähigkeit an neue Anforderungen.

 

Mehrwert für den Kunden:

  • Zentralisierte und automatisierte Auftragssteuerung
  • Signifikante Steigerung der Effizienz und Reduktion manueller Aufwände
  • Hohe Flexibilität und Anpassungsfähigkeit durch Microservice-Architektur
  • Sicherstellung der Skalierbarkeit und Stabilität des Systems
  • Transparenz und verbesserte Fehleranalyse durch umfassendes Monitoring
  • Schnelle Time-to-Market für neue Funktionen durch automatisierte CI/CD-Pipelines
  • Kontinuierliche Weiterentwicklung und Betrieb in komplexen Cloud-Umgebungen