in|sure MIGSuite Migrationsprojekte effizient und revisionssicher umsetzen Bei der Ablösung von Softwaresystemen stehen Unternehmen fast immer vor der Herausforderung, die Altdatenbestände in ein neues System migrieren zu müssen. Die Datenstrukturen des Altsystems, oftmals geprägt von Legacy-Programmiersprachen und -Ablaufumgebungen, unterscheiden sich in der Regel von denen des neuen Systems fundamental. Zudem gibt es meist keine ausreichenden Standardformate für den Datenaustausch. Neben technischen Herausforderungen (Zeichensatz, Codierung von Schlüsselwerten etc.) geht es bei der Migration der Altdatenbestände vor allem darum, fachlich festzulegen, welche Daten übernommen werden sollen und nach welchen Regeln sie transformiert werden müssen. Nur so können abgebrochene Migrationsvorhaben, Produktionsausfälle oder gar Datenverlust verhindert werden. adesso insurance solutions unterstützt mit der Lösung in|sure MIGSuite die effiziente und ganzheitliche Umsetzung von Migrationsprojekten auf Basis der Programmiersprache Java. Fachliche Herausforderungen Innerhalb eines Migrationsprojektes muss das neue Softwaresystem in einer kurzen Zeitspanne an die speziellen Geschäftsregeln und Bedürfnisse der Fachabteilungen angepasst werden. Dabei sind auch alle im Quellsystem abgebildeten Produkte in geeigneter, unter Umständen fachlich konsolidierter Form abzubilden. Darüber hinaus besteht die Herausforderung, ein Migrationsverfahren für die Übernahme der Altdaten in das neue System zu definieren und umzusetzen. Im Altsystem sind die Daten oft sehr heterogen abgelegt und es gibt wenig, häufig auch keine Dokumentation zu den Besonderheiten des historisch gewachsenen Altsystems. Mitarbeiter mit technischen und fachlichen Kenntnissen sind im Regelfall bereits ausgeschieden oder kurz davor. Der fortlaufende Betrieb des Quellsystems wird zunehmend zu einem unter Umständen existenziellen Risiko für das Unternehmen. Zur Reduzierung des Aufwands sollte man, wo fachlich möglich, auf die Migration der kompletten Datenhistorie ins Zielsystem verzichten. Allerdings gibt es Fälle, in denen die historischen Vertragsstände weiterhin abrufbar sein müssen, z. B. bei rückwirkenden Schadenoder Leistungsfällen oder bei Auskunftspflichten eines Lebensversicherers im Rahmen eines Versorgungsausgleichs. Für reine Auskunftsfunktionalitäten können die historischen Daten in einem eigenen Werkzeug angezeigt werden. Dabei ist darauf zu achten, dass alle für die Auskunft benötigten Daten bei der Extraktion aus dem Quellsystem vorhanden sind bzw. angereichert werden. Das Altsystem zu Auskunftszwecken weiter zu betreiben ist keine Option, wenn mit der Einführung der neuen Anwendung auch ein Systemwechsel vollzogen und ein langfristiger Weiterbetrieb der bisherigen Hardund Software aus Kostengründen vermieden werden soll. Eine Big-Bang-Migration ist häufig, bedingt durch die Komplexität im Quellsystem, sehr aufwändig und risikobehaftet. Hier ist eine iterative tranchenbasierte Migration (z.B. Produkt für Produkt) zu bevorzugen. Dadurch sind das Altsystem und das neue System für einen begrenzten Zeitraum parallel im Einsatz. Dies erfordert eine genaue Protokollierung, welche Daten noch im Altsystem verwaltet werden und welche Daten schon migriert wurden und nur noch im neuen System bearbeitet werden dürfen. Quellsystem MIGTools MIGPool MIGImport Datenspeicher MIGTransform Zielsystem MIGControl Technische Anforderungen Ein ETL-Ansatz (Extract, Transform, Load) auf Datenbankebene ist für die Datenmigration oft nicht gut geeignet, weil die entsprechenden Tools für die Verarbeitung großer Datenmengen mit den immer gleichen Operationen optimiert sind. Bei der Übernahme von Beständen, beispielsweise von Versicherungsverträgen, muss im Migrationsverfahren in der Regel eine Vielzahl tariflicher Besonderheiten einzelvertraglich berücksichtigt werden. Eine technisch passende Transformation in das Datenbankschema des Zielsystems bietet noch keine Gewähr dafür, dass die Transformation auch fachlich korrekt durchgeführt wurde und sich die Daten später z. B. im nächsten Batchlauf weiterverarbeiten lassen. Wenn das neue System die Daten über eine Programmschnittstelle entgegennimmt, kann die bestehende Validierungslogik wiederverwendet werden. Um die Korrektheit zu prüfen, ist der Vergleich mit Kontrollwerten notwendig, die vom alten System auf Grundlage der Altdaten und vom neuen System auf Basis der transformierten Daten berechnet wurden. Objektorientierte Sprachen wie Java bieten alle benötigten Konzepte, um die Fachlogik der Transformation mit allen Sonderfällen adäquat und gut testbar umzusetzen. Der Vorteil: Wenn Softwareentwickler die Transformation in ihrer vertrauten Programmiersprache beschreiben können, sind sie in der Lage, die Transformationslogik schnell und sicher umzusetzen. Umsetzung von Migrationsprojekten mit der in|sure MIGSuite Die in|sure MIGSuite ist eine Lösung, mit der sich Migrationsprojekte auf Basis der Programmiersprache Java effizient und revisionssicher umsetzen lassen. MIGSuite entlastet Migrationsprojekte und mindert Risiken, indem sie fertig umgesetzte und qualitätsgesicherte Mechanismen für generische Fragestellungen von Migrationsprojekten einbringt: > MIGTools – Generierung von Klassen Die Komponente MIGTools wird verwendet, um aus den Datenstrukturen des Quellsystems, z.B. Datendefinitionsdateien eines Host-Systems oder Metadaten einer relationalen Datenbank, ein 1:1-Abbild in Form von Java-Klassen zu generieren. Dies geschieht in zwei Schritten: 1. Generierung eines Ecore-Modells aus den Datenstrukturen, 2. Generierung von Java-Persistence-API kompatiblen Entity-Klassen aus dem Ecore-Modell. > MIGImport – Import der Quellsystemdatensätze Das Quellsystem wird für den Import der Datensätze direkt angebunden oder es exportiert die Datensätze in Dateien. Bei beiden Möglichkeiten wird der Import dann kundenspezifisch implementiert. Für die Implementierung stehen bereits für verschiedene Quellsystemarten Beispielimplementierungen bereit, auf deren Basis dann im Projekt eine effiziente und saubere Umsetzung des Imports in kurzer Zeit möglich ist. Dabei werden die generierten Entity-Klassen mit den geparsten Daten des Quellsystems befüllt und in den MIGSuite-Datenspeicher persistiert. Damit ist der 1:1-Import der Quellsystemdaten in die MIGSuite erfolgt. > > MIGPool – Beauskunftung der importierten Datensätze Die importierten Quellsystemdatensätze können mithilfe der Webanwendung MIGPool angezeigt und durchsucht werden. Standard ist die Anzeige der Datensätze im Quellsystemformat. Zusätzlich können spezielle Sichten, z. B. für besondere Geschäftsvorfälle wie den Versorgungsausgleich oder komplette allgemeine Sichten für den Fachbereich, konfiguriert werden. MIGTransform – Transformation und Transfer ins Zielsystem Das MIGTransform-Framework gibt den Migrationsalgorithmus vor, der kundenspezifisch zu implementieren ist. Dieser Algorithmus umfasst die Transformation (Mapping des Quellsystems auf das Zielsystem), die optionale Anbindung an Schnittstellensysteme, den Transfer ins Zielsystem sowie die darauf folgende Kontrollwertvalidierung. Das MIGTransform-Framework kümmert sich um die Steuerung der Migration, das Fehlerhandling und die Protokollierung. Der Algorithmus deckt die Standardmigration sowie vielseitige Möglichkeiten für Sondermigrationen ab, die je nach Zustand und Datenqualität des Quellsystems notwendig werden können. Einfache Integration in die vorhandene IT-LandschaftDie Java-Softwarekomponenten des Migrationsverfahrens lassen sich problemlos in eine vorhandene Application Lifecycle Management Toolchain integrieren. Da die MIGSuite alle generischen Aspekte berücksichtigt, können sich die Mitarbeiter im Migrationsprojekt auf die Umsetzung der projektindividuellen Fachlogik konzentrieren: > > Import der Datensätze Import der Quellsystemdatensätze inklusive der fachlich korrekten Verknüpfung der Datenstrukturen Transformationslogik Implementierung der fachlich definierten Transformationsregeln in Java sowie Verwendung der Mapping-Unterstützung von MIGTransform > Transfer ins Zielsystem Übergabe der transformierten Daten an das Zielsystem durch Aufruf einer Programmschnittstelle oder Speicherung in einer Datenbank > Anbindung von Schnittstellensystemen Im Migrationsalgorithmus gibt es die Möglichkeit, Schnittstellensysteme anzubinden, um von dort für die Migration relevante Daten zu beschaffen oder dort Daten zu verändern. > Kontrollwertvalidierung Die Validierung der Kontrollwerte dient zur Bestimmung der Qualität der Migration für jedes einzelne Migrationsobjekt. Die Kontrollwerte werden kundenseitig erstellt, die Validierung wird vom Framework übernommen. Das Framework führt die Transformationslogik, den Transfer ins Zielsystem, die optionale Anbindung von Schnittstellensystemen und die Kontrollwertvalidierung in einem Schritt durch, sodass bei Problemen oder Fehlern ein entsprechender Fehlerstatus gesetzt und das Objekt nicht ins Zielsystem übernommen wird. Unsere Dienstleistungen in|sure MIGSuite kann als Produkt für den Einsatz in einem Migrationsprojekt erworben werden. Darüber hinaus unterstützen erfahrene adesso-Mitarbeiter gerne in allen Projektphasen, um eine reibungslose Migration zu gewährleisten: > Definition des Migrationsprojekts (innere/äußere Migration) mit Erarbeitung eines Umsetzungsplans > Analyse der Altsystemdaten > Erstellung der Migrationsregeln > Aufsetzen des Softwareentwicklungsprojekts (z. B. mit Maven, Jenkins, Nexus, JUnit) > Proof of Concept > Programmierung der Regeln > Anbindung des Zielsystems > Erstellung und Implementierung des Kontrollwertemappings > Anbindung von Schnittstellensystemen in|sure MIGSuite_2017_03 Unsere Kompetenz Bei der Entwicklung der MIGSuite wurden langjährige praktische Erfahrungen aus vielen adesso-Migrationsprojekten berücksichtigt. Die auf Java-Standards basierende Lösung ist bereits im Lebensversicherungsumfeld im Einsatz und hat ihre Praxistauglichkeit bewiesen. Der Einsatz der MIGSuite kann ein Migrationsprojekt enorm beschleunigen, weil neben der stabilen Software auch Vorlagen für das Migrationsverfahren aus erfolgreichen Projekten übernommen werden. Selbstverständlich ist die MIGSuite branchenunabhängig entwickelt worden. Sämtliche fachlich komplexe Migrationen beispielsweise bei Versicherungen, Banken oder Lotterien können mithilfe der in|sure MIGSuite umgesetzt werden. adesso insurance solutions GmbH Stockholmer Allee 24 44269 Dortmund T +49 231 7000-8000 F +49 231 7000-1000 E [email protected] www.adesso-insure.de Die Vorteile im Überblick > Der erprobte Migrationsprozess der in|sure MIGSuite unterstützt Standard- und Sondermigrationen revisionssicher. > Das technische Rahmenwerk erlaubt eine einfache kundenspezifische Erweiterung auf Basis von Java und unterstützt die Fokussierung auf Fachlichkeit. > Klare Aufteilung der fachlichen und technischen Verantwortlichkeiten auf die Komponenten der MIGSuite. > Quellsystemnahe Beauskunftung der importierten Datensätze. Konfigurierbare Sichten für Mitarbeiter aus den Fachbereichen. > Vollständige 1:1-Übernahme der Datensätze aus komplexen Quellsystem-Landschaften ermöglicht deren zeitnahe Ablösung. > in|sure MIGSuite ist branchenunabhängig und zeitgleich optimiert für Migrationen in Produkte der in|sure-Familie.