SlideShare ist ein Scribd-Unternehmen logo
1 von 43
Downloaden Sie, um offline zu lesen
IKS Gesellschaft für Information-und Kommunikationssysteme GmbH
T. +49 2103-5872-0 | www.iks-gmbh.com
Projekte. Beratung. Spezialisten.
IKS Thementag
14.06.2023
Autor: Oliver Heinemann
Mut zur Modernisierung, ein Praxisbeispiel
Ist das Kunst oder kann das neu?
Mut zur Modernisierung, ein Praxisbeispiel 2 | 42
Agenda
❯ Kontext
❯ Eingang & Verarbeitung
❯ Ausgang
❯ Benutzermanagement, Dokumente & Berichte
❯ Fazit
Mut zur Modernisierung, ein Praxisbeispiel 3 | 42
Agenda
❯ Kontext
❯ Eingang & Verarbeitung
❯ Ausgang
❯ Benutzermanagement, Dokumente & Berichte
❯ Fazit
Mut zur Modernisierung, ein Praxisbeispiel 4 | 42
❯ Logistik
❯ Sendungs- und Eventdaten
❯ Verschiedene Transport-Management-Systeme (TMS) europäischer Länder
❯ Sendungsverfolgung für Endkunden und Mitarbeiter
❯ 50 Millionen Sendungen im Jahr
❯ System älter als 20 Jahre
Kontext
Mut zur Modernisierung, ein Praxisbeispiel 5 | 42
Agenda
❯ Kontext
❯ Eingang & Verarbeitung
❯ Ausgang
❯ Benutzermanagement, Dokumente & Berichte
❯ Fazit
Mut zur Modernisierung, ein Praxisbeispiel 6 | 42
❯ Ausgangssituation
◆ TMS
◆ FTP Server
◆ Eingangskomponente (TradeXpress)
◆ Verarbeitungskomponente (RPG Eigenentwicklung)
◆ Berechnung von CO2, EDD, …
Eingang & Verarbeitung
Mut zur Modernisierung, ein Praxisbeispiel 7 | 42
❯ Herausforderungen
◆ Firebird Datenbank
◆ Eingangskomponente (TradeXpress)
◆ MySQL -> DB2 Datenbanklösung
◆ TMS DE
◆ Verarbeitungskomponente (RPG Eigenentwicklung)
Eingang & Verarbeitung
Mut zur Modernisierung, ein Praxisbeispiel 8 | 42
❯ Herausforderungen
◆ Firebird Datenbank
◆ Eingangskomponente (TradeXpress)
◆ MySQL -> DB2 Datenbanklösung
◆ TMS DE
◆ Verarbeitungskomponente (RPG Eigenentwicklung)
Eingang & Verarbeitung
Mut zur Modernisierung, ein Praxisbeispiel 9 | 42
❯ Herausforderungen
◆ Firebird Datenbank
◆ Eingangskomponente (TradeXpress)
◆ MySQL -> DB2 Datenbanklösung
◆ TMS DE
◆ Verarbeitungskomponente (RPG Eigenentwicklung)
Eingang & Verarbeitung
Mut zur Modernisierung, ein Praxisbeispiel 10 | 42
❯ Herausforderungen
◆ Firebird Datenbank
◆ Eingangskomponente (TradeXpress)
◆ MySQL -> DB2 Datenbanklösung
◆ TMS DE
◆ Verarbeitungskomponente (RPG Eigenentwicklung)
Eingang & Verarbeitung
Mut zur Modernisierung, ein Praxisbeispiel 11 | 42
❯ Herausforderungen
◆ Firebird Datenbank
◆ Eingangskomponente (TradeXpress)
◆ MySQL -> DB2 Datenbanklösung
◆ TMS DE
◆ Verarbeitungskomponente (RPG Eigenentwicklung)
Eingang & Verarbeitung
Mut zur Modernisierung, ein Praxisbeispiel 12 | 42
❯ Herausforderungen
◆ Firebird Datenbank
◆ Eingangskomponente (TradeXpress)
◆ MySQL -> DB2 Datenbanklösung
◆ TMS DE
◆ Verarbeitungskomponente (RPG Eigenentwicklung)
Eingang & Verarbeitung
Mut zur Modernisierung, ein Praxisbeispiel 13 | 42
❯ Herausforderungen
◆ Firebird Datenbank
◆ Eingangskomponente (TradeXpress)
◆ MySQL -> DB2 Datenbanklösung
◆ TMS DE
◆ Verarbeitungskomponente (RPG Eigenentwicklung)
Eingang & Verarbeitung
Wartung & Entwicklung
parallel
Mut zur Modernisierung, ein Praxisbeispiel 14 | 42
❯ Modernisierungen
◆ Firebird Datenbank
◆ Eingangskomponente (TradeXpress)
◆ MySQL -> DB2 Datenbanklösung
◆ TMS DE
◆ Verarbeitungskomponente (RPG Eigenentwicklung)
Eingang & Verarbeitung
Mut zur Modernisierung, ein Praxisbeispiel 15 | 42
❯ Modernisierungen
◆ Firebird Datenbank -> MySQL Enterprise
◆ Eingangskomponente (TradeXpress)
◆ MySQL -> DB2 Datenbanklösung
◆ TMS DE
◆ Verarbeitungskomponente (RPG Eigenentwicklung)
Eingang & Verarbeitung
Mut zur Modernisierung, ein Praxisbeispiel 16 | 42
❯ Modernisierungen
◆ Firebird Datenbank -> MySQL Enterprise
◆ Eingangskomponente (TradeXpress)
◆ MySQL -> DB2 Datenbanklösung
◆ TMS DE
◆ Verarbeitungskomponente (RPG Eigenentwicklung)
Eingang & Verarbeitung
Mut zur Modernisierung, ein Praxisbeispiel 17 | 42
❯ Modernisierungen
◆ Firebird Datenbank -> MySQL Enterprise
◆ Eingangskomponente (TradeXpress) -> Eigenentwicklung
◆ MySQL -> DB2 Datenbanklösung
◆ TMS DE
◆ Verarbeitungskomponente (RPG Eigenentwicklung)
Eingang & Verarbeitung
Mut zur Modernisierung, ein Praxisbeispiel 18 | 42
❯ Modernisierungen
◆ Firebird Datenbank -> MySQL Enterprise
◆ Eingangskomponente (TradeXpress) -> Eigenentwicklung
◆ MySQL -> DB2 Datenbanklösung
◆ TMS DE
◆ Verarbeitungskomponente (RPG Eigenentwicklung)
Eingang & Verarbeitung
Mut zur Modernisierung, ein Praxisbeispiel 19 | 42
❯ Modernisierungen
◆ Firebird Datenbank -> MySQL Enterprise
◆ Eingangskomponente (TradeXpress) -> Eigenentwicklung
◆ MySQL -> DB2 Datenbanklösung -> RabbitMQ
◆ TMS DE
◆ Verarbeitungskomponente (RPG Eigenentwicklung)
Eingang & Verarbeitung
Mut zur Modernisierung, ein Praxisbeispiel 20 | 42
❯ Modernisierungen
◆ Firebird Datenbank -> MySQL Enterprise
◆ Eingangskomponente (TradeXpress) -> Eigenentwicklung
◆ MySQL -> DB2 Datenbanklösung -> RabbitMQ
◆ TMS DE
◆ Verarbeitungskomponente (RPG Eigenentwicklung)
Eingang & Verarbeitung
Mut zur Modernisierung, ein Praxisbeispiel 21 | 42
❯ Modernisierungen
◆ Firebird Datenbank -> MySQL Enterprise
◆ Eingangskomponente (TradeXpress) -> Eigenentwicklung
◆ MySQL -> DB2 Datenbanklösung -> RabbitMQ
◆ TMS DE -> Überzeugungsarbeit + Product Owner
◆ Verarbeitungskomponente (RPG Eigenentwicklung)
Eingang & Verarbeitung
Mut zur Modernisierung, ein Praxisbeispiel 22 | 42
❯ Modernisierungen
◆ Firebird Datenbank -> MySQL Enterprise
◆ Eingangskomponente (TradeXpress) -> Eigenentwicklung
◆ MySQL -> DB2 Datenbanklösung -> RabbitMQ
◆ TMS DE -> Überzeugungsarbeit + Product Owner
◆ Verarbeitungskomponente (RPG Eigenentwicklung)
Eingang & Verarbeitung
Mut zur Modernisierung, ein Praxisbeispiel 23 | 42
❯ Modernisierungen
◆ Firebird Datenbank -> MySQL Enterprise
◆ Eingangskomponente (TradeXpress) -> Eigenentwicklung
◆ MySQL -> DB2 Datenbanklösung -> RabbitMQ
◆ TMS DE -> Überzeugungsarbeit + Product Owner
◆ Verarbeitungskomponente (RPG Eigenentwicklung) -> Eigenentwicklung
Eingang & Verarbeitung
Mut zur Modernisierung, ein Praxisbeispiel 24 | 42
❯ Performance Verarbeitungskomponente
◆ RabbitMQ Nachrichten im Batch verarbeiten (bspw. 20 zusammen)
◆ CRUD Datenbankoperationen via Batch-Modus
◆ Weitere Parallelität durch mehrere Worker-Threads
◆ => Simples in-memory Reservierungssystem
Eingang & Verarbeitung
Mut zur Modernisierung, ein Praxisbeispiel 25 | 42
❯ Fazit
◆ Performancezuwachs durch Datentransfer & Parallelität
◆ Fachlogik präsenter und wartbarer
◆ Verbesserte Transparenz
◆ Gesamte Sendung bekannt
◆ Publizieren in Output Stream möglich
Eingang & Verarbeitung
Mut zur Modernisierung, ein Praxisbeispiel 26 | 42
Agenda
❯ Kontext
❯ Eingang & Verarbeitung
❯ Ausgang
❯ Benutzermanagement, Dokumente & Berichte
❯ Fazit
Mut zur Modernisierung, ein Praxisbeispiel 27 | 42
❯ Herausforderungen
◆ Verarbeitungskomponente erzeugt keine Ausgabe
◆ Andere Komponenten nicht informiert über neue Sendungsevents
◆ Außer gezielt getriggert (CO2, EDD) => Wissen notwendig
◆ RabbitMQ für Ausgabe nutzen
Ausgang
Mut zur Modernisierung, ein Praxisbeispiel 28 | 42
❯ Modernisierung
◆ Verarbeitungskomponente kennt gesamte Sendung während Bearbeitung
◆ Publiziert Sendungsinformation in RabbitMQ
◆ Konsumenten (CO2, EDD) konsumieren Sendungen nahe Echtzeit
◆ Triggerlogik in Verarbeitungskomponente entfällt
Ausgang
Mut zur Modernisierung, ein Praxisbeispiel 29 | 42
Eingang, Verarbeitung & Ausgang
Sendungen
Sendungen
Mut zur Modernisierung, ein Praxisbeispiel 30 | 42
Agenda
❯ Kontext
❯ Eingang & Verarbeitung
❯ Ausgang
❯ Benutzermanagement, Dokumente & Berichte
❯ Fazit
Mut zur Modernisierung, ein Praxisbeispiel 31 | 42
❯ Herausforderungen
◆ Alte Eigenentwicklung in Java mit JOSSO
◆ Verbunden mit LDAP des Kunden für Mitarbeiter
◆ Login & Rollenverwaltung für Benutzer
◆ Technologisch veraltet
◆ Sicherheitsbedenken
◆ Fehlende Unterstützung für
 Standardworkflows
 Standardprotokolle
 2FA
 Social Login
 Impersonate
Authentifizierung & Autorisierung
Mut zur Modernisierung, ein Praxisbeispiel 32 | 42
❯ Modernisierung
◆ Standardproblem => Standardsoftware
◆ Entscheidung für Keycloak
◆ Betrieben auf Server des Kunden
◆ Verbunden mit LDAP des Kunden
◆ Nachteil: Passwörter nicht-LDAP Benutzer
◆ Fazit:
 Signifikanter Mehrwert,
 (fast) geräuschlose Migration,
 JWT,
 wieder auf aktuellem Stand der Technik
Authentifizierung & Autorisierung
Mut zur Modernisierung, ein Praxisbeispiel 33 | 42
❯ Herausforderungen
◆ Sendungsdokumente extern on-demand
◆ Anzeige in
 Kundenfrontend
 Mitarbeiterfrontend
 Webservice
◆ 2 Java Module in 3 Applikationen
=> redundanter Wartungs- und Deploymentaufwand
◆ Preview / Thumbnail Erstellung
◆ PDF Erstellung
Dokumente anfragen
Mut zur Modernisierung, ein Praxisbeispiel 34 | 42
❯ Modernisierung
◆ Microservice Ansatz
◆ Alle Abfragen und Logik in einen eigenen Webservice
◆ Authentifizierung via Keycloak
◆ Dependency Probleme nur noch intern
◆ Probleme mit Dokumenten und Formaten protokolliert
◆ Refactoring ermöglichte Unittests
◆ Fazit: Entwicklungsprozess & Deployments beschleunigt
Dokumente anfragen
Mut zur Modernisierung, ein Praxisbeispiel 35 | 42
❯ Herausforderungen
◆ Eigenentwicklung zum Verschicken von Dokumenten
◆ Ursprünglich nur für einen Endkunden hektisch geplant
◆ Mit der Zeit in Komplexität & Anforderungen gewachsen
◆ Aktuell existieren 25 identische Instanzen
◆ Keine Oberfläche zur Konfiguration neuer Endkunden
◆ Nutzt Webservice zum Check für Sendungsänderungen
Dokumente verschicken
Mut zur Modernisierung, ein Praxisbeispiel 36 | 42
❯ Modernisierung
◆ Refactoring
◆ Beliebig viele Endkunden in einer Instanz
◆ Ausgabestream der Verarbeitungskomponente nutzen
◆ Proaktives Versenden nahe Echtzeit
◆ Frontend zur Konfiguration neuer Endkunden
Dokumente verschicken
Mut zur Modernisierung, ein Praxisbeispiel 37 | 42
❯ Herausforderungen
◆ Regelmäßige konfigurierbare Sendungsberichte als Excel oder CSV
◆ Für Endkunden und Mitarbeiter
◆ JasperReportServer basierend auf JRXML
◆ Einbindung von JAR-Dateien für kundenspezifische Sendungslogik
◆ Sicherheitsbedenken
◆ Fehlende Performanz zu Spitzenzeiten (> 1000 Berichte um 8 Uhr)
◆ Wartung und Weiterentwicklung (xlsx Format) schwierig und aufwendig
Berichte
Mut zur Modernisierung, ein Praxisbeispiel 38 | 42
❯ Modernisierung
◆ Eigenentwicklung (angefangen als Azubi-Abschlussprojekt)
◆ Produktionsreife durch erfahrene Entwickler
◆ Verzicht auf Jasper und JRXML
◆ Nutzung von Apache POI und Apache Commons CSV
◆ Kundenspezifische Sendungslogik in Java
◆ Simple REST Schnittstelle
◆ Schrittweise Migration der bestehenden Berichte und Mitarbeiter zuerst
◆ Fazit: Performancegewinn von 400%-500%, Wartbarkeit verbessert
Berichte
Mut zur Modernisierung, ein Praxisbeispiel 39 | 42
Agenda
❯ Kontext
❯ Eingang & Verarbeitung
❯ Ausgang
❯ Benutzermanagement, Dokumente & Berichte
❯ Fazit
Mut zur Modernisierung, ein Praxisbeispiel 40 | 42
❯ Modernisierung ist planbar
❯ Strategie ersetzt Mut
◆ Kleine Schritte
◆ Qualitätssicherung
 manuelle Tests
 automatisierte (Massen)-Tests
❯ Verschiedene Modernisierungen
◆ Eigenentwicklungen für komplexe Komponenten
◆ Standardsoftware für Standardprobleme
◆ Microservice Ansatz zur Entkoppelung
◆ Refactorings
Fazit
Mut zur Modernisierung, ein Praxisbeispiel 41 | 42
❯ „Nachher sieht die Modernisierung simpel und konsistent aus“
❯ „Wir sind noch lange nicht fertig“
❯ „Ist das Kunst oder kann das neu?“
Fazit
Mut zur Modernisierung, ein Praxisbeispiel 42 | 42
www.iks-gmbh.com
Vielen Dank
Mut zur Modernisierung, ein Praxisbeispiel 43 | 42
https://www.onlinewebfonts.com/icon/538862
https://pictogrammers.com/library/mdi/icon/bottle-soda/
https://stock.adobe.com/de/images/logos-of-the-microsoft-office-component-excel-on-a-heap-copy-space-
web-banner-format/481012251
https://stock.adobe.com/de/images/businessman-use-laptop-login-register-username-and-password-identity-on-
webpage-concepts-of-cyber-security-internet-access-join-social-or-personal-data-protection-or-forget-pass-key-
unlock/573237511
https://stock.adobe.com/de/images/hand-woman-signing-electronic-signature-on-tablet-for-agreement-of-
contract-digital-receiving-parcel-from-blue-delivery-man-from-shopping-online-courier-man-delivering-
package-to-destination/513463777
https://stock.adobe.com/de/images/data-transfer-concept-internet-server-connection/459460758
https://stock.adobe.com/de/images/businessman-holding-global-network-connection-big-data-analytics-and-
business-intelligence-concept-world-map-point-and-line-composition-concept-of-global-business/588426797
Bilder

Weitere ähnliche Inhalte

Ähnlich wie Thementag 2023 01 Mut zur Modernisierung - ein Praxisbeispiel.pdf

IT-Ringvorlesung - Präsentation Comparex
IT-Ringvorlesung - Präsentation ComparexIT-Ringvorlesung - Präsentation Comparex
IT-Ringvorlesung - Präsentation ComparexEmpfehlungsbund
 
Presentation bp7 - citrix xen desktop
Presentation   bp7 - citrix xen desktopPresentation   bp7 - citrix xen desktop
Presentation bp7 - citrix xen desktopxKinAnx
 
Modell der Zusammenarbeit. Migration von Progress 4GL nach C#.NET
Modell der Zusammenarbeit. Migration von Progress 4GL nach C#.NET Modell der Zusammenarbeit. Migration von Progress 4GL nach C#.NET
Modell der Zusammenarbeit. Migration von Progress 4GL nach C#.NET Куранкова Татьяна
 
Fujitsu Storage Days 2017 - Rudolf Klassen - "Erfahrungsbericht ETERNUS DX200...
Fujitsu Storage Days 2017 - Rudolf Klassen - "Erfahrungsbericht ETERNUS DX200...Fujitsu Storage Days 2017 - Rudolf Klassen - "Erfahrungsbericht ETERNUS DX200...
Fujitsu Storage Days 2017 - Rudolf Klassen - "Erfahrungsbericht ETERNUS DX200...Fujitsu Central Europe
 
Introduction into Oracle Data Pump 11g/12c - Export and Import Data
Introduction into Oracle Data Pump 11g/12c - Export and Import DataIntroduction into Oracle Data Pump 11g/12c - Export and Import Data
Introduction into Oracle Data Pump 11g/12c - Export and Import DataGunther Pippèrr
 
Anwendungsmodernisierung mit Oracle Application Express (APEX)
Anwendungsmodernisierung mit Oracle Application Express (APEX)Anwendungsmodernisierung mit Oracle Application Express (APEX)
Anwendungsmodernisierung mit Oracle Application Express (APEX)Niels de Bruijn
 
Schatten IT erfolgreich bekämpfen
Schatten IT erfolgreich bekämpfenSchatten IT erfolgreich bekämpfen
Schatten IT erfolgreich bekämpfenNiels de Bruijn
 
Überblick: 18c und Autonomous Data Warehouse Cloud (ADWC)
Überblick: 18c und Autonomous Data Warehouse Cloud (ADWC)Überblick: 18c und Autonomous Data Warehouse Cloud (ADWC)
Überblick: 18c und Autonomous Data Warehouse Cloud (ADWC)Ulrike Schwinn
 
MT AG Präsentation Rapid Application Development mit APEX 5
MT AG Präsentation Rapid Application Development mit APEX 5MT AG Präsentation Rapid Application Development mit APEX 5
MT AG Präsentation Rapid Application Development mit APEX 5MT AG
 
Weltweite Produktionsdatenverwaltung mit MySQL-Replikation
Weltweite Produktionsdatenverwaltung mit MySQL-ReplikationWeltweite Produktionsdatenverwaltung mit MySQL-Replikation
Weltweite Produktionsdatenverwaltung mit MySQL-ReplikationFromDual GmbH
 
Forms and Reports 12c - Processes and Automation in Development and Operations
Forms and Reports 12c - Processes and Automation in Development and OperationsForms and Reports 12c - Processes and Automation in Development and Operations
Forms and Reports 12c - Processes and Automation in Development and OperationsTorsten Kleiber
 
20181210_ITTage2018_OracleNoSQLDB_KPatenge
20181210_ITTage2018_OracleNoSQLDB_KPatenge20181210_ITTage2018_OracleNoSQLDB_KPatenge
20181210_ITTage2018_OracleNoSQLDB_KPatengeKarin Patenge
 
DNUG2015 Frühjahrskonferenz: Brücken bauen, Grenzen überwinden: Domino im Dia...
DNUG2015 Frühjahrskonferenz: Brücken bauen, Grenzen überwinden: Domino im Dia...DNUG2015 Frühjahrskonferenz: Brücken bauen, Grenzen überwinden: Domino im Dia...
DNUG2015 Frühjahrskonferenz: Brücken bauen, Grenzen überwinden: Domino im Dia...JRibbeck
 
Roadshow: «Whats new in sql server 2014»
Roadshow: «Whats new in sql server 2014»Roadshow: «Whats new in sql server 2014»
Roadshow: «Whats new in sql server 2014»Digicomp Academy AG
 
Web-Performance-Optimierung mit varnish
Web-Performance-Optimierung mit varnishWeb-Performance-Optimierung mit varnish
Web-Performance-Optimierung mit varnishSpeedPartner GmbH
 
Roadshow 2019: Praxistipps für die erfolgreiche Einführung von Camunda in Ihr...
Roadshow 2019: Praxistipps für die erfolgreiche Einführung von Camunda in Ihr...Roadshow 2019: Praxistipps für die erfolgreiche Einführung von Camunda in Ihr...
Roadshow 2019: Praxistipps für die erfolgreiche Einführung von Camunda in Ihr...camunda services GmbH
 
W-JAX 2013 Spring Batch - Performance und Skalierbarkeit
W-JAX 2013 Spring Batch - Performance und SkalierbarkeitW-JAX 2013 Spring Batch - Performance und Skalierbarkeit
W-JAX 2013 Spring Batch - Performance und Skalierbarkeittobiasflohre
 

Ähnlich wie Thementag 2023 01 Mut zur Modernisierung - ein Praxisbeispiel.pdf (20)

IT-Ringvorlesung - Präsentation Comparex
IT-Ringvorlesung - Präsentation ComparexIT-Ringvorlesung - Präsentation Comparex
IT-Ringvorlesung - Präsentation Comparex
 
Presentation bp7 - citrix xen desktop
Presentation   bp7 - citrix xen desktopPresentation   bp7 - citrix xen desktop
Presentation bp7 - citrix xen desktop
 
Modell der Zusammenarbeit. Migration von Progress 4GL nach C#.NET
Modell der Zusammenarbeit. Migration von Progress 4GL nach C#.NET Modell der Zusammenarbeit. Migration von Progress 4GL nach C#.NET
Modell der Zusammenarbeit. Migration von Progress 4GL nach C#.NET
 
Fujitsu Storage Days 2017 - Rudolf Klassen - "Erfahrungsbericht ETERNUS DX200...
Fujitsu Storage Days 2017 - Rudolf Klassen - "Erfahrungsbericht ETERNUS DX200...Fujitsu Storage Days 2017 - Rudolf Klassen - "Erfahrungsbericht ETERNUS DX200...
Fujitsu Storage Days 2017 - Rudolf Klassen - "Erfahrungsbericht ETERNUS DX200...
 
Introduction into Oracle Data Pump 11g/12c - Export and Import Data
Introduction into Oracle Data Pump 11g/12c - Export and Import DataIntroduction into Oracle Data Pump 11g/12c - Export and Import Data
Introduction into Oracle Data Pump 11g/12c - Export and Import Data
 
Anwendungsmodernisierung mit Oracle Application Express (APEX)
Anwendungsmodernisierung mit Oracle Application Express (APEX)Anwendungsmodernisierung mit Oracle Application Express (APEX)
Anwendungsmodernisierung mit Oracle Application Express (APEX)
 
Schatten IT erfolgreich bekämpfen
Schatten IT erfolgreich bekämpfenSchatten IT erfolgreich bekämpfen
Schatten IT erfolgreich bekämpfen
 
Die Neuerungen in SDL WorldServer 10.4
Die Neuerungen in SDL WorldServer 10.4Die Neuerungen in SDL WorldServer 10.4
Die Neuerungen in SDL WorldServer 10.4
 
Enterprise APEX
Enterprise APEXEnterprise APEX
Enterprise APEX
 
Überblick: 18c und Autonomous Data Warehouse Cloud (ADWC)
Überblick: 18c und Autonomous Data Warehouse Cloud (ADWC)Überblick: 18c und Autonomous Data Warehouse Cloud (ADWC)
Überblick: 18c und Autonomous Data Warehouse Cloud (ADWC)
 
MT AG Präsentation Rapid Application Development mit APEX 5
MT AG Präsentation Rapid Application Development mit APEX 5MT AG Präsentation Rapid Application Development mit APEX 5
MT AG Präsentation Rapid Application Development mit APEX 5
 
