Refactoring von Mainframe-Code zur Beschleunigung der Entwicklung

Refactoring von Mainframe-Code zur Beschleunigung der Entwicklung

  • Mainframe
6 Minuten Lesezeit Aktualisiert Nov 28, 2023

Auf einen Blick: Die Refaktorisierung von Großrechnercode ist unerlässlich, um Unternehmensanwendungen zu modernisieren und komplexe COBOL-Programme effizient zu verwalten. Sie hilft, technische Schulden zu reduzieren und die Entwicklung zu beschleunigen.

  • BMC AMI DevX Code Insights erleichtert die Aufteilung monolithischer Anwendungen in handhabbare Komponenten.
  • Echtzeit-Visualisierung verbessert das Verständnis der Anwendungslogik und Abhängigkeiten.

Die Entwicklung von Mainframes mit der vom Geschäft geforderten Geschwindigkeit am Laufen zu halten, kann eine Herausforderung sein. Viele monolithische Anwendungen, die über Jahre oder sogar Jahrzehnte hinweg entwickelt und erweitert wurden, sind in sich geschlossen. Da die Softwareentwicklung und -bereitstellung durch Automatisierung und Orchestrierung immer moderner werden, werden die Kosten, diese Anwendungen in Ruhe zu lassen, immer teurer, als sie zu zerlegen und mit Makro- und Mikroservices zu verbinden. In einer Zeit, in der mit weniger mehr gemacht wird, werfen viele Führungskräfte einen zweiten Blick auf ihre Wurzelprobleme und suchen nach Wegen, schneller Mehrwert zu schaffen.

Es ist nicht COBOL, sondern das, was damit gemacht wurde

Die Größe von COBOL-Programmen wird oft als Hindernis für die Beschleunigung der Release-Geschwindigkeit von Großrechneranwendungen genannt. Die Funktionalität von COBOL als Programmiersprache ist der Grund, warum sie seit einem halben Jahrhundert gleich geblieben ist. Das eigentliche Problem ist nicht die Sprache, sondern die Implementierung. Da zahlreiche Funktionen in einem Programm untergebracht sind, wird es für Entwickler schwierig, Legacy-Code zu verstehen, zu bearbeiten und zu kompilieren und dann deren Änderungen zu testen. Selbst wenn sie nur wenige Zeilen ändern, müssen sie das gesamte Programm überprüfen, testen und dann alles beheben, was unterwegs kaputtgeht.

Warum die Wartung von COBOL-Anwendungen ein Entwicklungsalbtraum ist.
Abbildung 1. Warum  die Wartung von COBOL-Anwendungen ein Entwicklungsalbtraum ist.

Die Transformation des Großrechners als Wachstumsplattform

Ob sie nun versuchen, den Wert von Mainframe-Daten freizusetzen, künstliche Intelligenz für IT-Betrieb (AIOps) zu fördern oder Compliance zu gewährleisten und die digitale Agilität zu erhöhen – Unternehmen sehen den Mainframe als Wachstumsplattform. Die meisten Unternehmen, die sich auf Modernisierungsreise begeben, stellen fest, dass sie nicht 20 Prozent der Mainframe-Workloads auf andere Plattformen abgeben können. Das bedeutet jedoch nicht, dass sie das Entwicklererlebnis nicht optimieren und es mehreren Entwicklern erleichtern, gleichzeitig am Mainframe zu arbeiten. Ein großer Schritt nach vorne ist die Bereitstellung von Werkzeugen, die Entwicklern helfen, Monolithen in separate, aufrufbare Unterprogramme aufzuteilen, die leichter zu verstehen, zu aktualisieren und zu testen sind. Dies ermöglicht die Integration neuer Funktionen in Mainframes und ebnet den Weg für Java- und Git-basiertes Quellcode-Management (SCM), sodass mehrere Entwickler an derselben Anwendung arbeiten können. Die Möglichkeit, ein Datenfeld durch das Programm von Eingabe bis Ausgabe zu verfolgen und statische sowie dynamische Interoperabilität sowie Abhängigkeiten, Logik und Syntax zu visualisieren, hilft Entwicklern, monolithische Anwendungsfunktionen zu verstehen und Probleme zu umgehen, was ihnen mehr Vertrauen in ihre Änderungen gibt und Entwicklungsteams schneller und agiler macht.

