Sourcecode-Analyse strukturiert Legacy-Code

06.04.2005
"Panorama" prüft nicht dokumentierte Host-Anwendungen. 5000 Euro für fünf Millionen Codezeilen.

Die Software-Initiative Deutschland e.V. (SID) bietet ein vierstufiges Verfahren zur modernisierung von Altsoftware an. Der herstellergetriebene Verein proklamiert dazu sein Konzept des Return on Assets (ROA), das im Gegensatz zum Return on Investment (ROI) nicht neue Investitionen in den Vordergrund stellt, sondern die Ausschöpfung der über Jahrzehnte hinweg getätigten Investitionen. Das Problem sei, heißt es bei SID, dass schon heute etwa doppelt so viel Geld in die Softwarewartung fließe wie in den Erwerb neuer Programmlizenzen. Allein im deutschsprachigen Raum seien nach Erhebungen des Vereins mehr als 10000 vor allem große Unternehmen und öffentliche Verwaltungen von dieser Situation betroffen. Viele dieser Firmen stellen sich die Frage, ob die Oldie-Software weiter gepflegt, in eine moderne Umgebung migriert, an einen Outsourcer übergeben oder durch Standardsoftware etwa von SAP ersetzt werden soll.

Vierstufiges Verfahren

Unterstützung für diese Entscheidung bietet SID mit einem vierstufigen Verfahren, das im ersten Schritt mit Tools arbeitet, die den Firmen und Behörden erst einmal einen Überblick über die Altsoftware und deren Funktionalität verschaffen. Auf diese Weise werde der vor Jahrzehnten verfasste und im Allgemeinen kaum dokumentierte Programmcode erst einmal verständlich. Darauf aufbauend erfolgt der zweite Schritt, in dem die Wiederverwendbarkeit der einzelnen Programme geprüft wird. Als dritte Phase steht die Trennung von Programmlogik (Geschäftsprozesse) und Präsentation (Benutzeroberfläche) an. Die Loslösung der Oberfläche bildet die Basis für die Einführung moderner Frontends wie PCs und Web-Browser. Dies wiederum öffnet den Weg zum vierten Schritt, die Altanwendung neuen Benutzergruppen zur Verfügung zu stellen, die über das Internet beziehungsweise mobile Endgeräte (PDA, Smartphone) darauf zugreifen.

"In der Praxis bleiben die meisten Unternehmen jedoch schon auf der ersten Stufe stecken, weil es ihnen nicht gelingt, Transparenz in die bestehende Programmlandschaft zu bringen", resümiert SID-Vorsitzender Helmut Blank seine Erfahrungen. Deshalb habe die Initiative den Softwarecheck-Service zur Analyse von Bestandssoftware gestartet.

Das Verfahren funktioniert mit den Programmiersprachen Cobol, PL/1, Assembler und Natural. Die Arbeitsweise des vom Verein favorisierten und bei der Xcelerate GmbH in Brunnthal bei München erhältlichen Tools "Panorama" lässt sich mit der eines Compilers vergleichen. Zunächst wird der gesamte Quellcode der Programme inklusive der JCL-Informationen (JCL = Job Control Language) gescannt und in seine Entitäten gegliedert, um diese einschließlich ihrer Abhängigkeiten untereinander in einer Datenbank anzulegen. Die Datenbank selbst ist aus Performance-Gründen nicht wie üblich relational strukturiert, sondern nutzt Data-Warehouse-Technik in Form eines Datenwürfels. Über einen Code-Browser kann sich der Entwickler in diesem Hypercube bewegen, indem er etwa per Mausklick Kriterien für die gesuchten Programmstellen eingibt. Vorteilhaft ist zudem, dass der Hypercube mit dem gesamten Codebestand im Hauptspeicher eines PC-Servers gehalten werden kann.

Die Überprüfung durch ein Mitglied der SID ist kostenpflichtig, für fünf Millionen Lines of Code fallen 5000 Euro an. Als Ergebnis erhält der Anwender eine klassische oder eine OnlineDokumentation, die ihm einen Überblick verschafft, welche Maßnahmen zur Rettung der Software in die Zukunft möglich beziehungsweise nötig sind. Außerdem soll die Ana- lyse eine Wirtschaftlichkeitsbewertung der Alternativen erlauben. (ue)