Zum Inhalt springen

Renovierung statt Neubau

Renovierung statt Neubau Das Bundesamt für den Zivildienst erneuert seine alten Cobol-­Anwendungen und verbindet sie mit moderneren Technologien.

Autor:Redaktion connect-professional • 30.3.2007 • ca. 4:45 Min

Das Bundesamt für ­Zivildienst hat seinen Sitz in Köln.
In den Akten des BAZ werden die Daten der Zivildienstleistenden aufbewahrt – bald in elektronischer Form.
In den Akten des BAZ werden die Daten der Zivildienstleistenden aufbewahrt – bald in elektronischer Form.

Die in den 70er- und 80er-Jahren aufgebauten Legacy-Systeme des Bundesamtes für den Zivildienst (BAZ) waren auf langfristige Nutzung angelegt, was bei einer Lebensdauer von 20 bis 30 Jahren auch erreicht wurde. Bei den Kernapplikationen des BAZ für die Verwaltung der Stammdaten aller Zivildienstleistenden und für die laufende Abrechnung von Sold, Krankenversicherung und Beihilfen handelt es sich um Cobol-Programme auf einem BS-2000-Host von Siemens mit einer Sesam-Datenbank. Im neuen Jahrtausend näherte sich diese Legacy-Anwendung allerdings recht deutlich dem Ende ihrer Lebenszeit. Die geistigen Väter der Anwendung schieden nach und nach aus dem Dienst aus, während ihre Nachfolger mit der Historie der Lösung und den alten Technologien nicht mehr vertraut waren. Dabei zeigte sich auch, dass der durch jahrelange Pflege gewachsene, immer wieder geänderte Code nur unzureichend dokumentiert war. Es wurde immer schwieriger und aufwändiger, die Anwendungen zu warten und die notwendigen Aktualisierungen einzupflegen. Schon seit längerem dachte man deshalb im BAZ über eine komplette Neuentwicklung der Kernanwendung mit einem neuen Datenmodell nach. »Die Wartungsarbeiten blieben daher für einige Zeit auf das Nötigste beschränkt«, erläutert Dirk Schreiber, Projektleiter beim BAZ.

Schritt für Schritt zu neuen Anwendungen
Vor dem Hintergrund des kürzer werdenden Planungshorizonts zeichnete sich ab, dass der große Wurf einer kompletten Neuentwicklung der Anwendungen nicht mehr angemessen war. »Wir können nicht Millionen Euro in eine Lösung stecken, die weitere 20 Jahre überdauern kann, wenn gar nicht feststeht, welche Aufgaben das Amt in fünf Jahren übernehmen muss«, stellt Schreiber fest. »Die veränderten Rahmenbedingungen machten vielmehr ein pragmatisches Vorgehen notwendig.« Das BAZ verfolgt seit 2003 einen iterativen Ansatz, mit dem die Risiken der Software-Entwicklung begrenzt werden. In einer ersten Stufe werden dabei die hauseigenen IT-Komponenten modernisiert, um die Wartbarkeit und Qualität des alten Codes zu verbessern. Während die Funktionalität der Cobol-Applikationen in einem veränderten technischen Kontext erhalten bleibt, werden sie analysiert, dokumentiert und saniert. Auf Basis eines transparenteren Codes kann im nächsten Schritt eine sukzessive Modernisierung der Applikationen in Angriff genommen werden. Nun werden auch neue Module mit moderneren Technologien, insbesondere mit Java, entwickelt und in den Anwendungskontext eingefügt. Auf der technischen Seite bestand der wesentliche Ansatzpunkt für die Runderneuerung der IT in der Ablösung des altgedienten BS-2000-Systems durch das Betriebssystem Solaris von Sun – eine Ablösung, die dadurch erleichtert wurde, dass die BS-2000-Umgebung zuletzt bereits auf Sun-Hardware betrieben wurde. Durch die Abkehr von BS 2000 und die Konsolidierung auf die zwei Betriebssysteme Unix und Windows konnte die Behörde ihre Administrations- und Betriebskosten erheblich reduzieren. Auf dieser Basis ergaben sich weitere Schritte der Konsolidierung und Vereinfachung. Die Migration zu einem neuen Datenmodell und die Ablösung der derzeitigen Strukturen, die in einer Sesam-Datenbank verwaltet werden, durch eine flexibleres Datenbankschema auf der Basis des relationalen Datenbanksystems von Oracle machte wiederum eine Umstellung der Applikationen auf die relationale Datenbanktechnologie notwendig. Mit dem neuen Schema wird auch die fachliche Komplexität des Zivildienstes transparent und nachvollziehbar dokumentiert. Um die Eingriffe in die vorhandenen Cobol-Applikationen möglichst gering zu halten, wurde zwischen den Anwendungen und der neuen Datenbank eine logische Zugriffsschicht eingezogen. Diese wird nun einheitlich von allen Fachverfahren genutzt, die damit die alten Sichten auf die Datenbank weiter verwenden können. Auch die bestehenden Applikationen können ohne Performance-Verluste auf die neue, relationale Datenbank zugreifen, ohne dass für jeden Datenzugriff eine neue Abfrage programmiert werden muss. Zugleich war es während einer Übergangszeit möglich, über die Zugriffsschicht das alte Datenmodell auf der neuen Oracle-Datenbank zu simulieren und somit das neue Modell fachlich zu verifizieren. Wichtig für die Erneuerung der Software-Entwicklung war die Einführung eines durchgängigen Konfigurationsmanagements und eines zentralen Repository – das BAZ setzt hier das Produkt Rochade des Herstellers ASG ein –, das sämtliche Programm- und DV-Konzeptdokumente verwaltet. Damit können nun alle fachlichen Funktionen umfassend dokumentiert werden, auch später lassen sich damit einzelne Arbeitsschritte nachvollziehen. Das eingesetzte Dokumentationsmodell unterstützt eine sukzessive Nachdokumentation und Modularisierung in beherrschbaren Schritten. Die Wiederverwendung von Komponenten wird durch einen integrierten ­Code-Generator unterstützt. Zugleich wurde eine neue Arbeitsumgebung für die Entwickler geschaffen. »Wir mussten vor allem unseren jüngeren Leuten eine zeitgemäße und vertraute Arbeitsumgebung zur Verfügung stellen«, merkt Schreiber an. Sie waren es nicht gewöhnt, mit einem einfachen Editor zu arbeiten. Heute können sie Cobol-Programme mit dem Werkzeug Net Express des Herstellers Micro Focus komplett am PC entwickeln und dabei die aus modernen Entwicklungsumgebungen gewohnten Möglichkeiten wie das integrierte Debugging nutzen. Die Software-Entwicklung erfolgt heute einheitlich mit Cobol für die Legacy-Anwendungen oder mit Java und Eclipse für neue Dialog-Programme. Technologien wie Assembler, Drive oder Adilos werden künftig nicht mehr verwendet. In einer nächsten Phase werden im Sinn des Konsolidierungsziels auch die 4GL-Programme auf Basis von Oracle Forms durch Java abgelöst.

