Titelthema Eine Million Netto Projektverlauf einer Migration von RPG/CL nach .NET in drei Monaten Die Aufgabe war einfach zu definieren: Eine Million Netto-Programmierzeilen sind in drei Monaten auf die neue Plattform zu migrieren. Bewährte Anwendungen müssen funktionell voll erhalten bleiben und trotzdem durch neue und leistungsfähigere Technologien abgelöst werden. D ie Gründe, warum solche Anwendungen nur schwer zu ersetzen sind, liegen auf der Hand. Unsere Erfahrung zeigt, dass die Umsetzung solcher Umstellungsprojekte meistens an den hohen Kosten und dem hohen Risiko hinsichtlich der Projektlaufzeit scheitert. Mit den neusten Technologien wie MLoRPG und klar definierten Meilensteinen können die Faktoren Kosten und Dauer übersichtlich gestaltet werden. Dadurch kann sichergestellt werden, dass die Umstellung schnell abgeschlossen wird und die Kapazitäten voll in die Erstellung neuer Funktionalitäten eingesetzt werden. Code kann in diesem Fall wahlweise in alle .NET-fähigen Programmiersprachen durchgeführt werden. Migration 1. Monat Nach der vollständigen Übergabe der Daten (Source-Code, Datenbank usw.) wird ein Szenario für die zukünftige AnAnzeige 10 • Szenario 1: Nur RPG-Funktionalitäten werden auf .NET migriert. Das heißt: Data Areas, CL Commands, DB, usw. bleiben auf der AS/400. • Szenario 2: Neue Anwendung ist komplett unabhängig von der AS/400 und kann über Data Areas mit anderen RPG-Programmen auf der AS/400 kommunizieren. • Szenario 3: Neue Anwendung läuft komplett auf .NET, nur die DB ist noch auf der AS/400. • Szenario 4: Auch die Datenbank wird von der AS/400 migriert und läuft beispielsweise auf einer SQL-fähigen Datenbank. Diese Szenarien werden wahlweise nacheinander oder einzeln durchgeführt. Weiterhin werden mit den Kunden schon im ersten Monat die Ziele (kosmetische Verbesserungen, neue Funktionalitäten usw.) definiert, um eine problemlose Weiterentwicklung zu gewährleisten. Auf Wunsch wird von Anfang an eine Datenbankumsetzung auf beliebige SQL-fähige Datenbanken durchgeführt. Anschließend erhält der Kunde die Software, um die Datenbanken beliebig zu klonen – zum Beispiel auf Oracle-Datenbanken. Diese Umstellung kann auch beim Kunden vor Ort ausgeführt werden. Nach einer Migration von RPG/CL nach .NET wird die Anwendung in einer modernen Entwicklungsumgebung und mit modernsten Programmiersprachen weiterentwickelt. Außerdem ist der Weg der migrierten Anwendung in die Zukunft gesichert, da die Nachfolger von Windows XP, Windows Longhorn und Windows Blackcomb als 64/32-Bit-Systeme eine vollständige Integration der .NET-Komponenten in das Betriebssystem ermöglichen werden. Im Nachfolgenden zeigen wir als Beispiel den Verlauf eines Migrationsprojekts: RPG/CL nach .NET mit dem Umfang von zirka 1.000.000 Netto-Programmierzeilen (ohne Leer- und Kommentarzeilen). Die Migration von RPG/CL- rationsprojekten folgende Szenarien bevorzugt durchgeführt: Migration 2. Monat wendung mit dem Kunden erarbeitet. Damit wird festgelegt, ob zum Beispiel die Anwendung in der Zukunft mit der AS/400 arbeiten wird oder nicht. In der Vergangenheit wurden in unseren Mig- www.midrangemagazin.de Juli 2005 Im zweiten Monat werden die Kunden nach und nach in die Tests miteinbezogen. Die Übersetzung wird schrittweise durchgeführt und die Testpakete werden an den Kunden überreicht. Der Titelthema Programmierung in .NET oder MLoRPG -neue Funktionalitäten Programmierung in .NET oder MLoRPG -kosmetische Änderungen Technische Erstmigration 1 2 Remigration 3 4 5 t (Monaten) Beispiel Projektverlauf bei ca. 1 Mio. netto Programmierzeilen kann bereits zu diesem Zeitpunkt die Betriebsystem-Anpassungen (z. B. betriebsspezifische Befehle von CL) erledigen und dabei im Vorfeld Zeit sparen. Migration 3. Monat Migrierte RPG/CL-Anwendung auf .NET-Framework Kunde testet und lernt dabei mit .NET (Visual Studio und C#, Delphi 8 usw.) und MLoRPG zu arbeiten. Die ersten Erweiterungen können vom Kunden bereits durchgeführt werden. In diesen Bereichen können schon die ersten Schulungen gemacht werden. Der Kunde möglich. Der Kunde kann beispielsweise weiter in RPG entwickeln und den neuen Code bis kurz vor Projektabschluss nachliefern. Für die Weiterentwicklung der migrierten Anwendung stehen alle Vorteile des .NET-Framework und moderner Programmiersprachen wie Delphi 8, VB, C#, J# usw. zur Verfügung. Damit entstehen auch ganz neue Möglichkeiten für den Einsatz von RPG Software. Gleichgültig ob der ganze RPG-Code endgültig auf eine neue Plattform migriert werden soll oder nur ein Teil von ihm (z. B. für Außendienst) auf PCs zur Verfügung gestellt werden soll, für die RPG-Anwendungen ist das ein sicherer Weg in Richtung Zukunft. Wie im 2. Monat werden weitere Programme migriert. Jetzt können nach und nach die Programmpakete auch als Ganzes getestet werden. Als Abschluss der technischen Erstmigration erhält der Kunde eine vollständig migrierte und lauffähige .NET-Anwendung. Durch die reine Migration nach .NET werden nicht nur bewährte, fehlerfreie und von den Usern akzeptierte Anwendungen erhalten sowie getätigte Investitionen und das in die RPG-Anwendungen investierte Fachwissen geschützt, sondern auch der bestehende Software-Bestand stark aufgewertet. Projektberatung oder Schulung in den Bereichen „Neue Funktionalitäten“ und „Kosmetische Verbesserungen“ können wahlweise in allen drei Monaten durchgeführt werden. Remigration ist bereits während der technischen Erstmigration Fachautor: Milos Sarbajic Anzeige Midrange MAGAZIN Juli 2005 11