Blog-Layout

Modernisierung der System-Landschaft eines mittelständischen Reiseveranstalters

Dieter Jungkunz • 20. März 2021

Der Kunde ist Reiseveranstalter und hat ein hoch spezialisiertes Geschäftsmodell. Im Rahmen einer Software Modernisierungsinitiative war ich als Business Analyst und Requirement Engineer für Planung, Konzeption und Umsetzung von Projekten im PIM- und SAP-Umfeld tätig und dabei das zentrale Bindeglied zwischen Anwendern in den Fachbereichen, Software Architekten und Entwicklern.

Teilprojekt SAP-Integration - Anbindung an das Cobol basierte Kernsystem

Das Kernsystem des Kunden ist ein Cobol basiertes Host-System. Es bildet neben der Reiseproduktion und Reservierung auch die Buchhaltung ab. Um langsam die monolithische Applikation zu ersetzen, wurden zunächst die Buchhaltungsprozesse in SAP nachgebildet. Im Cobol System wurden APIs als REST basierte Webservices implementiert, die mithilfe von individuell entwickelten Microservices den bidirektionalen Datenaustausch zwischen Host- und SAP-System realisieren.


Im Cobol System sollte die Anpassung von Business Logik vermieden werden – die Logik zur Modellierung der Buchhaltungsdatensätze wurde daher über die neuen Microservices implementiert.


Stammdaten (Kunden/Agenturen), kreditorische (Bestellungen) und debitorische Bewegungsdaten (Reisebuchungen) werden ereignis- und zeitgesteuert aus dem Host-System ausgelesen und in SAP verbucht. Der Microservice sorgt dabei für das Mapping auf die richtigen Kontenrahmen und nimmt die finanzbuchhalterisch notwendigen Buchungen und Gegenbuchungen vor. Zahlungseingänge werden in SAP verwaltet und über einen Microservice in die entsprechenden Datensätze der Buchungsvorgänge im Host-System injiziert. 


Die Businesslogik im Host-System musste hierfür nicht angepasst werden. Das Mapping von Vorgängen auf SAP-Konten erfolgt im Microservice und ist einfach konfigurierbar.



Die neue moderne IT-Architektur auf Basis von Microservices und REST-APIs zum Host-System ermöglichte die Anbindung von externen Systemen. SAP machte hier den Anfang – PIM und CRM folgten in weiteren Ausbaustufen.


So konnte der Reiseveranstalter das bestehende Reservierungssystem für Kernfunktionen weiter nutzen und darüber hinaus von den Vorteilen etablierter Standardsysteme profitieren.

Teilprojekt PIM-Integration - Modernisierung des Produktinformationssystems

B2B und B2C Vertriebsplattformen sowie eigene eCommerce Webseiten wurden aus einem intern entwickelten Produktinformationssystem mit aggregiertem Content, Preis und Verfügbarkeitsdaten versorgt.


Die bis dato bestehende Lösung lieferte unbefriedigende Aktualisierungsraten, war schwer erweiterbar und fehleranfällig. Die Endpoints zum Frontend waren aber gut durchdacht und haben sich bewährt. Neue Webapplikationen setzen bereits auf den vorhandenen Schnittstellen auf.


Zukünftig sollten Daten schneller und ohne Umwege an die Vertriebs-Frontends gelangen. Wir entschieden uns dafür, die vorhandene Tomcat-basierte Mittelschicht durch ein Elasticsearch-Cluster zu ersetzen, einzelne Business-Objekte in neue Microservices zu packen und parallel zum bestehenden System auszurollen. Die Microservices kommunizieren nun über REST APIs direkt mit dem Cobol Host System und Elasticsearch.


So konnte die PIM Legacy Applikation weiter bestehen bleiben – einzelne Bereiche konnten jedoch gezielt optimiert werden und eine schrittweise Migration wurde möglich. Risiken beim Refactoring wurden minimiert und Entwickler-Ressourcen gezielt für unmittelbar wertsteigernde und messbare Verbesserungen eingesetzt.



Die Tomcat Mittelschicht ließen wir zunächst bestehen, um damit ein automatisches Regression Testing zu realisieren: Anfragen können gegen beide Systeme laufen und auf Abweichungen getestet werden - so erkannten wir z.B. nicht dokumentierte Ausnahmen.

Requirement Engineering erfordert fachliches & technisches Know-how plus viel Empathie

Ein wesentlicher Teil meiner Arbeit vor der Umsetzung war es, die gewachsene Business Logik zu analysieren und mit dem Software Architekten eine Strategie für ein schrittweises Refactoring zu entwickeln . Wir haben dafür Business Objekte identifiziert in denen sich wesentliche Funktionsgruppen kapseln ließen - siehe auch Application Modernization mit dem Strangler Fig Pattern.


Mit den Reiseterminen (Preis und Verfügbarkeit) wurde eines der wichtigsten Business Objekte identifiziert und als MVP/PoC umgesetzt. Danach folgten weitere Business Objekte.


Das Altsystem konnte somit schrittweise abgelöst werden und diese Form des Refactoring kam einer agilen Vorgehensweise bei der Frontend-Entwicklung entgegen.


Neben der fachlichen und technischen Kompetenz war ich als Requirement Engineer gefordert, bei den „forensischen“ Analysen der bestehenden Systeme mit Empathie vorzugehen. Oftmals haben die internen Entwickler solcher Systeme eine emotionale Bindung zu „ihrem“ System und sehen sich in der Rolle dessen, der den Laden am Laufen hält, während der CTO und die externen Berater mal wieder eine neue Sau durchs Dorf treiben (Agile, Microservices, Blockchain).


Wenn man sich aber wertschätzend mit der oft unter Zeit- und Budget-Druck erbrachten Leistung auseinandersetzt, dann erhält man wertvolle und oft nirgends dokumentierte Information und gleichzeitig Verbündete auf dem Weg zur Modernisierung.



Strangler Fig - Würgefeige
von Dieter Jungkunz 9. März 2021
Budget freundliche Clouds, bessere Usability und die Flexibilität mithilfe agiler Softwareentwicklung neue Geschäftsmöglichkeiten zu nutzen, setzen Unternehmen mit Kernanwendungen auf Host Systemen unter Druck. Oft sind die Anwendungen Grundlage des Geschäfts. Wie können diese erfolgreich als Teil einer DevOps- und Agile-Strategie einer digitalen Transformationsstrategie zugänglich gemacht werden?
Show More
Share by: