Regelwerke zum Erfolg
Unternehmen stehen im Rahmen vieler Modernisierungsprojekte, aber auch in der Pflege und Weiterentwicklung von Anwendungssystemen oft vor Herausforderungen, die einen Eingriff in die Codebasis des Anwendungssystems erfordern. Die Code Transformation kann dabei von punktuellen Änderungen des bestehenden Codes über massenhafte systematische Codeanpassungen bis hin zum kompletten Ersatz von Teilen des Codes durch Code in anderen Programmiersprachen reichen. EasiRun liefert Ihnen die Möglichkeiten, automatisierte Codeanpassungen regelbasiert vorzunehmen.
Vorteile:
Marktsituation - Code Transformation
Wie bereits Eingangs erwähnt stehen Sie im Rahmen eines Modernisierungsprojekts sowie in der Pflege und Weiterentwicklung Ihrer Anwendungslandschaft oft vor Herausforderungen, die eine Code Transformation inkl. Eingriffe in die Codebasis erfordern. Die Gründe für die Codeanpassungen können vielfältig sein, z.B.:
- Modernisierung auf dem bestehenden System mit notwendiger Anpassung von Schnittstellen
- Integration einer Anwendung auf einer neuen Betriebsplattform inklusive Herstellung der Kompatibilität mit den dort vorhandenen Compilern und Einbindung in die neue Betriebsumgebung (Schnittstellen)
- beabsichtigte Konsolidierung des Technologiestacks durch Wegfall von Programmiersprachen
- Nichtverfügbarkeit von älteren Programmiersprachen oder Datenbanksystemen beim Wechsel der Betriebsplattformen
Einige typische Szenarien sollen dies verdeutlichen:
- Umstellung der Datenhaltung von VSAM/ISAM auf RDBMS mit expliziter Extraktion einer Datenzugriffsschicht
- Modernisierung einer Mainframe-COBOL-Anwendung
- Ablösung von PL/I durch Java im Rahmen einer Java-Strategie
- Ablösung von Assemblercode
- Modernisierung von Scheduling- und Job-Control Lösungen
- Transformation einer COBOL-Anwendung mit Datenhaltung in einer IMS Datenbank auf eine relationale Datenbank
Herausforderungen - Code Transformation
Die Kernherausforderungen innerhalb einer Sprachmodernisierung umfassen in erster Linie weniger die technischen Aspekte, sondern viel mehr die Definition der Ausgangs- und Zielsituation, die erforderlichen Analysen und die Definition von Regelwerken, die Ihren Bedarf und Ihre Anforderungen abdecken. Ausgestattet mit bereits existierenden Transformatoren, werden bereits eine Vielzahl unterschiedlicher Sprach- und Datenkonverter von unseren Lösungen unterstützt.
Zusätzlich zu spezifischen Transformationslösungen verfügen wir über eine eigenentwickelte universelle Transformationsplattform, welche auf sehr effiziente Art und Weise die Erstellung neuer und kundenspezifischer Modernisierungs- und Migrationslösungen ermöglicht. Sie erlaubt auch komplexe, kontextabhängige Codeanpassungen, die in iterativen Prozessen entwickelt und getestet werden. Um die Vorteile der Codetransformationstechnologie optimal zu nutzen, bieten wir diese als Managed Service für Sie an. Neben dem Toolset zur Code Transformation selbst stellen wir Ihnen auch die dazugehörigen Experten im Rahmen einer Dienstleistungsvereinbarung bereit. Diese übernehmen in enger Zusammenarbeit mit Ihrem Know-how die Optimierung der Transformation und die Einbindung in automatisierte Projektabläufe.
Lösung und Methodik
Ein Lösungsansatz, der sich in den vergangenen Jahren immer größerer Beliebtheit am Markt erfreut und sehr erfolgreich angewandt wird, ist die automatisierte Code Transformation. Diese adressiert sowohl massenhafte systematische Codeanpassungen als auch die Umsetzung von Code in eine komplett neue Programmiersprache. Der Ansatz bietet gegenüber den oben bereits beschriebenen Herangehensweisen einige herausragende Vorteile für Sie und Ihr Unternehmen:
- Kurzer Codefreeze: Mit der automatisierten Code Transformation wird in der Regel eine 100 % automatische Umsetzung des Codes angestrebt. Dadurch wird ermöglicht, die Legacy-Anwendung bis kurz vor der endgültigen Transformation kontinuierlich weiterzuentwickeln und die Phase des Codefreeze massiv zu verkürzen.
- Geringerer Testaufwand: Der Test der transformierten Anwendung kann gegenüber manuellen Codeanpassungen in der Regel deutlich reduziert werden, da durch den Faktor Mensch bedingte, nicht systematische Fehler ausgeschlossen sind. Systematische Fehler in der maschinellen Umsetzung sind in der Regel rasch in der Codebasis identifizierbar und korrigierbar.
- Einheitliche Umsetzung analoger Codekonstrukten: Durch die einheitliche Umsetzung analoger Codekonstrukte ergibt sich für Ihre Entwickler ein großer Vorteil in Bezug auf die Lesbarkeit und Verständlichkeit des transformierten Codes. Dies erleichtert in hohem Maße die Einarbeitung in die Anwendung als auch deren Wartung.
- Individuelle Anpassbarkeit: Unsere Transformationslösungen sind technisch so ausgelegt, dass individuelle Anpassungen und Optimierungen mit überschaubaren Aufwänden zu realisieren sind.
- Geringere Kosten: Im Vergleich, sowohl zu einer kompletten Neuentwicklung der benötigten Funktionalitäten als auch zur manuellen Transformation des Codes, belaufen sich die Kosten für eine automatisierte Code Transformation nur einen Bruchteil dessen.
- Geringerer Ressourceneinsatz: Für die Erstellung oder Anpassung einer automatisierten Transformationslösung ist prinzipiell kein Fachpersonal von Ihnen erforderlich. Der Einsatz dieser wertvollen Ressourcen beschränkt sich in der Regel auf die Verifikation der transformierten Anwendung im Rahmen fachlicher Tests und punktueller Unterstützung der Analyse aufgetretener Fehler und Abweichungen.
- Minimale Risiken: Für die Modernisierung von Legacy-Anwendungen mit Hilfe automatisierter Code Transformationen liegen eine Vielzahl übertragbarer Erfahrungen unserer Spezialisten vor. Im Gegensatz zu anderen Herangehensweisen erlaubt dieses Know-how eine genaue Kalkulation von Kosten, Projektumsetzungszeiten und technischen Risiken.
Warum EasiRun
Wir bieten Ihnen ein breit gefächertes Portfolio an Transformationslösungen, die einen Großteil der derzeitigen Marktanforderungen im Bereich der Legacy-Modernisierung abdecken. Für den Bereich der Code Transformation in andere Programmiersprachen und Datenhaltungssysteme unterstützen wir Sie bei:
- PL/I nach COBOL
- PL/I nach Java
- Assembler (z/OS, z/VSE, BS 2000) nach COBOL
- ADABAS/Natural nach Java und relationaler Datenbank
- COBOL nach Java
- Job Steuerung nach Bash, Korn-Shell, Perl, Python, XML
- CLIST nach Perl und Python
Weitere Lösungen im Bereich der automatisierten Code Anpassungen für die Konsolidierung von Legacy-Systemen sind:
- Umstellung von VSAM bzw. ISAM-basierter Datenhaltung in COBOL auf relationale Datenbanken
- Umstellung von IMS/DB Datenhaltung auf relationale Datenbanken
Technisch umfassen unsere Toolsets folgende Bereiche:
- Analyse des Ausgangssystems
- Extraktion von Datenstrukturen
- Generierung aller Artefakte für die Erstellung von Datenbankstrukturen
- Generierung aller Artefakte für die Datenmigration
- Umfangreiche automatisierte, kontextabhängige Anpassungen der COBOL-Programme
- Prozessautomatisierung (Data Migration Factory, Program Migration Factory)
Die genannten Lösungen umfassen sowohl eigene als auch Partnertechnologien aus einem weltweiten Netzwerk, welche durch EasiRun aus einer Hand angeboten und erfolgreich in Projekten betreut werden. Die Bereitstellung weiterer spezifischer Transformationstoolsets kann auf Anfrage geprüft werden.