Die Historie der RPG-Anwendungen reicht meist bis in die 3-er Zeiten zurück. Auch wenn sie durch mehrfache, maschinelle Migrationen als etwas modernere ILE-Anwendungen erscheinen, entsprechen diese längst nicht mehr dem Stand der Technik. Obwohl die Technologie alle Entwicklungen der letzten 20 Jahre verschlafen hat, ist die große Bedeutung dieser IT-Urgesteine jedoch unbestritten. Mit diesen Anwendungen werden heutzutage in der Regel die unternehmenskritischsten, hochfrequentierten und ausfallsichersten Abläufe des Unternehmens abgebildet.

Problematik

Die ideale Anforderung ist klar und konfus zugleich: Die bewährten Anwendungen sollten einerseits erhalten bleiben und anderseits durch neue und leistungsfähigere Technologien abgelöst werden.

Das Ersetzen der alten Anwendung durch Standard-Software oder komplette Neuentwicklung auf einer neuen Plattform wie J2EE oder .NET erweist sich oft als schwieriger als zunächst vermutet. Unsere Erfahrung zeigt, dass die Umsetzung solcher Umstellungsprojekte meistens an den hohen Kosten und dem hohen Risiko hinsichtlich der Projektlaufzeit scheitert.

Migration nach .NET

Eine Lösung bietet hier die Migration des (RPG) Codes auf .NET mit oRPG. Dabei werden die RPG-, CL- und Menü-Programme nach .NET übersetzt und zu DLLs kompiliert. Für die Weiterentwicklung der migrierten Anwendung stehen alle Vorteile des .NET-Framework und moderner Programmiersprachen wie C#, VB, J#, Delphi 8 usw. zur Verfügung. Damit entstehen auch ganz neue Möglichkeiten für den Einsatz von Legacy-Software.

Durch die reine Migration nach .NET werden nicht nur bewährte, fehlerfreie und von den Usern akzeptierte Anwendungen erhalten oder getätigte Investitionen und das in die RPG-Anwendungen investierte Fachwissen geschützt, sondern auch der bestehende Software-Bestand stark aufgewertet.

Zukunft mit Web Services

Eine Web-Anwendung unterscheidet sich von einer 5250-Anwendung nicht primär dadurch, dass die eine in einem Browser verfügbar ist und die andere nur auf einem Green Screen. Der maßgebliche Unterschied besteht in den Rahmenbedingungen und den Möglichkeiten, die die unterschiedlichen Entwicklungsumgebungen bieten. Aus einer Bestell-Erfassungsanwendung im 5250-Modus wird weder durch RPG-Entwicklung noch durch Screen Scraping eine Online-Shopping-Software. Hierfür bedarf es vor allem einer Umstellung auf eine moderne Entwicklungsumgebung wie einer Migration nach .NET mit oRPG.

Für eine RPG-Anwendung bedeutet der Zugang zu einer modernen Entwicklungsumgebung auch der Zugang zu Web-Services. Dazu gehört auch:

  • Plattformunabhängigkeit der Clients
  • Keine Installation der Anwendung auf dem Client
  • Erhöhte Sicherheit, da keine direkte Verbindung von Client zu Host (AS/400) besteht
  • Zentrale Wartung der Applikation
  • Dieselben Business-Logik-Objekte wie im WinForm Client (eine Logik _ mehrere Oberflächen, siehe Grafik 2)
  • Einbindung von (migrierten) oRPG-Programmen in neue oder vorhandene ASP-Programme

    ASP.NET-Technologie

    Die neuesten Trends im Bereich der Entwicklung von Web-Services werden in der Microsoft ASP.NET-Technologie vereinigt. Zum Beispiel wurden im bisherigen Active-Server-Pages-Konzept der Microsoft-Umgebungen Darstellung (HTML-Code) und Funktionalität (Programmcode) im gleichen File gemischt. Dies führte zu relativ unübersichtlichen Applikationen und auch die Wartung wurde durch diese Vermischung erschwert.

    .NET verfolgt nun den Ansatz der konsequenten Trennung von Layout und Funktionalität unter dem Stichwort „CodeBehind“. Der gesamte Programmcode wird in ein getrenntes File geschrieben. Die jeweils benötigten Methoden werden von speziellen ASP-Tags, Script-Events oder Objekt-IDs aus dem HTML-File aufgerufen. Ihrerseits können die Methoden dann selbstverständlich wieder auf den umfangreichen Funktionsumfang der .NET Framework Class Libraries zugreifen. Visual Studio.NET stellt außerdem eine sehr umfassende IDE für die unterstützten Sprachen mit Toolbox, Debugger, Task Window, Server Browser, ADO.NET Tools, Source Code Management, Visio-Integration (UML to Code), Database-Modelling etc. zur Verfügung.

    Dass diese und viele weitere Funktionalitäten von ASP.NET jetzt in Verbindung mit RPG-Anwendungen genutzt werden können, eröffnet zahlreichen iSeries- und natürlich auch AS/400-Systemen vielfältige, neue Einsatzmöglichkeiten. Durch eine Migration von RPG nach .NET erhalten die alten Legacy-Anwendungen eine neue Zukunftsperspektive in der modernen Welt von Web-Services, Mobile Solutions usw.

    Fachautor: Milos Sarbajic