SOFTWARE-MIGRATION – EINE ECHTE ALTERNATIVE
Software-Migration professionell realisiert bedeutet:
- Individualität, Know-how und Alleinstellungsmerkmale sichern,
- zukunftssichere Plattformen und Entwicklungsumgebungen nutzen,
- die moderne Welt von Information und Kommunikation erschließen,
- Unabhängigkeit von proprietären Herstellern und Lizenzprodukten bewahren,
- Zeit und Kosten sparen.
Der Vorteil einer Software-Migration gegenüber einer Neuentwicklung besteht im geringeren Aufwand. Projekterfahrungen belegen ein Verhältnis von 1:8. Umfasst ein Migrationsprojekt z.B. 15 Personenjahre (eine durchaus übliche Größe), dann ist bei einer Neuentwicklung mit ca. 120 Personenjahren zu rechnen.
Eine Software-Migration betrifft in der Regel alle Komponenten eines Legacy-Systems (Programme, Masken, Files, Jobs, Middleware, Datenbanken).
Die Grafik zeigt die von uns unterstützten Migrationspfade und die dabei verwendeten Software-Werkzeuge.
Wir realisieren seit 25 Jahren erfolgreich Migrationsprojekte im geplanten Zeitraum und mit geplantem Budget. Die dabei gewonnenen Erfahrungen fließen in aktuelle und zukünftige Migrationsprojekte ein.
UNSERE WERKZEUGE UND TECHNOLOGIEN
Software-Migration ist nur beherrschbar mit ausgereiften Migrationswerkzeugen und ‑technologien.
Unser Alleinstellungsmerkmal besteht in der konsequenten Anwendung wissenschaftlicher Compilerbau-Methoden bei der Technologie- und Werkzeugentwicklung. Dadurch wird ein hoher Automatisierungsgrad erreicht. Das wiederum reduziert die Projektlaufzeit, die Projektkosten und die Fehlerrate gegenüber manuellen Migrationen. Unsere Werkzeuge und Technologien unterstützen alle Komponenten eines Migrationsprojektes (Programme, Middleware, Dateien/Datenbanken, Masken, Jobsteuersprachen).
Jedes Migrationsprojekt ist individuell. Mit der von uns entwickelten pecBOX (pro et con – Toolbox für die Software-Migration) werden Migrationswerkzeuge und ‑technologien schnell, flexibel und kostengünstig an individuelle Kundenbedürfnisse angepasst.
ABLAUF EINES MIGRATIONSPROJEKTES
Jedes unserer Migrationsprojekte folgt einem definierten Ablauf. In jeder Phase ist es ein gemeinsames Projekt zwischen unseren Kunden und uns. In der nachfolgenden Abbildung wird dieser Ablauf vom Workshop bis zur Refaktorisierung beschrieben:
Die einzelnen Schritte sind:
- Workshop: Nachdem Sie Interesse an einem gemeinsamen Migrationsprojekt mit uns gezeigt haben, führen wir zusammen einen ganztägigen Workshop durch. Sie stellen das aktuelle Legacy-System vor und erläutern Ihre Wünsche und Ideen bezüglich einer Software-Migration. Wir präsentieren unsere Technologien und Tools. Wenn Sie uns ausgewählte Sourcen Ihres Systems zur Verfügung stellen (z.B. COBOL-Programme, Maskenbeschreibungen, …), demonstrieren wir die Migration an Ihren Sourcen. Im Ergebnis wird entschieden, ob der nächste Schritt der Zusammenarbeit, die Erarbeitung einer Studie, gemeinsam gegangen wird.
- Studie: Wurde eine weitere Zusammenarbeit vereinbart, besteht der nächste Schritt in der Erarbeitung einer Studie durch uns. Wesentliche Inhalte der Studie sind:
- Detaillierte Zusammenstellung des zu migrierenden Legacy-Systems einschließlich des Mengengerüstes.
- Definition des Zielsystems (Hardware, Architektur, Application-Server, Programmier- und Skriptsprachen, Frameworks, …).
- Aufstellung der Migrationspfade zwischen Legacy- und Zielsystem. Es wird u.a. der Aufwand abgeschätzt, um existierende Werkzeuge an die konkreten Projektanforderungen anzupassen bzw. Werkzeuge neu zu entwickeln.
- Definition der Arbeitsteilung im Projekt zwischen den Partnern.
- Bestimmung des Aufwandes (der Kosten) und der Laufzeit des Projektes als wesentliche Ergebnisse der Studie.
- Pilotprojekt: Mit den Ergebnissen der Studie wird ein Pilotprojekt (Proof of Concept) gestartet. Das Pilotprojekt realisiert an einer ausgewählten Teilmenge von ca. 20 % des Legacy-Systems einen vertikalen Durchstich (Maske, Server, Datenbank) zur Verifikation der gewählten Migrationstechnologie und der verwendeten Werkzeuge. Im Ergebnis werden diese Werkzeuge bei Notwendigkeit nachjustiert.
- Pre-Engineering: Parallel zum Pilotprojekt räumen Sie das zu migrierende System auf („Sanieren vor Migrieren“). Der Begriff „Pre-Engineering“ für diese Phase sagt aus, dass Reengineering-Maßnahmen vor der eigentlichen Migration stattfinden. Erfahrungen aus bisherigen Projekten haben gezeigt, dass sich dadurch das zu migrierende Mengengerüst um ca. 10–15 % reduziert.
- Migrationsprojekt: Nach diesen systematischen Vorbereitungen wird das gemeinsame Migrationsprojekt gestartet. Wir bieten dieses zum Festpreis an, welcher in der Studie ermittelt wurde. Während der Laufzeit des Migrationsprojektes ist kein Code Freeze erforderlich. Bereits migrierte Programme, die im Rahmen der allgemeinen Wartung einer Weiterentwicklung unterliegen, können beliebig oft erneut migriert werden. Damit sind Wartung und unterbrechungsfreier Betrieb ihres bestehenden Systems weiterhin sichergestellt. Bei Projektabschluss besitzen sowohl das originale Programmsystem als auch das im Ergebnis der Migration entstandene System einen identischen, aktuellen Entwicklungsstand.
-
Refaktorisierung: Im Laufe zahlreicher Migrationsprojekte haben wir ein umfassendes Werkzeug entwickelt, mit dem Java-Code nach der Migration automatisiert refaktorisiert werden kann. So können Sie auch Jahre nach einem abgeschlossenen Projekt flexibel auf neue Anforderungen reagieren.
- Refaktorisierung: Im Laufe zahlreicher Migrationsprojekte haben wir ein umfassendes Werkzeug entwickelt, mit dem Java-Code nach der Migration automatisiert refaktorisiert werden kann. So können Sie auch Jahre nach einem abgeschlossenen Projekt flexibel auf neue Anforderungen reagieren.
Alle bisherigen Migrationsprojekte wurden von uns erfolgreich im geplanten Zeitrahmen und mit geplantem Budget abgeschlossen.
“Toolbasierte Software-Migration nach Plan”
Abstract zum 18. Workshop “Software-Reengineering & Evolution” am 02.–04. Mai 2016 in Bad Honnef, erschienen in: Softwaretechnik-Trends, Band 36, Heft 2, Mai 2016
“Aus Alt mach Neu – automatisch! Migrationsprojekte erfolgreich planen und realisieren”
Artikel von Dr. Uwe Kaiser (pro et con), erschienen in: Business Technology, Ausgabe 03/2014, Heft 18, Seite 41
“Methoden und Werkzeuge für die Software-Migration”
Artikel zum 10. Workshop “Software-Reengineering” am 05.–07. Mai 2008 in Bad Honnef, erschienen in: 10th Workshop Software Reengineering, 5–7 May 2008, Bad Honnef.
Lecture Notes in Informatics (LNI) Proceedings, Series of the Gesellschaft für Informatik (GI), Volume P‑126, 2008