Was wäre, wenn Monolithen in separate, aufrufbare Komponenten umstrukturiert werden könnten? Das könnten sie.
Abbildung 2.  Was wäre, wenn Monolithen in separate, aufrufbare Komponenten umstrukturiert werden könnten? Das können sie.

Langfristige Modernisierung, unmittelbarer Wert

Die Modernisierung selbst geht nicht schnell, aber es gibt keinen wirklichen Grund, am Status quo festzuhalten. Entwickler wollen auf wachsenden Lösungen aufbauen, und je schneller Unternehmen Monolithen in funktionale moderne Anwendungen verwandeln, desto schneller können sie die Entwicklungskosten senken, indem sie mehr Entwicklern ermöglichen, am Großrechner zu arbeiten. Ein Diagnosetool, das die Grundlagen einer Anwendung scannen und visualisieren kann, ist entscheidend, wenn es buchstäblich Millionen von Codezeilen gibt. Zu sehen, wie eine Anwendung wirklich in Echtzeit mit Laufzeitvisualisierung funktioniert, kann Entwicklern zeigen, wo die Probleme liegen, bevor sie die Anwendung kaputt machen.

Die Möglichkeit, toten Code zu finden und zu kommentieren, der nicht logisch ausgeführt werden kann, egal welche Daten man verwendet, beseitigt viele technische Schulden, da Entwickler moderne Anwendungen umstrukturieren, die REST-APIs, Git oder Java nutzen. Viel Schuld wird auf COBOL geschoben, aber selbst COBOL-Anwendungen können trotz langfristiger Modernisierungen und digitaler Transformationen einen Mehrwert bieten.

BMC AMI DevX Code Insights, jetzt verfügbar, bietet die Funktionalität, um Entwicklern zu helfen, Geschäftslogik zu entdecken und neue Unterprogramme zu erstellen, die bereit zur Kompilierung und Nutzung sind. Es beschleunigt bereits die Transformation monolithischen Codes in modularere und nutzbarere Programme.

BMC AMI DevX Code Insights ermöglicht es Entwicklern außerdem, toten Code zu identifizieren und auszukommentieren. Die neue Quick Fix-Funktion, die mit Rechtsklick auf die Diagnose oder die identifizierte Zeile verfügbar ist, kommentiert diese Zeilen, was verhindert, dass zukünftige Entwickler Zeit verschwenden, indem sie davon ausgehen, dass diese Zeilen gültig sind.

Quick Fix-Funktion
Abbildung 3. Die neue Quick Fix-Funktion kann verwendet werden, um Zeilen für Entwickler zu kommentieren.

BMC AMI DevX Code Insights ist darauf ausgelegt, Entwicklern zu helfen, ihre Anwendungen mit Vertrauen zu pflegen und zu erweitern, indem es ihnen ermöglicht, Folgendes zu ermöglichen:

  • Verstehe schnell unbekannten Code mit Struktur- und Logikdiagrammen
  • Verfolgen Sie Datenfelder durch das Programm von Eingabe bis Ausgabe
  • Zerlegen Sie monolithische Programme mithilfe von Code Extract
  • Erhalten Sie Informationen darüber, wie eine Anwendung wirklich funktioniert, in Echtzeit mit Laufzeitvisualisierung

Unterschätzen wir nicht, wie schwierig die Entwicklung von COBOL sein kann. Es ist schwierig, sie schnell zu verstehen, Änderungen mit Sicherheit vorzunehmen und dann zu testen. Die Beseitigung von totem Code – und, noch wichtiger, das Aufteilen von Programmen auf handhabbare Größen mit moderner Syntax – wird es Mainframe-Anwendungsentwicklern ermöglichen, schneller qualitativ hochwertigen Code zu liefern.

Hören Sie den Modern Mainframe Podcast "Refactoring Monolithic Mainframe Code", um zu erfahren, wie IT-Führungskräfte über die Modernisierung von Mainframe-Code nachdenken und welche Taktiken sie anwenden.

Diese Beiträge sind meine eigenen und spiegeln nicht unbedingt die Position, Strategien oder Meinung von BMC wider.

Mehr aus Mainframe

Abonnieren Sie The Brief

Mit der Registrierung für dieses Angebot bestätigen Sie, dass Sie die Datenschutzrichtlinie von BMC gelesen und zugestimmt haben.

Danke

Sie haben The Brief abonniert
Das Briefing umfasst die Mainframe- und Enterprise-Orchestrierung – BMC AMI und Control-M – sowie die Analystenforschung, Kundeneinsätze und Events in beiden Bereichen.