Modernisierung der COBOL-Anwendung KOMFIS

In einem Projekt mit dem Finanzministerium Baden-Württemberg wurden die Benutzeroberfläche und die Anwendungsstruktur des Kommunalfinanz-Informationssystems (KOMFIS) mithilfe des ISA Dialog Managers modernisiert.

Zusammenfassung

Aufgabe

Modernisierung der Benutzerschnittstelle einer in COBOL programmierten Desktop-Anwendung

Auftraggeber

Finanzministerium Baden-Württemberg

Sektor

Öffentliche Verwaltung, Landesbehörde

Plattform

  • Clients mit Microsoft Windows (Arbeitsplatz- und Entwicklungsrechner)
  • Unix-Server für die Datenhaltung

Technologien

Ziele

  • Benutzerfreundlichkeit, Aufgabenunterstützung
  • Bessere Nutzung der vorhandenen Daten
  • Pflege der Benutzerschnittstelle durch die Anwendungsentwickler (COBOL-Programmierer)

Unsere Rolle

  • Entwicklung einer Architektur für die Benutzerschnittstelle
  • Entwurf der Schnittstelle zwischen Anwendung und Benutzeroberfläche
  • Schulung und Coaching der Anwendungsentwickler
  • Unterstützung bei der Implementierung der Benutzeroberfläche

Anwendung

Alter Dialog zur Berechnung von Zahlungen
Alter Dialog zur Berechnung von Zahlungen

Im Rahmen des kommunalen Finanzausgleichs werden Bundes- und Landesmittel an die Städte und Gemeinden in Baden-Württemberg verteilt. Diese Mittel sind ein wesentlicher Bestandteil der Finanzausstattung der Kommunen zur Wahrnehmung ihrer Aufgaben. Sie werden von den Kommunen beispielsweise für Bildungseinrichtungen und den öffentlichen Personen-Nahverkehr verwendet. In Baden-Württemberg verteilt das Finanzministerium pro Jahr mehr als 6 Milliarden Euro an 1.101 Gemeinden in 35 Land- und 9 Stadtkreisen.

Das Kommunalfinanz-Informationssystem (KOMFIS) ist die zentrale Anwendung zur Durchführung des kommunalen Finanzausgleichs im Finanzministerium Baden-Württemberg. KOMFIS wird für die Berechnung und Zahlbarmachung des kommunalen Finanzausgleichs und für die Erstellung von Berichten genutzt. Die Anwendung hat ihren Ursprung in einer Großrechner-Anwendung aus den 60er Jahren und läuft heute in einer Client-Server-Umgebung. Die gesamte Anwendungslogik mit den Berechnungsroutinen ist in COBOL implementiert und läuft auf den Arbeitsplatzrechnern unter Microsoft Windows, während die Daten auf Unix-Servern des Finanzministeriums gehalten werden. Die Anwendung wird kontinuierlich weiterentwickelt um beispielsweise auf Gesetzesänderungen zu reagieren. Die Weiterentwicklung erfolgt durch das KOMFIS-Entwicklerteam im Finanzministerium, das aus erfahrenen COBOL-Entwicklern besteht.

Ausgangssituation

KOMFIS wies eine textbasierte Benutzeroberfläche auf, die nicht mehr zeitgemäß war und sowohl den Anwendern als auch den Entwicklern Probleme bereitete. Der Hersteller hatte die Entwicklungswerkzeuge für die Benutzeroberfläche eingestellt und leistete keinen Support mehr dafür. Die Anwender von KOMFIS benötigten lange Einarbeitungs- und Bearbeitungszeiten, da sie für die Bedienung der Anwendung zum Teil kryptische Abkürzungen und Kennziffern auswendig lernen oder nachschlagen mussten. Es war schwierig und aufwändig, Auswertungen für spezielle Zwecke zu erstellen, sodass der vorhandene Datenbestand nicht optimal genutzt werden konnte, obwohl er an sich wertvolle Informationen enthielt.

Neuer Dialog zur Berechnung von Zahlungen
Neuer Dialog zur Berechnung von Zahlungen

Ein Versuch, die textbasierte Benutzeroberfläche durch ein mit Java Swing entwickeltes GUI zu ersetzen, scheiterte trotz einer erfolgreich verlaufenen Machbarkeitsstudie. Diese Lösung erwies sich als zu komplex, um von den KOMFIS-Entwicklern kontinuierlich gepflegt und bei Bedarf angepasst werden zu können.

Lösung

Alter Dialog zur Konfiguration von Listen
Alter Dialog zur Konfiguration von Listen

Für die Realisierung der Benutzerschnittstelle mit dem ISA Dialog Manager (IDM) wurden die COBOL-Berechnungsfunktionen gekapselt. Sie mussten für die Anbindung der neuen Benutzerschnittstelle nicht geändert werden. Die Konfiguration der rund 70 Berechnungen wird durch XML-Dateien beschrieben. In ihnen steht beispielsweise, welche Dialoge zu ihnen gehören, welche COBOL-Routinen und Daten sie nutzen, für welchen Zeitraum sie gültig sind und in welchen Zusammenhängen sie verwendet werden können.

Aus den Berechnungen können komplexere Abläufe zusammengestellt werden, wobei typische Abläufe aus bis zu 45 Einzelberechnungen bestehen. Abläufe werden durch Textdateien beschrieben, in denen die Berechnungsschritte aufgeführt sind. Sie können daher vom Anwender ohne Programmierung erstellt werden. Dies wird zum Beispiel für Modellrechnungen oder die Beantwortung parlamentarischer Anfragen genutzt.

Die Konfigurationsdateien für Berechnungen und Abläufe bilden – zusammen mit wenigen anderen Konfigurationsdateien – die Schnittstelle zwischen Anwendung und Benutzeroberfläche. Darüber hinaus benötigt die Benutzerschnittstelle keinerlei Informationen über Berechnungen oder sonstige Interna der Anwendung, sodass eine einfache, klare Schnittstelle entstanden ist.

Neuer Dialog zu Konfiguration von Listen
Neuer Dialog zu Konfiguration von Listen

In der Benutzerschnittstelle werden die XML-Konfigurationsdateien mithilfe der XML-Schnittstelle des ISA Dialog Managers verarbeitet. Der Datenaustausch zwischen Benutzeroberfläche und Anwendung erfolgt über Datenobjekte des IDM (Records). Die dafür auf COBOL-Seite notwendigen Datenstrukturen (Copy-Dateien) können mit dem IDM generiert werden. Für die Anbindung der Benutzerschnittstelle waren zwar Anpassungen an der COBOL-Anwendung erforderlich, die Berechnungsfunktionen waren von diesen Änderungen allerdings nicht betroffen.

Insgesamt besteht die neue Benutzeroberfläche aus knapp 30 Dialogbeschreibungen und rund 340 Klassendefinitionen. Die Dialoge sind über Parameter weitreichend konfigurierbar, wobei die Parameter in editierbaren Tabellen gehalten werden. Die Anwendungsseite besteht aus über 90 COBOL-Modulen und fast 70 Copy-Dateien.

Fazit

Dialog zur Datenauswahl
Dialog zur Datenauswahl

Die COBOL-Anwendung lief mit der IDM-Benutzeroberfläche sofort stabil und nahezu fehlerfrei. Sie wurde von den Anwendern schnell akzeptiert. Die Benutzeroberfläche ist weitgehend selbsterklärend. Wo die Anwender früher Abkürzungen oder Kennziffern eingeben mussten, stehen ihnen nun Auswahllisten und komfortable Dialoge zur Verfügung. Die Anwender können ohne Hilfe der Entwickler neue Berechnungsabläufe, Auswertungen und Berichte definieren. Zu den Konfigurationsdateien für die Benutzeroberfläche gehört nun auch eine Datei für jeden Benutzer, in dem seine Einstellungen und der Anwendungsstatus gespeichert sind. Dadurch kann die Arbeit nun beliebig unterbrochen und später an derselben Stelle fortgesetzt werden. Diese Möglichkeit bot KOMFIS mit der alten Benutzeroberfläche nicht.

Sowohl Anwender als auch Entwickler können mit KOMFIS nun effizienter arbeiten, sodass mehr Kapazität für andere Aufgaben zur Verfügung steht. Bei Anpassungen der Anwendung zahlen sich die Schulungen aus, die von der ISA im Rahmen der Modernisierung mit den KOMFIS-Entwicklern durchgeführt wurden. Durch die Schulungen und die persönliche Beratung durch ISA-Entwickler während der Implementierung der neuen Benutzerschnittstelle kommen die KOMFIS-Entwickler auch ohne Probleme mit einem objektorientierten Werkzeug wie dem ISA Dialog Manager zurecht, obwohl sie zuvor fast ausschließlich prozedural in COBOL programmiert haben. Mit den nun vorhandenen Änderungs- und Erweiterungsmöglichkeiten der Benutzerschnittstelle ist KOMFIS zukunftssicherer geworden und kann so noch über Jahre genutzt werden.

de_DE_formal