40 Jahre Software-Engineering

Wertstoff Legacy-Code - Rette ihn, wer kann

20.08.2008
Von Ernst Schierholz

Wer soll den ganzen Code pflegen?

Diese Programme existieren nicht nur, sie sind sogar noch tagtäglich im Einsatz. Ein Albtraum! Wie kann man die Wartung der Altprogramme sichern? Zum Neuschreiben fehlen das Geld, die Zeit - und die Dokumentation. Niemand weiß mehr richtig, warum die alten Programme sind, wie sie sind. Also lassen wir sie lieber, wie sie sind, schreiben die neuen Anwendungen mit zeitgemäßen Mitteln und flanschen alles über Brücken und Interfaces zusammen. Informatiker, die noch Cobol sprechen, sind heute eher 50 als 40 Jahre alt; PL/1-Know-how findet man kaum noch auf dem Markt; aktive Assembler-Programmierer sind selten wie die Blaue Mauritius.

Am Anfang waren gestanzte Löcher … so lang ist das eigentlich gar noch nicht her.
Am Anfang waren gestanzte Löcher … so lang ist das eigentlich gar noch nicht her.
Foto: ???

Das Thema Assembler haben wir bereits verschlafen; hier hilft nur noch eine intelligente funktionsidentische Modernisierung des Codes. Dasselbe gilt für PL/1. Bei den anderen 3GL- und 4GL-Sprachen haben wir noch einige Jahre Zeit. Aber auch hier brennt die Lunte. Wir sollten deshalb so schnell wie möglich eine harmonische Erneuerung vornehmen, die sich pragmatisch aus Modernisieren, Bewahren, Einsatz von Standardsoftware und Neuschreiben abmischen lässt.

Billionen Euro an versunkenen Schätzen

Niemand weiß, wie viel produktiver Code uns aus 40 Jahren Software-Engineering erhalten geblieben ist. Lassen Sie uns dennoch versuchen, eine Vorstellung von der Größenordnung zu bekommen. Nehmen wir an, dass es in Deutschlands Anwenderunternehmen 20 Millionen Softwareentitäten mit durchschnittlich 500 Zeilen gibt. Dann betreiben und pflegen deutsche Unternehmen insgesamt zehn Milliarden Zeilen Code. Dazu kommen noch einige Millionen Programme von Softwarehäusern. Wenn die Erstellung und Pflege einer Zeile 100 Euro gekostet hat - das geht schnell, wenn man in die Total Cost of Ownership auch den DB-Administrator, die Qualitätssicherung, die Mitarbeit der Fachabteilung beim Test, das mittlere Management und den Wartungsaufwand vieler Jahre einbezieht -, so kommen wir hinsichtlich der Gestehungskosten in die Billionen-Euro-Dimension.

Den ganzen Code "neu zu erfinden" würde zu Investitionen in ähnlicher Größenordnung führen, ist also für die meisten Unternehmen wirtschaftlich nicht vertretbar. Aber die in den Codes enthaltene Geschäftslogik ist ein Schatz, den es zu heben gilt. Er muss von den Krusten alter Technologie befreit und ohne funktionale Einbußen für eine Verwendung in heutigen Technikumgebungen zugänglich gemacht werden. Allmählich sollten wir uns vielleicht mal mit dem Begriff Software-Recycling anfreunden (siehe auch: "Web-Services öffnen Cobol").