Der Schnitt
Der SchnittDer Schnitt
Der Schnitt
 
Weltweite Produktionsdatenverwaltung mit MySQL-Replikation
Weltweite Produktionsdatenverwaltung mit MySQL-ReplikationWeltweite Produktionsdatenverwaltung mit MySQL-Replikation
Weltweite Produktionsdatenverwaltung mit MySQL-Replikation
 
Forms and Reports 12c - Processes and Automation in Development and Operations
Forms and Reports 12c - Processes and Automation in Development and OperationsForms and Reports 12c - Processes and Automation in Development and Operations
Forms and Reports 12c - Processes and Automation in Development and Operations
 
20181210_ITTage2018_OracleNoSQLDB_KPatenge
20181210_ITTage2018_OracleNoSQLDB_KPatenge20181210_ITTage2018_OracleNoSQLDB_KPatenge
20181210_ITTage2018_OracleNoSQLDB_KPatenge
 
DNUG2015 Frühjahrskonferenz: Brücken bauen, Grenzen überwinden: Domino im Dia...
DNUG2015 Frühjahrskonferenz: Brücken bauen, Grenzen überwinden: Domino im Dia...DNUG2015 Frühjahrskonferenz: Brücken bauen, Grenzen überwinden: Domino im Dia...
DNUG2015 Frühjahrskonferenz: Brücken bauen, Grenzen überwinden: Domino im Dia...
 
Roadshow: «Whats new in sql server 2014»
Roadshow: «Whats new in sql server 2014»Roadshow: «Whats new in sql server 2014»
Roadshow: «Whats new in sql server 2014»
 
Web-Performance-Optimierung mit varnish
Web-Performance-Optimierung mit varnishWeb-Performance-Optimierung mit varnish
Web-Performance-Optimierung mit varnish
 
Roadshow 2019: Praxistipps für die erfolgreiche Einführung von Camunda in Ihr...
Roadshow 2019: Praxistipps für die erfolgreiche Einführung von Camunda in Ihr...Roadshow 2019: Praxistipps für die erfolgreiche Einführung von Camunda in Ihr...
Roadshow 2019: Praxistipps für die erfolgreiche Einführung von Camunda in Ihr...
 
W-JAX 2013 Spring Batch - Performance und Skalierbarkeit
W-JAX 2013 Spring Batch - Performance und SkalierbarkeitW-JAX 2013 Spring Batch - Performance und Skalierbarkeit
W-JAX 2013 Spring Batch - Performance und Skalierbarkeit
 

Mehr von IKS Gesellschaft für Informations- und Kommunikationssysteme mbH

Mehr von IKS Gesellschaft für Informations- und Kommunikationssysteme mbH (20)

Es wird Zeit KI zu nutzen - Wie es mit Azure KI Services und .NET MAUI gelingt
Es wird Zeit KI zu nutzen - Wie es mit Azure KI Services und .NET MAUI gelingtEs wird Zeit KI zu nutzen - Wie es mit Azure KI Services und .NET MAUI gelingt
Es wird Zeit KI zu nutzen - Wie es mit Azure KI Services und .NET MAUI gelingt
 
Thementag 2023 06 Dieses Mal machen wir alles richtig - 9 Hacks für wandelbar...
Thementag 2023 06 Dieses Mal machen wir alles richtig - 9 Hacks für wandelbar...Thementag 2023 06 Dieses Mal machen wir alles richtig - 9 Hacks für wandelbar...
Thementag 2023 06 Dieses Mal machen wir alles richtig - 9 Hacks für wandelbar...
 
Thementag 2023 04 Lindern, heilen oder gar fit machen.pdf
Thementag 2023 04 Lindern, heilen oder gar fit machen.pdfThementag 2023 04 Lindern, heilen oder gar fit machen.pdf
Thementag 2023 04 Lindern, heilen oder gar fit machen.pdf
 
Thementag 2023 05 Wer zu spät kommt, den bestraft das Leben - Modernisierung ...
Thementag 2023 05 Wer zu spät kommt, den bestraft das Leben - Modernisierung ...Thementag 2023 05 Wer zu spät kommt, den bestraft das Leben - Modernisierung ...
Thementag 2023 05 Wer zu spät kommt, den bestraft das Leben - Modernisierung ...
 
Thementag 2023 03 Einführung in die Softwaremodernisierung.pdf
Thementag 2023 03 Einführung in die Softwaremodernisierung.pdfThementag 2023 03 Einführung in die Softwaremodernisierung.pdf
Thementag 2023 03 Einführung in die Softwaremodernisierung.pdf
 
Thementag 2022 01 Verpassen Sie nicht den Anschluss.pdf
Thementag 2022 01 Verpassen Sie nicht den Anschluss.pdfThementag 2022 01 Verpassen Sie nicht den Anschluss.pdf
Thementag 2022 01 Verpassen Sie nicht den Anschluss.pdf
 
Thementag 2022 04 ML auf die Schiene gebracht.pdf
Thementag 2022 04 ML auf die Schiene gebracht.pdfThementag 2022 04 ML auf die Schiene gebracht.pdf
Thementag 2022 04 ML auf die Schiene gebracht.pdf
 
Thementag 2022 03 Ein Modell ist trainiert - und jetzt.pdf
Thementag 2022 03 Ein Modell ist trainiert - und jetzt.pdfThementag 2022 03 Ein Modell ist trainiert - und jetzt.pdf
Thementag 2022 03 Ein Modell ist trainiert - und jetzt.pdf
 
Thementag 2022 02 Der Deutschen Bahn in die Karten geschaut.pdf
Thementag 2022 02 Der Deutschen Bahn in die Karten geschaut.pdfThementag 2022 02 Der Deutschen Bahn in die Karten geschaut.pdf
Thementag 2022 02 Der Deutschen Bahn in die Karten geschaut.pdf
 
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine LearningDaten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
 
Erste Schritte in die neue Welt-So gelingt der Einstieg in Big Data und Machi...
Erste Schritte in die neue Welt-So gelingt der Einstieg in Big Data und Machi...Erste Schritte in die neue Welt-So gelingt der Einstieg in Big Data und Machi...
Erste Schritte in die neue Welt-So gelingt der Einstieg in Big Data und Machi...
 
Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...
Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...
Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...
 
Big Data und Machine Learning - Wer braucht das schon!?
Big Data und Machine Learning - Wer braucht das schon!?Big Data und Machine Learning - Wer braucht das schon!?
Big Data und Machine Learning - Wer braucht das schon!?
 
Erste Schritte in die neue Welt - So gelingt der Einstieg in Big Data und Mac...
Erste Schritte in die neue Welt - So gelingt der Einstieg in Big Data und Mac...Erste Schritte in die neue Welt - So gelingt der Einstieg in Big Data und Mac...
Erste Schritte in die neue Welt - So gelingt der Einstieg in Big Data und Mac...
 
Darf es ein bisschen mehr sein - Konzepte Strategien zur Bewältigung großer u...
Darf es ein bisschen mehr sein - Konzepte Strategien zur Bewältigung großer u...Darf es ein bisschen mehr sein - Konzepte Strategien zur Bewältigung großer u...
Darf es ein bisschen mehr sein - Konzepte Strategien zur Bewältigung großer u...
 
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine LearningDaten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
 
Big Data und Machine Learning - Wer braucht das schon!?
Big Data und Machine Learning - Wer braucht das schon!?Big Data und Machine Learning - Wer braucht das schon!?
Big Data und Machine Learning - Wer braucht das schon!?
 
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine LearningDaten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
 
Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...
Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...
Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...
 
Big Data und Machine Learning - Wer braucht das schon!
Big Data und Machine Learning - Wer braucht das schon!Big Data und Machine Learning - Wer braucht das schon!
Big Data und Machine Learning - Wer braucht das schon!
 

