Wie die Programmiersprache Cobol dem Wandel der Zeit trotzt
Cobol ist eine der ältesten noch angewendeten Programmiersprachen weltweit und trotzt seit mehreren Jahrzehnten dem digitalen Wandel - auch in der Schweiz. Welche Herausforderungen diese Langlebigkeit birgt, sagen Experten von UBS, Planzer und IBM.
In einer Welt des ständigen Wandels gibt es zumindest eine Konstante: Cobol - und das schon seit den späten 1950er-Jahren. Die Common Business Oriented Language hält seit über 60 Jahren wacker die Stellung und orchestriert nach wie vor wichtige administrative Kernprozesse von grossen Unternehmen, beispielsweise von Banken oder Versicherungen. Somit ist Cobol eine der ältesten existierenden Programmiersprachen, die weltweit immer noch genutzt wird.
Die Programmiersprache, die sowohl ihre Entwickler überlebt…Gemäss einer global durchgeführten Umfrage von Micro Focus aus dem Jahr 2020 existierten zu diesem Zeitpunkt zwischen 775 und 850 Milliarden Zeilen Cobol-Code - Tendenz steigend. Die Zahl übertreffe vorherige Schätzungen von 200 bis 300 Zeilen Code bei Weitem, heisst es in einer Mitteilung zur Studie.
Thomas Liechti, IT Director bei der UBS. (Source: zVg)
In der Schweiz seien es vielleicht 5 bis 10 Unternehmen, darunter beispielsweise UBS oder Planzer, bei denen sich Cobol-Codezeilen im System beziehungsweise in Kernfunktionen finden lassen, schätzt Thomas Liechti, IT Director bei der UBS. Bei der Schweizer Grossbank würden Cobol-Codezeilen überall dort drin stecken, wo ein grosses Datenvolumen herrscht und Datenverfügbarkeit, Sicherheit und Performance sehr wichtig sind, erklärt Liechti. Das ist beispielsweise in Buchhaltungsprozessen oder in der Verarbeitung von Kundendaten und Transaktionen der Fall. Die Programmiersprache ist laut Liechti vor allem aufgrund ihrer Robustheit und Schnelligkeit ideal für die Verarbeitung solcher grossen Datenmengen.
Auch bei Planzer erfüllt Cobol aus technologischer Sicht noch immer ihren Zweck und bietet alle Funktionalitäten, die für den operativen Betrieb benötigt werden, wie Yannik Böni, gelernter Softwareentwickler und Team Lead & Requirements Engineer bei Planzer, erklärt. Beim Logistikunternehmen basiert die Infrastruktur der Kernsysteme für den Transport- und Logistikbereich auf Cobol. Dies beinhalte verschiedene Desktopanwendungen, wie Abrechnungen oder Fakturierungen von Transport- und Lagerdienstleistungen, die mit Cobol-Programmen interagieren, sagt Böni. Das Problem sei dabei nicht die Zuverlässigkeit der über 60-Jahre alten Programmiersprache, sondern der Fachkräftemangel beziehungsweise Pensionierungen.
Yannik Böni, gelernter Softwareentwickler und Team Lead & Requirements Engineer bei Planzer. (Source: zVg)
…als auch den Millennium-Bug"Es ist sehr schwierig, Cobol-Entwickler zu finden, die noch nicht bereits pensioniert sind oder in den nächsten fünf Jahren pensioniert werden", sagt Böni und fügt hinzu: "Wir haben bisher nur wenige Bewerbungen für die ausgeschriebene Stelle erhalten." Ähnliches beobachtet IBM Schweiz: "In den vergangenen Jahren ist die Nachfrage nach Cobol-Expertise weltweit gestiegen. Dies lässt sich auf die demographische Entwicklung der vergangenen Jahre zurückführen: "Viele Experten mit dem nötigen Fachwissen über die Kunden und Cobol nähern sich dem Rentenalter", erklärt Daniel Ruffet, Mainframe Leader bei IBM Schweiz. Bereits im Zusammenhang mit dem Millennium-Bug wurde laut Ruffet vielen Unternehmen bewusst, dass das Rückgrat ihres Geschäfts nach wie vor aus Cobol-Anwendungen besteht, die auf einem Mainframe laufen. Das als Y2K-Bug bezeichnete Problem entstand damals, weil Programmiersprachen wie Cobol so konzipiert wurden, dass sie Jahreszahlen als zweistellige Angaben behandelten. Sprich, die ersten beiden Ziffern von Jahreszahlen wurden nicht berücksichtigt, was nach der Jahrhundertwende zu Fehlern geführt hätte. Diese Anwendungen mussten "Y2K-fähig" gemacht werden, weshalb die Experten-Nachfrage stieg.
Daniel Ruffet, Mainframe Leader bei IBM Schweiz. (Source: zVg)
Aktuell zeichne sich eine ähnliche Entwicklung ab. Allerdings liege dies daran, dass der Fokus mittlerweile auf objektorientierte Sprachen und die Cloud verlagert wurde, weswegen die Vorteile der Mainframe-Plattform in den Hintergrund gerieten. "In der letzten Zeit steigt das Bewusstsein wieder dafür, wie wichtig Anforderungen wie Verfügbarkeit, Sicherheit, Skalierbarkeit, oder Performance sind", sagt Ruffet. Weil Cobol diese Anforderungen für wichtige Kernfunktionen in Unternehmen nach wie vor erfüllt, bleibt die Nachfrage nach Cobol-Entwicklerinnen und -Entwicklern weiterhin bestehen. Hinzu kommt, dass ein Ersetzen der Codezeilen aufgrund des Umfangs und den damit verbundenen Kosten in der Praxis beinahe unmöglich ist, wie Ruffet anmerkt. Dieser Ansicht ist auch Thomas Liechti von der UBS. Gerade weil Cobol in administrativen Kernfunktionen eingesetzt wird, gestalte sich ein Austausch der Codezeilen schwierig: "Das ist zu vergleichen mit einer Herztransplantation, während der Patient noch weiterarbeiten muss", wirft Liechti ein. Stattdessen werden Cobol-Anwendungen laufend modernisiert.
Wie sich die Schweiz gegen Expertenmangel wappnetIn Cobol geschriebener Code hat sich jahrzehntelang bewährt. Gerade deswegen brauchen die weltweit Milliarden an Codezeilen Pflege, denn Ersetzen steht für die meisten Unternehmen aus Kosten- und Machbarkeits-Gründen nicht zur Diskussion. Dementsprechend stellt sich die Frage, wie sich Unternehmen gegen einen möglichen Mangel an Cobol-Expertinnen und -Experten wappnen können.
2020 haben verschiedene Anbieter wie IBM, Broadcom und Suse in Zusammenarbeit mit dem Open Mainframe Project der Linux Foundation drei Initiativen ins Leben gerufen: Ein Portal, das Unternehmen ermöglicht, mit erfahrenen Cobol-Programmierern in Kontakt zu treten, ein Cobol-Forum für Entwicklerinnen und -Entwickler aller Stufen sowie frei zugängliche Onlinekurse für Cobol.
In der Schweiz sorgt die UBS für Cobol-Nachwuchs. Derzeit bildet die Bank etwa 20 Cobol-Entwicklerinnen und -Entwickler in der eigenen Nachwuchsschmiede - dem IT-Way-Up-Programm - aus, verteilt über zwei Lehrjahre. "Soweit ich weiss, sind wir bezüglich Cobol-Ausbildung die grösste Firma in der Schweiz", sagt Thomas Liechti und ergänzt: Die Grossbank habe stets Zugriff auf Fachkräfte und bemerke im Gegensatz zu anderen Unternehmen keinen Mangel an Experten.
Planzer könne allerdings auch nach der Pensionierung seiner Cobol-Fachkräfte auf deren Expertise zählen, sagt Yannik Böni. So seien von vier Cobol-Entwicklern des Transportunternehmens bereits zwei pensioniert, aber dennoch weiterhin für das Unternehmen tätig. Viele andere Firmen haben laut Thomas Liechti jedoch ein grosses Problem. Universitäten und Fachhochschulen würden von sich aus schon lange kein Cobol mehr lehren, da objektorientierte Sprachen im Gegensatz zu prozeduralen Programmiersprachen mittlerweile die Basis in der Softwareentwicklung bilden. In diesem Bereich setzt sich jedoch IBM ein, wie Daniel Ruffet ausführt. Der IT-Konzern arbeite mit vielen Universitäten zusammen, um Studierende im Themenbereich Mainframe zu schulen. Ausserdem sei es sehr teuer, eine Cobol-Ausbildung anzubieten. Das könne sich längst nicht jede Firma leisten, gibt Liechti zu bedenken.
Was hält die Zukunft bereitDie grösste Herausforderung für Unternehmen, deren Kernsysteme auf Cobol-Codezeilen basieren, sieht Thomas Liechti vor allem darin, den Anschluss an die neuen Technologien nicht zu verpassen. So müssten Cobol-Entwicklerinnen und -Entwickler heutzutage nicht nur ein Verständnis für objektorientierte Sprachen mitbringen, sondern auch Know-how im Umgang mit modernen Tools wie Git für die Versionskontrolle, modernen Editoren oder mit Dev-Ops-Prozessen (Development und Operations) für Automatisierungen.
Es liege an den Unternehmen, den Rahmen für die Anwendung moderner Methoden zu bieten, um Software zu versionieren und zu liefern. Denn die jungen Entwicklerinnen und Entwickler von heute wollen sich laut Liechti nicht mehr auf Grossrechner-Systemen mit limitiertem User Interface einloggen, um Code zu schreiben. "Das ist unsere Herausforderung", sagt Liechti und fügt hinzu: "Ansonsten werden wir die Cobol-Entwickler zwei bis drei Jahre nach ihrer Ausbildung wieder verlieren."
Planzer verfolgt langfristig dennoch den Ansatz, das aktuelle System für den Transport durch eine neue Software abzulösen. Diese ist laut Böni bereits in Entwicklung. "Wir sprechen hier aber von einem Zeithorizont von fünf bis zehn Jahren", bemerkt er. Eine weitere Möglichkeit bietet zudem IBM. Der Technologie-Konzern spezialisiert sich vor allem auf den Aspekt der Modernisierung.
Ob wegen der Suche nach Fachkräften oder bezüglich der Mainframe-Modernisierung, eines steht sicherlich fest: Cobol wird Unternehmen wohl noch eine Weile beschäftigen und noch viele Experten in den Ruhestand begleiten - oder im Falle von Planzer sogar darüber hinaus.
Übrigens: Einen Fachkräftemangel bemerke die UBS vor allem im Bereich Cloud Computing: "Fast jede Firma setzt nun, zumindest in einzelnen Bereichen, auf Cloud, da hinkt die Ausbildung noch hinterher", sagt Thomas Liechti. Das "Skillset" existiere da zu einem grossen Teil noch nicht.