Allmähliche Sanierung
Seit 2003 werden die einzelnen Anwendungen des BAZ nun sukzessive erneuert. Neben der Kapselung der Datenzugriffe führte das Bundesamt weitere Renovierungsarbeiten an den Applikationen durch, um diese in einen Zustand zu versetzen, in dem eine künftige Programmpflege schneller und mit geringerem Aufwand erfolgen kann. So wurden beispielsweise zur Verbesserung der Software-Qualität die Programmstrukturen überarbeitet, Goto-Statements eliminiert oder die Verschachtelungstiefe der Module reduziert. Bei einem Gesamtumfang der Programme von über 300000 Code-Zeilen ist eine Sanierung alles andere als trivial. Der Einsatz professioneller Analyse-Tools ist unerlässlich. So werden mit dem Werkzeug Revolve von Micro Focus die internen Querverbindungen der Module aufgelöst, damit nicht bei der Sanierung wichtige Funktionsbausteine verloren gehen; außerdem kann mit diesem Tool Code identifiziert werden, der im Programmablauf nicht mehr aufgerufen wird, der aber die Applikation unübersichtlich macht und die Wartung erschwert. Neben der Sanierung der bestehenden Anwendungen muss die aktuelle Programmpflege, also das zeitnahe Einarbeiten aktueller Anforderungen, gewährleistet sein. So forderte die Bundeskasse für das Abrechnungsprogramm neue Schnittstellen, die noch vor Abschluss der Sanierungsarbeiten betriebsfähig sein mussten, sonst hätten die Zivildienstleistenden keinen Sold erhalten. Auf der Basis sanierter Cobol-Programme will das BAZ langfristig die gesamte Stammdatenpflege in Java-basierte Dialog-Anwendungen überführen, um den Benutzern flexiblere Arbeitsprozesse zu ermöglichen. Für die Abrechnungen aber werden die Cobol-Batch-Programme, die mit dem Werkzeug Server Express von Micro Focus produktiv derzeit auf Solaris und mittelfristig auf Linux laufen, dagegen auf absehbare Zeit erhalten bleiben. Schreiber sieht hier jedenfalls keinen Vorteil in einer Umstellung der auf Java: »Die betreffenden Programme arbeiten auf ihrer neuen Plattform performant und stabil. Und weil sie im Hintergrund laufen, spielt die Benutzerschnittstelle keine Rolle.« Die Behörde wird jedenfalls keine Mittel investieren, nur um eine Technologie durch eine andere zu ersetzen, wenn sich daraus kein Kostenvorteil ergibt.

Dr. Rainer Doh ist Journalist in München.