Thementag 2023 01 Mut zur Modernisierung - ein Praxisbeispiel.pdf

  • 1. IKS Gesellschaft für Information-und Kommunikationssysteme GmbH T. +49 2103-5872-0 | www.iks-gmbh.com Projekte. Beratung. Spezialisten. IKS Thementag 14.06.2023 Autor: Oliver Heinemann Mut zur Modernisierung, ein Praxisbeispiel Ist das Kunst oder kann das neu?
  • 2. Mut zur Modernisierung, ein Praxisbeispiel 2 | 42 Agenda ❯ Kontext ❯ Eingang & Verarbeitung ❯ Ausgang ❯ Benutzermanagement, Dokumente & Berichte ❯ Fazit
  • 3. Mut zur Modernisierung, ein Praxisbeispiel 3 | 42 Agenda ❯ Kontext ❯ Eingang & Verarbeitung ❯ Ausgang ❯ Benutzermanagement, Dokumente & Berichte ❯ Fazit
  • 4. Mut zur Modernisierung, ein Praxisbeispiel 4 | 42 ❯ Logistik ❯ Sendungs- und Eventdaten ❯ Verschiedene Transport-Management-Systeme (TMS) europäischer Länder ❯ Sendungsverfolgung für Endkunden und Mitarbeiter ❯ 50 Millionen Sendungen im Jahr ❯ System älter als 20 Jahre Kontext
  • 5. Mut zur Modernisierung, ein Praxisbeispiel 5 | 42 Agenda ❯ Kontext ❯ Eingang & Verarbeitung ❯ Ausgang ❯ Benutzermanagement, Dokumente & Berichte ❯ Fazit
  • 6. Mut zur Modernisierung, ein Praxisbeispiel 6 | 42 ❯ Ausgangssituation ◆ TMS ◆ FTP Server ◆ Eingangskomponente (TradeXpress) ◆ Verarbeitungskomponente (RPG Eigenentwicklung) ◆ Berechnung von CO2, EDD, … Eingang & Verarbeitung
  • 7. Mut zur Modernisierung, ein Praxisbeispiel 7 | 42 ❯ Herausforderungen ◆ Firebird Datenbank ◆ Eingangskomponente (TradeXpress) ◆ MySQL -> DB2 Datenbanklösung ◆ TMS DE ◆ Verarbeitungskomponente (RPG Eigenentwicklung) Eingang & Verarbeitung
  • 8. Mut zur Modernisierung, ein Praxisbeispiel 8 | 42 ❯ Herausforderungen ◆ Firebird Datenbank ◆ Eingangskomponente (TradeXpress) ◆ MySQL -> DB2 Datenbanklösung ◆ TMS DE ◆ Verarbeitungskomponente (RPG Eigenentwicklung) Eingang & Verarbeitung
  • 9. Mut zur Modernisierung, ein Praxisbeispiel 9 | 42 ❯ Herausforderungen ◆ Firebird Datenbank ◆ Eingangskomponente (TradeXpress) ◆ MySQL -> DB2 Datenbanklösung ◆ TMS DE ◆ Verarbeitungskomponente (RPG Eigenentwicklung) Eingang & Verarbeitung
  • 10. Mut zur Modernisierung, ein Praxisbeispiel 10 | 42 ❯ Herausforderungen ◆ Firebird Datenbank ◆ Eingangskomponente (TradeXpress) ◆ MySQL -> DB2 Datenbanklösung ◆ TMS DE ◆ Verarbeitungskomponente (RPG Eigenentwicklung) Eingang & Verarbeitung
  • 11. Mut zur Modernisierung, ein Praxisbeispiel 11 | 42 ❯ Herausforderungen ◆ Firebird Datenbank ◆ Eingangskomponente (TradeXpress) ◆ MySQL -> DB2 Datenbanklösung ◆ TMS DE ◆ Verarbeitungskomponente (RPG Eigenentwicklung) Eingang & Verarbeitung
  • 12. Mut zur Modernisierung, ein Praxisbeispiel 12 | 42 ❯ Herausforderungen ◆ Firebird Datenbank ◆ Eingangskomponente (TradeXpress) ◆ MySQL -> DB2 Datenbanklösung ◆ TMS DE ◆ Verarbeitungskomponente (RPG Eigenentwicklung) Eingang & Verarbeitung
  • 13. Mut zur Modernisierung, ein Praxisbeispiel 13 | 42 ❯ Herausforderungen ◆ Firebird Datenbank ◆ Eingangskomponente (TradeXpress) ◆ MySQL -> DB2 Datenbanklösung ◆ TMS DE ◆ Verarbeitungskomponente (RPG Eigenentwicklung) Eingang & Verarbeitung Wartung & Entwicklung parallel
  • 14. Mut zur Modernisierung, ein Praxisbeispiel 14 | 42 ❯ Modernisierungen ◆ Firebird Datenbank ◆ Eingangskomponente (TradeXpress) ◆ MySQL -> DB2 Datenbanklösung ◆ TMS DE ◆ Verarbeitungskomponente (RPG Eigenentwicklung) Eingang & Verarbeitung
  • 15. Mut zur Modernisierung, ein Praxisbeispiel 15 | 42 ❯ Modernisierungen ◆ Firebird Datenbank -> MySQL Enterprise ◆ Eingangskomponente (TradeXpress) ◆ MySQL -> DB2 Datenbanklösung ◆ TMS DE ◆ Verarbeitungskomponente (RPG Eigenentwicklung) Eingang & Verarbeitung
  • 16. Mut zur Modernisierung, ein Praxisbeispiel 16 | 42 ❯ Modernisierungen ◆ Firebird Datenbank -> MySQL Enterprise ◆ Eingangskomponente (TradeXpress) ◆ MySQL -> DB2 Datenbanklösung ◆ TMS DE ◆ Verarbeitungskomponente (RPG Eigenentwicklung) Eingang & Verarbeitung
  • 17. Mut zur Modernisierung, ein Praxisbeispiel 17 | 42 ❯ Modernisierungen ◆ Firebird Datenbank -> MySQL Enterprise ◆ Eingangskomponente (TradeXpress) -> Eigenentwicklung ◆ MySQL -> DB2 Datenbanklösung ◆ TMS DE ◆ Verarbeitungskomponente (RPG Eigenentwicklung) Eingang & Verarbeitung
  • 18. Mut zur Modernisierung, ein Praxisbeispiel 18 | 42 ❯ Modernisierungen ◆ Firebird Datenbank -> MySQL Enterprise ◆ Eingangskomponente (TradeXpress) -> Eigenentwicklung ◆ MySQL -> DB2 Datenbanklösung ◆ TMS DE ◆ Verarbeitungskomponente (RPG Eigenentwicklung) Eingang & Verarbeitung
  • 19. Mut zur Modernisierung, ein Praxisbeispiel 19 | 42 ❯ Modernisierungen ◆ Firebird Datenbank -> MySQL Enterprise ◆ Eingangskomponente (TradeXpress) -> Eigenentwicklung ◆ MySQL -> DB2 Datenbanklösung -> RabbitMQ ◆ TMS DE ◆ Verarbeitungskomponente (RPG Eigenentwicklung) Eingang & Verarbeitung
  • 20. Mut zur Modernisierung, ein Praxisbeispiel 20 | 42 ❯ Modernisierungen ◆ Firebird Datenbank -> MySQL Enterprise ◆ Eingangskomponente (TradeXpress) -> Eigenentwicklung ◆ MySQL -> DB2 Datenbanklösung -> RabbitMQ ◆ TMS DE ◆ Verarbeitungskomponente (RPG Eigenentwicklung) Eingang & Verarbeitung
  • 21. Mut zur Modernisierung, ein Praxisbeispiel 21 | 42 ❯ Modernisierungen ◆ Firebird Datenbank -> MySQL Enterprise ◆ Eingangskomponente (TradeXpress) -> Eigenentwicklung ◆ MySQL -> DB2 Datenbanklösung -> RabbitMQ ◆ TMS DE -> Überzeugungsarbeit + Product Owner ◆ Verarbeitungskomponente (RPG Eigenentwicklung) Eingang & Verarbeitung
  • 22. Mut zur Modernisierung, ein Praxisbeispiel 22 | 42 ❯ Modernisierungen ◆ Firebird Datenbank -> MySQL Enterprise ◆ Eingangskomponente (TradeXpress) -> Eigenentwicklung ◆ MySQL -> DB2 Datenbanklösung -> RabbitMQ ◆ TMS DE -> Überzeugungsarbeit + Product Owner ◆ Verarbeitungskomponente (RPG Eigenentwicklung) Eingang & Verarbeitung
  • 23. Mut zur Modernisierung, ein Praxisbeispiel 23 | 42 ❯ Modernisierungen ◆ Firebird Datenbank -> MySQL Enterprise ◆ Eingangskomponente (TradeXpress) -> Eigenentwicklung ◆ MySQL -> DB2 Datenbanklösung -> RabbitMQ ◆ TMS DE -> Überzeugungsarbeit + Product Owner ◆ Verarbeitungskomponente (RPG Eigenentwicklung) -> Eigenentwicklung Eingang & Verarbeitung
  • 24. Mut zur Modernisierung, ein Praxisbeispiel 24 | 42 ❯ Performance Verarbeitungskomponente ◆ RabbitMQ Nachrichten im Batch verarbeiten (bspw. 20 zusammen) ◆ CRUD Datenbankoperationen via Batch-Modus ◆ Weitere Parallelität durch mehrere Worker-Threads ◆ => Simples in-memory Reservierungssystem Eingang & Verarbeitung
  • 25. Mut zur Modernisierung, ein Praxisbeispiel 25 | 42 ❯ Fazit ◆ Performancezuwachs durch Datentransfer & Parallelität ◆ Fachlogik präsenter und wartbarer ◆ Verbesserte Transparenz ◆ Gesamte Sendung bekannt ◆ Publizieren in Output Stream möglich Eingang & Verarbeitung
  • 26. Mut zur Modernisierung, ein Praxisbeispiel 26 | 42 Agenda ❯ Kontext ❯ Eingang & Verarbeitung ❯ Ausgang ❯ Benutzermanagement, Dokumente & Berichte ❯ Fazit
  • 27. Mut zur Modernisierung, ein Praxisbeispiel 27 | 42 ❯ Herausforderungen ◆ Verarbeitungskomponente erzeugt keine Ausgabe ◆ Andere Komponenten nicht informiert über neue Sendungsevents ◆ Außer gezielt getriggert (CO2, EDD) => Wissen notwendig ◆ RabbitMQ für Ausgabe nutzen Ausgang
  • 28. Mut zur Modernisierung, ein Praxisbeispiel 28 | 42 ❯ Modernisierung ◆ Verarbeitungskomponente kennt gesamte Sendung während Bearbeitung ◆ Publiziert Sendungsinformation in RabbitMQ ◆ Konsumenten (CO2, EDD) konsumieren Sendungen nahe Echtzeit ◆ Triggerlogik in Verarbeitungskomponente entfällt Ausgang
  • 29. Mut zur Modernisierung, ein Praxisbeispiel 29 | 42 Eingang, Verarbeitung & Ausgang Sendungen Sendungen
  • 30. Mut zur Modernisierung, ein Praxisbeispiel 30 | 42 Agenda ❯ Kontext ❯ Eingang & Verarbeitung ❯ Ausgang ❯ Benutzermanagement, Dokumente & Berichte ❯ Fazit
  • 31. Mut zur Modernisierung, ein Praxisbeispiel 31 | 42 ❯ Herausforderungen ◆ Alte Eigenentwicklung in Java mit JOSSO ◆ Verbunden mit LDAP des Kunden für Mitarbeiter ◆ Login & Rollenverwaltung für Benutzer ◆ Technologisch veraltet ◆ Sicherheitsbedenken ◆ Fehlende Unterstützung für  Standardworkflows  Standardprotokolle  2FA  Social Login  Impersonate Authentifizierung & Autorisierung
  • 32. Mut zur Modernisierung, ein Praxisbeispiel 32 | 42 ❯ Modernisierung ◆ Standardproblem => Standardsoftware ◆ Entscheidung für Keycloak ◆ Betrieben auf Server des Kunden ◆ Verbunden mit LDAP des Kunden ◆ Nachteil: Passwörter nicht-LDAP Benutzer ◆ Fazit:  Signifikanter Mehrwert,  (fast) geräuschlose Migration,  JWT,  wieder auf aktuellem Stand der Technik Authentifizierung & Autorisierung
  • 33. Mut zur Modernisierung, ein Praxisbeispiel 33 | 42 ❯ Herausforderungen ◆ Sendungsdokumente extern on-demand ◆ Anzeige in  Kundenfrontend  Mitarbeiterfrontend  Webservice ◆ 2 Java Module in 3 Applikationen => redundanter Wartungs- und Deploymentaufwand ◆ Preview / Thumbnail Erstellung ◆ PDF Erstellung Dokumente anfragen
  • 34. Mut zur Modernisierung, ein Praxisbeispiel 34 | 42 ❯ Modernisierung ◆ Microservice Ansatz ◆ Alle Abfragen und Logik in einen eigenen Webservice ◆ Authentifizierung via Keycloak ◆ Dependency Probleme nur noch intern ◆ Probleme mit Dokumenten und Formaten protokolliert ◆ Refactoring ermöglichte Unittests ◆ Fazit: Entwicklungsprozess & Deployments beschleunigt Dokumente anfragen
  • 35. Mut zur Modernisierung, ein Praxisbeispiel 35 | 42 ❯ Herausforderungen ◆ Eigenentwicklung zum Verschicken von Dokumenten ◆ Ursprünglich nur für einen Endkunden hektisch geplant ◆ Mit der Zeit in Komplexität & Anforderungen gewachsen ◆ Aktuell existieren 25 identische Instanzen ◆ Keine Oberfläche zur Konfiguration neuer Endkunden ◆ Nutzt Webservice zum Check für Sendungsänderungen Dokumente verschicken
  • 36. Mut zur Modernisierung, ein Praxisbeispiel 36 | 42 ❯ Modernisierung ◆ Refactoring ◆ Beliebig viele Endkunden in einer Instanz ◆ Ausgabestream der Verarbeitungskomponente nutzen ◆ Proaktives Versenden nahe Echtzeit ◆ Frontend zur Konfiguration neuer Endkunden Dokumente verschicken
  • 37. Mut zur Modernisierung, ein Praxisbeispiel 37 | 42 ❯ Herausforderungen ◆ Regelmäßige konfigurierbare Sendungsberichte als Excel oder CSV ◆ Für Endkunden und Mitarbeiter ◆ JasperReportServer basierend auf JRXML ◆ Einbindung von JAR-Dateien für kundenspezifische Sendungslogik ◆ Sicherheitsbedenken ◆ Fehlende Performanz zu Spitzenzeiten (> 1000 Berichte um 8 Uhr) ◆ Wartung und Weiterentwicklung (xlsx Format) schwierig und aufwendig Berichte
  • 38. Mut zur Modernisierung, ein Praxisbeispiel 38 | 42 ❯ Modernisierung ◆ Eigenentwicklung (angefangen als Azubi-Abschlussprojekt) ◆ Produktionsreife durch erfahrene Entwickler ◆ Verzicht auf Jasper und JRXML ◆ Nutzung von Apache POI und Apache Commons CSV ◆ Kundenspezifische Sendungslogik in Java ◆ Simple REST Schnittstelle ◆ Schrittweise Migration der bestehenden Berichte und Mitarbeiter zuerst ◆ Fazit: Performancegewinn von 400%-500%, Wartbarkeit verbessert Berichte
  • 39. Mut zur Modernisierung, ein Praxisbeispiel 39 | 42 Agenda ❯ Kontext ❯ Eingang & Verarbeitung ❯ Ausgang ❯ Benutzermanagement, Dokumente & Berichte ❯ Fazit
  • 40. Mut zur Modernisierung, ein Praxisbeispiel 40 | 42 ❯ Modernisierung ist planbar ❯ Strategie ersetzt Mut ◆ Kleine Schritte ◆ Qualitätssicherung  manuelle Tests  automatisierte (Massen)-Tests ❯ Verschiedene Modernisierungen ◆ Eigenentwicklungen für komplexe Komponenten ◆ Standardsoftware für Standardprobleme ◆ Microservice Ansatz zur Entkoppelung ◆ Refactorings Fazit
  • 41. Mut zur Modernisierung, ein Praxisbeispiel 41 | 42 ❯ „Nachher sieht die Modernisierung simpel und konsistent aus“ ❯ „Wir sind noch lange nicht fertig“ ❯ „Ist das Kunst oder kann das neu?“ Fazit
  • 42. Mut zur Modernisierung, ein Praxisbeispiel 42 | 42 www.iks-gmbh.com Vielen Dank
  • 43. Mut zur Modernisierung, ein Praxisbeispiel 43 | 42 https://www.onlinewebfonts.com/icon/538862 https://pictogrammers.com/library/mdi/icon/bottle-soda/ https://stock.adobe.com/de/images/logos-of-the-microsoft-office-component-excel-on-a-heap-copy-space- web-banner-format/481012251 https://stock.adobe.com/de/images/businessman-use-laptop-login-register-username-and-password-identity-on- webpage-concepts-of-cyber-security-internet-access-join-social-or-personal-data-protection-or-forget-pass-key- unlock/573237511 https://stock.adobe.com/de/images/hand-woman-signing-electronic-signature-on-tablet-for-agreement-of- contract-digital-receiving-parcel-from-blue-delivery-man-from-shopping-online-courier-man-delivering- package-to-destination/513463777 https://stock.adobe.com/de/images/data-transfer-concept-internet-server-connection/459460758 https://stock.adobe.com/de/images/businessman-holding-global-network-connection-big-data-analytics-and- business-intelligence-concept-world-map-point-and-line-composition-concept-of-global-business/588426797 Bilder